LinuxForum.Fans
Тема

Автоматизация резервного копирования из Linux в Windows

Автор: pdbq 15 сообщений 4028 просмотров
#72104

Добрый день. Помогите пожалуйста разобраться с такой задачей:
За архивировать каталог(только измененные файлы) на Linux(ubuntu) машине и отправить его по локальной сети на Windows(seven) машину.
Хотелось бы автоматизировать данный процесс, что бы он проводился каждый день ну где то часов в 21:00.

пользователь на windows: odmin
пароль: odmin
имя: srv5
путь для копирования: D:/Arch/

Буду очень признателен за Вашу помощь..

#72114

Делаем шару (Arch/соответственно разрешаем нашему пользователю odmin в нее запись) на w7, далее монтируем каталог в ubunt с помощью mount.cifs в папку допустим /mnt/arch, далее выполняем синхронизацию с помощью rsync, на w7 ставим winrar допустим, далее по планировщику делаем архив каталога arch(но это для экономии места)

#72115
pdbq написал:

хотелось бы просто написать bash'евский скрипт...[/quote]
И что вас останавливает? rdiff-backup'у графический интерфейс не нужен. Вы хотели бы, чтобы скрипт написали за вас?

#72119

реальный пример(только немного изменено)

text

#!/bin/bash date sleep 2 cd /mnt mkdir tmp_backup sleep 2 /bin/mount -t cifs BACKUPSERVER:/share /mnt/tmp_backup -o username=USERNAME,password=PASSWORD >> /var/log/backup_mount.log sleep 2 /usr/bin/rsync -rlcpvz /home/USERNAME_LINUX /mnt/tmp_backup >> /var/log/backup_files.log sleep 2 /bin/umount /mnt/tmp_backup sleep 2 cd /mnt rm -rf tmp_backup

где:
BACKUPSERVER - ip или имя сервера(рабочей станции где есть шара)
share - каталог
USERNAME и PASSWORD - имя и пароль пользователя на сервере, для доступа к шаре
USERNAME_LINUX - и так все ясно


далее в cron прописываем когда и сколько раз будет выполняться данный скрипт, про tar писать не стал, думаю там все ясно будет, есть пару недостатков, нет проверки, доступен ли хост или нет. Как то так в общем)

#72133
pdbq написал:
(только измененные файлы)

man find (на предмет опции -newer) - тестовый файл == последний бекап.

pdbq написал:
За архивировать каталог

man tar

pdbq написал:
отправить его по локальной сети на Windows(seven) машину.

man mount на предмет cifs

pdbq написал:
Хотелось бы автоматизировать данный процесс, что бы он проводился каждый день ну где то часов в 21:00.

man crontab

#72138

Найти файлы измененные за последние сутки:

text
find / -mtime -1 -print
#72156
sbin написал:
Найти файлы измененные за последние сутки:

всё верно, но вариант с -newer намного лучше, он находит файлы, изменённые со времени создания прошлого бекапа.
(возможно провод был оборван, бекап не передался, и потому бекапить надо за 2 дня)

#72225

Всем кто откликнулся большое спасибо. Попробую разобраться. Если будут еще предложения у удовольствием выслушаю. Еще раз спасибо.

#72481

Ввожу такую команду: mount -t cifs srv5:/arch /mnt/tmp_backup -o username=odmin,password=odmin >> //home/odmin/file
выводит: только root может сделать это

Ввожу: mount -t cifs //srv5/arch /mnt/support
он опять тоже самое..

Пароля рота нет. Помогите пожалуйста. Остается только разобраться как закидывать файлы на локальный компьютер(с Ubuntu на Windows 7)

#72486
pdbq написал:
только root может сделать это

из под root необходимо выполнять монтирование каталогов.или sudo mount -t cifs srv5:/arch /mnt/tmp_backup -o username=odmin,password=odmin

>> //home/odmin/file
- это не обязательно делать :-)
#72494
pdbq написал:
Пароля рота нет.

насколько я помню, для самбы пароль не нужен, есть команда, smbcmd если я не ошибаюсь, она не требует пароля рута. Для ваших целей и это подойдёт. А монтирование запрещено всем, кроме рута.

#75217

Я монтирую свой windows файловый сервер как в данном примере http://commandlist.ru/command/3503 и акрониксом складываю образы в смонтированную директорию. Важно после отмантировать smb шару, а то будет ядро колбасить при выключенном windows сервере. ;)

Войдите или зарегистрируйтесь, чтобы ответить.