linux 文件和目录的属性及权限
-i inode 节点号 -h 人类可读
man ls
/i 搜索 /是搜索 按n向下搜索 按N向上搜索
-i, --inode
print the index number of each file
-h, --human-readable 人类-可读
with -l, print sizes in human readable format (e.g., 1K 234M 2G)
文件属性:索引节点(inode)、文件类型、权限属性、链接数、所归属的用户和用户组、最近修改时间等内容
第一列 索引节点
索引节点号 类似身份证 系统读取文件时首先通过文件名找到inode,然后才能读取到文件内容
第二列 文件类型以及权限
第一个,文件类型(文件,目录,设备,链接,套接字等等)
后9个字符是文件的权限,
最后一个点与selinux相关的,没什么用
第三列,硬链接的数量(一个超市有多个门访问,这些门对于超市来说就是它的硬链接)
也有个备份的意思,一个链接删掉了,数据没丢,还可以从另一个门进去。
第四列,拥有者 (文件或目录所属的用户) linux里面文件和程序的存在必须要有用户和组
第五列 文件或目录所属的组 (一个人出生,属于一个家庭,幼儿园时,属于哪个学校。一个用户可以所属多个组有一个最主要的组)
第六列 文件大小 目录的话至少是一个块的大小。 linux里面,一切皆文件(目录也是文件)
第789列,文件的修改时间 -mtime modify 属性的改变 -ctime change 访问的时间 -atime access
find -mtime -ctime -atime
第十列 文件名(不算文件的属性)
索引节点inode 教室门口一张纸(inode),有大家的名字,身高,性别。座位相当于(block)
每个linux存储设备或存储设备分区(设备可能是硬盘、U盘等)被格式化ext4(centos6.7)文件系统后,一般都生成两部分
第一部分是Inode(很多个) 第二部分是Block(很多个)
Block是用来存储实际数据用的:照片,视频等普通文件数据
而inode就是用来存储这些数据,属性信息的(命令ls -l的结果) :有文件大小、属主、归属的用户组、读写权限、文件类型、修改时间
,指向文件实体的指针的功能(inode节点--block的对应关系)等。唯独不包含文件名,文件名不是属性。
计算机里面的任何信息都有存储的,可能是内存,可能是硬盘,可能是缓存。一定有个地方存储的。文件的属性,存在inode里面。
inode除了记录文件属性信息外,还会为每个文件进行信息索引,所以就有了inode的数值。
操作系统根据指令,即可通过inode的值最快的找到相对应的文件实体。inode,block之间的关系见下图:
命令stat 接上一个文件 也可以看inode
man stat 显示文件和文件系统状态(查看文件属性)
格式化前可以指定inode大小,迄今为准没有一个企业有这个需求。
dumpe2fs /dev/sda1|grep -i "inode size"
grep -i 不区分大小写
看每个分区的inode的数量以及使用的数量
df -h 查看磁盘的使用量(一般对于用户是block满了)
df -i 查看磁盘inode使用量
inode相同的文件,互为硬链接文件。可认为是一个文件的不同入口
如何生成及指定inode大小
格式化的时候指定:mkfs.ext4 -b 2048 -l 256 /dev/sdb