/ Etc / motd içine komut koymak mümkün müdür?


14

/etc/motdOturum açma banner dosyasına kabuk komutları koyabilir miyim ? Denedim:

 $(uptime)

ve

`uptime`

Mümkün mü?

Yanıtlar:


15

/etc/motd sadece okunur ve çalıştırılmaz, teknik olarak konuşursak, oraya kabuk komutları koyamazsınız.

Ancak, oturum açma sırasında aynı sonuca sahip olacak bir kabuk betiği çalıştırmak mümkündür. Bu genellikle /etc/profilebir kullanıcı her oturum açtığında çalıştırılan komut dosyasını uyarlayarak elde edilir . Yararlı bir uygulama, yürütmek istediğiniz komutu adlı bir komut dosyasına koymak /etc/motd.shve bu komut dosyasını /etc/profilegenellikle yaklaşık sonunda bitirmek olarak kullanmaktır.


3
/etc/motd.sh kullanmak yaygın bir uygulama değildir

1
@EricDANNIELOU Evet, kişi istediği komut dosyası adını kullanabilir. Sadece uygun olmayan ortak sıfatı kaldırdım . Yine de, bu şekilde adlandırılmış olması, hangi amaca hizmet ettiğini bulmayı ve bilmeyi kolaylaştırır.
Tonin

1
Statik motd mesajını düzenli olarak değiştirmek için cron kullanmanın bir yolu var gibi görünüyor: md3v.com/create-a-linux-server-status-motd Bu profil komut dosyasının daha iyi bir yol, daha az hareketli parça gibi olduğunu düşünüyorum.
CMCDragonkai

5
Profilinize bir MOTD gibi çıktı eklemek sftp'yi bozabilir.
Stuart P. Bentley

5
Sen yerleştirebilirsiniz motd.shkomut içini /etc/profile.d/izinlerine sahip 755. Bu şekilde onu aramanıza gerek kalmaz /etc/profile.
Itay Grudev

8

In Ubuntu sunucularına adında bir program var update-motdpaketinden libpam-modules:

UNIX / Linux sistem yöneticileri genellikle pam_motd (8) modülü tarafından etkileşimli kabuk oturumlarında görüntülenen / etc / motd dosyasındaki metni koruyarak konsol ve uzak kullanıcılara önemli bilgileri iletir.

Geleneksel olarak, bu dosya statik dağıtımdır, genellikle dağıtım tarafından yüklenir ve yalnızca sürüm yükseltmelerinde güncellenir veya yerel yönetici tarafından ilgili bilgilerle üzerine yazılır.

Ubuntu, motd'nin (5) oturum açma sırasında bir komut dosyası koleksiyonundan dinamik olarak birleştirildiği güncelleme motd çerçevesini tanıttı.

Bu senaryo koleksiyonu altında yaşıyor /etc/update-motd.d/. Daha fazla bilgi için bu wiki sayfasına bakın .

Oluşturmada /etc/motdbir komut dosyası çalıştırmak yerine üretmenin başka bir alternatifi de bir cron işine sahip olmaktır. Elbette, aynı değil, ama bu yaklaşımı bazen geçmişte karşıladım. Ancak, bu yaklaşımın da kullanıldığını update-motd, ancak karşılaşılan sorun nedeniyle terk edildiğini unutmayın. Bununla ilgili daha fazla bilgiyi burada bulabilirsiniz .


1
İlgili askubuntu sonrası . İle zorla sudo run-parts /etc/update-motd.d/.
Pablo A

1
Bu aynı zamanda başlangıç ​​oturum açma gecikmesini en aza indirir, çünkü oturum açma sırasında bir komut dosyasını değerlendirmeniz gerekmez (daha karmaşık olduğunu varsayarsak uptime).
ayman

0

For Centos 7 sunuculara benim portunu kullanarak öneririz update-motd.dUbuntu dan.

Diğer çözümlerden farklı olarak, SSH / bir konsoldan oturum açtığınızda dinamik MOTD'nin aslında yalnızca bir kez gösterilmesini sağlar ( screenörneğin, yeni pencereler açtığınızda diğer çözümler bunu gösterir ).

Şununla yükle:

yum install https://github.com/gdubicki/centos-pam-with-update-motd/releases/download/1.1.8-1022.3/pam-1.1.8-1022.el7.x86_64.rpm

La kullan:

  1. Varsayılan statik değeri silin /etc/motd.
  2. Yap SSHD hatları ile statik MOTD göstermez PrintMotd no, Banner none, UsePAM yes(ve isteğe bağlı PrintLastLog no) senin içinde /etc/ssh/sshd_configve Yeniden yükle sshdhizmeti.
  3. Blogunuza bu satırı ekleyin /etc/pam.d/sshd: session optional pam_motd.so motd=/run/motd.dynamic.
  4. Senaryolarını /etc/update-motd.dUbuntu'daki gibi ekle

En güncel bilgiler için lütfen https://github.com/gdubicki/centos-pam-with-update-motd adresine bakın .

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.