Po uruchomieniu programów X przez SSH, SSH nie kończy się po wyjściu z powłoki (należy użyć np., CtrlCAby go zabić).
Domyślam się, że chociaż program X już się kończy, wciąż pozostaje pewne „połączenie” (nie uwolnione). Wyjątki, które znalazłem, to gtk-demo
i acroread
.
Czy ktoś zna przyczynę? Czy to problem z konfiguracją ssh {, d}?
ssh
x11
xforwarding
yuyichao
źródło
źródło
C-c
naciśnięciu).Odpowiedzi:
Uruchomienie programu X prawdopodobnie uruchamia proces w tle, który nie kończy się po zamknięciu programu (lub sam program nie kończy się poprawnie). Zobacz tutaj wyjaśnienie tego, co się dzieje.
Aby to naprawić, możesz spróbować dowiedzieć się, które procesy są nadal uruchomione i albo uniemożliwić ich uruchomienie podczas logowania przez SSH, albo po prostu zabić je przed wylogowaniem. Z pewnością możesz po prostu zabić połączenie SSH po wylogowaniu.
źródło
systemd-cgls
~~) (Próbowałem, abykillall -KILL
sam program myślał, że może wcześniej rozwidlić jakiś proces w tle, ale tak nie jest.) Czy jest więc sposób na robienie rzeczy dobrze? (np. automatycznie zabij dbus (gconf)) THXkillall dbus
coś takiego do swojego.logout
, ale prawdopodobnie zepsułoby to inne rzeczy (np. Gdy jesteś zalogowany lokalnie).kill-session=1
i mam nadzieję, że systemd może mi powiedzieć, który jest właściwy proces do zabicia (tj. Nie zabijania procesów w innych sesjach.) ~~~ THX