
Ich habe ein Verzeichnis, das root gehört, nachdem ich Dateien hineinkopiert habe. Alle EXE-Dateien können nur als root ausgeführt werden. Aber ich möchte, dass jeder sie ausführen kann. Natürlich kann ich es chmod -R u=rwX,g=rX,o=rX
jedes Mal verwenden, nachdem ich neue Dateien hinzugefügt habe. Das ist jedoch sehr ärgerlich. Gibt es irgendetwas, das ich im Verzeichnis einstellen kann, damit alle Benutzer die EXE automatisch ausführen können?
Antwort1
Wenn Sie es vor dem Erstellen der Kopie verwenden umask 0022
, erhalten Sie alle neuen Dateien mit -rw-r--r--
den Standardberechtigungen. Ausführbare Dateien können jedoch nur gemacht werden, indem Sie direkt chmod +x auf ihnen ausführen.
Sie können den abgekürzten Befehl verwenden: chmod -R a+rX directory
um es manuell zu tun.
Um alle Dateiberechtigungen automatisch festzulegen, können Sie inotifywait wie folgt verwenden:
inotifywait -qm <directory> -e create -e moved_to -e modify \
| while read a b c; do chmod a+rX "${a}${c}"; done