как убрать экран очистки перед входом

9

На сервере Ubuntu, как я могу избежать очистки экрана перед тем, как появится экран входа?

Я пытаюсь прочитать сообщение об ошибке на одном из сервисов, и у меня появляется этот надоедливый чистый экран, и я не могу прокрутить с помощью shift-pageUp.

Хорхе Молина
источник
1
Сообщения об ошибках, скорее всего, будут зарегистрированы в файле в /var/log/. Я бы начал смотреть на boot.logи syslog.
Rinzwind
Спасибо за ваш ответ Rinzwind. Да, я знаю это, но для этого мне нужно войти в систему, а иногда это невозможно. Я просто хочу простой способ проверить, что происходило при загрузке с консоли, и чистый экран при входе в систему не позволяет мне это увидеть.
Хорхе Молина
1
Мне все еще нужно удалить экран очистки перед входом в систему. Должно быть где-то. Спасибо
Хорхе Молина
2
Раздражает, что, похоже, до сих пор нет удобного способа регистрировать загрузочные сообщения где-нибудь. Всякий раз, когда я сталкиваюсь с такой проблемой, я вынимаю свою камеру, снимаю короткий клип и воспроизводлю его в замедленном режиме. : - /
htorque
1
Для просмотра загрузочных сообщений вы можете проверить файлы /var/log/boot.log, / var / log / syslog, / var / log / dmesg.
Хорхе Молина

Ответы:

7

для systemd установлено TTYVTDisallocateзначение no.

Для этого запустите systemctl edit getty@tty1 и введите код ниже

[Service]
TTYVTDisallocate=no
SDHD
источник
Я использую сервер Ubuntu 16.04, и это единственное, что сработало для меня. Мне не нужны были другие ответы.
stefansundin
2
16.4 сервер, у меня работал. Я использовал это более подробное описание
Zefiro
Более подробное описание, данное @Zefiro, также работало для меня в Raspbian Jessie, где systemctl editжаловались Unknown operation 'edit'.. Спасибо за эту ссылку.
Руслан
4

Просмотр последнего экрана сообщений, появившихся во время загрузки

При загрузке Ubuntu Server сообщения, которые вы видите, обычно записываются в tty7 (седьмая виртуальная консоль). После завершения загрузки вы переключаетесь на tty1, где вам предлагается войти в систему. Таким образом, загрузочные сообщения на самом деле не очищаются; вы просто переключаетесь на консоль, отличную от той, которая их содержит.

Чтобы просмотреть их снова, вы можете переключиться на tty7, нажав Alt + F7. Вы можете переключиться обратно к tty1 с помощью Alt + F1 (и ко второму с помощью Alt + F2 и т. Д.). Это не (и не должно ) применяться в большинстве систем Ubuntu Server, но когда работает графический интерфейс, необходимо использовать Ctrl + Alt + F1 для переключения на tty1 (и Ctrl + Alt + F2 для tty2 и т. Д.).

Предотвращение очистки экрана после выхода пользователя из системы, чтобы текст из его сеанса был виден в следующем сеансе

В вашем домашнем каталоге есть файл с именем .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
Элия ​​Каган
источник
Спасибо за информацию, но это не решает мою проблему. Я только ищу способ удалить команду очистки экрана перед первым экраном входа в систему.
Хорхе Молина
@ Jorge Molina Не можете ли вы просмотреть эти сообщения, переключившись на 7-ю виртуальную консоль (Alt + F7)?
Элия ​​Каган
Да, я могу. Я думаю, что это должно сработать на данный момент. Спасибо!
Хорхе Молина
@Jorge Molina Я отредактировал свой пост, включив в него эту информацию, и расширил его для людей, которые могут быть менее знакомы с виртуальными консолями / виртуальными терминалами.
Элия ​​Каган
Я только что установил Ubuntu Server 16.4 LTS и есть только терминалы от ALT-F1 до ALT-F6, ничего кроме.
Zefiro
3

После долгих поисков я нашел решение в этой теме и в этом вопросе .

Сначала добавьте 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без очистки.

Avio
источник
1
Я могу ошибаться, но нужно ли это update-grubпосле редактирования/etc/default/grub
nhed
1
Да, вы правы sudo update-grub, необходимо восстановить grub.cfg, спасибо за исправление.
Avio