下面,我们学习一下Linux系统中磁盘管理相关的知识,包括概念以及命令及其使用场景。
1.Linux文件系统类型
Linux支持多种文件格式,常见的有ext4、xfs、btrfs等。不同的文件系统有不同的特点和使用场景。
(1)ext4适用于普通用户和服务器。
(2)xfs适用于大型文件和高并发场景。
2.磁盘设备识别
通常使用lsblk和fdisk命令列出已连接的磁盘设备和其分区信息。
# 列出已连接的磁盘设备,以块信息展示
lsblk
# 查看磁盘分区信息
fdisk -l /dev/vda
3.磁盘使用情况
通常使用df工具查看磁盘使用情况。df命令输出信息有六列:
(1)第一列是文件系统,也是磁盘分区名称,tmpfs表示临时文件系统。
(2)第二列是磁盘空间总大小。单位KB。
(3)第三列是磁盘已使用空间。单位KB。
(4)第四列是磁盘未被使用空间。单位KB。
(5)第五列是已使用百分比。
(6)第六列是磁盘挂载点,也是操作系统目录。
# 查看磁盘inode使用情况
df -i
# 人性化信息展示
df -h
# 磁盘使用情况通过MB展示
df -m
4.统计目录大小
通常使用du工具统计目录下文件所占磁盘空间大小。
# 人性化展示当前/abc目录的大小
du -sh /abc
# 查看某个目录下所有文件和子目录(递归)的大小
du -h /abc
# 查看某个木下文件和两级子目录(非递归)的大小
du -h -d -2 /abc
5.查看磁盘是HDD or SSD
HDD对应机械硬盘,SSD表示固态硬盘。不看硬件设备的情况下,如何在操作系统中对磁盘类型进行辨别?
第一步:找到磁盘设备名称
[root@10 ~]# fdisk -l
Disk /dev/vda: 100 GiB, 107374182400 bytes, 209715200 sectors
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: dos
Disk identifier: 0x00a044f9
Device Boot Start End Sectors Size Id Type
/dev/vda1 * 2048 209715166 209713119 100G 83 Linux
Disk /dev/vdd: 1.48 TiB, 1610612736000 bytes, 3145728000 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
[root@10 ~]#
找到对应的磁盘,比如/dev/vdd,则磁盘名称为vdd。
第二步:根据磁盘名称找到标志
[root@10 ~]# cat /sys/block/vdd/queue/rotational
1
[root@10 ~]#
标志值为1。
第三步:根据标志匹配磁盘类型
判断逻辑如下:
if [ $(cat/sys/block/vdd/queue/rotational) -eq 0 ]; then
echo "SSD";
else
echo "HDD";
fi
输出为HDD,表示/dev/vdd是机械硬盘。