Резервное копирование в ubuntu
Резервное копирование данных — один из важнейших моментов в администрировании. По понятным причинам, всегда нужно иметь копию данных, откуда при необходимости можно восстановить утраченное. Если говорить о вариантах резервного копирования в ubuntu либо других linux операционных системах, то проще и надежнее всего воспользоваться штатным функционалом и быстрым архиватором.
Для начала нужно установить, если его нет, архиватор 7z — бесплатный и быстрый, а так же cifs-utils позволяющие примонтировать сетевую папку, куда будут складываться резервные копии.
1 2 |
sudo apt-get update sudo apt-get install cifs-utils p7zip-rar p7zip-full |
Если бекапы складываются не на сетевой диск (в моем примере //comp2/BackUp/), то cifs не нужно. Хотя лучше хранить резервные копии на другом, отдельном хранилище. Далее нужно создать каталог куда будет монтироваться сетевой диск:
1 |
sudo mkdir /mnt/backup |
Подключить сетевой диск //comp2/BackUp/ в каталог /mnt/backup из-под определенного логина и пароля:
1 |
sudo mount -t cifs -o iocharset=utf8,username=user,password=123,rw //comp2/BackUp/ /mnt/backup |
Создается резервная копия указанного каталога /media/hdd/documents в виде архива с именем documents_текущая дата
1 |
sudo 7za a -t7z -m0=lzma2 -mx=9 /mnt/backup/documents_`date +%F--%H-%M`.7z /media/hdd/documents |
После завершения отключается сетевой диск
1 |
sudo umount /mnt/backup |
Все вышеперечисленные строки нужно прописать в исполняемый файл, например /etc/backup_script.sh, добавить обозначение первой строкой:
1 2 3 |
sudo touch /etc/backup_script.sh sudo chmod +x /etc/backup_script.sh sudo vi /etc/backup_script.sh |
1 2 3 4 |
#!/bin/sh sudo mount -t cifs -o iocharset=utf8,username=user,password=123,rw //comp2/BackUp/ /mnt/backup sudo 7za a -t7z -m0=lzma2 -mx=9 /mnt/backup/documents_`date +%F--%H-%M`.7z /media/hdd/documents sudo umount /mnt/backup |
И наконец, нужно добавить выполнение скрипта в расписание планировщика crontab, добавив в конец строку:
1 2 3 |
sudo crontab -e # m h dom mon dow command 0 5 * * * /etc/backup_script.sh |
Перезагрузить планировщик. На этом все.
1 |
sudo service cron restart |