我的备份 cronjob 有问题。我使用这些设置(如建议的那篇帖子):
15 * * * * env DISPLAY=:0 /usr/bin/deja-dup --backup
在运行时 deja-dup 说:
Backup location not available. Waiting for 'xy' to become connected...
外部磁盘“xy”已安装;当我在命令行中运行 deja-dup --backup 时,我也可以创建备份。
知道问题可能出在哪里吗?可能是权限问题吗?但我想 crontab 会以我的用户身份运行该作业。
谢谢
答案1
我也遇到过同样的问题,deja-dup 在通过 cron 执行时无法可靠地工作。答案(非常不令人满意)是,它根本不是为通过 cron 工作而设计的。
一种可能的解决方案是使用 duplicity 进行 cron 计划备份。Duplicity 是 deja-dup 连接的后端。
答案2
好的,我找到了解决方法。首先,您需要安装 dconf-editor:
sudo apt-get install dconf-editor
然后运行它并打开 org/gnome/deja-dup/file。在那里,将“类型”从“volume”更改为“normal”
或者你也可以直接执行这个命令:
dconf write /org/gnome/deja-dup/file/type "'normal'"
但需要注意的是:
- 在 Ubuntu 16.04 中测试
- 我还没有测试如果卷没有实际安装会发生什么
- 我还没有测试过如果您稍后更改 Deja Dup 设置会发生什么,但我认为它可能会重置该值,因此您必须再次手动编辑它(或者在 dejadup --backup 之前将前面提到的命令添加到您的 crontab 中)
答案3
另一个解决方法是使用“本地”后端而不是“卷”。您唯一需要的是一个静态备份路径,在我的情况下是/media/filip/red/backup
。
dconf write /org/gnome/deja-dup/backend "'local'"
dconf write /org/gnome/deja-dup/local/folder "'/media/filip/red/backup'"
该卷(此处/media/filip/red
)是从 USB 棒挂载的 LUKS 加密卷。但在我的 Ubuntu(20.04)上,出于某种原因,deja-dup 从 cron 运行时未检测到此 LUKS 驱动器。