jak mogę usunąć czysty ekran przed zalogowaniem

9

Na serwerze Ubuntu, jak mogę uniknąć wyczyszczenia ekranu tuż przed wyświetleniem ekranu logowania?

Próbuję odczytać komunikat o błędzie w jednej z usług i dostaję ten irytujący czysty ekran i nie mogę przewijać w górę za pomocą shift-pageUp.

Jorge Molina
źródło
1
Komunikaty o błędach najprawdopodobniej zostaną zarejestrowane w pliku w /var/log/. Zaczynam patrzeć na boot.logi syslog.
Rinzwind
Dzięki za odpowiedź Rinzwind. Tak, wiem o tym, ale w tym celu muszę zalogować się do systemu, a czasem nie jest to możliwe. Chcę tylko w łatwy sposób sprawdzić, co się stało podczas rozruchu z konsoli, a wyraźny ekran przy logowaniu nie pozwala mi tego zobaczyć.
Jorge Molina
1
Nadal muszę usunąć czysty ekran przed ekranem logowania. Musi być gdzieś Dziękuję.
Jorge Molina,
2
To denerwujące, że nadal nie ma wygodnego sposobu, aby gdzieś się zalogować. Ilekroć mam do czynienia z takim problemem, wyjmuję aparat, robię krótki klip i odtwarzam go w zwolnionym tempie. : - /
htorque
1
Aby zobaczyć komunikaty rozruchowe, możesz sprawdzić pliki /var/log/boot.log, / var / log / syslog, / var / log / dmesg.
Jorge Molina

Odpowiedzi:

7

dla systemd ustawiono TTYVTDisallocatena no.

Aby to osiągnąć, uruchom systemctl edit getty@tty1 i wprowadź poniższy kod

[Service]
TTYVTDisallocate=no
sdhd
źródło
Korzystam z serwera Ubuntu 16.04 i to jest jedyna rzecz, która działała dla mnie. Nie potrzebowałem żadnej innej odpowiedzi.
stefansundin
2
Serwer 16.4, pracował dla mnie. Użyłem tego bardziej szczegółowego opisu
Zefiro
Bardziej szczegółowy opis podany przez @Zefiro również działał dla mnie w Raspbian Jessie, na którą systemctl editnarzekałem Unknown operation 'edit'.. Dzięki za ten link.
Ruslan
4

Wyświetlanie ostatniego ekranu komunikatów wyświetlanych podczas uruchamiania

Podczas uruchamiania serwera Ubuntu wyświetlane wiadomości są zwykle zapisywane w tty7 (siódma wirtualna konsola). Po zakończeniu uruchamiania zostaniesz przełączony na tty1, gdzie pojawi się monit o zalogowanie. Dlatego komunikaty rozruchowe nie są w rzeczywistości usuwane; po prostu przełączasz się na inną konsolę niż ta, która je zawiera.

Aby wyświetlić je ponownie, możesz przełączyć się na tty7, naciskając Alt + F7. Możesz wrócić do tty1 za pomocą Alt + F1 (i do drugiego za pomocą Alt + F2 i tak dalej). Nie dotyczy to (i nie powinno ) większości systemów Ubuntu Server, ale gdy GUI jest uruchomiony, należy użyć Ctrl + Alt + F1, aby przełączyć się na tty1 (i Ctrl + Alt + F2 dla tty2 i tak dalej).

Zapobiega wyczyszczeniu ekranu po wylogowaniu użytkownika, dzięki czemu tekst z jego sesji jest widoczny w kolejnej sesji

W twoim katalogu domowym znajduje się plik o nazwie .bash_logout, który zawiera coś takiego:

if [ "$SHLVL" = 1 ]; then
    [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
fi

To właśnie powoduje wyczyszczenie ekranu podczas wylogowywania. Aby temu zapobiec, skomentuj wszystkie te wiersze, aby wyglądało to tak:

#if [ "$SHLVL" = 1 ]; then
#    [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
#fi
Eliah Kagan
źródło
Dziękuję za informację, ale to nie rozwiązuje mojego problemu. Szukam tylko sposobu na usunięcie polecenia wyczyść ekran przed pierwszym ekranem logowania.
Jorge Molina
@Jorge Molina Czy nie możesz wyświetlić tych wiadomości, przełączając się na 7. konsolę wirtualną (Alt + F7)?
Eliah Kagan
Tak, mogę. Myślę, że na razie powinno to wystarczyć. Dziękuję Ci!
Jorge Molina,
@Jorge Molina Zredagowałem mój post, aby uwzględnić te informacje i rozwinąłem je z korzyścią dla osób, które mogą mniej znać wirtualne konsole / wirtualne terminale.
Eliah Kagan
Właśnie zainstalowałem Ubuntu Server 16.4 LTS i są tylko zaciski ALT-F1 do ALT-F6, nic poza tym.
Zefiro,
3

Po wielu godzinach googlingu znalazłem rozwiązanie w tym wątku i tym pytaniu .

Najpierw dodaj console=tty1do swojego GRUB_CMDLINE_LINUX(proponuję również dodać noplymouthdo inhibit plymouthi jego bezużyteczny ekran powitalny).

#> sudo vi /etc/default/grub

GRUB_CMDLINE_LINUX="console=tty1 noplymouth"

Wymusza to wydrukowanie dziennika jądra tty1zamiast tty7unikania ttyprzełączania przed monitem o zalogowanie.

Następnie wystarczy wejść /etc/initi edytować jeden lub więcej tty1.conf, tty2.conf, tty3.conf, tty4.conf, tty5.conf, tty6.conflub console.conf. Zredagowałem je wszystkie, dodając --noclearopcję do gettypolecenia. Na przykład edycja tty1.conf:

#> sudo vi /etc/init/tty1.conf

będziesz musiał wymienić:

respawn
exec /sbin/getty -8 38400 tty1

z:

respawn
exec /sbin/getty -8 38400 --noclear tty1

To wszystko, uruchom, sudo update-gruba teraz twój system powinien uruchomić się w jednym, ttybez czyszczenia.

Avio
źródło
1
Mogę się mylić, ale ma jedną potrzebę update-grubpo edycji/etc/default/grub
nhed
1
Tak, masz rację, sudo update-grubkonieczne jest zregenerowanie grub.cfg, dzięki za korektę.
Avio