如何设置Unix文件的 ctime ?
(我更喜欢Python的答案。如果用标准Python无法做到这一点,那么我认为C也可以。)
(注意:我知道可以使用os.utime设置文件的atime和mtime。我对设置ctime感兴趣。)
(注2:我希望有一个适用于任何POSIXoid Unix的答案,但如果没有,我对Darwin和Ubuntu感兴趣。)
答案 0 :(得分:6)
将文件ctime设置为当前时间相对简单。只需修改它的mtime,翻转一个权限位,甚至可以建立一个硬链接。 AFAIK是不可能使用系统调用API以任何直接的方式将文件的ctime设置为任意值。
如果您具有root访问权限,则可以设置系统时间,对文件执行某些操作以将ctime设置为当前时间,然后再设置系统时间。你也可以在磁盘上旋转inode数据结构。但是出于各种各样的原因,这些都是非常糟糕的想法,我不认为我应该详细解释。