Если есть какие-либо изменения в ~/mydir , я хочу скопировать их в ~/someotherdir/mydir_revisions/04-02-2013 (сегодняшняя дата). Следует продолжить копирование в этот же каталог в течение 1 недели. После этого он должен создать новый каталог (~/someotherdir/mydir_revisions/04-09-2013 , который является датой того дня и продолжать использовать этот каталог в течение недели). Эти резервные копии будут продолжаться бесконечно, всегда используя определенную дату в течение целой недели перед обновлением даты.

Если это имеет значение, я использую Archlinux и копирую в другую файловую систему. Как я могу сделать это с помощью incron или любого другого рекомендованного пакета?

1 ответ1

2

В зависимости от вашего дистрибутива, есть пакет incrond .

Что делает этот пакет, так это то, что он получает события файловой системы от ядра через inotify .

Ваша настройка будет что-то вроде:

/path/to/monitored/directory IN_MODIFY /path/to/script/to/execute

Допустим, у вас есть следующий скрипт в $HOME/incron-move.sh , с помощью которого выполняется следующее:

#!/bin/sh
WEEK_OF_YEAR=`date +"%W"`
cp -ar $HOME/mydir /other/dir/mydir_revisions/$WEEK_OF_YEAR

Этот скрипт выполняет копирование всего содержимого /path/to/monitored/directory monitored/ в /other/dir/mydir_revisions/13 если он будет запущен сегодня (04.02.2013, это на 13-й неделе года)

Это не полное ваше требование, но решает вашу проблему с некоторой степенью надежности.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .