Bagaimana cara melihat detail yang ditunjukkan Ubuntu pada saat login kapan saja?


27

Ketika saya masuk ke sistem ubuntu saya, ini menunjukkan kepada saya pesan ini, Bagaimana saya bisa melihatnya kapan saja? Saya mencoba lari . .bashrctetapi tidak berhasil.

Welcome to Ubuntu 12.10 LTS (GNU/Linux 3.2.0-24-virtual x86_64)

 * Documentation:  https://help.ubuntu.com/

  System information as of Sat Jul 13 06:16:35 UTC 2013

  System load:  0.55              Processes:           96
  Usage of /:   8.1% of 68.74GB   Users logged in:     0
  Memory usage: 55%               IP address for eth0: 198.xx.xxx.xxx
  Swap usage:   0%                IP address for eth1: xxx.1x0.xx.xxx

  => There is 1 zombie process.

  Graph this data and manage this system at https://landscape.canonical.com/

223 packages can be updated.
134 updates are security updates.

Last login: Mon Jul  8 17:47:05 2013 

Sedih karena sebenarnya tidak ada perintah standar untuk hanya menyelesaikan ini, dan metode berubah begitu sering sehingga jawaban yang diterima dan penggantinya keduanya sudah usang!
nealmcb

Jawaban:


16

Anda dapat menunjukkan kapan saja ketika Anda ingin pesan ini - m essage o f t dia d ay - menggunakan perintah berikutnya di terminal:

cat /etc/motd

atau lebih baik:

for i in /etc/update-motd.d/*; do if [ "$i" != "/etc/update-motd.d/98-fsck-at-reboot" ]; then $i; fi; done

Jika Anda ingin melihat pesan ini setiap kali ketika Anda membuka terminal, cukup masukkan salah satu baris di atas pada akhir ~/.bashrcfile (Anda dapat membukanya dengan gedit ~/.bashrcperintah).

The / etc / motd adalah file di Unix-seperti sistem yang berisi "pesan hari", yang digunakan untuk mengirim pesan umum untuk semua pengguna, dengan cara yang lebih efisien daripada mengirim mereka semua pesan e-mail.

Lebih lanjut tentang: http://en.wikipedia.org/wiki/Motd_(Unix)

Terkait: Bagaimana / etc / motd diperbarui?


Pesan kesalahan pemakaian yang sama, tetapi lebih pendek (karena dari waktu ke waktu konten untuk /etc/update-motd.d berubah): untuk i di /etc/update-motd.d/*; do $ i 2> / dev / null; selesai
luis_js

cat /etc/motdSayangnya, Anda tidak dapat lagi , seperti yang dicatat orang lain. Dan itu telah berubah dua kali sejak itu. (Mengapa tidak ada perintah standar untuk melakukan ini?
Huh

32

Sepertinya itu berubah. Dengan Ubuntu 16.04 tidak ada /etc/motdtetapi Anda bisa melakukannya cat /var/run/motd.dynamic.


1
Saya harus menggunakan metode ini di Ubuntu 14.04.
J Smith

9
Perhatikan bahwa /var/run/motd.dynamicitu hanyalah keluaran statis yang di-cache saat terakhir kali dijalankan, saat masuk. Untuk benar-benar melihat output langsung lagi, Anda harus menjalankan skrip yang menghasilkannya, yang ada di /etc/update-motd.d(pada tulisan ini, di Ubuntu 16.04.4 LTS)
Aaron Wallentine

Pada Ubuntu 19.04, sekarangcat /var/run/motd.dynamic.new
Adam Erickson

7

Ubuntu menjalankan ini saat login:

/usr/bin/landscape-sysinfo

Anda cukup menjalankannya melalui terminal menggunakan perintah berikut:

landscape-sysinfo

Menarik. Tapi itu hanya satu bagian dari motd penuh.
nealmcb

3

Anda belum mengaktifkan mode diam seperti yang saya lihat. Jika Anda mengaktifkan mode masuk diam, jawaban dalam solusi sebelumnya tidak akan berfungsi.

Anda dapat melihat motdpesan di salah satu/var/run/motd.dynamic dan /run/motd.dynamicyang dihasilkan terakhir kali pengguna masuk dalam mode non-hening . Kedua file menunjuk ke inode yang sama yang berarti mereka adalah tautan keras.

Informasi ini statis setelah Anda masuk jika Anda tidak masuk mode hening . File tidak dihasilkan jika Anda adalah pengguna pertama yang masuk ke sistem dan jika Anda memiliki .hushloginfile. Jika Anda memiliki pengguna yang tidak memiliki .hushloginfile, Anda akan melihat konten basi ketika Anda mencoba mengaksesnya.

Cara terbaik yang dapat saya pikirkan adalah dengan menciptakan .hushlogin hanya dengan melakukan touch ~/.hushlogin.

Edit kamu .bashrc file dan tambahkan konten seperti yang telah ditunjukkan oleh @Radu Rădeanu:

for i in /etc/update-motd.d/*; do if [ "$i" != "/etc/update-motd.d/98-fsck-at-reboot" ]; then $i; fi; done

Jadi, setiap kali Anda menjalankan . .bashrc, Anda akan melihat pesan baru alih-alih pesan statis.

Catatan: .bashrcdijalankan untuk semua shell interaktif non-login dan karenanya Anda akan melihat pesan ini ketika Anda membuka shell interaktif dengan mengetik bash.


2

Saya kira ini dikelola oleh PAM, via /etc/pam.d/login, cari motd(pesan hari ini).

Anda dapat menghasilkan bagian statis dari pesan itu cat /etc/motd. Saya tidak memiliki bagian dinamis yang Anda perlihatkan, jadi saya tidak dapat membantu dengan itu.


2

Seperti yang dicatat beberapa kali, skrip di bawah /etc/update-motd.dadalah apa yang memberikan hasil khas yang ditunjukkan saat masuk; lihat update-motd(5). Tetapi ada sedikit atau tidak ada kebutuhan untuk menemukan kembali roda, dengan menulis sendiri itu bersama. Gunakan run-parts(8)sebagai gantinya, yang disediakan hanya untuk tujuan itu:

sudo run-parts /etc/update-motd.d

Inilah yang dilakukan pam_motd(8)modul PAM, berjalan sebagai root, setelah otentikasi pengguna dan sesaat sebelum membuka shell login pengguna. Satu atau lebih dari skrip biasanya perlu dijalankan sebagai root, jadi jangan tinggalkan skripnya sudo, atau Anda mungkin akan melihat kesalahan.


1

Anda dapat menjalankan landscape-sysinfo untuk informasi sistem dan

/usr/lib/update-notifier/update-motd-updates-available

untuk informasi tentang paket.


jelas ini hanya berfungsi jika Anda telah menginstal lansekap. Ini adalah alat komersial (bukan gratis) (bagi mereka yang tidak mengetahuinya).
aenw

Saya mendapatkan: find: ‘/var/lib/apt/lists/partial’: Permission denieddanmktemp: failed to create file via template ‘/var/lib/update-notifier/tmp.XXXXXXXXXX’: Permission denied
nealmcb

1

Sepertinya keluaran itu dihasilkan oleh skrip yang terletak di folder /etc/update-motd.d;
Jika Anda masuk ke direktori itu, Anda dapat menjalankan masing-masing skrip untuk berbagai bit informasi; atau Anda dapat melihat sumber script untuk melihat perintah itu benar-benar berjalan untuk mendapatkan informasi itu, yang tampaknya perubahan dari rilis ke rilis (menggunakan cat, atau editor teks, seperti nano, pico,emacs , vim, dll).

Contoh:

$ ll /etc/update-motd.d/
total 44
drwxrwxr-x   2 root root 4096 Feb 25 21:27 ./
drwxr-xr-x 110 root root 4096 Feb 25 21:33 ../
-rwxr-xr-x   1 root root 1220 Oct 22  2015 00-header*
-rwxr-xr-x   1 root root 1157 Jun 14  2016 10-help-text*
-rwxr-xr-x   1 root root  334 Jan 12 14:30 51-cloudguest*
-rwxr-xr-x   1 root root   97 May 24  2016 90-updates-available*
-rwxr-xr-x   1 root root  299 Jul 22  2016 91-release-upgrade*
-rwxr-xr-x   1 root root  111 May 11  2017 97-overlayroot*
-rwxr-xr-x   1 root root  142 May 24  2016 98-fsck-at-reboot*
-rwxr-xr-x   1 root root  144 May 24  2016 98-reboot-required*
-rwxrwxr-x   1 root root 1204 Jan 15 19:11 99-one-click*

Informasi ini terkini untuk penulisan ini dan Ubuntu 16.04.4 LTS.


1

Jawaban Aaron Wallentine menuntun saya ke solusi saya. "Sepertinya keluaran itu dihasilkan oleh skrip yang terletak di folder/etc/update-motd.d . Jika Anda masuk ke direktori itu, Anda dapat menjalankan skrip individual untuk bit info yang berbeda."

Setiap skrip dalam folder /etc/update-motd.ddijalankan, saya percaya, sesuai dengan jumlah yang mereka miliki dalam nama mereka saat login. Sebagai contoh, tambang adalah:

10-header 30-sysinfo  32-site  35-motd  98-autoreboot-warn

Anda dapat menjalankan masing-masing secara terpisah untuk menampilkan data mereka. misalnya:

cd /etc/update-motd.d
sudo ./10-header  or  sudo ./30-sysinfo**

Anda bisa menjalankan semuanya bersama-sama seperti ini:

sudo /etc/update-motd.d/10-header ; sudo /etc/update-motd.d/30-sysinfo ; ... menggunakan ; simbol (semi-colon) untuk menautkan perintah.

tapi siapa yang ingin mengetik semua itu, saya akhirnya mengubah string perintah yang lama tertaut menjadi skrip shell.

Ubah ke direktori bin:

cd /bin

buat file, saya namakan milik saya "clr" karena saya menggunakannya untuk menghapus layar saya juga, panggil punyamu:

sudo touch clr

Jadikan skrip Anda dapat dieksekusi:

sudo chmod +x clr

Saya menggunakan nano untuk mengedit milik saya, gunakan favorit Anda:

sudo nano clr

Kemudian, tambahkan string perintah lama dari sebelumnya ke file Anda, ingatlah untuk menggunakan file motd Anda, bukan milikku, karena akan berbeda:

clear ; sudo /etc/update-motd.d/10-header ; sudo /etc/update-motd.d/30-sysinfo ; sudo /etc/update-motd.d/ ; sudo /etc/update-motd.d/32-site ; sudo /etc/update-motd.d/35-motd ; sudo /etc/update-motd.d/98-autoreboot-warn

Simpan, dan jalankan setiap kali untuk melihat motd Anda baru saja diperbarui, perhatikan saya menambahkan clear ;di tambang, jadi ketika saya mengetik clritu akan menghapus layar saya dan menampilkan statistik yang diperbarui.

Saya pikir hanya itu yang saya dapat, semoga membantu seseorang.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.