Linux学习总结(七)-磁盘管理 du df fdisk

时间:2022-02-07 16:26:55

一 命令df

df,即disk free,可用来查看当前系统的挂载情况,也可以用来查看整体磁盘的使用情况
df 不带参数,默认以KB单位显示
Linux学习总结(七)-磁盘管理 du df fdisk
df -i -----查看inodes 使用情况,要清楚理解inodes 建议看下以下链接文章 http://www.ruanyifeng.com/blog/2011/12/inode.html
例如 df -i |grep -v tmp
Linux学习总结(七)-磁盘管理 du df fdisk
备注:这里使用了管道 过滤,-v 是取补集的意思
df -h --------------根据实际情况自动调整单位的直观显示
例如 df -h |grep -v tmp
Linux学习总结(七)-磁盘管理 du df fdisk
-k -m 分别表示以KB和MB单位显示

二 命令du

用来查看某个目录或文件所占空间的大小

格式为 du [-abkmsh] [文件或目录名]

依次来了解下各个参数含义
du 不带任何参数默认 -k 以KB单位显示,只罗列目录及子目录,不罗列文件
Linux学习总结(七)-磁盘管理 du df fdisk
-a 罗列所有文件 
Linux学习总结(七)-磁盘管理 du df fdisk
-b -m 以B,Mb单位显示
-h 自动调整单位显示
-s 列出总和
du -sh 比较好用
例如 du -sh /etc
Linux学习总结(七)-磁盘管理 du df fdisk

三 df 和du 的区别

df 命令通过查看文件系统磁盘块分配图得出总块数与剩余块数。文件系统分配其中的一些磁盘块用来记录它自身的一些数据,如inode节点,磁盘分布图,间接块,超级块等。这些数据对大多数用户级的程序来说是不可见的,通常称为Meta Data。du 命令是用户级的程序,它不考虑Meta Data,而df命令则查看文件系统的磁盘分配图并考虑Meta Data。df命令获得真正的文件系统数据,而du命令只查看文件系统的部分情况。默认情况下,df会显示系统全部的挂载情况。而du命令用于显示某目录下各子目录或文件所占用的磁盘空间,默认是显示当前目录。用本书做个类比, du相当于统计字数计算所占纸张的空间大小, df相当于计算纸张的面积得到容量大小 。 具体还可以再看下一下面这片文章 http://blog.51cto.com/schenjiannan/1258183

四 fdisk 磁盘分区

fdisk 非常强大的磁盘管理工具, 用法

fdisk -l 设备名称

不指定设备名称,列出系统中所有的磁盘设备及分区表
Linux学习总结(七)-磁盘管理 du df fdisk
如果指定的话
Linux学习总结(七)-磁盘管理 du df fdisk
比如新增一块硬盘sdb

执行 fdisk /dev/sdb

会提示你输入m获取分区帮助
Linux学习总结(七)-磁盘管理 du df fdisk
你只需要看懂 d 删除一个分区 n 建立一个新的分区 p 打印分区表 q 不保存退出 w 写入分区表并退出 。 
分区规则: 主分区+扩展分区不超过四个 ,具体查看MBR相关知识。 理论上扩展分区可以分出若干个逻辑分区 ,逻辑分区可以说是扩展分区的的实体。主分区的分区号结尾 规定为1-4, 不够四个也空出来, 逻辑分区编号从5开始,逻辑分区之间编号自动调整为连续 ,比如 sdb5 ,sdb6,sdb7三个逻辑分区,倘若你删除sdb5 ,自动上移为sdb5.sdb6 ,意思是sdb6变为sdb5.sdb7变为sdb6
Linux学习总结(七)-磁盘管理 du df fdisk
请看上图,我的sdb硬盘10G,我分了三个主分区 sdb1 ,sdb2,sdb3, 各2G然后我把剩下的都分给扩展分区sdb4,然后我又把扩展分区全部分给sdb5这个逻辑分区,看一下Blocks块这栏,很容易验证结果。 
具体操作:按 n 分区,根据提示按p扩展分区或者e逻辑分区,下来是分区号,接下来是分区大小,先让你指定起始扇区,默认就行,回车。 下来让你指定结尾扇区,直接输入 +分区大小, 比如我分2G,就输入 +2G,如果输错的话, ctrl+u 回退重输, 重复上面操做,如果剩下的全部分完,就像我把4G全留给扩展分区,你只需要两次回车就可以,不需要再指定大小。最后p 打印分区表看有没有弄错,确认的话,w保存退出就可以,多实践几次就熟了,工作场合一定要谨慎。