/ Etc / motd nasıl güncellenir?


58

/ Etc / motd dosyasının nasıl otomatik olarak güncellendiğini merak ediyordum (Ubuntu 10.04, sunucu sürümündeyim). Güncelleme motdeli web sayfasını bir web araması aracılığıyla buldum, ancak bu program makineme yüklenmedi. Ancak / etc / motd dosyası düzenli olarak güncellenir. Sadece ne kadar ve ne sıklıkta bilmiyorum. A yaparken locate motd, aşağıdaki dosyalar listelenir:

/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

Ubuntu 14.04 LTS'de / etc / motd değilim. Dosyalar şimdi /var/run/motd.dynamic ve /run/motd.dynamic olarak birbirine bağlı. kısaltılmış giriş yapmazsanız, motd güncellenir. Bu durumda, bir kullanıcı "gizli olmayan" modda bir giriş yaptığında en son oluşturulan içeriği görürsünüz.
randominstanceOfLivingThing

Yanıtlar:


57

pam_motdGiriş tarihinde güncellendi . Update-motd manuel sayfası bu açıklar:

   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.

26
zorlayabilirsinsudo run-parts /etc/update-motd.d/
Pete

@Pete, bu komutu denedim ve ilgili bilgileri yazdırmasına rağmen, içindeki metni aslında değiştirmedi /etc/motd. Bu bekleniyor mu?
snapfractalpop

5
@snapfractalpop, Üzgünüm, yanılmışım. Hata ayıklama için çalışma parçalarını kullanabilirsiniz, eklemeye devam ediyorsanız ortaya çıkan sonucun ne olacağını söyleyecektir /etc/update-motd.d. Söyleyebileceğim kadarıyla, dosyayı güncellemenin tek yolu pam_motd'yi tetiklemektir. Benim sistemimde hizmetler giriş ve sshd ( grep pam_motd /etc/pam.d/*) gibi görünüyor
Pete

7
@snapfractalpop Evet, bu bekleniyor. Eğer /etc/motdoradaki çıktıyı yönlendirmek istiyorsanız :run-parts /etc/update-motd.d/ | sudo tee /etc/motd
n.st

2
Makinemdeki girişleri hızlandırmak için libpam-motd'den update-motd'e geçtim. Update-motd, oturum açma sırasında güncellemeyi tetiklemek yerine bir cronjob kullanır. sudo apt-get remove libpam-motd; sudo apt-get install update-motd
xer0x

11

Yukarıda kabul edilen cevap doğru, ancak eksik. Bunun OP için biraz daha fazla bilgi sağlamasını umuyorum.

Temel olarak, yeni bir kurulumda motd üç yerden üretilir:

  1. /Etc/update-motd.d/ içindeki komut dosyaları
  2. Derlenmiş ikili dosyalar /etc/pam.d/login tarafından kontrol edilir
  3. / Etc / legal dosyası

Orada Sayı 3 işte, "Ubuntu ... HİÇ BİR GARANTİ gelir" da içeren motd sonunda metnin bloğuna karşılık gelir / etc / yasal dosyası. Ancak /etc/update-motd.d/ altında bahseden hiçbir şey bulamazsınız ve "yasal" kelimesi /etc/pam.d/login dosyasında hiçbir yerde görünmez. Bu içerme gizlilik yarattı ve oraya nasıl girdiğini gerçekten bilmiyorum. Demek istediğim bir {$ HOME} /. Cache / motd.legal-ekrana sahip olduğunu biliyorum ama bunun da ikisinden de geldiğini de bilmiyorum.

Pam.d / login dosyası beklemedeki e-postaların bildirilmesinden sorumludur, ancak bu belirsiz değildir. Dosyada, "Kullanıcının posta kutusunun başarılı bir şekilde giriş yaptıktan sonra posta kutusunun durumunu yazdırdığını" açıklayan güzel bir yorum var. Teknik olarak bunun gerçekliğin bir parçası olmadığını sanıyorum, ama giriş sırasında ortaya çıkıyor ve yeniyseniz bu iyi ayrımın farkedilmeyebileceğini gösteriyor.

Taze 14.04 kurulumu orada hayır / etc / motd dosyası. Bir tane oluşturursanız (veya bir motd.static ve onu motd'ye bağladığınızda), o dosyanın içeriği update-motd.d betiği tarafından oluşturulan metne eklenecektir, ancak / etc / legal içeriği görünmeyecektir. Git figürü. E-posta bildirimi hala göründüğü için pam.d / login komut dosyasını kesmez, bu yüzden / etc / legal'in oradan çekildiğinden şüpheliyim. Onun kaynak okuyucu için bir gizem kalıyor. / Etc / motd bağlantısını (veya dosyayı) kaldırdığımda yasal uyarıların hemen geri dönmediğini fark ettim. Birkaç dakika sürer. Feragatnameyi sürekli görmek istemedim, bu yüzden metni o dosyadan sildim.

Şerefe.


1
Oh, bir kısmını unuttum. Makinenize ssh ile erişiyorsanız, "PrintLastLog" dosyasının / etc / ssh / sshd_config dosyasında da bir ayar vardır. Başarılı bir giriş yaptıktan sonra yazdırılacak son şey olan "Son giriş: ..." satırını kontrol eden şey budur. Bunu "hayır" olarak ayarlamak, çizgiyi ortadan kaldırmaz, sadece son başarılı ssh bağlantısının IP adresini gizleyin. Yine, teknik olarak hareketin bir parçası değil, ama ne de lanet yasal feragatname ve görünmeye devam ediyor.
David Kuhl

10

David Kuhl'un cevabını biraz genişletmek için :

Ubuntu Server 14.04.1 LTS'nin yeni kurulumu, görünüşte genel olarak yatay veya güncelleme bildirici ortak paketleri yüklemiyor. Bu nedenle, aşağıdaki komut dosyaları yüklü değil:

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

Bu nedenle, tüm ssh giriş bilgilerinin 12.04 LTS'den geçirilen sunuculardan alınabilmesi için yukarıdaki paketlerin manuel olarak yüklenmesi gerekir:

sudo apt-get install landscape-common update-notifier-common
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.