Page 1 of 1

chmod 770 für alle domainfolder mit .tls Endung

Posted: 2010-03-09 13:23
by fulltilt
habe mir bei einer Servermigration die Folder von allen Aliasdomains runterberechtigt > sollte sein 0770 und ist nun 0775 ...
/var/www/virtual/hauptdomain.tld/aliasdomain.tld
also alle aliasdomain.tld zurück auf 775
Das Problem daran ist das manche Folder mit Punkt und andere mit Unterstrich getrennt sind:
Hauptdomain (ist ok)
alisa1.tld (770)
alias2.de (770)
alias3_tld (770)

gibt es eine Möglichkeit die alle auf einmal wieder auf 775 zu setzen

Re: chmod 770 für alle domainfolder mit .tls Endung

Posted: 2010-03-09 13:52
by Roger Wilco
Das geht recht einfach mit `find`. Damit kannst du den Dateinamen ("-name"), den Dateityp (Verzeichnis, "-type"), die Suchtiefe ("-maxdepth") und ggf. die gesetzten Berechtigungen ("-perm") abpruefen und dann automatisch dein `chmod` Kommando ("-exec") auf das gefundene Verzeichnis ausfuehren lassen.

Re: chmod 770 für alle domainfolder mit .tls Endung

Posted: 2010-03-09 16:07
by Joe User
Ich würde statt "-exec ..." lieber "-print0 | xargs -0 ..." verwenden, da es nicht nur schneller ist, sondern auch Spaces in Pfaden berücksichtigt.
isotopp hatte dazu mal eine schönere und ausführlichere Erläuterung verfasst, ich weiss momentan nur leider nicht mehr, ob es hier oder in seinem Blog war...

UPDATE: Es war im Blog: http://blog.koehntopp.de/archives/14-md5-und-Dupes.html

Re: chmod 770 für alle domainfolder mit .tls Endung

Posted: 2010-03-09 18:03
by Roger Wilco
`xargs` ist vor allem dann sinnvoll, wenn es sich um Dateinamen mit Sonderzeichen handelt oder sehr viele Dateien. IMHO ist hier beides nicht gegeben, so dass in der Zeit, in der ich "... -print0 | xargs -0 chown [...]" getippt habe, das Kommando mit `find` und "-exec ..." schon durchgelaufen ist. ;)