私は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 にアクセスできないため、tty1
X は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/tty1
。grub.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
ルート所有権を変更しないでください。
ルートとして実行されているプロセスを表示できますかtty0
?fuser /dev/tty0
一般的にしてはいけません。
[email protected]
定義がありますか?その場合、問題が発生する可能性があります。/dev/tty0
通常のログインには絶対に使用しないでください。