我正在运行一个 Samba PDC,其主目录和 Win7(漫游)配置文件均位于“/home”下,即:
/home/[用户名]
/home/samba/profiles/[用户名]/win.V2
出于备份目的(Debian 7.6 上的 duplicity 0.6.18),我只对用户的主目录和相应的“Documents”配置文件夹感兴趣。我的排除通配符文件列表如下所示:
+ /主页/samba/配置文件/*/win.V2/文档
-/主页/桑巴
但是,这行不通。我确实获取了所有主目录,但没有获取任何配置文件文件夹。具体命名每个配置文件路径即可解决问题;但是,如果有 30 多个用户,这很快就会变得乏味:
+ /home/samba/profiles/[用户1]/win.V2/Documents
+ /home/samba/profiles/[用户2]/win.V2/Documents
即兴发挥。
看起来,在这个特定情况下,shell 扩展“*”并没有扩展。我尝试了几个仅限个人资料使用相同的符号运行,得到所需的结果。我在这里遗漏了什么?
非常感谢任何指点!
麦克风
答案1
两件事情
0.6.18 太旧了,尝试更新到最新稳定版本 0.6.25
尝试以下排除通配符列表
+ /主页/samba/配置文件/*/win.V2/文档 -/主页/桑巴/** + /主页/** -**
现在运行 duplicity 时,重要的是使用“--exclude-globbing-filelist”并备份文件系统的根目录“/”。不要担心排除列表将确保只有您想要的文件夹才会出现在备份中。您可以备份“/home”,但随后您将不得不在排除列表中省略“/home”前缀。
一些解释:duplicity 从上到下查看排除列表。如果找到匹配项,则查找完成,并根据前缀(+/-)或列表类型做出决定(例如,排除列表隐式排除条目)。
例如:路径“/home/user1”将被上述列表视为..
1. does it fit '/home/samba/profiles/*/win.V2/Documents' -> NO
2. does it fit '/home/samba/**' ->NO
3. does it fit '/home/**' -> YES ->
4. decision = included because prefixed by +
玩得开心.. ede/duply.net