LinuxForum.Fans
Тема

rsync бекап на домашний комп, нюанс времени.

Автор: Rassol2 13 сообщений 3189 просмотров
#345722

Здравствуйте,
Появилась необходимость делать бэкап по расписанию но домашний комп.
Запускаю синхронизацию с домашней машины.
Пример строки запуска rsync

text
rsync -urlogtv -e='ssh -p 26731' --exclude=*.log --delete-after --rsync-path=/usr/bin/rsync root@12.345.678.910:/home/ /home/rassol2/.backup/ser_910

Хочу делать бекапы каждые сутки в 00.00 создать запись в cron не сложно, но вот мой комп может не всегда в это время быть запущенным. Но а сервер как вы понимаете всегда в работе.

Можно как то задать, если я пропустил это время значит сделать бекап при первой возможности ?

#345734
"Rassol2" написал:
Можно как то задать, если я пропустил это время значит сделать бекап при первой возможности ?

anacron
fcron

#345736

спасибо ознакомлюсь.

#345737
Rassol2 написал:
Здравствуйте,
Появилась необходимость делать бэкап по расписанию но домашний комп.
Запускаю синхронизацию с домашней машины.
Пример строки запуска rsync
text
rsync -urlogtv -e='ssh -p 26731' --exclude=*.log --delete-after --rsync-path=/usr/bin/rsync root@12.345.678.910:/home/ /home/rassol2/.backup/ser_910

Хочу делать бекапы каждые сутки в 00.00 создать запись в cron не сложно, но вот мой комп может не всегда в это время быть запущенным. Но а сервер как вы понимаете всегда в работе.

Можно как то задать, если я пропустил это время значит сделать бекап при первой возможности ?

да, анакрон это делает вроди

#346303

почитал я про него вещь неплохая, но русской информации было мало ( ну или правда не совсем понял )
Можете поправить ?

1 2 beckup rsync -aulv -x / /home/rassol2/bek/

1 - это частота выполнения. Допустим мне нужно рас в сутки.
2 - задержка в минутах ( зачем это ?)
beckup - название моей задачи, как я понял имя.
rsync -aulv -x / /home/rassol2/bek/ - собственно сама команда которая будет выполнятся.

Что это за второе поля, зачем эта задержка и как её применять.

#346344
Rassol2 написал:
Что это за второе поля, зачем эта задержка и как её применять.

Для каждой задачи Anacron определяет, выполнялась ли она в период, указанный в поле period файла конфигурации. Если задача не выполнялась в указанный период, Anacron выполняет команду, указанную в поле command через промежуток времени, указанный в поле delay, в минутах.
Источник: http://www.rhd.ru/docs/manuals/enterprise/RHEL-AS-2.1-Manual/custom-guide/anacron.html

#346346
Cruiser78 написал:
[quote=Rassol2]Что это за второе поля, зачем эта задержка и как её применять.

Для каждой задачи Anacron определяет, выполнялась ли она в период, указанный в поле period файла конфигурации. Если задача не выполнялась в указанный период, Anacron выполняет команду, указанную в поле command через промежуток времени, указанный в поле delay, в минутах.
Источник: http://www.rhd.ru/docs/manuals/enterprise/RHEL-AS-2.1-Manual/custom-guide/anacron.html[/quote]
собственно получается так.

Запускаем ноут, он определяет что пора бы прошло больше 1 суток с последнего запуска, и понимает что нужно сделать запуск. После чего он ждет столько минут сколько указано поле delay. И запускает.

То есть это время с момента определения что пора, до самого запуска.

#347185

после того как я выполню sudo service anacron start он будет постоянно запущен или его нужно где в авто запуске добавить ?

#347467

долго чухал лоб не понимая почему anacron не хочет идти на удаленный сервер и вытягивать от туда файлы. А потом понял анакрон работает от root, а с удаленным сервером связываюсь по ssh ключ авторизации есть у пользователя rassol2

Вопрос как решить это ?
Вот команда которую необходимо выполнять.

text
rsync -urlogtv -e='ssh -p 21732' --exclude=*.log --delete-after --rsync-path=/usr/bin/rsync root@**.***.***.***:/home/backups /home/rassol2/.backup/ser_1
#347503
"Rassol2" написал:
А потом понял анакрон работает от root, а с удаленным сервером связываюсь по ssh ключ авторизации есть у пользователя rassol2

Вопрос как решить это ?

Использовать

text
sudo -u  rassol2 ВАША_КОМАНДА

или

text
sudo -u  rassol2 -H ВАША_КОМАНДА
#347682
Lupo Alberto написал:
[quote="Rassol2"]А потом понял анакрон работает от root, а с удаленным сервером связываюсь по ssh ключ авторизации есть у пользователя rassol2

Вопрос как решить это ?

Использовать

text
sudo -u  rassol2 ВАША_КОМАНДА

или

text
sudo -u  rassol2 -H ВАША_КОМАНДА

[/quote]
в таком случае не нужно команду заключать в кавычки ?
Что то вроде этого :

text
1 6 rsync_cp [b]'[/b]sudo -u rassol2 rsync -urlogtv -e='ssh -p ****' --exclude=*.log --delete-after --rsync-path=/usr/bin/rsync root@**.***.***.***:/var/www/cp /home/rassol2/.backup/www_cp[b]'[/b]
#347683
Rassol2 написал:
[quote=Lupo Alberto][quote="Rassol2"]А потом понял анакрон работает от root, а с удаленным сервером связываюсь по ssh ключ авторизации есть у пользователя rassol2

Вопрос как решить это ?

Использовать

text
sudo -u  rassol2 ВАША_КОМАНДА

или

text
sudo -u  rassol2 -H ВАША_КОМАНДА

[/quote][/quote]
в таком случае не нужно команду заключать в кавычки ?
Что то вроде этого :

text
1 6 rsync_cp 'sudo -u rassol2 rsync -urlogtv -e='ssh -p ****' --exclude=*.log --delete-after --rsync-path=/usr/bin/rsync root@**.***.***.***:/var/www/cp /home/rassol2/.backup/www_cp'
#348457

все равно не работает. Как вообще проверить работает этот anacron ?

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