我正在使用ProtectSystem=full
默认的 rsyncd 3.2 运行 Debian 11。
我想覆盖它,所以我习惯systemctl edit
这样做。这是我要放在覆盖中的内容:
### Editing /etc/systemd/system/rsync.service.d/override.conf
### Anything between here and the comment below will become the new contents of the file
[Service]
ProtectSystem=off
### Lines below this comment will be discarded
日志报告没有解析错误,并且单元(我认为)重新加载新配置。
/etc
但是,在尝试 rsync 到(例如)中的路径时,我仍然会收到“只读文件系统”错误。
我无法覆盖此限制有什么问题?或者这个限制不是问题?在我升级到 Debian 11 之前,配置在 Debian 10 上运行良好,所以我认为这ProtectSystem
是导致问题的原因。
编辑:这是/etc/rsyncd.conf
我正在使用的配置:
[nameOfMount]
path = /etc/postfix
auth users = sysadmin
secrets file = /etc/rsyncd.secrets
hosts allow = xxx.xxx.xxx.xxx
read only = false
uid = root
pre-xfer exec = /usr/local/bin/scriptA.sh
post-xfer exec = /usr/local/bin/scriptB.sh
pro/post exec 脚本制作正在传输的文件的备份副本,并重新加载 postfix 守护程序。这些错误例如:
rsync error: requested action not supported (code 4) at clientserver.c(1098) [Receiver=3.2.3]
/bin/cp: cannot create regular file '/etc/postfix/fileName.yyyymmddd': Read-only file system
让我们从状态检查开始
在我未修改的系统上这返回
我之所以选择,是
NoNewPrivileges
因为此设置会阻止rsyncd
更改其 UID。现在让我们看看
rsync
守护进程重新启动的时间,并记下它(在我的例子中是 22:53):如果我将你的两行添加到覆盖中,
然后我得到这个
但是
rsync
守护进程没有重新启动:事实上,我发现我必须手动执行此操作
但是,文件系统仍处于只读模式。我们需要额外的一行:
随后重启,
最后的完整性检查,
在我的系统上,这会返回所需的结束游戏,它允许我写入下面的文件和目录
/etc
: