Назад
Допустим нам требуется периодически производить резервное копирование определенной сетевой папки, например, //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| Просмотры: 9086Редактировать
|