Linux下三个time的介绍与如何创建推测用户

[摘要]介绍linux的三个time,帮助大家了解。

(中国软件网讯)介绍linux的三个time,帮助大家了解。

atime access time :访问时间,文件被读取或执行时会改变mtime modify time :修改时间,文件本身内容被修改时会改变ctime change time :更改时间,文件的属性被修改时会改变,如修改文件的权限,文件属组,+ia属性等等。一般mtime改变了ctime就会同时改变(inode更改相关)。

注意ctime ctime不是 create time 创建时间,linux不像windows下会保留文件被创建的时间,所以一个文件被修改后它的创建时间就没有了。

注意几处地方:1.解压一个打包的文件,解压出来的文件的mtime是文件最后被修改的time,这个时候ctime却能表示这个文件被解包的时间,也就是在本机上被创建的时间(前提ctime没有被修改过),所以会看到mtime和ctime相差很大。

使用cp命令会修改源文件的三个time,想要保留原文件的时间属性可以使用-p选项,但是只能保留atime和mtime,ctime是一样会被改变的。

文件夹的三个time经自己实践测试:文件夹的三个time取决与文件夹里面文件的三个time.任何一个文件的atime,mtime,ctime的改变都直接导致文件夹相应a、m、c time的改变。所以通过看用户home文件夹的time来判断用户的创建时间是不准确的。一个用户的登录,在home目录创建文件,和退出登录等动作都是会改变home目录的三个time的。

总结下linux没有办法能确定一个文件的创建时间,只能通过各种间接的办法去推测大概的时间。

linux推测用户创建时间的方法:(都是不准确)

同样的一个用户的创建时间也没有办法确定。可以用以下办法去推敲大概时间0.查看/home/用户 目录的mtime(这个基本不靠谱,只有用户没有在自己主目录下创建过任何文件,和对/home/用户 下的任何文件做过更改时才行)

1.查看/etc/shadow文件中第三列,用户上次更改密码的时间,貌似是一个时间戳,要换算。(本人没有测试过,这个也只是能确定到用户上次更改密码的时间,当然大部分用户会在被创建是修改,之后不再修改。)

2.可以cat /var/log/secure 会有类似:Feb 10 10:53:06 dev useradd[3344]: new group: name=xxx, GID=503日志看到(本人RHEL6.0测试是没有的,或许低版本有)

3.把系统的home目录挂载到ntfs的系统上查看创建时间(这个真不知道可行否,未测试)

以上讨论的是系统默认情况下的时候的办法,如果是出于安全审计加固的做法,完全可以以下办法来控制,比如1.用户被创建的时候都需要从/Etc/skel/下复制文件,可以在这个文件下建一个我们自定义的隐藏文件,通常情况下这个文件不会再被修改,可以靠看这个文件的mtime来确定用户的创建时间2.通过脚本审计/etc/passwd文件的行数来实现,只要passwd文件增加了行数就自己记录并mail管理员。




免责声明:

本站系本网编辑转载,会尽可能注明出处,但不排除无法注明来源的情况,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与本网联系, 来信: liujun@soft6.com 我们将在收到邮件后第一时间删除内容!

[声明]本站文章版权归原作者所有,内容为作者个人观点,不代表本网站的观点和对其真实性负责,本站拥有对此声明的最终解释权。