我在 crontab 中输入了以下命令,使用 FreeFileSync 进行自动备份。它在 Ubuntu 20.04 上运行良好,但我注意到它在 Ubuntu 21.10 上不再起作用。
30 12 * * * DISPLAY=:0 flatpak run org.freefilesync.FreeFileSync /home/toto/Backup.ffs_batch >/dev/null 2>&1
我首先>/dev/null 2>&1
按照以下建议添加了这个帖子因为我在 /var/log/syslog 中发现它产生了以下错误:
(CRON) info (No MTA installed, discarding output)
在 /var/log/syslog 中,以下行之后不再有任何错误:
(toto) CMD (DISPLAY=:0 flatpak run org.freefilesync.FreeFileSync /home/toto/Backup.ffs_batch >/dev/null 2>&1)
但是,似乎什么也没有发生。FreeFileSync 从未启动。
似乎有一个解决方案这里这涉及卸载 FreeFileSync 的 flatpak 版本并从 FreeFileSync 网站的运行文件重新安装。我更愿意保留 flatpak 版本,因为它会自动更新软件包。
非常感谢您的帮助。
编辑:我已将其替换>/dev/null
为>/home/toto/crontab.log
将错误重定向到日志文件。这是我收到的错误:
bwrap: Can't find source path /tmp/.X11-unix/X0: No such file or directory
有关于 Flatpak 涉及此类错误的讨论这里,但我的技能还不够,无法理解他们建议的解决方案。
答案1
感谢提供有用意见的好心人,这里是解决方案:
活动显示不正确。我得到了实际的活动显示,并echo $DISPLAY
返回了:1
。
然后,以下 CRON 命令开始起作用:
30 12 * * * DISPLAY=:1 flatpak run org.freefilesync.FreeFileSync /home/toto/Backup.ffs_batch >/home/toto/crontab.log 2>&1