SSH auto-start au boot : service file init Redox pour sshd
Ajout tools/redox-services/30_sshd.service au format TOML init Redox : [unit] description = "OpenSSH SSH Daemon" requires_weak = ["10_net.target"] [service] cmd = "/usr/bin/sshd" args = ["-D"] type = "simple" Path absolu pour cmd (sshd refuse de re-exec sinon, vu en runtime). Args ["-D"] = ne pas daemonize (init gère le lifecycle). type "simple" = init considère le process up dès le fork, pas d'attente notify. run-qemu.sh copie maintenant automatiquement tous les *.service de tools/redox-services/ dans /usr/lib/init.d/ du guest. Bénéfice : à chaque ./run-qemu.sh, sshd est armé pour démarrer au boot suivant. Pré-requis pour que ça marche au runtime : - openssh déjà installé (via pkg install openssh) - Host keys générées (ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N "") - /home/root/.ssh/authorized_keys peuplé (auto via run-qemu.sh) Si openssh manque, sshd crash au boot mais init continue (requires_weak, pas requires hard). Leyoda 2026 – GPLv3
This commit is contained in:
parent
44fd7c282b
commit
95f824b626
2 changed files with 23 additions and 0 deletions
13
run-qemu.sh
13
run-qemu.sh
|
|
@ -175,6 +175,19 @@ else
|
|||
echo "WARN : aucune pubkey hôte trouvée dans $SSH_DIR_HOST/. SSH par password seulement." >&2
|
||||
fi
|
||||
|
||||
# SSH : déployer le service file init Redox pour démarrer sshd au boot.
|
||||
# Pré-requis : openssh déjà installé via pkg + host keys générées dans
|
||||
# /etc/ssh/ (cf docs/SSH-setup.md à venir). Si openssh manque, sshd
|
||||
# crashera au boot mais le système continuera (les autres services ne
|
||||
# sont pas bloqués car requires_weak).
|
||||
for service in "$ROOT/tools/redox-services"/*; do
|
||||
if [[ -f "$service" ]]; then
|
||||
echo "==> installer service init $(basename "$service") dans /usr/lib/init.d/"
|
||||
mkdir -p "$MOUNT/usr/lib/init.d"
|
||||
cp -vp "$service" "$MOUNT/usr/lib/init.d/"
|
||||
fi
|
||||
done
|
||||
|
||||
# --- 4. umount avant make qemu (sinon QEMU et FUSE se battent sur le même fichier) ---
|
||||
echo "==> démonter $MOUNT"
|
||||
sync
|
||||
|
|
|
|||
10
tools/redox-services/30_sshd.service
Normal file
10
tools/redox-services/30_sshd.service
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
[unit]
|
||||
description = "OpenSSH SSH Daemon"
|
||||
requires_weak = [
|
||||
"10_net.target",
|
||||
]
|
||||
|
||||
[service]
|
||||
cmd = "/usr/bin/sshd"
|
||||
args = ["-D"]
|
||||
type = "simple"
|
||||
Loading…
Add table
Add a link
Reference in a new issue