![]() | Гороскоп для «чим-чим» на 15 апреля 2009 Карма блогосферы сильно попортится, если вы поддадитесь порыву выбраться в клуб вместе с ![]() ![]() ![]() ![]() |
Собственно открылся ресурс, для всех кому есть чем поделиться с другими, разные тематики, обсуждение новостей, единственный недостаток, т.к. проект только открылся очень мало людей, и не много материала. Если вам есть чем поделиться в любой области, если вы готовы помочь советом другим, если вы креативны, заходите к нам. Мы будем рады. В скором времени начнуться конкурсы с довольно ценными призами:)
Уважаемые читатели, я давно не писал, так как много работы.:)
Сегодня мы пишем скрипт, который без особых проблем скопирует на FTP-сервер файлы дампа БД MySQL и некоторое колл-во сайтов, после чего отправит нам отчёт о проведённой работе:)
З.Ы. Сильно не пинайте, первый скрипт:)
Собственно с чего начать? А начнём мы с БД.
Предположим есть 5 БД, создаём файл, назовём его bcmysql.conf и положим в /var/bcscript
vim /var/bcscript/bcmysql.conf
#!/bin/bash
#
#
# MOUNT FTP Монтируем FTP-сервер в папку, если будет ошибка пишем в /var/bcscript/logs/bcscript.err
curlftpfs ftp://ftp-server /localdir -o user=username:password 2> /var/bcscript/logs/bcscript.err
# REMOVE OLD FILES Удаляем файлы старше 30 дней
find /ftpdir/db -mtime +30 -type f -exec rm {} \;
find /ftpdir/www -mtime +30 -type f -exec rm {} \;
# CREATE MAIL MESSAGE & ASK VARIABLЕS Создаём почтовое сообщение для отправки отчёта и задаём переменные для дальнейшей работы
DATE=`date +%d-%m-%Y` # Задаём текущую дату
TIME=`date +%H:%M:%S` # Время
EMAIL=kykywka@gmail.com # Электронную почту на которую отправи отчёт
MAILB=/tmp/mail.msg # Располодения файла сообщения
MAILS="BackUp report" # Тема сообщения
echo null > /tmp/mail.msg # Очищаем файл
echo Date $DATE > /tmp/mail.msg # Добавляем в сообщение дату
# START TIME
echo 'START SCRIPT' $TIME >> /tmp/mail.msg # Добавляем в сообщение время начала скрипта
# BACKUP SCRIPT STARTER !!!!Читаем примечание!!!!
/var/bcscript/dbbc.conf postfix 2>> /var/bcscript/logs/bcscript.err # Запускаем скрипт копирования базы с выводом ошибок в /var/bcscript/bcscript.err
/var/bcscript/wwwbc.conf sitename 2>> /var/bcscript/logs/bcscript.err # Запускаем скрипт копирования сайта с выводом ошибок в /var/bcscript/bcscript.err
#END TIME
TIME=`date +%H:%M:%S` # ...Снова задаём время
echo 'STOP SCRIPT' $TIME >> /tmp/mail.msg # ...И добавляем его в письмо. Это время окончания работы скрипта
# SEND MESSAGE # Отправляем сообщение на почту
mail -c mailcopy@mail.ru -s "$MAILS" $EMAIL < $MAILB 2>> /var/bcscript/logs/bcscript.err # Параметр -c задаёт получателя копии
# CLEAR TMP FOLDER Очистим временную папку
rm -r -f /tmp/* 2>> /var/bcscript/logs/bcscript.err
# UNMOUNT FTP Размонтируем фтп
fusermount -u /ftpdir 2>> /var/bcscript/logs/bcscript.err
Примечания:
1. Для работы скрипта необходимо установить curlftpfs. sudo aptitude install curlftpfs
2. Вернёмся к пункту BACKUP SCRIPT STARTER... Обращу внимание, на то что все файлы запускаются с параметром, сделано это для того, чтобы не лопатить 1 файл добавляя в него кусок копирования базы или сайта, а просто добавлением одной строки с параметром, который является или именем базы или папкой содержащей сайт. Далее мы увидим, как это работает...
Скрипт копирования БД.
Скрипт копирования БД помещаем в ту же папку, что и bcmysql.conf. Назовём его dbbc.conf. Создайте в MySQL пользователя, с правами SELECT, LOCK TABLES для всех баз. В данном случае это bcuser с паролем bcuser
#!/bin/bash
#
# DATABASE BACKUP
#
# VARIABLE Зададим переменные
DATE=`date +%d-%m-%Y` # Задаём дату
HOSTNAME=localhost # Имя хоста
DBNAME=$1 # Имя базы ($1 говорит о том, что мы используем в качестве имени БД первый указанный параметр)
DBPASS=bcuser # пароль пользователя от которого делаем ДАМП
DBUSER=bcuser # пользователь от которого делаем дамп
MAILB=/tmp/mail.msg # файл сообщения
# CREATE DUMP # Дамп создаём
mysqldump --opt -h $HOSTNAME -u $DBUSER -p$DBPASS $DBNAME >
![]() | Гороскоп для «чим-чим» на 13 октября 2008 Лучшим решением на сегодня будет обратить больше внимания в оффлайн, нежели в дневник. Но если сильно потянет в Интернет, можно поделиться своими переживаниями с людьми из ![]() ![]() ![]() |
![]() | Гороскоп для «чим-чим» на 28 сентября 2008 Сегодня блогосфера источает особенно сильную ауру, что может сподвигнуть вас подарить открытку без повода ![]() ![]() ![]() ![]() |
![]() | Гороскоп для «чим-чим» на 24 сентября 2008 Цвет ауры блогосферы предрасположен к таким вашим решениям, как найти что-то полезное в цитатнике ![]() ![]() ![]() ![]() |
![]() | Гороскоп для «чим-чим» на 20 сентября 2008 Лучшим решением на сегодня будет обратить больше внимания в оффлайн, нежели в дневник. Но если сильно потянет в Интернет, можно более интенсивно комментировать ![]() ![]() ![]() ![]() |
![]() С самого утра вашему нику не сидится на месте. В этот день можно прогуляться по городу с ![]() ![]() ![]() |
![]() Лучшим решением на сегодня будет обратить больше внимания в оффлайн, нежели в дневник. Но если сильно потянет в Интернет, можно призадуматься, стоит ли дальше учавствовать в жизни сообщества ![]() ![]() ![]() |