bagaimana cara menghapus layar yang jelas sebelum masuk

9

Di server ubuntu, bagaimana saya bisa menghindari layar dibersihkan sebelum layar login muncul?

Saya mencoba membaca pesan kesalahan pada salah satu layanan dan saya mendapatkan layar yang menjengkelkan ini dan saya tidak dapat menggulir ke atas dengan shift-pageUp.

Jorge Molina
sumber
1
Pesan kesalahan lebih dari mungkin untuk dicatat dalam file /var/log/. Saya akan mulai melihat boot.logdan syslog.
Rinzwind
Terima kasih atas jawaban Anda, Rinzwind. Ya, saya tahu itu tetapi untuk itu saya harus masuk ke sistem dan kadang-kadang itu tidak mungkin. Saya hanya ingin cara mudah untuk memeriksa apa yang terjadi saat boot dari konsol dan layar yang jelas saat login tidak memungkinkan saya untuk melihatnya.
Jorge Molina
1
Saya masih perlu menghapus layar yang jelas sebelum layar masuk. Pasti ada di suatu tempat. Terima kasih.
Jorge Molina
2
Sangat menjengkelkan karena sepertinya masih belum ada cara yang nyaman untuk membuat pesan boot dicatat di suatu tempat. Setiap kali saya menghadapi masalah seperti itu, saya mengeluarkan kamera saya, mengambil klip pendek dan memutarnya kembali dalam gerakan lambat. : - /
htorque
1
Untuk melihat pesan-pesan boot Anda dapat memeriksa file /var/log/boot.log, / var / log / syslog, / var / log / dmesg.
Jorge Molina

Jawaban:

7

untuk systemd set TTYVTDisallocateke no.

untuk mencapai ini, jalankan systemctl edit getty@tty1 dan masukkan kode di bawah ini

[Service]
TTYVTDisallocate=no
sdhd
sumber
Saya menjalankan server Ubuntu 16.04, dan ini adalah satu-satunya hal yang berhasil untuk saya. Saya tidak membutuhkan jawaban lain.
stefansundin
2
Server 16,4, bekerja untuk saya. Saya menggunakan deskripsi yang lebih rinci ini
Zefiro
Deskripsi lebih rinci yang diberikan oleh @Zefiro juga bekerja untuk saya di Raspbian Jessie, di mana systemctl editdikeluhkan Unknown operation 'edit'.. Terima kasih atas tautannya.
Ruslan
4

Melihat layar pesan terakhir yang muncul saat boot

Saat Ubuntu Server melakukan boot, pesan yang Anda lihat biasanya ditulis ke tty7 (konsol virtual ketujuh). Saat booting selesai, Anda beralih ke tty1, di mana Anda diminta untuk masuk. Dengan demikian, pesan boot sebenarnya tidak dihapus; Anda cukup beralih ke konsol yang berbeda dari yang berisi konsol itu.

Untuk melihatnya lagi, Anda dapat beralih ke tty7 dengan menekan Alt + F7. Anda dapat beralih kembali ke tty1 dengan Alt + F1 (dan ke yang kedua dengan Alt + F2, dan sebagainya). Ini tidak (dan seharusnya tidak ) berlaku pada sebagian besar sistem Server Ubuntu, tetapi ketika GUI sedang berjalan, Ctrl + Alt + F1 harus digunakan untuk beralih ke tty1 (dan Ctrl + Alt + F2 untuk tty2, dan sebagainya).

Mencegah layar dibersihkan setelah pengguna keluar, sehingga teks dari sesi mereka terlihat di sesi berikutnya

Di direktori home Anda ada file bernama .bash_logout yang berisi sesuatu seperti:

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

Itulah yang menyebabkan layar dihapus saat logout. Untuk mencegah hal itu terjadi, beri komentar pada semua kalimat itu, jadi sepertinya:

#if [ "$SHLVL" = 1 ]; then
#    [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
#fi
Eliah Kagan
sumber
Terima kasih untuk info tetapi itu tidak memperbaiki masalah saya. Saya hanya mencari cara untuk menghapus perintah layar jernih sebelum layar masuk pertama.
Jorge Molina
@Jorge Molina Apakah Anda tidak dapat melihat pesan-pesan itu dengan beralih ke konsol virtual ke-7 (Alt + F7)?
Eliah Kagan
Ya saya bisa. Saya kira ini harus melakukan trik untuk saat ini. Terima kasih!
Jorge Molina
@Jorge Molina Saya telah mengedit posting saya untuk memasukkan informasi itu, dan memperluasnya untuk kepentingan orang-orang yang mungkin kurang terbiasa dengan konsol virtual / terminal virtual.
Eliah Kagan
Saya baru saja menginstal Ubuntu Server 16.4 LTS dan hanya ada terminal ALT-F1 ke ALT-F6, tidak ada yang di luar.
Zefiro
3

Setelah berjam-jam googling, saya menemukan solusi di utas ini dan pertanyaan ini .

Pertama, tambahkan console=tty1ke Anda GRUB_CMDLINE_LINUX(saya juga menyarankan untuk menambah noplymouthmenghambat plymouthdan splashscreen yang tidak berguna).

#> sudo vi /etc/default/grub

GRUB_CMDLINE_LINUX="console=tty1 noplymouth"

Ini memaksa log kernel untuk dicetak tty1alih-alih tty7dan menghindari ttysakelar sebelum prompt login.

Kemudian hanya pergi ke /etc/initdan mengedit satu atau lebih dari tty1.conf, tty2.conf, tty3.conf, tty4.conf, tty5.conf, tty6.confatau console.conf. Saya mengedit mereka semua menambahkan --noclearopsi ke gettyperintah. Misalnya, mengedit tty1.conf:

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

Anda harus mengganti:

respawn
exec /sbin/getty -8 38400 tty1

dengan:

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

Itu saja, jalankan sudo update-grubdan sekarang sistem Anda harus boot dalam satu ttytanpa membersihkannya.

Avio
sumber
1
Saya bisa saja salah tetapi perlu satu update-grubsetelah mengedit/etc/default/grub
nhed
1
Ya, Anda benar sudo update-grubperlu regenerasi grub.cfg, terima kasih atas koreksi.
Avio