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 磁盘分区(上)


日常工作中,常接触给一个系统增加一块磁盘,再划分分区,再挂载。


虚拟机添加硬盘

4.1-4.4 df命令,du命令,磁盘分区_linux

4.1-4.4 df命令,du命令,磁盘分区_学习_02

4.1-4.4 df命令,du命令,磁盘分区_学习_03

4.1-4.4 df命令,du命令,磁盘分区_笔记_04

4.1-4.4 df命令,du命令,磁盘分区_学习_05

4.1-4.4 df命令,du命令,磁盘分区_学习_06


#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个开始,而且是连续排序