`
zhangxiong0301
  • 浏览: 349809 次
社区版块
存档分类
最新评论

linux中ctime,mtime,atime的区别(转载)

阅读更多

当你同熟练的UNIX用户进行交谈时,你经常会听到他们傲慢地讲出术语“改变时间(change time)”和“修改时间(modification time)”。对于许多人(和许多字典而言),改变和修改是相同的。这里会有什么不同那?


    改变和修改之间的区别在于是改某个组件的标签还是更改它的内容。如果有人说chmod a-w myfile,那么这是一个改变;如果有人说echo foo >> myfile,那么 
这是一个修改。改变是文件的索引节点发生了改变;修改是文本本身的内容发生了变化。[文件的修改时间也叫时间标志 (timestamp).]

    只要讨论改变时间和修改时间,就不可能不提到“访问时间(access time)”.访问时间是文件最后一次被读取的时间。因此阅读一个文件会更新它的访问时间,当它的改变时间并没有变化(有关文件的信息没有被改变),它的修改时间也同样如此(文件本身没有被改变)

有时,在许多地方改变时间或者“ctime”被错误地写成“创建时间”,包括某些UNIX参考手册。不要相信他们
下面是我man出来的内容,仅供参考!

     st_atime
           Time when file data was last accessed. Changed by  the
           following   functions:   creat(),   mknod(),   pipe(),
           utime(2), and read(2).

     st_mtime
           Time when data was last modified. Changed by the  fol-
           lowing  functions:  creat(), mknod(), pipe(), utime(),
           and write(2).

     st_ctime
           Time when file status was last changed. Changed by the
           following   functions:   chmod(),   chown(),  creat(),
           link(2),  mknod(),  pipe(),  unlink(2),  utime(),  and
           write().

ls显示出的time应该是mtime。

touch后,文件的三个时间应该都会改变,可以试一试。

问题描述
文件的 ctime、mtime、atime 之间有什么区别? 
配置信息
解决方法
文件的 Access time,atime 是在读取文件或者执行文件时更改的。
文件的 Modified time,mtime 是在写入文件时随文件内容的更改而更改的。
文件的 Create time,ctime 是在写入文件、更改所有者、权限或链接设置时随 Inode 的内容更改而更改的。 

因此,更改文件的内容即会更改 mtime 和 ctime,但是文件的 ctime 可能会在 mtime 未发生任何变化时更改 - 在权限更改,但是文件内容没有变化的情况下。 
ls(1) 命令可用来列出文件的 atime、ctime 和 mtime。
ls -lc filename         列出文件的 ctime
ls -lu filename         列出文件的 atime
ls -l filename          列出文件的 mtime 

    atime不一定在访问文件之后被修改,因为:使用ext3文件系统的时候,如果在mount的时候使用了noatime参数那么就不会更新atime的 信息。而这是加了 noatime 取消了, 不代表真實情況.反正, 這三個 time stamp 都放在 inode 中.若 mtime, atime 修改, inode 就一定會改, 既然 inode 改了, 那 ctime 也就跟著要改了.之所以在 mount option 中使用 noatime, 就是不想 file system 做太多的修改, 而改善讀取效能.
分享到:
评论

相关推荐

    linux下find命令-atime,-ctime,-mtime真正含义

    NULL 博文链接:https://hbiao68.iteye.com/blog/2167353

    浅谈find命令下的atime,ctime,mtime

    linux下的find命令提供了相当多的查找条件,功能很强大,由于find的功能很强大,所以他的选项也很多,今天我们来细说一下find命令下的三个时间参数atime,ctime,mtime. atime:access time,最近一次访问时间,当使用...

    windows下修改文件的atime、ctime、mtime的python代码

    使用方法: 输入python ModifyAMCtime.py 文件名 可以把文件的时间进行修改。可以修改代码,完成atime、ctime、mtime的自定义修改

    times:#golang文件时间(atime,mtime,ctime,btime)

    次 用法 #golang的文件时间 Go在大多数平台上都具有隐藏的... AccessTime ()) log . Println ( t . ModTime ()) if t . HasChangeTime () { log . Println ( t . ChangeTime ()) } if t . HasBirthTime () { log

    Linux系统总复习.txt

    find -name -iname -size -user -atime -ctime -mtime -type -inum -perm -exec(查询结果中直接执行) locate 在数据库中按文件名查找 updatadb 强制更新数据库 grep -i -v -i 忽略大小写 -v 反向选择 4)帮助...

    linux备份与恢复基础知识

    unix系统为每个文件都记录这三个不同的时间,... 备份会改变atime,tar,cpio,dd都会这样做,dump通过原始设备来读取文件系统,因此它不 会改变atime. dump的语法。 dump levelunbdsf blkg-factor density size device-n

    开源项目-djherbis-times.zip

    开源项目-djherbis-times.zip,File Times for Go (atime, mtime, ctime, btime)

    linux下获取文件的创建时间与实战教程

    背景 有时候我们需要获取文件的创建时间。 例如: 我在研究 《xtrabackup 原理图》的时候,想通过...他们分别是 ATime、MTime 和 CTime [root@192-168-199-198 backups]# stat 2.txt File: ‘2.txt' Size: 16 Bl

    入门学习Linux常用必会60个命令实例详解doc/txt

    在Linux中,如果要使用硬盘、光驱等储存设备,就得先将它加载,当储存设备挂上了之后,就可以把它当成一个目录来访问。挂上一个设备使用mount命令。在使用mount这个指令时,至少要先知道下列三种信息:要加载对象的...

    AIDE 是一个监控文件系统变化的工具_C语言_代码_下载

    文件大小、mtime、atime、ctime、链接和不断增长的大小。 o 支持的校验和和哈希:SHA1、MD5、RMD160 和 TIGER。 如果编译了 Mhash 支持,则 CRC32、HAVAL 和 GOST。 o 为简单起见,纯文本配置文件和数据库。 o ...

    高级入侵检测环境AIDE

    AIDE数据库能够保存文件的各种属性,包括 :permisstion、inode number、user、group、file size、mtime、ctime、atime、增加的大小以及连接数。AIDE还能够使用下列算法:sha1、md5、rmd160、tiger,以密文形式建立...

    完整性检验工具Aide

    AIDE,是一个文件完整性检测工具,AIDE能够构造一个指定文件的数据库, ...(atime)、 增加的大小以及连接数。 AIDE还能够使用下列算法: sha1、 md5、 rmd160、 tiger,以密文形式建立每个文件的校验码或散列。

    find命令查询指定时间的大文件并删除

    find 查询路径 -ctime/-mtime/-atime 时间范围 -name 文件名称 -type f -exec rm {} \; --时间单位为分钟 find 查询路径 -cmin/-mmin/-amin 时间范围 -name 文件名称 -type f -exec rm {} \; 1.2 示例: --删除/...

    遍历指定目录,并存储目录内所有文件属性信息的php代码

    项目需要,需要写一个函数,能够遍历指定目录中的所有文件,而且这个... define('INDEXFORMAT',dir,name,size,perms,ower,group,ctime,mtime,atime,suffix) ; define('INDEXTXT', 'data/index.txt'); define('INDE

    SQLiteVTable:SQLite虚拟表示例

    有了它,您可以使用SQL搜索文件,如下所示: select ctime, atime, mtime, uid, gid, size / ( 1024 * 1024 ) as ' size (MB) ' , path || ' / ' || name as file from fs where path match ' /usr/lib, /var/log '...

    基于HTTP的文件系统SpockFS.zip

    SpockFS 是一个基于 HTTP 的文件系统,其...X-Spock-atime: 1420481542 X-Spock-ctime: 1420481543 X-Spock-nlink: 11 X-Spock-blocks: 1 X-Spock-dev: 16777224 X-Spock-ino: 106280423 标签:SpockFS

    unlike:显示两个目录之间的差异

    -a , --atime : 比较文件访问时间 -m , --mtime : 比较文件修改时间 -c , --ctime : 比较文件更改时间 -v , --verbose : 切换详细模式 如果未传递任何选项,则unlike文件将视为相等,只要它们的名称相同即可,即

    django-purge

    您还可以使FilePurgers能够根据文件名中的日期戳或元数据中的时间戳(atime / mtime / ctime)清除旧文件。如何使用$ pip install django-purge 在您的INSTALLED_APPS包括purge 。 然后,在管理界面中创建数据库...

Global site tag (gtag.js) - Google Analytics