Из https://rsync.samba.org/examples.html, есть два резервных копирования в следующем примере, где первое резервное копирование сделано find
и cp
, а второе rsync
. Мой вопрос касается первого резервного копирования.
Я использую rsync для резервного копирования домашнего каталога моей жены через модемную связь каждую каждую ночь. Задание cron выглядит следующим образом
#!/bin/sh cd ~susan { echo дата dest=~/backup/`date +%A` mkdir $dest.new найти . -xdev -type f \( -mtime 0 -or -mtime 1 \) -exec cp -aPv "{}" $dest.new \; cnt=`найти $dest.new -type f | wc -l` if [ $cnt -gt 0 ]; then rm -rf $dest mv $dest.new $dest fi rm -rf $dest.new rsync -Cavze ssh . samba:backup } >> ~/backup/backup.log 2>&1
обратите внимание, что большая часть этого скрипта не имеет никакого отношения к rsync, он просто создает ежедневную резервную копию работы Сьюзанв каталоге ~susan/backup/, чтобы она может получить любую версию за последнюю неделю.
Последняя строка выполняет rsync ее каталога через модемный канал на хост samba. Обратите внимание, что я использую опцию -C, которая позволяет мне добавить записи в .cvsignore для вещей, которые не нужно резервировать.
Мои вопросы следующие
Является ли "в каталоге ~susan/backup/" указанием 'dest=~/backup/date +%A
'? Означает ли ~
в dest
домашний каталог пользователя, запускающего скрипт, который может не быть Сьюзан, поэтому ~
может не означать ~susan
?
Является ли "ежедневное резервное копирование" заданным \( -mtime 0 - или -mtime 1 \)
? Означает ли \( -mtime 0 -or -mtime 1 \)
файлы, измененные в течение последних 48 часов, а не последних 24 часов?
Спасибо.
Указывается ли "в ~ susan / backup / каталоге" как 'dest = ~ / backup / date +% A'?
Да, значит, вы правы, реализация не совсем соответствует спецификации.
Означает ли ~ в dest домашний каталог пользователя, запускающего сценарий, который может не быть Сьюзен, поэтому ~ не может означать ~ susan?
Да. Но сценарий должен запускаться как Susan
или root
в любом случае, чтобы иметь доступ ко всем файлам Susan. Предполагается, что им будет управлять Сьюзен (или cron
, действующая от ее имени).
Указывается ли «ежедневное резервное копирование» с помощью (-mtime 0 -или -mtime 1)?
Я считаю, что «ежедневное» определяется тем, что когда-либо запускает сценарий, предположительно cron
(или в настоящее время системный таймер).
Означает ли (-mtime 0 -или -mtime 1) файлы, измененные за последние 48 часов, а не за последние 24 часа?
Да. -mtime 0
означает «чья отметка времени модификации по сравнению с текущим моментом, округленная до ближайших 24 часов, составляет 0 × 24 часа», и аналогично для -mtime 1
, таким образом, это обнаруживает, что все изменено в последние 48 часов (ну строго меньше 48 часов). Это необходимо, чтобы улавливать изменения за полные 24 часа с учетом изменений времени начала для ежедневных заданий.