Я часто приходится рубить в UNIX / Linux серверов с Apache VirtualHost управления скомпрометирована годы бесконтрольного использования серверов, системных администраторов, на самом деле не сортируются. Результат, как правило, большое количество пользователей с домашней директории структурированные по-разному друг от друга.

В частности, в последнем случае я оказался сотен членов которой определенная часть DocumentRoot каталог в вашем доме, другие, что было в / VAR / WWW / пользователей /, который я рекомендую, потому что позволяет избежать есть проблемы с Apache Suexec скомпилированные версии.

Чтобы разместить хаотическая ситуация, поэтому я решил поставить все правильно в / VAR / WWW / пользователей / и мне подарили необходимо, чтобы автоматически создать отсутствующие каталога и его символическими ссылками на различные домашние каталоги. Я сделал это с простой скрипт Bash, если я публикую здесь может быть полезным кому-то другому. Мне понадобилось немного "выход, чтобы сделать код ясным для тех, кто являются новичками в баш.

Внимание! Строка 18 является копией изготовлены из Fast-CGI в каталог / VAR / WWW / Пользователи / Иван /. Очевидно, вам придется заменить Ивана в качестве пользователя на вашем сервере.

 
 1

 2

 3

 4

 5

 6

 7

 8

 9

 10

 11

 12

 13

 14

 15

 16

 17

 18

 19

 20

 21

 22

 23

 24

 25

 26
 
 # / Bin / Баш


 эхо "стартовых скриптов ..."


 $ ( ls / home / ) ; do для я в $ 
(Ls / Главная 
/) не
  
 '" эхо "Я обработка '$ я'"
  
 -L / home / $i / public_html ] ; then если 
[-L / главная / $ я / public_html], затем
    
 /public_html esiste gia' ... salto!" эхо "символическая ссылка / дом / $ я / public_html уже существует" ... прыгать! "
  
 еще
    
 /public_html non esiste: provo a crearlo ... " эхо "символическая ссылка / дом / $ я / public_html не существует: я пытаюсь создать его ..."
    
 -d / var / www / users / $i ] ; then если 
[-я / VAR / WWW / пользователей / $ я], то
      
 esiste, non mi resta che linkarla ... " эхо "каталога / VAR / WWW / пользователей / $ я есть, я просто должен связать его ..."
      
 ln -s / var / www / users / $i / home / $i / public_html / Bin / 
LN-S / VAR / WWW / пользователей / $ я / главная / $ я / public_html
    
 еще
      
 NON esiste, ora la creo ... " эхо "каталога / VAR / WWW / пользователей / $ NON там, в настоящее время я создаю ..."
      
 mkdir / var / www / users / $i / Bin / MkDir / VAR / WWW / пользователей / $ я
      
 эхо "Копирование Fast-CGI ..."
      
 cp / var / www / users / ivan / fast-cgi / var / www / users / $i / / Bin / ср / VAR / WWW / Пользователи / Иван / Fast-CGI / VAR / WWW / пользователей / $ я /
      
 эхо "системы разрешений на каталог, созданный ..."
      
 chown -R $i : $i / var / www / users / $i / Bin / 
Чаун-R $ я: $ я / VAR / WWW / пользователей / $ я
      
 chmod 700 / var / www / users / $i / Bin / CHMOD 700 / VAR / WWW / пользователей / $ я
      
 эхо "создать символическую ссылку ..."
      
 ln -s / var / www / users / $i / home / $i / public_html / Bin / 
LN-S / VAR / WWW / пользователей / $ я / главная / $ я / public_html
    
 Fi
  
 Fi

 сделанный