追加読書

追加読書

私は/etc/inittab次の行を使用します。

ttyS0::respawn:/bin/login

シリアルポートに接続する場合は、ログインプロンプトが表示されます。しかし、引き続き次のような内容が繰り返されます。

[hostname] login: 
Login timed out [hostname] login: 
Login timed out [hostname] login: 

どのように停止してタイムアウトを防ぐことができますか?

したがって、コメントの内容を明確にするために、次のようにします。

  • ログインタイムアウトは通常の期待される動作です。
  • loginもはやタイムアウトが発生しないように、私のコンピュータの動作を変更したいと思います。
  • 他のLinuxディストリビューションでは、LOGIN_TIMEOUTこの回答の説明に従って編集できます。/etc/login.defsttyログインタイムアウトの変更 - ArchLinux
  • Busyboxでは動作しません。

ベストアンサー1

あなたが見つけたように、loginプログラムは特定の時間入力が受信されない限りタイムアウトするように設定することができ、しばしば設定されます。この動作には、未使用のダイヤルアップ回線を開いておくことから、世界中はあなたが画面をきれいにしたいです。。同様に、ここと同じようにそれをしたくない理由があります。まず、モデムがない場合、回線を切断するために電話を切る理由はありません。

残念ながら、loginこれに関しては様々な計画が異なる。loginDebian のログインパッケージは設定ファイルに/etc/login.defs従います。私はLOGIN_TIMEOUT0に設定されました。ただし、他のloginプログラムには構成できず、配線できない機能があります。login世界にたった一つのプログラムしかありません。 ☺

FreeBSDのプログラムloginは - ああ! - そうです。loginBusyboxに組み込まれたプログラムも同様です。前者は300秒のタイムアウトを持っていますが、後者は300秒です。わずか60秒

Busybox コードはコンパイル時定数です。この動作を無効にするには、プログラムのソースコードを実際に修正して再構築する必要があります。すべてloginFreeBSDプログラムコードのコメントこれがコンパイル時定数ではなくランタイム変数である理由を説明します/usr/bin/login

いくつかの緩和戦略があります。一つは - ああ! -getty最新の投稿を確認してください。 FreeBSDは通常、0に設定された機能を持つloginFreeBSDによって呼び出されます。 Busyboxにも同様のオプションがあります。どちらも、ログインしていないアイドルシリアル端末が常に表示されるプロンプトにあり、タイムアウトが開始されないことを意味します。gettyto/etc/gettydefsgetty-tlogin:gettylogin

getty仮想端末では直接使用しません。だからFreeBSDの場合はとても簡単です。login-promptプログラムは、ユーザーが Enter キーを押すまで待ち​​ます。 Linuxでは、前述のようにタイムアウトを解除しますlogin.defs

しかし、シリアルラインの実際の端末にはまだgetty

追加読書

おすすめ記事