由于错误的目标参数导致 rsync 删除错误文件的严重事故后,我想限制 rsync(或运行它的 bash 脚本)只能删除/修改某个目录下的文件。我想到了:
在仅具有该目录权限的用户下创建并运行 rsync/script。这里的问题是:如何动态使用/创建这样的用户?(这是构建脚本的一部分,应该为其他用户“运行”)。
验证提供给 rsync 的目标路径是否在某个目录下。方向好像是在使用test命令,但是我想不通怎么正确使用,也不是那么安全,因为path参数的测试还是会与实际运行的path参数不同步,所以我认为(1)更健壮。