chmod 770 für alle domainfolder mit .tls Endung

Bash, Shell, PHP, Python, Perl, CGI
fulltilt
Posts: 363
Joined: 2006-08-27 02:06

chmod 770 für alle domainfolder mit .tls Endung

Post by fulltilt » 2010-03-09 13:23

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

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

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

Post by Roger Wilco » 2010-03-09 13:52

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.

User avatar
Joe User
Project Manager
Project Manager
Posts: 11602
Joined: 2003-02-27 01:00
Location: Hamburg

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

Post by Joe User » 2010-03-09 16:07

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
Last edited by Joe User on 2010-03-09 16:20, edited 1 time in total.
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

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

Post by Roger Wilco » 2010-03-09 18:03

`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. ;)