Резервное копирование сетевой папки на локальный диск под управлением Ubuntu/Debian

Назад

    Линукс

      Резервное копирование сетевой папки на локальный диск под управлением Ubuntu/Debian

Допустим нам требуется периодически производить резервное копирование определенной сетевой папки, например, //user/psp или //192.168.0.12/psp.

Все последующие команды выполняются от имени суперпользователя.
Создаем на локальном компьютере папку /mnt/shares/user/psp/, к которой будем примонтировать удаленную сетевую папку. Делается этой командой:
$ sudo mkdir -p /mnt/shares/user/psp/

Также создаем папку, куда будем осуществлять резервное копирование, например, в папку пользователя user:
$ sudo mkdir -p /home/user/backup/

Далее, указываем, что созданная папка не будет закреплена ни за какой группой либо пользователем
$ sudo chown nobody.nogroup /home/user/backup/

В терминале линукс, например от имени пользователя user, пишем скрипт следующего содержания
$ nano /home/user/backup.sh

#**********/home/user/backup.sh***************
#!/bin/bash
echo "Монтирование файловой системы /mnt/shares/user/psp/"
sudo mount.cifs //user/psp/ /mnt/shares/user/psp/ -o user=user,pass=toor,iocharset=utf8,file_mode=0755,dir_mode=0755
echo "Файловая система смонтирована"
echo "Обновление каталогов и файлов"
sudo cp -ru /mnt/shares/user/psp /home/user/backup/
echo "Обновление завершено успешно!"
echo "Отмонтирование файловой системы /mnt/shares/user/psp/"
sudo umount //user/psp/
echo "Процесс успешно завершен!"
#**********/home/user/backup.sh***************

Для выполнения скрипта нужно выполнить следующую команду
$ sudo sh /home/user/backup.sh

Для модификации скрипта можно имена папок закрепить за определенными переменными. А для уменьшения занимаемого места копируемыми данными, будем записывать их в архив при помощи zip-архиватора, используя максимальную степень сжатия (9).
В терминале линукс, например от имени пользователя user, пишем скрипт следующего содержания
$ nano /home/user/backup.sh

#**********/home/user/backup.sh***************
#!/bin/bash
sour="//192.168.0.12/psp/"
dest="/mnt/shares/user/psp/"
arch="/home/user/backup/user.zip"
echo "Монтирование файловой системы" $sour
sudo mount.cifs $sour $dest -o user=user,pass=toor,iocharset=utf8,file_mode=0755,dir_mode=0755
echo "Файловая система смонтирована"
echo "Обновление каталогов и файлов"
sudo zip -9ur $arch $dest
echo "Обновление завершено успешно!"
echo "Отмонтирование файловой системы" $sour
sudo umount $sour
echo "Процесс успешно завершен!"
#**********/home/user/backup.sh***************

Для выполнения скрипта также, как и предыдущем примере, нужно выполнить следующую команду
$ sudo sh /home/user/backup.sh


Автор: admin| E-mail: svdniko@mail.ru| Дата/время: 28.08.2018 / 03:58:29| Просмотры: 195
Редактировать

www.xtechonline.ru/mail: svdniko@mail.ru © 2017