Ich habe ein sehr großes und tiefes Verzeichnis. Ich möchte es komplett schreibgeschützt machen. Das Problem ist, dass ich wohl zwischen Dateien (die a=r
) und Verzeichnissen (die a=rx
) unterscheiden muss.
Wie kann ich das machen?
Antwort1
Ich habe gerade das hier gefunden: chmod a=rX
das löst mein Problem. Vom Mann: (X) execute/search only if the file is a directory or already has execute permission for some user
.
Antwort2
chmod
akzeptiert den ModusX
, der nurx
auf Verzeichnisse einstellt.a=X
Sie können die Schreibberechtigung auch einfach entfernen:
a-w
Antwort3
Die obigen Vorschläge haben bei mir nicht funktioniert, alle Ordner waren schreibgeschützt.
Ein Kollege hat mir Folgendes gegeben, das funktioniert:
find . -type f -exec chmod a-w {} \;
Antwort4
find somepath \( -type f -exec chmod a=r {} \; \) -o \( -type d -exec chmod a=rx {} \; \)