Ubuntu, кастомный MOTD
При подключении по SSH к свежему Ubuntu-серверу по умолчанию вываливается много лишнего текста: реклама MicroK8s, напоминания про Ubuntu Pro, статус обновлений, system load, ссылки на документацию и прочий шум. Подобное немного отвлекает.
MOTD генерируется из набора скриптов в /etc/update-motd.d/.
При этом строка вида:
Last login: Fri Jan 16 13:47:16 2026 from 185.200.107.195
Это не MOTD — ее печатает сам SSH.
В Ubuntu MOTD по умолчанию динамический и собирается из десятка исполняемых файлов. Типичный список /etc/update-motd.d/ выглядит примерно так:
- 00-header — Welcome to Ubuntu
- 10-help-text — Documentation / Management / Support
- 50-motd-news — реклама и новости
- 90-updates-available — напоминания об обновлениях
- 91-contract-ua-esm-status — Ubuntu Pro / ESM
- и еще несколько служебных скриптов
В этом примере после изменений останется только:
- свое приветствие
- минимальную полезную информацию (например, hostname и uptime)
- строку Last login
Создаем собственный файл:
sudo nano /etc/update-motd.d/01-mymotd
Пример содержимого:
#!/bin/sh
echo ""
echo "Mydomain.com"
echo "Node: $(hostname)"
echo "Uptime: $(uptime -p)"
echo ""
Делаем исполняемым:
sudo chmod +x /etc/update-motd.d/01-mymotd
Далее отключаем все стандартные скрипты Ubuntu. Самый простой и чистый способ — снять executable-флаг со всего, кроме своего файла:
sudo chmod -x /etc/update-motd.d/*
sudo chmod +x /etc/update-motd.d/01-mymotd
Проверка:
ls -l /etc/update-motd.d/
Исполняемым должен остаться только созданный ранее скрипт.
Теперь переподключаемся по SSH. Итоговый вывод должен выглядеть примерно так:
Mydomain.com
Node: mydomain.com
Uptime: up 1 day, 1 hour, 56 minutes
Last login: Fri Jan 16 13:47:16 2026 from 185.200.107.195
admin@mydomain.com:~$