In OSX kann ich die Berechtigungen für den Symlink selbst festlegen (anstelle des Punktes, auf den er mit -h verweist). Von der Manpage:
-h If the file is a symbolic link, change the mode of the link itself rather than the file that the link points to.
In Ubuntu 14.04 versuche ich, die Berechtigungen eines Symlinks festzulegen, aber es wird nur für das Symlink-Ziel festgelegt.
Da es sich um einen Symlink von /home/nagios/.ssh/someprivatekey
bis handelt /somewhere/else/privatekey
, sind Berechtigungen für ssh wichtig. Wie kann ich das erreichen?
permissions
ssh
chmod
symbolic-link
Ray Burgemeestre
quelle
quelle
ls -l
Ausgabe (lrwxrwxrwx
) angezeigt wurden ..ssh/config
:) ändern könnenAntworten:
Nicht möglich. Es gibt keine Möglichkeit, da Berechtigungen für einen Symlink bedeutungslos sind (ein Symlink ist keine Datei; er zeigt nur auf eine Datei). Der Weg, dies mit Linux zu tun, führt jedoch über ACL .
Symlink werden erklärt als ...
Der Unterschied ist hier: chmod und chmod ... es ist BSD versus Linux.
Ich bin nicht sicher, ob es wichtig ist, aber in Bezug auf SSH: Es verwendet stat (2) , nicht lstat (2), um die Berechtigungen zu erhalten.
quelle
fchmodat
Funktion an, mit der der Modus für symbolische Verknüpfungen geändert werden kann (optionales Feature - Systeme, die dies nicht unterstützen, einschließlich Linux, geben den Fehler EOPNOTSUPP zurück), aber nichts imchmod
Befehl, um dies zu verwenden. Nur-R
ist in POSIX definiert.lchmod(2)
oderfchmodat(2)
...), haben sie eine Bedeutung (Zulassen / Verweigernreadlink()
(Lesen) oder Pfadauflösung durch sie (Ausführen)). Schreibrechte gibt es normalerweise nicht, da Sie das Ziel eines Symlinks nicht ändern können.Das kannst du nicht. Der zugrunde liegende
chmod
Systemaufruf unterstützt dies in Linux einfach nicht, und Linux kümmert sich auch nicht um die Berechtigungen des Links. Vonman chmod
:Hinsichtlich fester Verknüpfungen oder Bindungsbereitstellungen werden die Berechtigungen der Quelle verwendet. Daher kann keine der drei Standardmethoden, mit denen der Inhalt einer Datei an anderer Stelle wiedergegeben wird, Sie dabei unterstützen.
quelle