就是不想在 root 下运行!
也可能是我没研究过Systemd的原因,导致Resilio的换用户比较纠结。
首先是一些基础工作:在自己的文件夹下建立ResilioSync的配置文件。这一步我们可以不必手动做,Resilio提供有一键脚本。
/etc/resilio-sync/init_user_config.sh
然后是正式换用户去。这里提供两个方法:
方法一
直接按照 Transmission 换用户 的方法来做,把里面的 transmission-daemon
换成 resilio-sync
即可。
不过这个办法有一点问题是,好像不是非常稳定。刷新一次,就提示让你新建一个身份。在多方 Google 之后,终于找到了一个答案: 它的配置没有保存。
配置文件有两种:
- 如果是直接下载运行的,配置文件就在可执行文件旁边
.sync
文件夹里 - 如果是通过包管理器安装的
- 如果是默认用户,配置文件在
/var/lib/resilio-sync
- 如果是其他用户,配置文件在
/home/username/.config/resilio-sync/storage
- 如果是默认用户,配置文件在
换用户之后,我属于最后一种。所以这里又有几个选择:
- 第一种,直接更改
/var/lib/resilio-sync
的权限
1, 第二种,做个软连接ln -s /home/username/.config/resilio-sync /var/lib/resilio-sync
- 第三种骚操作,写fstab:
/home/username/.config/resilio-sync /var/lib/resilio-sync none bind
方法二
使用Systemd提供的drop-in
机制,替换掉默认/lib/systemd/system/resilio-sync.service
的一些东西:
新建/etc/systemd/system/resilio-sync.service.d/override.conf
,输入以下内容
[Service]
User=pi
Group=pi
PIDFile=/home/pi/.config/resilio-sync/sync.pid
ExecStartPre=
ExecStart=
ExecStart=/usr/bin/rslsync --config /home/pi/.config/resilio-sync/config.json
然后
sudo systemctl daemon-reload
sudo systemctl restart resilio-sync.service
愉快地同步吧~
发表回复