Ubuntu Linux (Server版)在 ssh 登入後, 會秀出下述訊息: (cat /etc/motd # 亦可看到)
Linux desktop 2.6.28-14-server #47-Ubuntu SMP Sat Jul 25 02:03:55 UTC 2009 x86_64
To access official Ubuntu documentation, please visit:
http://help.ubuntu.com/System information as of 二 1月 5 23:00:48 CST 2010
System load: 0.02 Memory usage: 30% Processes: 152
Usage of /: 9.4% of 732.45GB Swap usage: 26% Users logged in: 0=> There is 1 zombie process.
Graph this data and manage this system at https://landscape.canonical.com/
*** System restart required ***
No mail.
Last login: Tue Jan 5 11:49:45 2010 from user-desktop.local
但是在 Debian Linux 或 一般Ubuntu Desktop 都沒看到這些訊息, 於是來找找是怎麼產生的.
註: /etc/motd 是已經產生好的文字內容, 由此看不出任何東西.
ssh 遠端登入訊息
- ssh 遠端登入的訊息內容, 是由 /etc/motd 呈現的.
- 於每次登入時, /etc/motd 這個檔案就會被修改一次.(由此可見不是由 crontab 修改, 而是於每次登入時, 自動修改此檔案)
ssh 遠端登入 執行步驟
由於是每次登入時, 自動修改 /etc/motd, 於是找到下述:
- vim /etc/pam.d/sshd
# Print the message of the day upon successful login.
session optional pam_motd.so # [1] - 看起來是 PAM 做的, 詳見: pam_motd - display the motd file
pam_motd.so 執行程式
pam_motd.so 會執行哪些程式就沒去追了, 由 motd 倒是直接找到產生 /etc/motd 的程式、執行順序.
於 /etc/update-motd.d/ 的目錄, 找到 00 ~ 99 開頭的檔案, 於是試著執行看看(從 00-header 執行到 99-reboot-required), 就會看到 /etc/motd 的資訊了.
註: 從 00 執行到 99, /etc/motd 就產生出來了. 🙂
- ls /etc/update-motd.d/
00-header
50-landscape-sysinfo
90-updates-available
91-release_upgrade
99-reboot-required
關於 update-motd 的筆記
- 00-header - 此程式會執行 "uname -snrvm" 取得 CPU、與系統資訊 等.
- /usr/share/landscape/landscape-sysinfo.wrapper # 取得系統資源狀態、zombile 等訊息.
- /etc/motd.tail # 結尾補上 ubuntu 的廣告資訊. XD
- 註1: /usr/share/landscape/landscape-sysinfo.wrapper 的內容主要是 由此
/usr/bin/landscape-sysinfo
的 python script 產生的. - 註2: /usr/bin/landscape-sysinfo 需安裝 landscape-common 的套件 (apt-get install landscape-common)