4.1 df命令
4.2 du命令
4.3/4.4 磁盘分区
4.1 df命令
df查看文件系统的实际情况
#df 文件系统 1K-块 已用 可用 已用% 挂载点 /dev/sda3 29150304 1026564 28123740 4% / devtmpfs 494220 0 494220 0% /dev tmpfs 504076 0 504076 0% /dev/shm tmpfs 504076 6856 497220 2% /run tmpfs 504076 0 504076 0% /sys/fs/cgroup /dev/sda1 191140 98636 92504 52% /boot tmpfs 100816 0 100816 0% /run/user/0
第一列,文件系统,磁盘分区的名字。
第二列,磁盘总大小,单位是k,kb
第三列,已用了多少容量,kb
第四列,还有多少容量可用,kb
*第五列,已用%,磁盘使用情况,常用,80%-90%就要警惕关注了。
第六列 挂载点,系统一个目录(相当于windows系统的c:/windows)
#df -h 文件系统 容量 已用 可用 已用% 挂载点 /dev/sda3 28G 1003M 27G 4% / devtmpfs 483M 0 483M 0% /dev tmpfs 493M 0 493M 0% /dev/shm tmpfs 493M 6.7M 486M 2% /run tmpfs 493M 0 493M 0% /sys/fs/cgroup /dev/sda1 187M 97M 91M 52% /boot tmpfs 99M 0 99M 0% /run/user/0
*df -h是常用项。
加了-h会根据磁盘大小,适当显示单位。
装机之前,我们分了几个区,分别是:/boot swap /
文件系统
tmpfs 临时文件系统 ,在此文件系统的挂载点里写入、编辑了文件进去,电脑重启之后,也会自动消失。
/dev/shm 内存,在内存里写东西,文件被写入/dev/shm里,这文件的处理速度会很快。大小,是物理内存的一半。
*一般tmpfs的文件不需要太关注,需要关注的是/dev/sda这种文件系统。
查看swap分区
#free total used free shared buff/cache available Mem: 1008152 114560 762896 6856 130696 738944 Swap: 2097148 0 2097148
这里可以看到swap的分区容量是2G(当时装centos7的时候是1G,swap的分区是内存的2倍,所以这里设2G)
查看分区有多少个inode,以及inode的使用情况。
[root@centos7 ~]# df -i
文件系统 Inode 已用(I) 可用(I) 已用(I)% 挂载点 /dev/sda3 14582272 26001 14556271 1% / devtmpfs 123555 376 123179 1% /dev tmpfs 126019 1 126018 1% /dev/shm tmpfs 126019 447 125572 1% /run tmpfs 126019 16 126003 1% /sys/fs/cgroup /dev/sda1 97280 327 96953 1% /boot tmpfs 126019 1 126018 1% /run/user/0
创建完分区之后,需要格式化分区才可以写数据。
格式化的过程,相当于是在创建innode.
inode有多少,是跟磁盘大小有关系。
只要inode的已用量打到100%,即使磁盘空间还有富裕的容量 也是写不进东西的
#df -h 以适当单位显示,常用
#df -m 以单位M显示
4.2 du命令
du命令 查看文件、目录大小
#du -sh /root 查看/root目录的大小 # du -sh /root 76K/root
# du -sh /etc/passwd 查看passwd文件大小 4.0K/etc/passwd
# ls -lh /etc/passwd -rw-r--r--. 1 root root 969 2月 7 18:18 /etc/passwd
0
du一个目录 会把目录下面所有文件都列出来,不过不够仔细,不建议使用此方法。
# du /root 12/root/.ssh 76/root
常用的搭配是,#du -s ,#du -sh
4.3 磁盘分区(上)
日常工作中,常接触给一个系统增加一块磁盘,再划分分区,再挂载。
虚拟机添加硬盘
#fdisk -l 把目前系统里面有的磁盘给列出来。
# fdisk -l 磁盘 /dev/sda:32.2 GB, 32212254720 字节,62914560 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x000ba6b3 设备 Boot Start End Blocks Id System /dev/sda1 * 2048 391167 194560 83 Linux /dev/sda2 391168 4585471 2097152 82 Linux swap / Solaris /dev/sda3 4585472 62914559 29164544 83 Linux
发现没有识别到新磁盘,重启查看
#reboot 重启
识别到新硬盘
# fdisk -l
磁盘 /dev/sda:32.2 GB, 32212254720 字节,62914560 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x000ba6b3 设备 Boot Start End Blocks Id System /dev/sda1 * 2048 391167 194560 83 Linux /dev/sda2 391168 4585471 2097152 82 Linux swap / Solaris /dev/sda3 4585472 62914559 29164544 83 Linux
磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节
分区命令:#fdisk 磁盘
#fidisk /dev/sdb 欢迎使用 fdisk (util-linux 2.23.2)。 更改将停留在内存中,直到您决定将更改写入磁盘。 使用写入命令前请三思。 Device does not contain a recognized partition table 使用磁盘标识符 0x3e1c1a2f 创建新的 DOS 磁盘标签。 命令(输入 m 获取帮助):m (常用:n=new p=print w=write+exit d=删除分区) 命令操作 a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibility flag d delete a partition g create a new empty GPT partition table G create an IRIX (SGI) partition table l list known partition types m print this menu n add a new partition o create a new empty DOS partition table p print the partition table q quit without saving changes s create a new empty Sun disklabel t change a partition's system id u change display/entry units v verify the partition table w write table to disk and exit x extra functionality (experts only) p查看分区列表,下列结果为没有分区内容 命令(输入 m 获取帮助): p 磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x3e1c1a2f 设备 Boot Start End Blocks Id System
输入n,建立分区,p为主分区,e为扩展分区。我们用的fdisk工具分区,用到了一个MBR分区格式,MBR最高支持2T,>2T不能使用fdisk去分区,这个分区最多只有4个主分区(primary),如果想划分多个分区怎么办。先划分3个主分区,剩下一个划分扩展分区(extended),然后再在扩展分区里继续划分逻辑分区。
命令(输入 m 获取帮助):n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p):
分区格式:主+扩展小于等于4。扩展分区可以为0。
主分区划分2G
命令(输入 m 获取帮助):n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p 分区号 (1-4,默认 1):1 起始 扇区 (2048-20971519,默认为 2048):2048 Last 扇区, +扇区 or +size{K,M,G} (2048-20971519,默认为 20971519):+2G 分区 1 已设置为 Linux 类型,大小设为 2 GiB P检查一下分区表,多了个分区。 命令(输入 m 获取帮助):p 磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x10adc22a 设备 Boot Start End Blocks Id System /dev/sdb1 2048 4196351 2097152 83 Linux 建立了3个主分区,此处省去步骤,p查看分区表 命令(输入 m 获取帮助):p 磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x10adc22a 设备 Boot Start End Blocks Id System /dev/sdb1 2048 4196351 2097152 83 Linux /dev/sdb2 4196352 8390655 2097152 83 Linux /dev/sdb3 8390656 10487807 1048576 83 Linux 建立新分区,只有1个空闲分区,要么分e要么分p,如果分p的话,下一次会提示没有多余的分区可以分。 命令(输入 m 获取帮助):n 命令(输入 m 获取帮助):n Partition type: p primary (3 primary, 0 extended, 1 free) e extended Select (default e): p 已选择分区 4 起始 扇区 (10487808-20971519,默认为 10487808): 将使用默认值 10487808 Last 扇区, +扇区 or +size{K,M,G} (10487808-20971519,默认为 20971519):+1G 分区 4 已设置为 Linux 类型,大小设为 1 GiB 命令(输入 m 获取帮助):n If you want to create more than four partitions, you must replace a primary partition with an extended partition first. 删除一个p分区,建立一个e分区,4号分区从p改成e 命令(输入 m 获取帮助):n Partition type: p primary (3 primary, 0 extended, 1 free) e extended Select (default e): e 已选择分区 4 起始 扇区 (10487808-20971519,默认为 10487808): 将使用默认值 10487808 Last 扇区, +扇区 or +size{K,M,G} (10487808-20971519,默认为 20971519):+4G 分区 4 已设置为 Extended 类型,大小设为 4 GiB 命令(输入 m 获取帮助):p 磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x10adc22a 设备 Boot Start End Blocks Id System /dev/sdb1 2048 4196351 2097152 83 Linux /dev/sdb2 4196352 8390655 2097152 83 Linux /dev/sdb3 8390656 10487807 1048576 83 Linux /dev/sdb4 10487808 18876415 4194304 5 Extended
blocks是容量
id号,分区类型:83是linux,5扩展分区。
再次创建新分区,会提示直接进入划分逻辑分区,
命令(输入 m 获取帮助):n All primary partitions are in use 添加逻辑分区 5 起始 扇区 (10489856-18876415,默认为 10489856): 将使用默认值 10489856 Last 扇区, +扇区 or +size{K,M,G} (10489856-18876415,默认为 18876415):+1G 分区 5 已设置为 Linux 类型,大小设为 1 GiB 命令(输入 m 获取帮助):p 磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x10adc22a 设备 Boot Start End Blocks Id System /dev/sdb1 2048 4196351 2097152 83 Linux /dev/sdb2 4196352 8390655 2097152 83 Linux /dev/sdb3 8390656 10487807 1048576 83 Linux /dev/sdb4 10487808 18876415 4194304 5 Extended /dev/sdb5 10489856 12587007 1048576 83 Linux 再次建立逻辑分区 设备 Boot Start End Blocks Id System /dev/sdb1 2048 4196351 2097152 83 Linux /dev/sdb2 4196352 8390655 2097152 83 Linux /dev/sdb3 8390656 10487807 1048576 83 Linux /dev/sdb4 10487808 18876415 4194304 5 Extended /dev/sdb5 10489856 12587007 1048576 83 Linux /dev/sdb6 12589056 14686207 1048576 83 Linux
4.4 磁盘分区(下)
/dev/sdb1 的1 代表分区号
删除1号分区
命令(输入 m 获取帮助):p 磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区 设备 Boot Start End Blocks Id System /dev/sdb1 2048 4196351 2097152 83 Linux /dev/sdb2 4196352 8390655 2097152 83 Linux /dev/sdb3 8390656 10487807 1048576 83 Linux /dev/sdb4 10487808 18876415 4194304 5 Extended /dev/sdb5 10489856 12587007 1048576 83 Linux /dev/sdb6 12589056 14686207 1048576 83 Linux 命令(输入 m 获取帮助):d 分区号 (1-6,默认 6):1 分区 1 已删除 命令(输入 m 获取帮助):p 磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区 设备 Boot Start End Blocks Id System /dev/sdb2 4196352 8390655 2097152 83 Linux /dev/sdb3 8390656 10487807 1048576 83 Linux /dev/sdb4 10487808 18876415 4194304 5 Extended /dev/sdb5 10489856 12587007 1048576 83 Linux /dev/sdb6 12589056 14686207 1048576 83 Linux
主分区sdb1被删除后,发现 分区表是从主分区sdb2开始
下面 再删除一个5号分区,查看变化,发现5号被删除了 ,不过少了6号,其实分区号是从后面递减上来了,也就是说,删除之前的5号跟删除后的5号是不一样,可以从start end看出。
命令(输入 m 获取帮助):d 分区号 (2-6,默认 6):5 分区 5 已删除 命令(输入 m 获取帮助):p 磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区 设备 Boot Start End Blocks Id System /dev/sdb2 4196352 8390655 2097152 83 Linux /dev/sdb3 8390656 10487807 1048576 83 Linux /dev/sdb4 10487808 18876415 4194304 5 Extended /dev/sdb5 12589056 14686207 1048576 83 Linux
取消刚才的操作,原意就是不保存,q退出。
分一个扩展分区,3G。此处发现,多了一个逻辑分区选项,其实是首先建立了扩展分区,所以有此项。
设备 Boot Start End Blocks Id System /dev/sdb1 2048 6293503 3145728 5 Extended 命令(输入 m 获取帮助):n Partition type: p primary (0 primary, 1 extended, 3 free) l logical (numbered from 5) n主分区 3号 1G。 设备 Boot Start End Blocks Id System /dev/sdb1 2048 6293503 3145728 5 Extended /dev/sdb3 6293504 8390655 1048576 83 Linux n逻辑分区5号 1G 设备 Boot Start End Blocks Id System /dev/sdb1 2048 6293503 3145728 5 Extended /dev/sdb3 6293504 8390655 1048576 83 Linux /dev/sdb5 4096 2101247 1048576 83 Linux 逻辑分区 6 7 8 +100M 设备 Boot Start End Blocks Id System /dev/sdb1 2048 6293503 3145728 5 Extended /dev/sdb3 6293504 8390655 1048576 83 Linux /dev/sdb5 4096 2101247 1048576 83 Linux 把6号删掉,少了8。(逻辑分区是连续顺序排序,但是主分区跟扩展分区可以不连续排序) 设备 Boot Start End Blocks Id System /dev/sdb1 2048 6293503 3145728 5 Extended /dev/sdb3 6293504 8390655 1048576 83 Linux /dev/sdb5 4096 2101247 1048576 83 Linux /dev/sdb6 2310144 2514943 102400 83 Linux /dev/sdb7 2516992 2721791 102400 83 Linux
总结:
主分区+扩展分区小于等于4
逻辑分区,从第5个开始,而且是连续排序