¿Cómo se actualiza / etc / motd?

Me preguntaba cómo se actualiza automáticamente / etc / motd (estoy en Ubuntu 10.04, edición de servidor). Encontré la página de manual update-motd a través de una búsqueda en la web, pero ese progtwig no está instalado en mi máquina. Sin embargo, el archivo / etc / motd se actualiza regularmente. Simplemente no sé cómo y con qué frecuencia. Al hacer un locate motd , se listan los siguientes archivos:

 /etc/motd /etc/update-motd.d /etc/update-motd.d/00-header /etc/update-motd.d/10-help-text /etc/update-motd.d/20-cpu-checker /etc/update-motd.d/50-landscape-sysinfo /etc/update-motd.d/90-updates-available /etc/update-motd.d/91-release-upgrade /etc/update-motd.d/98-reboot-required /etc/update-motd.d/99-footer /home/me/.cache/motd.legal-displayed /lib/security/pam_motd.so /usr/bin/motd+shell /usr/lib/update-manager/release-upgrade-motd /usr/lib/update-notifier/update-motd-cpu-checker /usr/lib/update-notifier/update-motd-reboot-required /usr/lib/update-notifier/update-motd-updates-available /usr/share/base-files/motd.md5sums /usr/share/man/man1/motd+shell.1.gz /usr/share/man/man5/motd.5.gz /usr/share/man/man5/motd.tail.5.gz /usr/share/man/man5/update-motd.5.gz /usr/share/man/man8/pam_motd.8.gz /usr/share/ubuntu-serverguide/html/C/pam_motd.html 

Se actualiza por pam_motd en el inicio de sesión. La página de actualización del manual de motd describe esto:

  Ubuntu introduced the update-motd framework, by which the motd(5) is dynamically assembled from a collection of scripts at login. Executable scripts in /etc/update-motd.d/* are executed by pam_motd(8) as the root user at each login, and this information is concatenated in /var/run/motd. The order of script execution is determined by the run- parts(8) --lsbsysinit option (basically alphabetical order, with a few caveats). On Ubuntu systems, /etc/motd is typically a symbolic link to /var/run/motd. 

La respuesta aceptada arriba es correcta, aunque incompleta. Espero que esto proporcione un poco más de información para el OP.

Básicamente, en una instalación nueva, el motd se genera desde tres lugares:

  1. Los scripts en /etc/update-motd.d/
  2. Los binarios comstackdos controlados por /etc/pam.d/login
  3. El archivo / etc / legal

El número 3 se refiere al bloque de texto al final de su motd que incluye “Ubuntu incluye ABSOLUTAMENTE SIN GARANTÍA …”, ese es el archivo / etc / legal . Sin embargo, no encontrará nada en /etc/update-motd.d/ que lo mencione, ni la palabra “legal” aparece en ninguna parte del archivo /etc/pam.d/login. Su inclusión se ha vuelto oscura y realmente no sé cómo llega allí. Quiero decir, sé que hay un {$ HOME} /. Cache / motd.legal-desplegado, pero no sé de dónde viene (todavía).

El archivo pam.d / login es responsable de la notificación de correo electrónico pendiente, sin embargo, no está oscuro. Hay un bonito comentario que describe “Imprime el estado del buzón del usuario al iniciar sesión correctamente” allí mismo en el archivo. Supongo que técnicamente eso no es realmente una parte del motd, pero aparece al iniciar sesión y, si eres nuevo, tal vez no se aprecie la distinción.

En una instalación nueva de 14.04 no hay un archivo / etc / motd. Si crea uno (o crea un motd.static y lo vincula a motd), el contenido de ese archivo se agregará al texto generado por los scripts update-motd.d, pero el contenido de / etc / legal dejará de aparecer. Imagínate. El aviso de correo electrónico sigue apareciendo, por lo que esto no interrumpe el script pam.d / login, por lo que dudo que se haya extraído / etc / legal desde allí. Su abastecimiento sigue siendo un misterio para el lector. Me he dado cuenta de que cuando elimino el enlace / etc / motd (o archivo), el descargo de responsabilidad legal no vuelve inmediatamente. Tarda unos minutos. No quería ver constantemente el descargo de responsabilidad, así que eliminé el texto de ese archivo.

Aclamaciones.

Para ampliar un poco la respuesta de David Kuhl :

Una nueva instalación de Ubuntu Server 14.04.1 LTS aparentemente no instala los paquetes de landscape-common ni update-notifier-common. Por lo tanto, los siguientes scripts no están instalados:

 /etc/update-motd.d/50-landscape-sysinfo /etc/update-motd.d/90-updates-available 

Por lo tanto, para obtener toda la información de inicio de sesión ssh disponible de los servidores migrados de 12.04 LTS, debe instalar los paquetes anteriores manualmente:

 sudo apt-get install landscape-common update-notifier-common