Скрипты для apache
Маялся от безделья вечером, написал несколько скриптов для облегчения жизни :)
Скрипты сделаны по образу a2en* и a2dis* и служат целям:
- Создание скриптов полного бэкапа и управление ими
- Автоконфигурация apache 2 - создание виртуальных хостов
- Быстрое удаление виртуальных хостов.
Расскажу про скрипты более подробно.
Основных два: это a2makesite и a2delsite
a2makesite создает конфиг в /etc/apache2/sites-available с именем, повторяющим имя домена виртуального хоста (по аналогии с конфигом по умолчанию), создает (по желанию пользователя) базу mysql с аналогичным домену названием, пользователя, и генерирует пароль при помощи утилиты pwgen (sudo apt-get install pwgen), после чего в директории /var/www/bak-available создает скрипт резервного копирования базы и структуры сайта.
По выбору пользователя, вызываются a2ensite и a2enbak
a2enbak, в свою очередь, аналогично a2ensite, создает симлинк на выбранный скрипт в /var/www/bak-enabled
Соответственно, чтобы работали бэкапы, нужно в /etc/cron.daily добавить скрипт вида
#!/bin/bash
run-parts –report /var/www/bak-enabled
a2disbak удаляет ранее созданный симлинк на бэкап-скрипт, а a2delsite безвозвратно удаляет конфиг, базу, пользователя, папку, содержащую сайт и скрипты резервного копирования.
Вот такие занятные скриптики. Они еще не до конца отлажены, но у меня неплохо работают. Рекомендую соблюдать осторожность при использовании a2delsite :)
Сами скрипты одним архивом: a2scripts.tar.gz
P.S. Да, все под GPLv2