Also habe ich den Fehler gegoogelt und den Serverfehler überprüft, aber die Lösungen passten nicht. Die meisten Ergebnisse waren Probleme mit / dev / pts, aber das ist gemountet. Andere Ergebnisse sind Fehler mit git, aber es gibt kein git auf der Maschine.
Mein Konto ist nicht gesperrt, ich kann mich trotzdem an der Konsole anmelden. Andere Benutzer haben dieses Problem ebenfalls, daher glaube ich nicht, dass es etwas mit etwas zu tun hat, das in meiner .ssh /
Ich bekomme diese Antwort mit ssh -vv:
<snip>
debug1: Next authentication method: password
rogier@server's password:
debug2: we sent a password packet, wait for reply
debug1: Authentication succeeded (password).
debug1: channel 0: new [client-session]
debug2: channel 0: send open
debug1: Requesting [email protected]
debug1: Entering interactive session.
debug2: callback start
debug2: client_session2_setup: id 0
debug2: channel 0: request pty-req confirm 1
debug1: Sending environment.
debug1: Sending env LANG = en_US.UTF-8
debug2: channel 0: request env confirm 0
debug2: channel 0: request shell confirm 1
debug2: fd 3 setting TCP_NODELAY
debug2: callback done
debug2: channel 0: open confirm rwindow 0 rmax 32768
debug2: channel_input_status_confirm: type 100 id 0
PTY allocation request failed on channel 0
debug2: channel 0: rcvd adjust 2097152
debug2: channel_input_status_confirm: type 99 id 0
debug2: shell request accepted on channel 0
Danach friert die Sitzung ein. Hat jemand eine Idee was los ist?
ssh user@host "/bin/bash -i"
anmelden?/dev/pt*
Geräte entfernt und manuell neu hinzugefügt werden mussten, weil sie beschädigt wurden. In diesem Fall funktionierte auch die oben aufgeführte Umgehung.ssh user@host "/bin/bash -i
. Könnten Sie genauer sagen, welche Befehle ich ausführen muss, um dies zu beheben? Wie stelle ich wieder her/dev/pt*
? Vielen Dank.mount
, eine der ausgegebenen Zeilen sollte / dev / pts sein, notieren Sie sich die Optionen. Hängen Sie die Bereitstellung mit ausumount /dev/pts
und ersetzen Sie sie erneut,mount -t devpts -o OPTIONS devpts /dev/pts
indem Sie OPTIONEN durch die Optionen ersetzen, die Sie vor dem Entfernen der Bereitstellung beobachtet haben.Antworten:
Ok, danke an Tim. Umounting / dev / pts und dann mount / dev / pts haben den Trick gemacht.
quelle
ssh user@host "/bin/bash -i
. Könnten Sie genauer sagen, welche Befehle ich ausführen muss, um dies zu beheben? Vielen Dank.mkdir /dev/pts
bevor es funktionierte. Ansonsten löste dies das Problem für mich.Lassen Sie mich Ihnen all meine Erfahrungen erzählen. Ich versuche, über ssh eine Verbindung von Linux zu Windows herzustellen . Ich hatte Server mit openssh und andere mit freessh . Wenn der Server opensh hat, funktioniert er einwandfrei, aber seit einiger Zeit wird die Meldung "Shell-Anforderung auf Kanal 0 fehlgeschlagen" angezeigt, wenn der Dienst freessh ausgeführt wird (er kam von einem Tag zum anderen und funktioniert besser openssh)
Ein von mir durchgeführter Test bestand darin, die Verbindung von einem anderen Benutzer herzustellen, da ich sehe, dass dies einwandfrei funktioniert, ich meine ~ / .ssh (den Benutzer, der das Problem darstellt) sichern und danach einwandfrei funktioniert.
Ich denke, die betroffene Datei war bekannt_hosts, die Dauerwellen sehen genauso gut aus wie der Inhalt, aber so habe ich es behoben.
quelle
Der Fehler bedeutet nur, dass das Öffnen des Pseudo-Terminals fehlgeschlagen ist. Höchstwahrscheinlich hat es nichts mit ssh zu tun. Verwenden Sie zum Debuggen auf der SSH-Serverseite eine sehr einfache PTY-Demo wie mypty in http://rachid.koucha.free.fr/tech_corner/pty_pdip.html , um festzustellen, ob überhaupt PTY zugewiesen werden kann. Wenn nicht, untersuchen Sie mit strace, wo es fehlschlägt. (Für mich war es ein fehlender / dev / ptmx-Symlink in einem Container, wie unter https://www.kernel.org/doc/Documentation/filesystems/devpts.txt erläutert. )
quelle
Könnte von Ihrem LANG und Ihren LC-Einstellungen abhängen, aber das funktioniert bei mir:
quelle
LANG
und derLC_*
Umgebung zusammenhängen?In meinem Fall stellte ich über eine Linux-Box eine Verbindung zu einem Windows-Host her (auf dem Cygwin und andere verwandte Software ausgeführt wird).
Seltsamerweise haben Versuche, eine Verbindung zum Windows-Server herzustellen, funktioniert, sind jedoch beim Zuweisen des interaktiven Terminals fehlgeschlagen. Überprüfen Sie die
ssh -vv
Protokolle unten.Mein Kollege stellte fest, dass es an vielen offenen Prozessen auf dem Windows-Server lag, die dieselben Anmeldeinformationen wie ich verwendeten und einen automatisierten Stapelvorgang durchführten.
Es vorübergehend zu töten, den Trick zu tun und meine SSH-Verbindung erfolgreich zuzulassen.
Höchstwahrscheinlich hatte Windows + Cygwin diesbezüglich eine Höchstgrenze. Es bleibt noch Arbeit, die Zuweisung von Ressourcen korrekt aufzuheben, wenn diese Prozesse ausgeführt werden.
quelle
Beim erneuten Montieren bekomme ich,
Aber,
Mache den Trick
Referenz: http://www.iitk.ac.in/LDP/LDP/lfs/5.0/html/chapter06/proc.html
quelle