私の設定.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" ];