df du
根据 super block 中的信息
1 | # df [-ahikHTm] [filenamedirname] |
/proc 这个挂载点在内存中,没有占用任何硬盘空间故大小为 0
/dev/shm 是利用内存虚拟的磁盘空间
通过搜索文件计算每个的大小然后累加
1 | # du [-ahskm] filenamedirname |
1 | # du –hs xxx 显示目录总大小,不会列出目录中的每一个文件 |
du 能看到的文件是当前存在没有被删除的,删除一个文件的时候,这个文件不是马上就在文件系统当中消失了,而是暂时消失了,当所有程序都不用时,才会根据OS的规则释放掉已经删除的文件
不要直接执行 du 命令,它会遍历并列出目录下的所有文件
连接文件
hard link 硬连接/实际连接
新建一个文件名连接到 inode 上
- 文件内容和 inode 有关
- 通过文件名指向到对应 inode 读取文件
所以 hard link 和源文件除了文件名,相关信息完全一样,若将其中一个文件删除,因为 inode 还有连接故实际还存在
不能跨文件系统,不能连接到目录(因为会产生大量连接造成开销)
symbolic link 符号连接/快捷方式
创建一个独立文件让数据读取指向连接的文件名
所以源文件删除后 symbolic link 将无法打开,两个文件指向不同的 indoe
目录快捷方式时将同步删除等,新建目录连接至少产生三个:本身 . .. 而上层目录连接数会加一,新目录连接数为二
1 | # ln [-sf] 源文件 目标文件 |