コンピュータは/dev/tty1の代わりに/dev/tty0として起動します。

コンピュータは/dev/tty1の代わりに/dev/tty0として起動します。

私はDebian Bookwormを実行し、同じレベルにアップグレードし、最新のソフトウェアをインストールした2台のコンピュータを持っています。どちらのシステムも、Xを起動する前に実行する必要があるテキスト端末から起動するように構成されています。

問題は、1台のコンピュータが/dev/tty0代わりに起動することです。/dev/tty1これは、コンピュータ 2 で実行される xinit コマンドがコンピュータ 1 で動作しないことを意味します。

コンピュータ1のカーネルは、/dev/tty0次の権限で起動します。

crw------- 1 ben  tty 4, 0 May 23 16:46 /dev/tty0
crw--w---- 1 root tty 4, 1 May 23 16:46 /dev/tty1
crw------- 1 ben  tty 4, 2 May 23 16:13 /dev/tty2

コンピュータ2のカーネルは、/dev/tty1次の権限で起動します。

crw--w---- 1 root tty 4, 0 May 23 05:55 /dev/tty0
crw--w---- 1 ben  tty 4, 1 May 23 16:29 /dev/tty1
crw------- 1 ben  tty 4, 2 May 23 16:13 /dev/tty2

コンピュータ2では動作しますが、コンピュータ1では動作しないXを起動するコマンドは次のとおりです.

xinit /home/ben/.xinitrc -- /usr/bin/X :0 vt1

ユーザ ben はコンピュータ 1 にアクセスできないため、tty1X はno permissionメッセージで失敗します。

コンピュータ1でXを起動するには、ユーザーbenは使用するxinitコマンドを変更してvt2からナビゲートしてtty2実行する必要があります。

/dev/tty1私にとっては、この機能をコンピュータ1で利用できないことが混乱しています。

コンピュータ1に表示される端末は次のとおりです。

Ctrl+ alt+F1受信/dev/tty0

Ctrl+ alt+F2受信/dev/tty2

Ctrl+ alt+F3受信/dev/tty3

コンピュータ2では、端末に次のものが表示されます。

Ctrl+ alt+F1受信/dev/tty0

Ctrl+ alt+F2受信/dev/tty1

Ctrl+ alt+F3受信/dev/tty2

/dev/tty1コンピュータ1から始めるためにconsole=/dev/tty1grub.cfg正しく起動するにはファイルを書き換え、オプションを削除するにはリカバリディスクが必要です。

Systemdは両方のシステムで同じ出力を表示しますactive and running[email protected]

私の質問は:コンピュータ1が代わりに起動するようにコンピュータが/dev/tty1コンピュータ1に表示されるようにどのように設定しますか?dev/tty1/dev/tty0

他の場所では答えが見つからなかったので、ここに質問します。

編集:答えてくれた皆さんに感謝します!

cat /proc/fb は、両方のシステムで同じ内容 (0 nouveaudrmfb) を出力します。

起動時にtty0とtty1の所有権を変更するスクリプトを書くことができると思いますが、これは回避策のように感じます。ここの他のマシンにはこれは必要ありません。

答え1

デバイスノードは/dev/tty0実際には仮想コンソールドライバコードに実装されていますが、「現在選択されている仮想コンソールは何ですか」へのハードリンクのように動作します。

console=起動オプションの値は、/dev/tty0「一般的なKVM物理コンソール(および完全な仮想コンソールセット)をシステムコンソールとして使用したい」を意味します。発見したように、起動オプションはconsole=/dev/tty1効果がありません(少なくともx86ハードウェアでは)。

ログオフされたすべてのttyデバイスは通常root所有され、ログインしたユーザーはログインプロセスによって割り当てられたttyデバイスの所有権を持ちます。ログオフすると、ttyデバイスの所有権を所有者に返す必要がありますroot。ただし、ユーザーがben所有権を正常に取得した場合、/dev/tty0これを使用して(たとえば、SSH接続を介してログインするなど)、実際の仮想コンソールにローカルにログインした誰かのセッションにコンテンツを注入できることを意味できます(/dev/tty[1..N])。 。

所有権は/dev/tty0ルート所有権を変更しないでください。

ルートとして実行されているプロセスを表示できますかtty0fuser /dev/tty0一般的にしてはいけません。

[email protected]定義がありますか?その場合、問題が発生する可能性があります。/dev/tty0通常のログインには絶対に使用しないでください。

関連情報