
我想顯示沒有交換資訊的 MOTD,因為我的機器沒有交換。
我找到了指向顯示以下訊息的ls /etc/update-motd.d/50-landscape-sysinfo
文件的連結:/usr/bin/landscape-sysinfo
System load: 7.5 Processes: 434
Usage of /: 84.2% of 9.72GB Users logged in: 1
Memory usage: 5% IP address for eth0: 10.9.8.161
Swap usage: 0%
Graph this data and manage this system at:
https://landscape.canonical.com/
ls /etc/update-motd.d/50-landscape-sysinfo
我已經添加了和的內容/usr/bin/landscape-sysinfo
在pastebin上。我想Swap usage: 0%
從這條訊息中刪除,因為它可能會引起混亂。我不知道執行此操作的最佳方法是什麼,有什麼建議嗎?
答案1
一種方法是禁用sysinfo
插入處理交換使用。不幸的是,顯示交換使用情況的插件也處理記憶體使用情況,因此停用它會停用這兩個功能:
$ landscape-sysinfo --exclude-sysinfo-plugins=Memory
System load: 0.0 Users logged in: 3
Usage of /: 56.0% of 15.62GB IP address for eth0: 10.1.1.1
Processes: 202
Graph this data and manage this system at:
https://landscape.canonical.com/
可使用/etc/landscape/client.conf
設定檔為 MOTD 設定:
[sysinfo]
exclude_sysinfo_plugins = Memory
/usr/bin/landscape-sysinfo
另一種方法是透過編輯來處理 的輸出/etc/update-motd.d/50-landscape-sysinfo
(這實際上是 中文件的符號鏈接/usr/lib
,因此升級時您的更改可能會丟失)。就像是:
/usr/bin/landscape-sysinfo | sed 's/Swap usage: *[0-9]+%//'
如果清單中還有一項(例如第二個網路介面),這也會導致醜陋的輸出。
作為凱文指出,對於沒有交換的具體情況,可以整理輸出並簡化表達式:
/usr/bin/landscape-sysinfo | sed 's/Swap usage: *0% *//'
這應該會將交換條目旁邊的任何條目移動到交換條目所在的位置。