내 구성.nix는 다음과 같습니다.
{ config, pkgs, lib, ... }:
{
imports = [<nixpkgs/nixos/modules/installer/cd-dvd/sd-image-aarch64.nix>];
# NixOS wants to enable GRUB by default
boot.loader.grub.enable = false;
# if you have a Raspberry Pi 2 or 3, pick this:
boot.kernelPackages = pkgs.linuxPackages_latest;
# A bunch of boot parameters needed for optimal runtime on RPi 3b+
boot.kernelParams = ["cma=256M"];
boot.loader.raspberryPi.enable = true;
boot.loader.raspberryPi.version = 3;
boot.loader.raspberryPi.uboot.enable = true;
boot.loader.raspberryPi.firmwareConfig = ''
gpu_mem=0
'';
services.openssh.enable = true;
services.sshd.enable = true;
services.openssh.allowSFTP = true;
users = {
mutableUsers = false;
users = {
root = {
hashedPassword = "";
};
pi = {
isNormalUser = true;
uid = 1000;
extraGroups = ["wheel"];
shell = pkgs.zsh;
hashedPassword = "";
home = "/home/pi";
};
};
};
}
localhost에 ssh를 시도하면 연결할 수 없으며 systemctl status sshd
작동하지 않는다는 메시지가 나타납니다. 을 실행하면 systemctl start sshd
모든 것이 잘 작동합니다.
nixos가 부팅 시 sshd를 시작하게 하려면 어떻게 해야 합니까?
답변1
나는 여기서 답을 찾았습니다.
https://github.com/NixOS/nixpkgs/issues/26776#issuecomment-310555407
그것은 나를 위해 작동합니다:
systemd.services.sshd.wantedBy = lib.mkOverride 40 [ "multi-user.target" ];