重复备份多个文件夹 (including/excluding)

Backup multiple folders with duplicity (including/excluding)

我想口是心非地备份以下文件夹

/home
/etc
/usr/local
/root
/var
/boot

并排除

/var/tmp
/var/run
/var/lock
/home/*/.thumbnails
/home/*/.cache
/home/*/.local/share/Trash
/root/.thumbnails
/root/.cache
/root/.local/share/Trash

我已经了解到我必须指定 一个 源目录来保存,并且我可以使用 includeexclude 选项进行调整。

因此,我可以将 / 作为源目录并排除 **(这将一无所获)并包括我要保存的文件夹。

来源 /--exclude / 将给出空集,--include ... 击败 exclude 并添加文件夹。但是,我将无法排除我想要排除的文件夹,对吗?还是我遗漏了什么?

我发现 include/exclude 命令在命令中出现的越多 "stronger"。

在我的例子中,导入和导出以及源代码如下所示:--exclude /var/tmp --exclude /var/run --exclude /var/lock --exclude /home/*/.thumbnails --exclude /home/*/.cache --exclude /home/*/.local/share/Trash --exclude /root/.thumbnails --exclude /root/.cache --exclude /root/.local/share/Trash --include /home --include /etc --include /usr/local --include /root --include /var --include /boot --exclude '**' /

(添加换行符:)

--exclude /var/tmp 
--exclude /var/run
--exclude /var/lock
--exclude /home/*/.thumbnails
--exclude /home/*/.cache
--exclude /home/*/.local/share/Trash
--exclude /root/.thumbnails
--exclude /root/.cache
--exclude /root/.local/share/Trash
--include /home
--include /etc
--include /usr/local
--include /root
--include /var
--include /boot
--exclude '**'
/

要完成@Kurtibert 的回答,您需要在包含的目录末尾添加 ** 以确保包含其中的文件(并且不要忘记引号):

--exclude '/var/tmp'
--exclude '/var/run'
--exclude /var/lock'
--exclude '/home/*/.thumbnails'
--exclude '/home/*/.cache'
--exclude '/home/*/.local/share/Trash'
--exclude '/root/.thumbnails'
--exclude '/root/.cache'
--exclude '/root/.local/share/Trash'
--include '/home/**'
--include '/etc/**'
--include '/usr/local/**'
--include '/root/**'
--include '/var/**'
--include '/boot/**'
--exclude '**'
/