Using utimes
, futimes
, futimens
等等,可以设置文件的访问和修改时间戳。
修改时间是文件数据最后一次改变的时间。同样,“ctime”或更改时间是文件属性(例如权限)最后一次更改的时间。 (Linux/POSIX 维护三个时间戳:mtime 和 ctime(已经讨论过)以及“atime”或访问时间。)
有没有设置更改时间戳的功能? (其中“change”是属性修改或“ctime”,not修改时间“mtime”。)(我理解想要更改更改时间戳的循环性质,但想想归档软件 - 完全按原样恢复文件会很好。)
有没有任何用于创建时间戳的函数? (我意识到ext2
不支持这一点,但我想知道 Linux 是否支持,对于那些支持它的文件系统。)
如果不可能,那么其背后的原因是什么?
For ext2/3
并且可能是为了ext4
你可以这样做debugfs
工具,假设您想更改ctime
文件的/tmp/foo
驻留在磁盘中/dev/sda1
我们想将 ctime 设置为201001010101
这意味着 2010 年 1 月 1 日,时间 01:01:
警告:执行此操作之前必须卸载磁盘
# Update ctime
debugfs -w -R 'set_inode_field /tmp/foo ctime 201001010101' /dev/sda1
# Drop vm cache so ctime update is reflected
echo 2 > /proc/sys/vm/drop_caches
信息取自Command Line Kung Fu http://blog.commandlinekungfu.com/2010/02/episode-80-time-bandits.html blog.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)