df命令du命令磁盘分区

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了df命令du命令磁盘分区相关的知识,希望对你有一定的参考价值。

4.1 df命令 df - report file system disk space usage【查看文件系统磁盘空间的使用情况】


[[email protected] ~]# df

文件系统           1K-块     已用     可用   已用%  挂载点

/dev/sda3        18658304   1082268   17576036    6%  /

devtmpfs          124452       0    124452    0%  /dev

tmpfs            134288       0    134288    0%  /dev/shm

tmpfs            134288     4740    129548    4%  /run

tmpfs            134288       0    134288    0%  /sys/fs/cgroup

/dev/sda1         201380     99140    102240   50%   /boot

tmpfs             26860       0     26860    0%  /run/user/0

tmpfs             26860       0     26860    0%  /run/user/1000

【第一列是文件系统的名称,第二列磁盘有多大单位k,第三列磁盘已经用了多少单位k,第四列磁盘还剩下多少的空间单位k,第五列磁盘已经用了百分之多少,第五列磁盘的挂载点也是你系统里面的一个目录。因为linux不能直接使用磁盘他需要一个挂载点这样才可以使用磁盘在磁盘里读文件写文件等。】

[[email protected] ~]# df -h

文件系统        容量  已用  可用 已用% 挂载点

/dev/sda3        18G  1.1G   17G    6% /

devtmpfs        122M     0  122M    0% /dev

tmpfs           132M     0  132M    0% /dev/shm

tmpfs           132M  4.7M  127M    4% /run

tmpfs           132M     0  132M    0% /sys/fs/cgroup

/dev/sda1       197M   97M  100M   50% /boot

tmpfs            27M     0   27M    0% /run/user/0

tmpfs            27M     0   27M    0% /run/user/1000

【人性化显示一个磁盘的大小。小知识:1TB=1024GB,1GB=1024MB,1M=1024KB,1KB=1024byte(字节)】


【开头有tmp的这些我们不用管它。之前我们安装系统的时候分了三个区分别是/、/boot、swap但是这个里面没有swap我们可以使用下面的命令查看swap】

[[email protected] ~]# free

              total        used        free      shared  buff/cache   available

Mem:         268576      116524        7668        4740      144384      103300

Swap:       2097148           0     2097148


[[email protected] ~]# df -i

文件系统         Inode 已用(I) 可用(I) 已用(I)% 挂载点

/dev/sda3      9334272   30372 9303900       1% /

devtmpfs         31113     372   30741       2% /dev

tmpfs            33572       1   33571       1% /dev/shm

tmpfs            33572     476   33096       2% /run

tmpfs            33572      16   33556       1% /sys/fs/cgroup

/dev/sda1       102400     327  102073       1% /boot

tmpfs            33572       1   33571       1% /run/user/0

tmpfs            33572       1   33571       1% /run/user/1000

【-i选项代表查看一个磁盘有多少个inode及使用情况。我们再安装系统的时候创建号分区格式化前这些inode就是给你已经给你分好过了。inode的多少和你的磁盘的大小有关系。】


注意:有时候你会发现你的磁盘还有剩余的空间,但是就是写不进去东西。这个时候你就可以使用-i选项看看你的inode是不是用到了百分百,如果是的就算你的磁盘有空间你也写不进去东西的。


[[email protected] ~]# df -m

文件系统       1M-块  已用  可用 已用% 挂载点

/dev/sda3      18221  1057 17165    6% /

devtmpfs         122     0   122    0% /dev

tmpfs            132     0   132    0% /dev/shm

tmpfs            132     5   127    4% /run

tmpfs            132     0   132    0% /sys/fs/cgroup

/dev/sda1        197    97   100   50% /boot

tmpfs             27     0    27    0% /run/user/0

tmpfs             27     0    27    0% /run/user/1000

【-m选项代表以兆为单位显示你磁盘的空间】


4.2 du命令


[[email protected] ~]# du -sh /root

100K /root

[[email protected] ~]# du -sh /boot/

87M /boot/

[[email protected] ~]# du -sh /etc/passwd

4.0K /etc/passwd

【查看一个文件或者目录的大小】

[[email protected] ~]# ls -lh /etc/passwd

-rw-r--r--. 1 root root 1020 12月 27 16:05 /etc/passwd

【之前我们使用过ls -lh这个命令,为什么他和du -sh显示同一个文件的大小不一样那。这是磁盘是一块一块的,这里的一块是4k假如我们写的一个文件小于4k那么他也会显示4k。一个文件可以有多个快,但是一个快只能有一个文件。】


[[email protected] ~]# du /etc/passwd

4 /etc/passwd

[[email protected] ~]# du /root/

16 /root/.ssh

0 /root/3

0 /root/123/12/1.txt

0 /root/123/12

0 /root/123

100 /root/

【当我们什么都不加说的时候他会以k为单位显示一个文件的大小。但是当我们du一个目录的时候他会把目录下的子文件或者子目录的大小都显示出来。】

[[email protected] ~]# du -s /root

100 /root

【显示目录的大小】

[[email protected] ~]# du -h /root

16K /root/.ssh

0 /root/3

0 /root/123/12/1.txt

0 /root/123/12

0 /root/123

100K /root

【人性化显示大小】

[[email protected] ~]# du -sh /root

100K /root

【-sh这个是最好的】


4.3 磁盘分区

我们平时工作的时候会给一个系统增加一个磁盘,并且给他分区。我们现在以VMware为例子。

【给我们虚拟机加一块磁盘】

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

【在服务器上是支持热拔插硬盘的,就是你的服务器再开机的状态下加上一个硬盘服务器会自动识别出来的。而在我们虚拟机上就不会有这个功能。】


[[email protected] ~]# fdisk

用法:

 fdisk [选项] <磁盘>    更改分区表

 fdisk [选项] -l <磁盘> 列出分区表

 fdisk -s <分区>        给出分区大小(块数)


选项:

 -b <大小>             扇区大小(512、1024、2048或4096)

 -c[=<模式>]           兼容模式:“dos”或“nondos”(默认)

 -h                    打印此帮助文本

 -u[=<单位>]           显示单位:“cylinders”(柱面)或“sectors”(扇区,默认)

 -v                    打印程序版本

 -C <数字>             指定柱面数

 -H <数字>             指定磁头数

 -S <数字>             指定每个磁道的扇区数


[[email protected] ~]# fdisk -l


磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x000cc51c


   设备 Boot      Start         End      Blocks   Id  System

/dev/sda1   *        2048      411647      204800   83  Linux

/dev/sda2          411648     4605951     2097152   82  Linux swap / Solaris

/dev/sda3         4605952    41943039    18668544   83  Linux

【这个命令是查看虚拟机上有哪些磁盘,刚刚我们已经加了一块磁盘在这只有一个说明他没有识别到,我们重新启动虚拟机。】


[[email protected] ~]# reboot

【重启虚拟机】

[[email protected] ~]# fdisk -l


磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x000cc51c


   设备 Boot      Start         End      Blocks   Id  System

/dev/sda1   *        2048      411647      204800   83  Linux

/dev/sda2          411648     4605951     2097152   82  Linux swap / Solaris

/dev/sda3         4605952    41943039    18668544   83  Linux


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

【这个时候我们可以看到我们有两个磁盘了】


【现在我们给磁盘划分分区,你也可以不划分这样只有一个主分区】

[[email protected] ~]# fdisk /dev/sdb  【我们无论在哪里都可以使用fdisk -l找到你想要的磁盘的挂载点】

欢迎使用 fdisk (util-linux 2.23.2)。


更改将停留在内存中,直到您决定将更改写入磁盘。

使用写入命令前请三思。


Device does not contain a recognized partition table

使用磁盘标识符 0x38d30877 创建新的 DOS 磁盘标签。


命令(输入 m 获取帮助):m 【输入m他会帮助你怎么使用】

命令操作

   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)


命令(输入 m 获取帮助):n【n增加一个分区】

Partition type:

   p   primary (0 primary, 0 extended, 4 free)【主分区。在介绍一下我们现在使用的mbr分区这个分区只能支持fdisk划分2TB的磁盘再大的就不能使用fdisk划分了,而且mbr分区只有四个分区(包括扩展分区)。但是如果我想要多个分区,那么你可以增加一个扩展分区然后再往下划分逻辑分区。】

   e   extended【扩展分区】

Select (default p): p

分区号 (1-4,默认 1):

起始 扇区 (2048-20971519,默认为 2048):

将使用默认值 2048

Last 扇区, +扇区 or +size{K,M,G} (2048-20971519,默认为 20971519):+1G 【设置大小】   

分区 1 已设置为 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

磁盘标识符:0x38d30877


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     2099199     1048576   83  Linux

命令(输入 m 获取帮助):n

Partition type:

   p   primary (1 primary, 0 extended, 3 free)

   e   extended

Select (default p): 

Using default response p

分区号 (2-4,默认 2):

起始 扇区 (2099200-20971519,默认为 2099200):

将使用默认值 2099200

Last 扇区, +扇区 or +size{K,M,G} (2099200-20971519,默认为 20971519):+1G

分区 2 已设置为 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

磁盘标识符:0x38d30877


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     2099199     1048576   83  Linux

/dev/sdb2         2099200     4196351     1048576   83  Linux


命令(输入 m 获取帮助):n

Partition type:

   p   primary (2 primary, 0 extended, 2 free)

   e   extended

Select (default p): 

Using default response p

分区号 (3,4,默认 3):

起始 扇区 (4196352-20971519,默认为 4196352):

将使用默认值 4196352

Last 扇区, +扇区 or +size{K,M,G} (4196352-20971519,默认为 20971519):+2G

分区 3 已设置为 Linux 类型,大小设为 2 GiB


命令(输入 m 获取帮助):p


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x38d30877


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     2099199     1048576   83  Linux

/dev/sdb2         2099200     4196351     1048576   83  Linux

/dev/sdb3         4196352     8390655     2097152   83  Linux


命令(输入 m 获取帮助):n

Partition type:

   p   primary (3 primary, 0 extended, 1 free)

   e   extended

Select (default e): p

已选择分区 4

起始 扇区 (8390656-20971519,默认为 8390656):

将使用默认值 8390656

Last 扇区, +扇区 or +size{K,M,G} (8390656-20971519,默认为 20971519):

将使用默认值 20971519

分区 4 已设置为 Linux 类型,大小设为 6 GiB


命令(输入 m 获取帮助):P      


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x38d30877


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     2099199     1048576   83  Linux

/dev/sdb2         2099200     4196351     1048576   83  Linux

/dev/sdb3         4196352     8390655     2097152   83  Linux

/dev/sdb4         8390656    20971519     6290432   83  Linux


命令(输入 m 获取帮助):N

If you want to create more than four partitions, you must replace a

primary partition with an extended partition first.【提示:你不能在增加分区了你的四个分区已经用完了,你要是在增加就要删除一个空出来。】


命令(输入 m 获取帮助):d 【删除一个分区】

分区号 (1-4,默认 4):4【选择你要删除的分区号】

分区 4 已删除


命令(输入 m 获取帮助):p


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x38d30877


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     2099199     1048576   83  Linux

/dev/sdb2         2099200     4196351     1048576   83  Linux

/dev/sdb3         4196352     8390655     2097152   83  Linux

【没有4了】


命令(输入 m 获取帮助):n

Partition type:

   p   primary (3 primary, 0 extended, 1 free)

   e   extended

Select (default e): e【增加一个扩展分区】

已选择分区 4

起始 扇区 (8390656-20971519,默认为 8390656):

将使用默认值 8390656

Last 扇区, +扇区 or +size{K,M,G} (8390656-20971519,默认为 20971519):

将使用默认值 20971519

分区 4 已设置为 Extended 类型,大小设为 6 GiB


命令(输入 m 获取帮助):p


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x38d30877


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     2099199     1048576   83  Linux

/dev/sdb2         2099200     4196351     1048576   83  Linux

/dev/sdb3         4196352     8390655     2097152   83  Linux

/dev/sdb4         8390656    20971519     6290432    5  Extended

【红色的就是扩展分区的id是5,二主分区是83】


命令(输入 m 获取帮助):n

All primary partitions are in use

添加逻辑分区 5                        【只能增加逻辑分区了】

起始 扇区 (8392704-20971519,默认为 8392704):

将使用默认值 8392704

Last 扇区, +扇区 or +size{K,M,G} (8392704-20971519,默认为 20971519):+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

磁盘标识符:0x38d30877


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     2099199     1048576   83  Linux

/dev/sdb2         2099200     4196351     1048576   83  Linux

/dev/sdb3         4196352     8390655     2097152   83  Linux

/dev/sdb4         8390656    20971519     6290432    5  Extended

/dev/sdb5         8392704    10489855     1048576   83  Linux


命令(输入 m 获取帮助):n

All primary partitions are in use

添加逻辑分区 6

起始 扇区 (10491904-20971519,默认为 10491904):

将使用默认值 10491904

Last 扇区, +扇区 or +size{K,M,G} (10491904-20971519,默认为 20971519):+1G

分区 6 已设置为 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

磁盘标识符:0x38d30877


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     2099199     1048576   83  Linux

/dev/sdb2         2099200     4196351     1048576   83  Linux

/dev/sdb3         4196352     8390655     2097152   83  Linux

/dev/sdb4         8390656    20971519     6290432    5  Extended

/dev/sdb5         8392704    10489855     1048576   83  Linux

/dev/sdb6        10491904    12589055     1048576   83  Linux


现在我们开始删除分区:

命令(输入 m 获取帮助):d

分区号 (1-7,默认 7):1 【删除一个主分区】

分区 1 已删除


命令(输入 m 获取帮助):p


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x38d30877


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb2         2099200     4196351     1048576   83  Linux

/dev/sdb3         4196352     8390655     2097152   83  Linux

/dev/sdb4         8390656    20971519     6290432    5  Extended

/dev/sdb5         8392704    10489855     1048576   83  Linux

/dev/sdb6        10491904    12589055     1048576   83  Linux

/dev/sdb7        12591104    20971519     4190208   83  Linux

【/dev/sdb1没有了】


命令(输入 m 获取帮助):d

分区号 (2-7,默认 7):6 【删除一个逻辑分区】

分区 6 已删除


命令(输入 m 获取帮助):p


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x38d30877


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb2         2099200     4196351     1048576   83  Linux

/dev/sdb3         4196352     8390655     2097152   83  Linux

/dev/sdb4         8390656    20971519     6290432    5  Extended

/dev/sdb5         8392704    10489855     1048576   83  Linux

/dev/sdb6        12591104    20971519     4190208   83  Linux

【我们把/dev/sdb6但是现在还有一个/dev/sdb6。其实这两个不是一个逻辑分区你看之前的/dev/sdb6大小再看现在的/dev/sdb6大小,现在的/dev/sdb6大小和之前的/dev/sdb7大小一样。这说明现在的/dev/sdb6就是之前的/dev/sdb7。在我们mbr分区里面我们主分区有四个位置这四个位置只能是主分区。而逻辑分区的号码只能在后面而且还要按顺序排列,就算你删除中间的逻辑分区后面的会自动向前排。】


命令(输入 m 获取帮助):d

No partition is defined yet!

【我们已经把所有的分区删除了,下面我们做实验】


命令(输入 m 获取帮助):p


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x38d30877


   设备 Boot      Start         End      Blocks   Id  System


命令(输入 m 获取帮助):n

Partition type:

   p   primary (0 primary, 0 extended, 4 free)

   e   extended

Select (default p): e

分区号 (1-4,默认 1):

起始 扇区 (2048-20971519,默认为 2048):

将使用默认值 2048

Last 扇区, +扇区 or +size{K,M,G} (2048-20971519,默认为 20971519):+2G

分区 1 已设置为 Extended 类型,大小设为 2 GiB


命令(输入 m 获取帮助):p


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x38d30877


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     4196351     2097152    5  Extended


命令(输入 m 获取帮助):n

Partition type:

   p   primary (0 primary, 1 extended, 3 free)

   l   logical (numbered from 5)

Select (default p): l

添加逻辑分区 5

起始 扇区 (4096-4196351,默认为 4096):

将使用默认值 4096

Last 扇区, +扇区 or +size{K,M,G} (4096-4196351,默认为 4196351):+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

磁盘标识符:0x38d30877


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     4196351     2097152    5  Extended

/dev/sdb5            4096     2101247     1048576   83  Linux


命令(输入 m 获取帮助):n

Partition type:

   p   primary (0 primary, 1 extended, 3 free)

   l   logical (numbered from 5)

Select (default p): p

分区号 (2-4,默认 2):3   

起始 扇区 (4196352-20971519,默认为 4196352):

将使用默认值 4196352

Last 扇区, +扇区 or +size{K,M,G} (4196352-20971519,默认为 20971519):+1G

分区 3 已设置为 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

磁盘标识符:0xe7a589b7


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     4196351     2097152    5  Extended

/dev/sdb3         4196352     6293503     1048576   83  Linux

/dev/sdb5            4096     2101247     1048576   83  Linux





以上是关于df命令du命令磁盘分区的主要内容,如果未能解决你的问题,请参考以下文章

十df命令du命令磁盘分区

df命令 du命令 磁盘分区

笔记内容:df命令,du命令,磁盘分区

4.1 df命令 4.2 du命令 4.3/4.4 磁盘分区

df、du、磁盘分区

LINUX常用命令3、su、df、du、磁盘分区