Wie kann ich herausfinden, warum ssh-Prozesse hängen?

746
Ivan Denisovich

Wenn ich den Befehl wie iostat -dkx 2 2über ssh ausführte, erhalte ich das erwartete Ergebnis, aber die Prozesse auf dem lokalen Computer sagen "lebendig" im Status "unterbrechungsfreier Schlaf". Warum passiert dies? Gibt es eine Möglichkeit, den Grund für dieses Verhalten herauszufinden?

vollständiger Befehl:

$ ssh -o ConnectTimeout=4 -o ChallengeResponseAuthentication=no -o PasswordAuthentication=no <user>@host> iostat -dkx 2 2 

ps ausgabe:

$ ps aux | grep 11893 && ps aux | grep PID USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND 1000 10273 0.0 0.0 103280 904 pts/0 S+ 12:09 0:00 grep PID 1000 11893 0.0 0.0 158732 3892 ? S Feb17 0:00 ssh -o ConnectTimeout=4 -o ChallengeResponseAuthentication=no -o PasswordAuthentication=no <user>@<host> iostat -dkx 2 2 1000 10285 0.0 0.0 103280 904 pts/0 S+ 12:09 0:00 grep 11893 

strace:

$ strace -p 11893 Process 11893 attached - interrupt to quit select(8, [5], [], NULL, NULL^C <unfinished ...> 

wchan:

$ cat /proc/11893/wchan  poll_schedule_timeout 

Stacktrace:

$ cat /proc/11893/stack  [] poll_schedule_timeout+0x39/0x60 [] do_select+0x6bb/0x7c0 [] core_sys_select+0x18a/0x2c0 [] sys_select+0x47/0x110 [] system_call_fastpath+0x16/0x1b [] 0xffffffffffffffff 
2
Ich würde die strace oder gdb an den Serverprozess anhängen. Jakuje vor 8 Jahren 1
Du meinst auf der entfernten Seite? Könnten Sie mir bitte sagen, wie ich das schaffen kann? Ivan Denisovich vor 8 Jahren 0
@Shukov: Ich kann den Fehler nicht reproduzieren. Sie müssen einige zusätzliche Details angeben, z. B. ungewöhnliche Konfigurationen in `ssh_config 'auf dem Client oder` sshd_config' auf dem Server. Tiurin MariusMatutiae vor 8 Jahren 1
In der ursprünglichen Konfiguration wurden geringfügige Änderungen in Bezug auf die Konfiguration der Authentifizierung vorgenommen. Wie PermitRootLogin oder PasswordAuthentication. Ivan Denisovich vor 8 Jahren 0

0 Antworten auf die Frage