元数据信息包含:
- File:文件名
- Size:文件大小(单位:B)
- Blocks:文件所占块个数
- IO Block:每个数据块的大小(单位:B)
- regular file:普通文件(此处显示文件的类型)
- Inode:文件的Inode号,文件的索引节点号
- Links:硬链接次数
- Access:权限
- Uid:(属主id/属主名)
- Gid:(属组id/属组名)
- Context:文件所在的环境
- Access:最近访问时间access time (atime)
- Modify:数据改动时间modification time (mtime)
- Change:元数据改动时间status time (ctime)
- Creat/Birth:文件创建时间
查看文件的元数据的方法:
stat命令:stat – display file or file system status,使用stat 查看文件的元数据
使用语法:stat FILE…
实例:
[root@centos7 log]# stat /etc/passwd
File: ‘/etc/passwd’
Size: 2304 Blocks: 8 IO Block: 4096 regular file
Device: 802h/2050d Inode: 18356503 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:passwd_file_t:s0
Access: 2019-12-14 20:11:54.204042005 +0800
Modify: 2019-12-08 22:33:37.381765180 +0800
Change: 2019-12-08 22:33:37.382765197 +0800
Birth: -
修改文件的时间戳的方法:
touch命令:touch – change file timestamps修改时间戳
使用语法: touch [OPTION]… FILE…
注意:~]#touch /tmp/x 当touch的文件不存在时,会在目标目录下创建x空文件
选项:
不跟任何选项时三个时间戳都会被更新为当前时间。
-c: 指定的文件路径不存在时不予创建;
-a: 仅修改access time;
-m:仅修改modify time;
-t :指定改为某一时刻的时间,时间参数格式 [[CC]YY]MMDDhhmm[.ss]
实例:
[root@centos7 log]# stat /etc/passwd
File: ‘/etc/passwd’
Size: 2304 Blocks: 8 IO Block: 4096 regular file
Device: 802h/2050d Inode: 18356503 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:passwd_file_t:s0
Access: 2019-12-14 20:11:54.204042005 +0800
Modify: 2019-12-08 22:33:37.381765180 +0800
Change: 2019-12-08 22:33:37.382765197 +0800
Birth: -
[root@centos7 log]# touch -m -t 201912142106.01 /etc/passwd
[root@centos7 log]# stat /etc/passwd
File: ‘/etc/passwd’
Size: 2304 Blocks: 8 IO Block: 4096 regular file
Device: 802h/2050d Inode: 18356503 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:passwd_file_t:s0
Access: 2019-12-14 20:11:54.204042005 +0800
Modify: 2019-12-14 21:06:01.000000000 +0800
Change: 2019-12-14 21:06:24.160245626 +0800
Birth: -
文件的时间是很重要的,因为,如果文件的时间误判的话,可能会造成某些程序无法顺利的运作。那么万一我发现了一个文件来自未来,该如何让该文件的时间变成『现在』的时刻呢?就用touch这个指令即可。不要怀疑系统时间会『来自未来』!很多时候会有这个问题的!举例来说在安装时选错了时区,导致系统时间比现实时间快,若此时创建了文件,再你将系统时间修改成现实时间后,那么你之前创建的文件就是来自未来的。
至于某些情况下,由于 BIOS 的设定错误,导致系统时间跑到未来时间,并且你又建立了某些文件。 等你将时间改回正确的时间时,该文件不就变成来自未来了。
touch 这个指令最常被使用的情况是:
- 建立一个空的文件;
- 将某个文件日期修订为目前 (mtime 与 atime)