저는 처음으로 guix 사용자이므로 이 기본적인 작업을 수행하는 데 도움이 필요합니다.
해보았 guix pull
으나 guix install openssh
명령어 sshd
가 존재하지 않습니다. 입력 guix pull
후 guix install openssh
이제 openssh 패키지가 생겼지만 sshd
명령이 존재하지 않습니다. 읽고 나서이 발췌구성을 편집해야 할 것 같지만 이 환경은 단지 guix의 qemu 이미지일 뿐입니다. 그리고 /etc/config.scm
빈 파일입니다. 그래서 편집할 것이 없습니다. guix에서 sshd 서비스를 시작한 후 어떻게 실행합니까?
답변1
그래서 나는 많은 바이너리가 guix에 있고 사용자에게 숨겨져 있다는 것을 발견했습니다. 여기서 sshd를 호출할 수 있지만 guix shell openssh
외부에서는 볼 수 없습니다.
내 시도:
# This is messy and not really a guix way, but for now best I can do
sudo mkdir -p /etc/ssh
sudo tee /etc/ssh/sshd_config <<-EOF
PermitRootLogin yes
PermitEmptyPasswords yes
EOF
sudo groupadd sshd
sudo useradd -g sshd sshd
sudo ssh-keygen -A
sudo guix shell openssh -- sh -c '"$(which sshd)"'
편집: 일반적으로 시도하면 어떻게 되나요?
guest@gnu ~$ sshd
bash: sshd: command not found
guest@gnu ~$ guix shell openssh -- sh -c sshd
sshd re-exec requires execution with an absolute path
guest@gnu ~$ guix shell openssh -- sh -c $(which sshd)
which: no sshd in (/run/setuid-programs:/home/guest/.config/guix/current/bin:/home/guest/.guix-profile/bin:/run/current-system/profile/bin:/run/current-system/profile/sbin)
sh: -c: option requires an argument
guest@gnu ~$ guix shell openssh -- sh -c "$(which sshd)"
which: no sshd in (/run/setuid-programs:/home/guest/.config/guix/current/bin:/home/guest/.guix-profile/bin:/run/current-system/profile/bin:/run/current-system/profile/sbin)
guest@gnu ~$ guix shell openssh -- sh -c '"$(which sshd)"'
/etc/ssh/sshd_config: Permission denied
guest@gnu ~$ sudo guix shell openssh -- sh -c '"$(which sshd)"'
guest@gnu ~$