Ich habe mich oft mit, um in UNIX / Linux-Server mit Apache VirtualHost Management von Jahren der unkontrollierten Verwendung von Servern von Systemadministratoren kompromittiert hacken nicht wirklich sortiert. Das Ergebnis ist meist eine große Anzahl von Benutzern mit Home-Verzeichnis unterschiedlich voneinander strukturiert.

Insbesondere in einem aktuellen Fall fand ich mich hundert Mitglieder, von denen ein bestimmter Teil des DocumentRoot in Ihrem Home-Verzeichnis hatte, während andere hatte keine unter / var / www / users /, die ich empfehlen, weil sie vermeidet Probleme mit suEXEC vorkompilierte Versionen von Apache.

Um eine chaotische Situation zu platzieren, damit ich alles richtig in / var / www / users / und ich wurde mit der Notwendigkeit zur automatischen Erzeugung der fehlenden Verzeichnis und dessen symbolische Links zu den verschiedenen home-Verzeichnis gelegt entschieden. Ich tat das mit einer einfachen Bash-Skript, dass die Öffentlichkeit hier im Falle könnte es nützlich sein, um jemand anderen. Es hat mich ein wenig "ausgegeben, um den Code klar zu denen, die die ersten Waffen in bash sind.

Warnung! Die Linie 18 ist eine Kopie von einem Fast-CGI im Verzeichnis / var / www / users / Ivan /. Natürlich müssen Sie als Benutzer Ivan auf Ihrem Server ersetzen.

 
 # / Bin / bash


 echo "Initializing Scripts ..."


 for i in $ (ls / home /) zu tun
  
 echo "Ich bin der Verarbeitung von '$ i'"
  
 if [-L / home / $ i / public_html], dann
    
 echo "Symlink / home / $ i / public_html existiert bereits '... Sprung!"
  
 sonst
    
 echo "Symlink / home / $ i / public_html existiert nicht: Ich versuche es zu schaffen ..."
    
 if [-d / var / www / users / $ i]; dann
      
 echo "Das Verzeichnis / var / www / users / $ i existiert, muss ich nur noch darauf verlinken ..."
      
 / Bin / ln-s / var / www / users / $ i / home / $ i / public_html
    
 sonst
      
 echo "Das Verzeichnis / var / www / users / $ NON gibt, jetzt habe ich schaffen ..."
      
 / Bin / mkdir / var / www / users / $ i
      
 echo "Das Kopieren des FAST-CGI ..."
      
 / Bin / cp / var / www / users / Ivan / fast-cgi / var / www / users / $ i /
      
 echo "Er hat die Berechtigungen für das Verzeichnis erstellt ..."
      
 / Bin / chown-R $ i: $ i / var / www / users / $ i
      
 / Bin / chmod 700 / var / www / users / $ i
      
 echo "Ich schaffe den symbolischen Link ..."
      
 / Bin / ln-s / var / www / users / $ i / home / $ i / public_html
    
 fi
  
 fi

 erledigt