su
コマンドを開始し、それをキャンセルしたいとします。 Control+Csu
の場合のようにSudo
の場合は機能しません...プロンプトを終了する必要があります(パスワードを十分に間違えるか、正しくすることにより)。
パスワードプロンプトを強制終了するために入力できるものはありますか?
CTRL-D
su
のプロンプトを表示できます。
このショートカットは、コンソールのファイルの終わりを示し、プロンプトを終了します。コンソールにはAuthentication error
が表示されますが、これは予想されることです。
不正なパスワードを入力しているときにsu
を強制終了する最善の方法は、 Control+U に続く Control+D。これにより、迷惑な遅延が回避されます。また、入力をクリアすることもできます Control+U パスワードをもう一度入力してください。
Control+U 現在のテキスト行をクリアするコマンドであり、シェルでも(おそらく他の場所でも)機能します。現在入力されているパスワードをクリアするためにsu
と連携しているように見えるのもいいことです。
使用する Control+C 動作しないようですが、何らかの理由でsu
が無視しているようです。プロセスを開始したユーザーがsetuidのためにプロセスを強制終了できないことは正しくありません-su
またはSIGTERM
を別の端末から使用して強制終了すると、SIGQUIT
は完全に正常に終了します(それを開始したユーザーとして)。 SIGINT
は機能しないので、su
はおそらく無視します。
Control+D 空のパスワード入力で瞬時に実行中のsu
を殺すための唯一の方法のようです-テキストが入力された場合、 Control+D 3秒の遅延が発生します(実際に正しいパスワードを入力していない場合、この場合...ルートシェルが起動します)。