Nextcloud,无需 GUI 即可同步

gue*_*tli 6 nextcloud

有没有办法将 PC 与 nextcloud 服务器同步,但无需桌面 GUI?

PC 启动后就会进行同步。即使用户尚未登录。

我知道nextcloudcmd。我可以运行一个 cron 作业并每 N 分钟调用一次“nextcloudcmd”。

但这并不好。

我真的更喜欢立即同步的解决方案(例如通过 inotify)。

这怎么可能做到呢?

我认为封装 nextcloudcmd 的 shell 脚本只是一种解决方法。

如果nextcloud不提供这个,那么我将使用seafile来做到这一点。请参阅:https://manual.seafile.com/deploy/start_seafile_at_system_bootup.html

我个人认为这很奇怪。GUI 可以做到这一点。我只是想要同样的东西,但没有 GUI。是的,我可以在“假”帧缓冲区 X 环境中运行 GUI……但是不行,那太脏了。

waz*_*oox 3

这需要基本的 shell 脚本:测试是否存在锁定文件,如果不存在则创建锁定文件,运行更新,删除锁定文件。这样就nextcloudcmd不会启动多次。

未经测试的概念证明:

#!/bin/sh

LOCKFILE=/var/lock/ncupdate.lock

[ -e $LOCKFILE ] && kill -0 $(cat $LOCKFILE) 2>/dev/null  && exit;


echo $$ > $LOCKFILE
nextcloudcmd
rm $LOCKFILE
Run Code Online (Sandbox Code Playgroud)

更新:它测试正在运行的进程,因此如果脚本被终止,它仍然会运行并覆盖 PID。

  • @guettli我试图激励你自己解决问题:)所以我更新了我的答案,以便它实际上检查脚本是否仍在运行。 (2认同)