Codeschnipsel - AutoFolderCHMODER


Mit diesem Tool hat man die Möglichkeit, automatisch Ordner die nicht die CHMOD-Rechte 777 oder 755 haben, auf 755 zu setzen.
Das Script ist für die Verzeichnisstruktur von Confixx gemacht.

Code:
#!/usr/bin/perl ########################################################################################################################### # AUTOFOLDERCHMODER by PA-S.de # BASED on Dateichmoder by Inspire-World.de ###########################################################################################################################   for(my $i = 1; $i <= 123; $i++) { $dir = "/home/www/web$i/html/"; @dateien = (); listFiles ($dir);   foreach $dir (@dateien) { ($rechte, $groesse) = (stat($dir))[2,7]; $orgrechte = sprintf "%lo", ($rechte & 07777);   $kurzdir = substr($dir, $laenge_sp);   $dirs = "$orgrechte $kurzdir\n";   if($orgrechte ne "777" && $orgrechte ne "755"){ # wenn Ordner-Rechte 750 print $dirs; chmod(0755, $kurzdir); } }   sub listFiles { local *DH; my ($item, $pfad); my $dir = shift; opendir (DH, $dir) or return; while ($item = readdir (DH)) { next if ( $item =~ /^\./ ); $pfad = ( ($dir =~ /\/$/) ? ($dir . $item) : ($dir . '/'.$item) );   push (@dateien, $pfad) if(-d $pfad); listFiles ($pfad) if (-d $pfad); } closedir (DH); } }


Dieses Tool setzt alle Ordner mit den Rechten 750 automatisch auf 755.
Dies ist meist der Fall, wenn der Apache-Fehler "pcfg_openfile: unable to check htaccess file, ensure it is readable" kommt.
Das Script ist für die Verzeichnisstruktur von Confixx gemacht.
Code:
#!/usr/bin/perl ########################################################################################################################### # AUTOFOLDERCHMODER by PA-S.de # BASED on Dateichmoder by Inspire-World.de ###########################################################################################################################   for(my $i = 1; $i <= 123; $i++) { $dir = "/home/www/web$i/html/"; @dateien = (); listFiles ($dir);   foreach $dir (@dateien) { ($rechte, $groesse) = (stat($dir))[2,7]; $orgrechte = sprintf "%lo", ($rechte & 07777);   $kurzdir = substr($dir, $laenge_sp);   $dirs = "$orgrechte $kurzdir\n";   if($orgrechte eq "750"){ # wenn Ordner-Rechte 750 print $dirs; chmod(0755, $kurzdir); } }   sub listFiles { local *DH; my ($item, $pfad); my $dir = shift; opendir (DH, $dir) or return; while ($item = readdir (DH)) { next if ( $item =~ /^\./ ); $pfad = ( ($dir =~ /\/$/) ? ($dir . $item) : ($dir . '/'.$item) );   push (@dateien, $pfad) if(-d $pfad); listFiles ($pfad) if (-d $pfad); } closedir (DH); } }
Beachten Sie: Wir übernehmen keinerlei Haftung für irgendwelche Schäden, Ausfälle oder sonstigen Geschehnissen.
Alle Angaben sind ohne Gewähr, Sie handeln auf eigenes Risiko!
Alle genannten Soft- und Hardwarebezeichnungen sowie Markennamen sind Eigentum ihrer jeweiligen Inhaber und unterliegen im Allgemeinen warenzeichen-, marken- oder patentrechtlichem Schutz.
Alle Rechte vorbehalten