ログインコマンドが失敗し、接続が閉じます。

ログインコマンドが失敗し、接続が閉じます。

コマンドを実行しようとするとlogin失敗します。

SSH経由でrootとして以下を取得します。

root@server:~# login
Connection to 192.168.0.50 closed.

SSH接続が終了しました。 「物理的」TTYでは、セッションが閉じてログイン画面に戻ります。

sudoを使用する一般ユーザーとして:

bilbax@server:~$ sudo login
Password: 

[1]+  Stopped                 sudo login

このエラーが発生する直前に、通常どおりコマンドを試してみましたが、うまくいき、loginパスワードを要求しました。タイプミスを出して再試行しましたが、コマンドが停止しました。私は^ Cを試しましたが、成功しませんでした。だからルートとして私は役に立たkillall loginなかった。システムを再起動しましたが、上記のエラーを修正する必要があります。

killコマンドに何か問題がありましたか?

私はArch Linux x86_64(カーネル3.4.7-1-ARCH)を使用しています。

ベストアンサー1

問題は、suttyを新しいユーザーに切り替えないことです。ルートを訴えるときは問題ではありませんが、ttyを所有していない他のユーザーには困難を招く可能性があります。

以前は、シェルで実行するのがlogin一般的な(または少なくとも許容可能な)操作でした。シェルはこれを特別に処理し、それを暗黙的に実行しますexec。現代のシェルはこれ以上これをやっていないようです。明示的に実行すると役に立ちexec loginます。追加することも-f username試してみるべきことです。

root以外のユーザーとしてこれを行うと、これはlogin標準でしたが、もはや一般的ではないsetuid rootの場合にのみ機能します。sudo以前のバージョンがある場合、execsudoがそれを避けるのに十分スマートであると仮定すると、このバージョンも機能することができます(つまり、fork + exec + waitの代わりにexec自体を直接実行します)。

結局、なぜssh host -l minecraft中間子を切り取らないのだろうか。

おすすめ記事