Beim Einrichten einer sudo
Umgebung ist mir aufgefallen, dass der include-Direktive das Nummernzeichen (#) vorangestellt wird.
Solaris zeigt dies als:
## Read drop-in files from /etc/sudoers.d
## (the '#' here does not indicate a comment)
#includedir /etc/sudoers.d
Das Handbuch (Linux sowie Solaris) besagt:
Andere Dateien aus sudoers einbeziehen Es ist möglich, andere sudoers-Dateien aus der sudoers-Datei, die gerade analysiert wird, mit den Anweisungen #include und #includedir einzubeziehen.
Und:
Sonstige Sonderzeichen und reservierte Wörter Das Nummernzeichen (`# ') kennzeichnet einen Kommentar (sofern er nicht Teil einer # include-Direktive ist oder im Kontext eines Benutzernamens vorkommt und von einer oder mehreren Ziffern gefolgt wird). In diesem Fall wird es als UID behandelt. Sowohl das Kommentarzeichen als auch der darauf folgende Text bis zum Zeilenende werden ignoriert.
Weiß jemand, warum die Wahl getroffen wurde, das Pfundzeichen in den Anweisungen #include
und zu verwenden #includedir
?
Als Randnotiz: Ich verwende oft etwas egrep -v '^#|^$' configfile
, um die nicht standardmäßigen / aktiven konfigurierten Einstellungen zu erhalten, und dies funktioniert offensichtlich nicht für die sudoers
Datei.
sudoers
Datei analysierte, dachte ich, dassinclude
es sich um eine Direktive handelt und dass#include
eine Direktive auskommentiert ist . Die Regel der geringsten Überraschung wurde hart verletzt. Meiner Meinung nach ist es schlechtes Design.