Гид по технологиям

Как настроить сообщение дня в Ubuntu

• 6 min read • Системное администрирование • Обновлено 23 Nov 2025
Настройка сообщения дня в Ubuntu
Настройка сообщения дня в Ubuntu

Кратко

Это руководство объясняет, как редактировать Message of the Day (MOTD) в Ubuntu: добавить статическое сообщение, убрать ненужные разделы и вставлять динамическую информацию с помощью скриптов. Также показаны лучшие практики безопасности, контроль прав и примеры скриптов.

Важно: MOTD показывается при входе в текстовый сеанс и при удалённом входе по SSH; графический вход обычно сообщение не отображает.

Быстрые ссылки

  • The Default Message of the Day
  • Adding a Custom Message
  • Removing Information
  • Adding Dynamic Information

Обложка: настройка сообщения дня в Ubuntu

Что такое MOTD

MOTD — это текст, который система показывает пользователю при входе в терминал. Он может содержать статические сообщения, динамические данные (например, обновления или статус системы) и любую информацию, которую вы хотите доносить до пользователей при каждом входе.

Краткое определение терминов:

  • MOTD: Message of the Day, сообщение, выводимое при входе.
  • pam_motd: PAM-модуль, который запускает скрипты для формирования MOTD.
  • /etc/update-motd.d: каталог со сценариями, которые генерируют части MOTD.
  • /etc/motd.tail: файл для добавления статического текста в конец MOTD.

Стандартное поведение MOTD

MOTD появляется при входе в Ubuntu в текстовом режиме. Если вы используете графическую среду, откройте виртуальный терминал сочетанием Ctrl+Alt+F1 (вернуться к графике можно с Ctrl+Alt+F7; Ctrl+Alt+F2..F6 — другие терминалы).

Виртуальные терминалы и MOTD на экране входа

По умолчанию Ubuntu собирает MOTD динамически: при входе pam_motd последовательно выполняет исполняемые скрипты из /etc/update-motd.d и объединяет их вывод. В результате вы видите сведения о версии системы, уведомления об обновлениях и лицензионные сообщения.

Пример стандартного MOTD с информацией о системе и обновлениях

Добавление собственного статического сообщения

Вы не редактируете напрямую /etc/motd, так как MOTD генерируется динамически. Для добавления статического текста используйте файл /etc/motd.tail — его содержимое добавляется в конец формируемого MOTD.

Откройте файл в текстовом редакторе (приведены примеры для Nano):

sudo nano /etc/motd.tail

Открытие файла motd.tail в редакторе Nano

Файл по умолчанию пуст. Добавьте строку или ASCII‑арт, затем сохраните Ctrl+O и выйдите Ctrl+X. В следующий раз при входе пользователи увидят ваш текст.

Пользовательское сообщение в MOTD после добавления в motd.tail

Чтобы моментально проверить изменения, выйдите из терминала командой:

exit

и войдите снова.

Проверка MOTD после повторного входа в систему

Удаление или отключение разделов MOTD

Каждый блок MOTD формируется отдельным скриптом в /etc/update-motd.d. Список файлов в каталоге можно посмотреть через автодополнение в терминале:

ls -l /etc/update-motd.d

Просмотр содержимого каталога /etc/update-motd.d

Скрипты исполняются в числовом порядке; префикс числа определяет позицию блока в итоговом сообщении. Чтобы убрать вывод конкретного скрипта, сделайте его неисполняемым, сняв бит выполнения:

sudo chmod -x /etc/update-motd.d/10-help-text

Удаление права на исполнение у скрипта MOTD

После следующего входа соответствующий раздел исчезнет из MOTD.

MOTD без отключённого раздела документации

Совет: вместо удаления прав можно переименовать файл, поставив перед числом букву, или создать резервную копию скрипта в другом каталоге.

Добавление динамической информации: пример с погодой

Вы также можете писать собственные скрипты, которые выводят динамические данные и включаются в MOTD. В качестве простого примера используем пакет weather-util, который печатает прогноз.

Установите пакет:

sudo apt-get install weather-util

Установка weather-util через apt

Получите ваш код ICAO (или местный код) на сайте с базой метеостанций, затем протестируйте команду вручную:

weather -i CODE

Запуск weather-util с кодом ICAO

Создайте новый скрипт в каталоге /etc/update-motd.d и откройте его в редакторе:

sudo nano /etc/update-motd.d/98-weather

Вставьте в файл следующий минимальный скрипт, заменив CODE на вашу метеостанцию:

#!/bin/sh

weather -i CODE

echo

Сохраните файл и сделайте его исполняемым:

sudo chmod +x /etc/update-motd.d/98-weather

Пример скрипта погоды в /etc/update-motd.d

Теперь при входе пользователи увидят текущий прогноз. Вместо weather-util вы можете вызывать любую консольную программу или собственный скрипт, который печатает текст.

MOTD с прогнозом погоды из скрипта

Когда это не сработает

  • MOTD не показывается при входе через некоторые графические диспетчеры и окружения рабочего стола. В таких случаях сообщение может быть скрыто системой входа.
  • Если pam_motd отключён в конфигурации PAM, скрипты не выполнятся.
  • Если скрипт в /etc/update-motd.d длительно выполняется или требует сетевых подключений, генерация MOTD может задерживаться или прерываться.

Альтернативные подходы

  • Редактировать /etc/motd напрямую — не рекомендуется, так как обновления системы могут перезаписывать файл и динамические скрипты окажутся неактивны.
  • Использовать systemd или cron для генерации отдельного файла /etc/motd.custom и добавлять его содержимое в /etc/motd.tail через периодические задачи.
  • Разделять статические и динамические части: статическое в /etc/motd.tail, динамическое через /etc/update-motd.d.

Ментальные модели и правила принятия решений

  • Правило простоты: для статических уведомлений достаточно motd.tail. Для периодической динамики — скрипт в update-motd.d.
  • Минимизация времени исполнения: скрипты в update-motd.d должны завершаться быстро. Если нужна длительная обработка, генерируйте кэш заранее и выводите его мгновенно.
  • Безопасность по умолчанию: скрипты должны принадлежать root и иметь ограниченные права исполнения.

Мини-методика внедрения MOTD в организации

  1. Определите содержание: уведомления об обновлениях, политики, контакты, статус инфраструктуры.
  2. Разделите контент на статический и динамический.
  3. Напишите скрипты, протестируйте локально, проверьте время исполнения.
  4. Настройте права: владелец root, права 755 или 744 (запрет записи для других).
  5. Документируйте изменения и создайте резервные копии оригинальных скриптов.

Чек-лист по ролям

Администратор:

  • проверить /etc/update-motd.d на ненужные скрипты
  • задать /etc/motd.tail для общих объявлений
  • обеспечить права и принадлежность файлов

Разработчик/DevOps:

  • написать лёгкие и быстрые скрипты
  • избегать откровенных вызовов сетевых ресурсов без таймаута
  • логировать ошибки в отдельный лог, а не в MOTD

Оператор поддержки:

  • знать процедуру отката: вернуть права исполнения или восстановить резервную копию
  • проверять MOTD после обновлений пакетов

Сниппеты и шпаргалка

Просмотреть каталог скриптов:

ls -la /etc/update-motd.d

Отключить скрипт:

sudo chmod -x /etc/update-motd.d/XX-name

Добавить статическое сообщение:

sudo nano /etc/motd.tail

Пример простого скрипта, возвращающего статус сервиса:

#!/bin/sh

if systemctl is-active --quiet myservice; then
  echo 'myservice: running'
else
  echo 'myservice: stopped'
fi

echo

Критерии приёмки скрипта:

  • вывод не занимает более 1 секунды в нормальных условиях;
  • скрипт завершает работу даже при отсутствии сети;
  • нет вывода секретов или чувствительной информации;
  • владелец root, права не превышают 755.

Безопасность и приватность

  • Никогда не выводите секреты, ключи или пароли в MOTD.
  • Ограничьте права на скрипты и файлы MOTD: владелец root; права 644 для файлов, 755 для исполняемых скриптов.
  • Если скрипт вызывает внешние команды, валидируйте и экранируйте их аргументы.
  • Для организаций с политикой конфиденциальности убедитесь, что MOTD не раскрывает персональные данные пользователей или другую чувствительную информацию.

Резервирование и откат

  • Перед изменениями создайте резервную копию каталога update-motd.d:
sudo cp -a /etc/update-motd.d /root/backup-update-motd.d-$(date +%F)
  • Чтобы откатить изменения, восстановите файлы и права из резервной копии и перезапустите сессии.

Когда использовать другие инструменты

  • Если вы управляете большим парком серверов, рассмотрите конфигурационные менеджеры (Ansible, Puppet, Chef) для распространения изменений MOTD.
  • Для сложных динамических панелей состояния лучше использовать отдельный dash/monitoring и ссылаться на него в MOTD, а не пытаться вывести всю информацию через скрипты входа.

Критерии приёмки

  • Пользователь видит ожидаемый статический текст из /etc/motd.tail.
  • Отключённые скрипты не отображают своё содержимое после входа.
  • Динамические скрипты выводят валидный текст и завершаются быстро.
  • Ни одно сообщение не раскрывает секреты или PII.

Итог

Настройка MOTD в Ubuntu даёт простой и эффективный канал оповещений для пользователей при входе в систему. Используйте /etc/motd.tail для постоянных объявлений и /etc/update-motd.d для динамических блоков. Всегда контролируйте права доступа и избегайте вывода конфиденциальной информации.

Краткий список действий:

  • прописать статический текст в /etc/motd.tail;
  • отключить ненужные скрипты через chmod -x;
  • добавлять динамику через скрипты в /etc/update-motd.d с правами root и быстрым временем выполнения;
  • задокументировать и создать резервные копии перед изменениями.
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро