Leseberechtigung für alle Verzeichnisse eines Pfades hinzufügen

Leseberechtigung für alle Verzeichnisse eines Pfades hinzufügen

Ich möchte für alle Verzeichnisse im untenstehenden Pfad Berechtigungen hinzufügen (nicht andere Dateiberechtigungen ändern). So etwas wiechmod -R xx4 /home/mDB/admin/KNUCKLES/dbs/

Der Weg

/home/mDB/admin/KNUCKLES/dbs/

Ich habe es mit diesem Befehl versucht, den ich in einem Forum gefunden habe, aber er funktioniert bei mir nicht.

chmod +r /home/mDB/admin/KNUCKLES/dbs/ -R

Ich möchte nur die Berechtigungen für alle Benutzer ändern, nicht für den Datei-/Verzeichnisbesitzer oder die Gruppen.

Dank im Voraus.

Antwort1

Sie können sagen:

chmod -R o+r /home/mDB/admin/KNUCKLES/dbs/

Dies würde gebenlesenErlaubnis rekursiv zuAndere, also nicht Eigentümer/Gruppe.

EDIT: Laut Ihrem Kommentar scheint es sich um die Berechtigungen für Verzeichnisse und nicht für Dateien zu handeln. Sie könnten sagen:

chmod o+rx /home/mDB/{admin,admin/KNUCKLES,admin/KNUCKLES/dbs}

Beachten Sie, dass Sie das Ausführungsbit aktivieren müssen, da es sich um Verzeichnisse handelt x. Ohne dieses rwäre es sinnlos!

Antwort2

Sie müssen es aufteilen und mehrere Befehle ausgeben.

chmod -R xx4 /home/
chmod -R xx4 /home/mDB/
chmod -R xx4 /home/mDB/admin/
chmod -R xx4 /home/mDB/admin/KNUCKLES/
chmod -R xx4 /home/mDB/admin/KNUCKLES/dbs/

Jemand mit fortgeschritteneren Befehlszeilenkenntnissen als ich kennt möglicherweise einen kürzeren Weg.

Antwort3

Um das Ausführungsbit nur für Verzeichnisse zu setzen, gehen Sie wie folgt vor:

chmod -R a+X dir

Von man chmod:

nur ausführen/suchen, wenn die Datei ein Verzeichnis ist oder bereits Ausführungsberechtigung für einen Benutzer hat (X)

Antwort von:https://unix.stackexchange.com/questions/39761/execute-bit-on-directories-but-not-files

verwandte Informationen