GNU/Linux >> LINUX-Kenntnisse >  >> Linux

/etc/motd wird bei Named Pipe nicht angezeigt?

Du übersiehst nichts Offensichtliches. Ich habe in der Quelle von pam_motd gegraben Modul, um dies herauszufinden.

Der Trick ist, dass pam_motd macht folgendes mit /etc/motd :

  1. Überprüfen Sie die Größe der Datei.
  2. Ordnen Sie einen Puffer dieser Größe zu.
  3. Die gesamte Datei in den Puffer einlesen.
  4. Gib den Puffer über die verwendete Ausgabemethode aus. (PAM ist schließlich modular; kann nicht davon ausgehen, dass es ein Terminal ist.)

Da eine Pipe keine Dateigröße hat, schlägt dies bei Schritt 1 fehl.

BEARBEITEN :Warum macht sich PAM überhaupt Sorgen um die Größe? Ich stelle mir vor, es soll Denials of Service verhindern, entweder absichtlich oder unbeabsichtigt. Wenn PAM die Dateigröße überprüft, verweigert es auch die Ausgabe des motd, wenn die Datei größer als 64 kByte ist. Ich stelle mir vor, dass jeder, der versucht, sich in das System einzuloggen, sehr traurig wäre, wenn es jemandem beispielsweise gelingen würde, eine DVD-Filmdatei in /etc/motd zu leiten – ganz zu schweigen davon, wie viel Speicherplatz das beanspruchen könnte.


Dieser Link führt Sie durch alle wesentlichen Schritte


Linux
  1. Wie behandelt Linux mehrere aufeinanderfolgende Pfadtrennzeichen (/home////username///file)?

  2. Deaktivieren Sie das Feedback bei der Eingabe des Passworts an einer sudo-Eingabeaufforderung

  3. /etc/passwd zeigt Benutzer in einer Gruppe an, /etc/group jedoch nicht

  4. echo oder print /dev/stdin /dev/stdout /dev/stderr

  5. Größenbeschränkung von /etc/hosts (Linux)

/etc/group-Datei verstehen

Die Dateien /proc/mounts, /etc/mtab und /proc/partitions verstehen

find:Dateisystemschleife erkannt

Was ist die Größenbeschränkung für /etc/hosts?

Wie erstelle ich in meiner Datei /etc/hosts/ unter Linux/OSX eine Wildcard-Subdomain?

Unterschied zwischen /etc/hosts und /etc/resolv.conf