"askfirst" getty with systemd("このコンソールを有効にするには Enter キーを押します")

"askfirst" getty with systemd("このコンソールを有効にするには Enter キーを押します")

Jessieを搭載したDebianシステムで同様のメッセージが表示され、Enterキーを押すまでログインプロンプトが表示されないように端末を設定するにはsystemdどうすればよいですか?Press enter to activate this console

これは設定でinittab行うことができますが、askfirstどうすればよいですかsystemd

可能であればsystemd私は既存のユニットファイルを直接壊すよりも適切な設定ファイルを調整することを好みます。logind.confただし、残念ながら構成ファイルはこの場合役に立ちません。

答え1

/etc/inittabこれは設定で行うことができます。askfirst

実際にはできません。これはinitLinux System 5レプリカには存在しないBusyBoxメカニズムで、構成ファイルが同じではないいくつかの理由の1つですinit/etc/inittab

システム Linux オペレーティング・システムで同様の操作を実行する方法は、実行される実際の操作によって異なります。明らかにここにありますが、対話型端末ログインにのみこれを使用したくありません。

一般的な用途の1つはaskfirst次のとおりです。未使用の仮想端末の実行getty+システムはありません。login。 systemdでは、これにはデフォルト以外の設定は必要ありません。 systemdを使用すると、logind仮想端末がフォアグラウンドに切り替えられたときにのみパッケージサービスが要求に応じて開始されるようにすでに予約されています。切り替えられていない仮想端末(最初または「予約済み」の仮想端末ではない)では、端末ログインは実行されません。autovt@N.service

意味が少し異なります。仮想端末に切り替える前に、ブートgetty+システムを実行しないでください。loginそしてEnterを押しますgetty、オプションを開くか、プログラムを挿入してメッセージを印刷して接続する前に入力行を待つため、実装するのは少し難しいですgetty

Peter Orbaekのプログラムなど、少数のプログラムgettyにのみこれらのオプションがあります。ほとんど(例:Felix von LeitnerやFlorian La Roche)にはありません。 Gert Doeringなどの他のものには、モデムとすべてのアクセサリーが必要です。もちろん、仮想端末にはないので、仮想端末で使用するために適応させるのは少し面倒です。agetty--wait-crfgettymingettymgetty

--wait-crチェーンローディングは、メッセージを印刷してから端末から1行を読み取り(標準モードで)、チェーンロードを実行する仮想端末の単純なプログラムと同じです。これは非常に単純なプログラムです。

これらのオプションを使用したり、別のgettyプログラムを使用したり、ユーティリティチェーンローダを「前に」挿入したりすることは、gettyオーバーレイファイルの下に1つ以上のユニットファイルを作成する(設定を変更する)、単に自分が設計したローカルユニットファイルを指すことに関連します。 。/etc/systemd/systemsystemctl editExecStart[email protected][email protected]

追加読書

関連情報