Linux防健忘日誌No.81-Ubuntu 12.04.4 motd修改以及codetrace
今天上課期間趁老師在講人生大道理時,突然一時興起想研究一下motd…
也就是在terminal上一login所顯示的資訊,motd的全名為Message Of The Day
通常長這副德行:
Welcome to Ubuntu 12.04.4 LTS (GNU/Linux 3.5.0-47-generic x86_64)
* Documentation: https://help.ubuntu.com/
System information as of Tue Mar 25 15:19:23 CST 2014
System load: 0.08 Processes: 109
Usage of /home: 32.6% of 916.39GB Users logged in: 0
Memory usage: 17% IP address for eth0: 192.168.1.30
Swap usage: 0% IP address for virbr0: 192.168.122.1
Graph this data and manage this system at:
https://landscape.canonical.com/
若已經login,可以cat /etc/motd顯示內容,但該文件的內容為動態產生的,是透過/etc/update-motd.d這個資料夾下的script去run,依照類似init.d內的順序去跑
隨便執行00-header就會跑出Welcome to Ubuntu 12.04.4 LTS (GNU/Linux 3.5.0-47-generic x86_64)
若vi 00-header,則會看到
[ -r /etc/lsb-release ] && . /etc/lsb-release
if [ -z “$DISTRIB_DESCRIPTION” ] && [ -x /usr/bin/lsb_release ]; then
# Fall back to using the very slow lsb_release utility
DISTRIB_DESCRIPTION=$(lsb_release -s -d)
fi
printf “Welcome to %s (%s %s %s)\n” “$DISTRIB_DESCRIPTION” “$(uname -o)” “$(uname -r)” “$(uname -m)”
其他的script依類推,可以去trace其他的file,
例如50-landscape-sysinfo是連接 /usr/share/landscape/landscape-sysinfo.wrapper
持續追蹤之後會發現主要的訊息是由 /usr/bin/landscape-sysinfo吐出來的
就可以看到用python寫的一支抓系統函數的程式
但trace這些是要幹嘛阿?…,其實沒有要幹嘛,可以加入自訂的訊息之外
還能看看別人寫的code,主要是這麼作能夠很快地知道要怎麼取得系統一些基本資料做學習
如果你只是想簡單的在motd下方加入你要的訊息,可以看一下99-footer這個腳本,可以找出只有一行code:
[ -f /etc/motd.tail ] && cat /etc/motd.tail || true
所以看來是讀取/etc/motd.tail這個檔案
預設是不存在的,你只要單純vi該檔案並且填入內容,就能夠簡單的附加資訊上去
若要用腳本去run,則就把你要run的自訂腳本加入/etc/update-motd.d資料夾底下。
Leave a comment
很抱歉,必須登入網站才能發佈留言。