No meu sistema BeagleBone Black Angstrom, a dropbear.socket
UNIT parece morrer espontaneamente depois de um tempo. O efeito é que eu não posso ssh
na máquina sem reiniciar o dropbear.socket
UNIT. Isso resolve o problema a curto prazo:
systemctl restart dropbear.socket
Eu tentei adicionar Restart=always
ao arquivo /lib/systemd/system/dropbear.socket
, mas isso não é permitido (recebo um erro no log do sistema).
[Unit]
Conflicts=dropbear.service
[Socket]
ListenStream=22
Accept=yes
Restart=always
[Install]
WantedBy=sockets.target
Also=dropbearkey.service
Qual é a maneira correta de obter dropbear.socket
para reiniciar automaticamente? Seria bom corrigir a causa raiz, mas isso parece uma solução fácil e tornará o sistema mais robusto.
Aqui está a lista de unidades com falha (eu não o filtrei, caso o serviço de música (que eu não estou usando) seja suspeito).
% systemctl list-units --failed --full UNIT LOAD ACTIVE SUB DESCRIPTION [email protected]:22-192.168.0.40:55370.service loaded failed failed SSH Per-Connection Server mpd.service loaded failed failed Music Player Daemon LOAD = Reflects whether the unit definition was properly loaded. ACTIVE = The high-level unit activation state, i.e. generalization of SUB. SUB = The low-level unit activation state, values depend on unit type. 2 loaded units listed. Pass --all to see loaded but inactive units, too. To show all installed unit files use 'systemctl list-unit-files'.
Também aqui está /lib/systemd/system/[email protected]
[Unit] Description=SSH Per-Connection Server Requires=dropbearkey.service After=syslog.target dropbearkey.service [Service] ExecStart=-/usr/sbin/dropbear -i -r /etc/dropbear/dropbear_rsa_host_key -p 22 ExecReload=/bin/kill -HUP $MAINPID StandardInput=socket KillMode=process