Ubuntuサーバーで、ログイン画面が表示される直前に画面がクリアされないようにするにはどうすればよいですか?
サービスの1つでエラーメッセージを読み取ろうとすると、この煩わしい画面が表示され、shift-pageUpで上にスクロールできません。
Ubuntuサーバーで、ログイン画面が表示される直前に画面がクリアされないようにするにはどうすればよいですか?
サービスの1つでエラーメッセージを読み取ろうとすると、この煩わしい画面が表示され、shift-pageUpで上にスクロールできません。
回答:
systemd TTYVTDisallocate
がnoに設定されている場合。
これを達成するには、systemctl edit getty@tty1
以下のコードを実行して入力します
[Service]
TTYVTDisallocate=no
systemctl edit
不満を訴えましたUnknown operation 'edit'.
。そのリンクをありがとう。
起動中に表示されたメッセージの最後の画面を表示する
Ubuntu Serverが起動すると、通常、表示されるメッセージはtty7(7番目の仮想コンソール)に書き込まれます。起動が完了すると、tty1に切り替わり、ログオンするように求められます。したがって、ブートメッセージは実際にはクリアされません。それらを含むコンソールとは別のコンソールに切り替えるだけです。
それらを再度表示するには、Alt + F7を押してtty7に切り替えることができます。Alt + F1でtty1に切り替えることができます(Alt + F2で2番目に切り替える、など)。これはほとんどのUbuntu Serverシステムには適用されません(適用されるべきではありません)。ただし、GUIの実行中は、Ctrl + Alt + F1を使用してtty1に切り替える必要があります(tty2の場合はCtrl + Alt + F2など)。
ユーザーがログアウトした後に画面がクリアされないようにして、ユーザーのセッションからのテキストを後続のセッションで表示できるようにする
ホームディレクトリに.bash_logoutというファイルがあり、次のようなものが含まれています。
if [ "$SHLVL" = 1 ]; then
[ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
fi
これにより、ログアウト時に画面がクリアされます。これを防ぐには、これらの行をすべてコメントアウトして、次のようにします。
#if [ "$SHLVL" = 1 ]; then
# [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
#fi
グーグルで何時間も過ごした後、私はこのスレッドとこの質問で解決策を見つけました。
まず、に追加console=tty1
しますGRUB_CMDLINE_LINUX
(noplymouth
抑制plymouth
と無用のスプラッシュスクリーンに追加することもお勧めします)。
#> sudo vi /etc/default/grub
GRUB_CMDLINE_LINUX="console=tty1 noplymouth"
これにより、ログインプロンプトのtty1
代わりにカーネルログが強制的に出力されtty7
、tty
スイッチが回避されます。
それからちょうどに行く/etc/init
と、編集一つ以上のtty1.conf
、tty2.conf
、tty3.conf
、tty4.conf
、tty5.conf
、tty6.conf
またはconsole.conf
。コマンドに--noclear
オプションを追加してすべて編集しましたgetty
。たとえば、次のように編集しtty1.conf
ます。
#> sudo vi /etc/init/tty1.conf
交換する必要があります:
respawn
exec /sbin/getty -8 38400 tty1
と:
respawn
exec /sbin/getty -8 38400 --noclear tty1
これですべてです。実行するsudo update-grub
と、システムはtty
クリアせずにシングルで起動します。
update-grub
、編集後に必要になります/etc/default/grub
sudo update-grub
ですgrub.cfg
、訂正をありがとう、再生する必要があります。
/var/log/
。私が見て開始するboot.log
とsyslog
。