Comment / etc / motd est-il mis à jour?

56

Je me demandais comment / etc / motd est automatiquement mis à jour (je suis sur Ubuntu 10.04, édition du serveur). J'ai trouvé la page de manuel update-motd via une recherche sur le Web, mais ce programme n'est pas installé sur ma machine. Le fichier / etc / motd est cependant régulièrement mis à jour. Je ne sais pas comment et à quelle fréquence. Lorsque vous effectuez un locate motd , les fichiers suivants sont répertoriés:

/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
    
posée daniel kullmann 19.02.2012 - 20:18
la source

3 réponses

54

Il est mis à jour par pam_motd à la connexion. La page de manuel update-motd décrit ceci:

   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.
    
réponse donnée Marius Gedminas 19.02.2012 - 20:26
la source
10

La réponse acceptée ci-dessus est correcte, mais incomplète. J'espère que cela fournit un peu plus d'informations pour l'OP.

Sur une nouvelle installation, le motd est généré à partir de trois endroits:

  1. Les scripts dans /etc/update-motd.d /
  2. Les binaires compilés contrôlés par /etc/pam.d/login
  3. Le fichier / etc / legal

Le numéro 3 fait référence au bloc de texte à la fin de votre motd qui inclut "Ubuntu est livré avec ABSOLUMENT AUCUNE GARANTIE ...", c'est-à-dire le fichier / etc / legal . Cependant, vous ne trouverez rien sous /etc/update-motd.d/ qui le mentionne, pas plus que le mot "legal" ne figure dans le fichier /etc/pam.d/login. Son inclusion a été rendue obscure et je ne sais vraiment pas comment elle y parvient. Je veux dire que je sais qu'il y a un {$ HOME} /. Cache / motd.legal-affiché mais je ne sais pas d'où ça vient (encore).

Le fichier pam.d / login est responsable de la notification des e-mails en attente, mais cela n’est pas obscur. Il y a un bon commentaire décrivant "Imprime le statut de la boîte aux lettres de l'utilisateur après une connexion réussie" directement dans le fichier. Je suppose que techniquement, cela ne fait pas vraiment partie de la devise, mais cela se voit lors de la connexion et si vous êtes nouveau, une belle distinction ne sera peut-être pas appréciée.

Sur une nouvelle installation de 14.04, n’est pas un fichier / etc / motd. Si vous en créez un (ou créez un motd.static et un lien symbolique avec motd), le contenu de ce fichier sera ajouté au texte généré par les scripts update-motd.d mais le contenu de / etc / legal cessera de s'afficher. Allez comprendre. L'avis par e-mail apparaît toujours, ce qui n'interrompt pas le script pam.d / login. Son approvisionnement reste un mystère pour le lecteur. J'ai remarqué que lorsque je supprime le lien (ou fichier) / etc / motd, la clause de non-responsabilité légale ne revient pas immédiatement. Cela prend quelques minutes. Je ne voulais pas voir en permanence l'avertissement, j'ai donc supprimé le texte de ce fichier.

Cheers.

    
réponse donnée David Kuhl 20.08.2014 - 18:49
la source
10

Pour en savoir plus sur David Kuhl's , répondez:

Une nouvelle installation d'Ubuntu Server 14.04.1 LTS n'installe apparemment pas de paquetages communs à Landscape-Common ni à Update-Notifier-Common. Ainsi, les scripts suivants ne sont pas installés:

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

Ainsi, pour obtenir toutes les informations de connexion SSH disponibles à partir des serveurs migrés à partir de 12.04 LTS, il faut installer manuellement les packages ci-dessus:

sudo apt-get install landscape-common update-notifier-common
    
réponse donnée skitheo 07.01.2015 - 22:38
la source

Lire d'autres questions sur les étiquettes