
Я хотел бы отобразить 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
плагинкоторый управляет использованием swap. К сожалению, плагин, который показывает использование swap, также управляет использованием памяти, поэтому его отключение отключило оба:
$ 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/
Это можно настроить для MOTD с помощью /etc/landscape/client.conf
файла конфигурации:
[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% *//'
Это должно сместить любую запись рядом с записью «Обмен» туда, где была запись «Обмен».