# Howto在Linux上查看磁盘信息

接着上篇文章继续说。 这篇文章讲一下如何查看硬盘信息 和上一篇查看内存信息一样,先查看磁盘使用率,然后再查看磁盘的硬件信息。

先来查看磁盘使用相关信息 查看磁盘使用相关信息用的命令是fdisk 命令:fdisk 常用参数 -l 列出磁盘信息 -h 符合人类阅读的方式显示 -T 显示文件系统类型 示例:fdisk -l

[root@localhost ~]# fdisk -l
Disk /dev/sda:100 GiB,107374182400 字节,209715200 个扇区
磁盘型号:VMware Virtual S
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x4c46e12d

设备       启动    起点      末尾      扇区 大小 Id 类型
/dev/sda1  *       2048   2099199   2097152   1G 83 Linux
/dev/sda2       2099200 209715199 207616000  99G 8e Linux LVM


Disk /dev/mapper/rl-root:63.89 GiB,68602036224 字节,133988352 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


Disk /dev/mapper/rl-swap:3.91 GiB,4198498304 字节,8200192 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


Disk /dev/mapper/rl-home:31.2 GiB,33495711744 字节,65421312 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

从命令返回的信息我们可以得到几个关键信息。 磁盘名称 、磁盘的大小 、磁盘分区 、逻辑卷。

磁盘名称: sda 。在Linux中通常第一个物理磁盘就是sda,如果有两块物理磁盘,第二块磁盘就是sdb,更多的磁盘就依次类推。这里只列出了一个sda,说明只有一块物理磁盘。

磁盘大小: 100G,这个是磁盘的总容量大小,跟我们之前创建虚拟机时配置磁盘大小相同。

磁盘分区: 可以看到这块盘被分成了sda1和sda2.

逻辑卷: 这块盘被分成了3个逻辑卷,他们分别是/dev/mapper/rl-root 大小为63.89G、/dev/mapper/rl-swap大小为3.91G、/dev/mapper/rl-home大小为31.2G。 这里先不用知道逻辑卷是什么,先有此概念,后面的文章会做讲解。

既然知道磁盘总容量大小了,那么它已经使用了多少,还剩多少可以使用, 应该怎么查看呢? 这时候应该用df这命令进行查看 命令:df 常用参数: -h 输出结果符合人的阅读习惯 -T 输出结果包含文件系统类型 示例1: df -h

[root@localhost ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
devtmpfs             4.0M     0  4.0M    0% /dev
tmpfs                1.8G     0  1.8G    0% /dev/shm
tmpfs                724M  9.4M  714M    2% /run
/dev/mapper/rl-root   64G  5.0G   59G    8% /
/dev/sda1            960M  301M  660M   32% /boot
/dev/mapper/rl-home   32G  262M   31G    1% /home
tmpfs                362M   36K  362M    1% /run/user/0
tmpfs                362M   36K  362M    1% /run/user/1000
1
2
3
4
5
6
7
8
9
10

上面的返回结果我们也找到2个关键点 。 一个是逻辑卷/dev/mapper/rl-root 的总容量、已用容量和可用容量。 另一个是逻辑卷/dev/mapper/rl-home的总容量、已用容量和可用容量。

示例2:df -T

[root@localhost ~]# df -T
文件系统            类型        1K-块    已用     可用 已用% 挂载点
devtmpfs            devtmpfs     4096       0     4096    0% /dev
tmpfs               tmpfs     1851568       0  1851568    0% /dev/shm
tmpfs               tmpfs      740628    9568   731060    2% /run
/dev/mapper/rl-root xfs      66928640 5163356 61765284    8% /
/dev/sda1           xfs        983040  307756   675284   32% /boot
/dev/mapper/rl-home xfs      32645120  267636 32377484    1% /home
tmpfs               tmpfs      370312      36   370276    1% /run/user/0
tmpfs               tmpfs      370312      36   370276    1% /run/user/1000
1
2
3
4
5
6
7
8
9
10

使用-T参数后,返回结果多了一列文件系统类型,但是容量大小的单位变成byte,不符合人的阅读方式。 通常-h和-T两个参数一起使用,一起看下面的例子。 示例3:df -hT

[root@localhost ~]# df -hT
文件系统            类型      容量  已用  可用 已用% 挂载点
devtmpfs            devtmpfs  4.0M     0  4.0M    0% /dev
tmpfs               tmpfs     1.8G     0  1.8G    0% /dev/shm
tmpfs               tmpfs     724M  9.4M  714M    2% /run
/dev/mapper/rl-root xfs        64G  5.0G   59G    8% /
/dev/sda1           xfs       960M  301M  660M   32% /boot
/dev/mapper/rl-home xfs        32G  262M   31G    1% /home
tmpfs               tmpfs     362M   36K  362M    1% /run/user/0
tmpfs               tmpfs     362M   36K  362M    1% /run/user/1000
1
2
3
4
5
6
7
8
9
10

通过-h和-T两个参数一起使用可以看到 逻辑卷/dev/mapper/rl-root 的文件系统类型是xfs,大小是64G,已用 5G,剩余59G可用, 逻辑卷/dev/mapper/rl-home 的文件系统类型是xfs,大小是32GG,已用 262M,剩余31G可用

RHEL系列默认的文件系统是XFS Debian系列默认的文件系统是EXT4 国产openeuler系列默认的文件系统也是XFS

既然知道了磁盘容量大小了,那能不能查看物理磁盘的数量数量呢? 答案是肯定的。 使用的命令就是上面提到的fdisk -l。 这个命令列出的信息包含了这一行

Disk /dev/sda:100 GiB,107374182400 字节,209715200 个扇区
1

如果有多个物理磁盘显示的结果如下:

Disk /dev/sda: 5.46 TiB, 6001175126016 bytes, 11721045168 sectors
Disk model: ST6000NM0115-1YZ
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/sdb: 931.51 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: ST1000NM0033-9ZM
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/sdc: 1.82 TiB, 2000398934016 bytes, 3907029168 sectors
Disk model: ST2000NM000B-2TD
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 708BD558-0255-4942-BC11-DC3BF1DFF50F
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

注意了 一定要是/dev/sd* 开头的才是一块独立的物理磁盘。 比如: /dev/sda /dev/sdb是2块独立的物理磁盘

如果是云主机可能是/dev/vd* 。比如/dev/vda

有的同学可能有疑问了, 上面列出的/dev/sda1和 /dev/sda2 是2块独立的物理磁盘吗? 答案是否定的, 这是一块物理磁盘上的两个分区。

就像windows上一块磁盘可以分成C盘、D盘、F盘一样。

前面查看CPU和内存信息的时候使用lshw查看了硬件信息, 同样也可以使用这个命令查看硬盘信息。 我们来看一个例子:

[root@node1 ~]# lshw -c disk
  *-disk                    
       description: ATA Disk
       product: INTEL SSDSC2BA20
       physical id: 0.0.0
       bus info: scsi@0:0.0.0
       logical name: /dev/sda
       version: DL08
       serial: BTTV422200AC200GGN
       size: 186GiB (200GB)
       capabilities: gpt-1.00 partitioned partitioned:gpt
       configuration: ansiversion=5 guid=173f6bc1-a084-4922-978f-c0f85f6e167f logicalsectorsize=512 sectorsize=4096
1
2
3
4
5
6
7
8
9
10
11
12

从上面可以看出来这个硬盘厂商是Intel 型号是 INTEL SSDSC2BA20

如果一台服务器上有多个物理磁盘的话,lshw -c disk命令只会列出最后一块盘的信息 比如:

root@20:~# lshw  -class disk
  *-disk:2                  
       description: ATA Disk
       product: ST2000NM000B-2TD
       physical id: 0.0.0
       bus info: scsi@3:0.0.0
       logical name: /dev/sdc
       version: TN01
       serial: WRE01PF8
       size: 1863GiB (2TB)
       capabilities: gpt-1.00 partitioned partitioned:gpt
       configuration: ansiversion=5 guid=708bd558-0255-4942-bc11-dc3bf1dff50f logicalsectorsize=512 sectorsize=512
1
2
3
4
5
6
7
8
9
10
11
12

显示为disk2,说明该服务器上一共有3块物理磁盘。

Howto在Linux上查看磁盘信息

运维导航   |