文件的构成
由元数据(metadata)和数据(data)两部分组成硬盘分区上一块空间存该分区上文件的元数据,一块空间存这些文件的数据
因为元数据和数据分离存放,所以需要通过指针地址来进行关联
元数据: 存放文件的属性信息
存放每个文件的元数据信息: innode表
元数据信息包括:
- inode number 节点号
- 文件大小、类型、权限
- UID、GID
- 所有者、所属组
- 文件时间戳(三个)
- 链接数
节点编号:每个文件的唯一标识,innode number (ls -i 可以查看inode编号)
df -i --- 每个空间可用得节点编号数量,不同分区得节点编号不干扰
数据: 存放文件真正的数据
磁盘上存放数据空间的分配单位:块(block),默认大小为4kb。 一个文件的数据部分由若干个块来存放。inode表和数据部分通过指针地址进行关联(指针是保存了别人地址值的一个变量)
目录文件的组成:
目录文件是一个特殊的文件
两部分组成
- 元数据 — 存放属性信息
- 数据块:数据块存放的是文件列表(inode table)和inode number之间的映射关系
解决磁盘空间不足的问题
方法一:
1.直接删除占用大的文件,但是若是这个文件被其他进程使用,即使删除了文件但是空间仍然没有被释放。
2. lsof | grep delete — 照到被删除的文件,看他被那个进程占用,使用kaill关闭这个进程就行了
方法二:
使用重定向创建一个空文件去替换原有的文件—cat /dev/null > 指定文件
创建文件出现空间不够的问题
1.磁盘分区的节点号 inode用完了 可以使用 df -i 进行查看
2.分区的空间真的占用满了 使用df -h 进行查看
软硬链接
硬链接
硬链接:一个文件多个文件名
创建完硬链接后 权限后面的数字会显示这个文件的文件名个数 — 连接数表明有几个文件名
硬链接特点:
1.不能跨设备、跨分区
2.可以通过多种路径访问到文件
软(符号)链接
和源文件非同一个文件、源文件链接数没有变、创建的文件类型和源文件不一样
特点:
- 软链接和源文件不是同一个文件(不像硬链接一样)
- 创建软连接后,源文件的连接数没有变化
- 软连接的文件大小和源文件没有关系,软连接的大小就是源文件路径字符的大小
删除源文件后,软连接就不能使用了
允许跨分区进行操作、且支持给目录文件创建链接
以相对路径创建软链接:
- 使用软链接的时候如果源文件是相对路径, 应该是相对于软链接文件的相对路径,而不是相对于现在在哪儿。
- 创建一个软连接到一个目录下,没有指定软连接的名字,那么软连接的名字和源文件名一致
原创文章,作者:dweifng,如若转载,请注明出处:https://blog.ytso.com/tech/aiops/267690.html