我运行一个服务器,我们向客户端提供sftp凭据,以便交付各种大小的文件.保留上传的时间对我来说很重要,老实说,我不能在原始系统上创建或修改它的时间.不幸的是,我们的许多客户坚持使用rsync -av上传他们的文件.
我已经做了很多 – 使用chroot到沙盒用户,防止ssh访问等,但这仍然是我们的屁股的痛苦.有没有办法阻止rsync或sftp更改服务器端的创建/修改时间?
解决方法
我会在inotifywait -r -m –csv -e ATTRIB / my / dir中编写脚本.只要有人修改mtime,ctime,权限(和其他次要stufF),就会打印任何文件,这样您就可以根据需要触摸该文件.这是一个繁琐而丑陋的解决方法,但对于一般情况不能想到更简单的事情.
您更新mtime的要求是非标准的; ctime没问题.通常情况下,您可以让人们自由地使用mtime向后退,这样它就可以存储文件内容有意义更新的日期.使用ctime检查有关文件的某些内容发生更改的时间(例如,更改了mtime,更改了权限,创建了文件等);请参阅stat / my / file或ls -lc或找到最新的find. -cmin -60