首页/系统/Linux 运维命令速查/文件三种时间戳(atime/mtime/ctime)
本包目录(613 条)
文件与目录76 条
文本处理77 条网络命令82 条进程与作业69 条磁盘与文件系统51 条用户与权限44 条日志与排查40 条systemd 与服务42 条包管理34 条性能与监控48 条定时任务与计划50 条

文件三种时间戳(atime/mtime/ctime)

访问时间、修改时间、元数据变更时间;理解三者差异是排查同步、备份与入侵篡改的基础。

Linux 运维命令速查系统更新于 2026-10-12
atime最后访问时间(读取会更新)
mtime内容最后修改时间(ls 默认显示)
ctime元数据最后变更(权限/属主/改名,非创建时间)

查看三种时间

查看三种时间
stat -c '%n A=%x M=%y C=%z' app.log
ls -lu app.log     # 显示 atime
ls -lc app.log     # 显示 ctime

按时间查找

按时间查找
find /data -mmin -10      # 10 分钟内改过内容
find /etc -cmin -60       # 1 小时内元数据变更(应急排查)
touch -d '2026-10-01 08:00' f   # 人工改 mtime/atime
现代 Linux 默认 relatime:atime 更新被大幅合并,读文件很少立刻刷新 atime,别当精确审计用。

易错点

  • ctime 无法被人工设置,只能随元数据操作变化;恢复备份常导致 ctime 全量刷新,排查时别误判
  • 备份/同步工具普遍按 mtime 判断新旧,touch 篡改时间会骗过 rsync 与 make

数据来源与参考

  • man 1 stat(GNU coreutils 手册)
  • mount(8) 手册(relatime 挂载选项)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌