我正在使用rsnapshot
进行备份。备份的路径如下所示:
name=$(date +"%Y-%m-%d_%H-%M")
/backup/hourly.0/"$name"
在perl脚本中,我从不同的快照中选择,以diffs
为我的主目录中的文件。
my $backup = '/backup';
opendir my $dh, $backup or die $!;
my @versions;
while ( defined( my $version = readdir $dh ) ) {
# ...
push @versions, $version;
}
# choose from @versions
# do something with the choosen
有没有办法锁定备份目录,以便在我运行脚本时rsnapshot
不会开始旋转快照?
答案 0 :(得分:2)
您无法使用独占锁锁定目录,因为独占锁需要打开文件进行读写,并且无法打开目录以进行读取和写入。写作。您可以改为锁定文件,但请记住文件锁是建议性的。因此,如果rsnapshot
也没有锁定目录,那么你将锁定它,没有其他人注意你的锁,它没有完成任何事情。
一些选项:
rsnapshot
锁定它的脚本。.0
,.1
等文件名后缀的命名方案,以便您无需旋转它们。