磁盘系统基础与LVM管理详解

发布时间:2026/7/11 4:08:36
磁盘系统基础与LVM管理详解 目录一、磁盘结构1.1 磁盘概念1.2 磁盘的结构1.3 Linux 设备命名二、分区2.1 分区表2.2. 主流 Linux 文件系统2.3 磁盘识别与查看命令三、分区工具与交互命令3.1 fdiskMBR3.2 gdiskGPT 专用3.3 格式化 / 创建文件系统3.4 挂载 / 卸载 / 开机自动挂载3.5 磁盘/文件系统使用情况四、案例4.1 添加磁盘4.2 扫描 SCSI 总线4.3 使用 fdisk 分区4.4 格式化4.5 挂载五、LVM 概述与逻辑5.1 PVPhysical Volume物理卷5.2 VGVolume Group卷组5.3 LVLogical Volume逻辑卷5.4 LVM 管理命令汇总六、LVM 实战操作步骤6.1 创建逻辑卷流程6.2 扩容操作6.3 删除 LVM6.4 LVM创建流程七、总结一、磁盘结构1.1 磁盘概念什么是磁盘磁盘是计算机中用于长期存储数据的核心硬件设备。简单来说它是电脑的“仓库”负责在关机后依然保存文件、系统、照片和应用程序。1.2 磁盘的结构硬盘物理结构盘片由多个金属或玻璃基片堆叠而成每张盘片均具有上、下两个存储面类似“双面唱片”。磁头每张盘片的每个面对应一个磁头负责读写数据磁头数量 盘片数 × 2。硬盘数据结构CHS寻址模型扇区盘片上划分的扇形区域固定存储 512字节或4K高级格式数据是硬盘最小的物理存储单元。磁道盘片表面上以盘心为圆心的多个同心圆环用于组织数据轨迹。柱面所有盘片上半径相同的磁道共同构成的虚拟圆柱体是分区操作的重要参考维度。1.3Linux设备命名在Linux系统中所有硬件设备包括硬盘、分区、U盘等都会被抽象为设备文件统一存放在 /dev/ 目录下。用户通过操作这些文件即可访问对应的硬件。设备文件的命名遵循特定格式以/dev/hda5为例其含义可拆解为三部分1.设备类型前缀第1-2个字符hd代表IDE接口的硬盘老式并口硬盘。sd代表SCSI接口或SATA接口的硬盘目前主流包括SSD和U盘。2.硬盘序号第3个字符以英文字母 a、b、c……依次表示第1块、第2块、第3块……硬盘。例如 sda 表示第一块SCSI硬盘sdb 表示第二块。3.分区编号最后的数字以数字 1、2、3……依次表示该硬盘上的第1个、第2个、第3个……分区。例如 sda1 表示第一块SCSI硬盘上的第一个分区sda2 表示第二个分区。二、分区2.1 分区表MBR传统分区表储存位置磁盘第一个 512B 物理扇区。0~445字节引导代码446~509字节分区表共 4 条记录每条 16B510~511 字节校验标志0x55AA分区规则最多4 个主分区或 3 主分区 1 扩展分区扩展分区内可划分多个逻辑分区硬性限制单块磁盘最大识别 2TiB 容量GPT现代分区表容量支持 ZB 级超大磁盘突破 2TiB 限制分区数量默认最多 128 个分区无需扩展分区数据安全分区表头部、尾部双副本损坏可恢复启动适配完美搭配 UEFI 启动新服务器 / 系统默认方案2.2. 主流 Linux 文件系统XFS日志文件系统大磁盘、大文件性能优异断电快速修复CentOS7 及以上系统默认EXT4经典稳定日志文件系统兼容性强CentOS6 默认SWAP交换分区虚拟内存常规配置为物理内存 1.5~2 倍大内存服务器可酌情省略其他FAT32/NTFSWindows 格式Linux 读写 NTFS 需安装ntfs-3g、JFS2.3 磁盘识别与查看命令查看磁盘全部分区列表fdisk -l图 2-1 查看磁盘全部分区列表关键字段设备名、启动标识、起止扇区、容量 Blocks、分区类型 ID83 普通 Linux 分区、8eLVM查看块设备层级拓扑树lsblk更直观推荐日常使用lsblk -f同时显示文件系统、分区 UUID图 2-2 显示文件系统和uuidlsblk -t查看磁盘拓扑信息图 2-3 查看磁盘拓扑信息lsblk -o 自定义列按需筛选输出字段图 2-4 按需筛选输出字段lsblk -P输出键值对格式便于脚本解析图 2-5 输出键值对格式扫描SCSI总线无重启识别新盘echo - - - /sys/class/scsi_host/host0/scanecho - - - /sys/class/scsi_host/host1/scanecho - - - /sys/class/scsi_host/host2/scan当磁盘创建成功后可用这三条命令可以让我们不用重启就能识别新的磁盘。可以看到我们新创建的磁盘没显示。图 2-6 列出系统中所有磁盘及其分区表信息输入扫描命令后可以看到我们新创建的两个磁盘已经显示出来故我们使用这条命令后不需要重启就可以识别新创建的磁盘。图 2-7 列出系统中所有磁盘及其分区表信息三、分区工具与交互命令3.1 fdiskMBR进入方式fdisk /dev/sdb以操作 /dev/sdb 磁盘为例常用的参数m 帮助 p 查看表 n 新建 d 删除 t 改类型 a 引导标志 l 列类型 w 写入保存 q 不保存退出图 3-1 进入/dev/sdb3.2 gdiskGPT专用进入方式gdisk /dev/sdc以操作 /dev/sdc 磁盘为例常用的参数o 新 GPT p 查看 n 新建 d 删除 t 改类型常见8300 Linux FS8200 swap8e00 LVMi 分区详情 v 校验 w 写入 q 退出不存图 3-2 进入/dev/sdc3.3 格式化/创建文件系统1. XFS 文件系统CentOS 7 默认推荐mkfs.xfs /dev/sdb1 或 mkfs -t xfs /dev/sdb12. VFAT32 文件系统跨平台兼容常用于U盘mkfs.vfat -F 32 /dev/sdb6 或 mkfs -t vfat -F 32 /dev/sdb63. Swap 交换分区虚拟内存mkswap /dev/sdb54. 查看 UUID通用命令blkid /dev/sdb13.4挂载/卸载/开机自动挂载临时挂载mount [-t 类型] 设备 挂载点设置开机自动挂载vim/etc/fstab输入设备/UUID 挂载点 类型 参数 dump fsck卸载umount 设备 或 umount 挂载点3.5磁盘/文件系统使用情况查看已挂载文件系统容量df常用的命令 df -h 人类可读df -T 含类型df -i inodelsblk -f看设备、类型、LABEL、UUID、挂载点四、案例添加容量为20GB的磁盘用 fdisk 进行分区挂载。4.1 添加磁盘进入VMware虚拟机在左上方选择虚拟机点击设置。图 4-1 进入虚拟机进入到当前界面点下方的添加选择磁盘然后点下一步之后内存选择20GB即可。图 4-2 添加磁盘4.2 扫描SCSI总线添加完磁盘后进入远程终端我们刚刚添加的磁盘需要重启服务器才可以显示可以输入扫描命令使我们无需重启就能显示磁盘。如上图 2-6 2-7 所示。4.3 使用 fdisk 分区首先输入 fdisk /dev/sdb 进入如图 3-1 所示然后进行分区分区命令和步骤如下图所示图 4-3 分区4.4 格式化我们使用的是 centos7 系统所以使用的文件类型是 xfs 所以格式化的命令为mkfs.xfs /dev/sdb1如下图所示显示格式化成功。图 4-4 格式化4.5 挂载在Linux中挂载Mount 是指将一个存储设备如硬盘分区、U盘、光盘的文件系统连接到系统的目录树中使该设备的内容能够被访问。所以我们需要创建一个新的空白目录来挂载。创建新目录mkdir /opt/zdw挂载mount /dev/sdb1 /opt/zdw查看df -h图 4-5 挂载我们使用当前命令操作的属于是临时挂载重启后会消失所以我们要设置一个开机自动挂载来达到永久挂载的效果。vim /etc/fstab在文件中输入UUIDbc64c042-766b-4ca8-b85b-7fe3e1b3e317 /opt/zdw xfs defaults 0 0图 4-6 设置开机自动挂载可以看到重启后挂载点并没有消失。图 4-7 重启验证五、LVM概述与逻辑5.1 PVPhysical Volume物理卷LVM 的最底层存储单位通常对应磁盘分区如 /dev/sdb1或整块硬盘如 /dev/sdc关键特性PV 初始化后被划分为若干个 PEPhysical Extent物理扩展块默认大小为 4MB。PE 是 LVM 的最小存储单元类似文件系统的“数据块”。PE 越小存储空间利用率越高但受限于内核可管理的最大 PE 数量默认为 65534 个 PE 过小会限制 VG 的最大容量。5.2 VGVolume Group卷组将 一个或多个 PV 聚合为一个整体的逻辑存储池。关键特性VG 是 LVM 的中间层屏蔽了底层物理设备的差异。支持动态添加或删除 PV实现存储池的在线扩容或缩容。5.3LVLogical Volume逻辑卷从 VG 中划分出的逻辑分区是用户直接使用的最终存储单元。关键特性LV 对用户而言类似于传统分区可格式化为文件系统并挂载使用。支持在线扩容lvextend和在线缩容lvreduce需谨慎操作。能够在保持现有数据不变的情况下动态调整磁盘容量这是 LVM 最显著的优势。5.4LVM 管理命令汇总按功能分类PV / VG / LV功能PV物理卷VG卷组LV逻辑卷扫描pvscanvgscanlvscan创建pvcreatevgcreatelvcreate显示pvdisplayvgdisplaylvdisplay删除pvremovevgremovelvremove扩展——vgextendlvextend缩减——vgreducelvreduce六、LVM实战操作步骤6.1创建逻辑卷流程1. 分区并设置类型为 LVMID8e设置分区类型为8efdisk /dev/sdb fdisk /dev/sdc图 6-1 设置 sdb2 的类型为 8e图 6-2 设置 sdc1 sdc2 的类型为 8e2. 创建物理卷pvcreate /dev/sdb2 /dev/sdc1图 6-3 创建物理卷3. 创建卷组vgcreate yjs_vg /dev/sdb2 /dev/sdc1图 6-4 创建卷组查看vgdisplay yjs_vg 可以看到容量为 9.99GB图 6-5 查看卷组4. 创建逻辑卷lvcreate -L 9.9G -n yjs_lv yjs_vg图 6-6 创建逻辑卷查看lvdiaplay /dev/yjs_vg/yjs_lv图 6-7 查看逻辑卷5. 格式化并挂载格式化mkfs.xfs /dev/yjs_vg/yjs_lv图 6-8 格式化创建目录mkdir /opt/zdw123图 6-9 创建目录挂载mount /dev/yjs_vg/yjs_lv /opt/zdw123查看df -Th图 6-10 挂载6.2 扩容操作1.添加新物理卷pvcreate /dev/sdc2图 6-11添加新物理卷2.扩展卷组vgextend yjs_vg /dev/sdc2图 6-12扩展卷组3.扩展逻辑卷lvextend -L 2G /dev/yjs_vg/yjs_lv图 6-13扩展逻辑卷4. 刷新文件系统刚扩容玩后 df -Th 没发生变化这时我们需要刷新一下即可。df -Thxfs_growfs /dev/yjs_vg/yjs_lvdf -Th图 6-14刷新文件系统6.3 删除LVMumount /opt/zdw123lvremove /dev/yjs_vg/yjs_lvvgremove yjs_vgpvremove /dev/sdb1 /dev/sdc1图 6-15删除 LVM6.4 LVM创建流程新增硬盘 → 分区(fdisk) → PV(pvcreate) → VG(vgcreate) → LV(lvcreate) → 格式化(mkfs.xfs) → 挂载(mount)七、总结1. 磁盘基础磁盘最小物理存储单元为扇区512B/4K核心结构包含盘片、磁头、磁道、柱面。Linux 设备统一存放在 /dev主流命名 sdXSATA/SAS/SSD/U盘数字代表分区序号。2. 分区表对比MBR老式占用磁盘首个512B扇区含引导代码、4条分区记录、0x55AA校验位限制最大2TiB磁盘、最多4个主分区3主1扩展多逻辑。GPT新式适配UEFI支持ZB级大容量、默认128个分区双分区表副本安全性与扩展性更强为现代系统默认。3. 主流文件系统EXT4稳定通用CentOS6 默认XFS大文件高性能、断电快恢复CentOS7 默认SWAP虚拟内存分区常规为物理内存1.5-2倍NTFS Linux读写需 ntfs-3g。4. 磁盘查看与热识别fdisk -l查看分区详情、分区类型IDlsblk直观查看磁盘拓扑lsblk -f 可查FS与UUID。虚拟机可通过SCSI总线扫描命令不重启识别新磁盘。5. 分区、格式化与挂载fdisk 适配MBR分区gdisk 适配GPT分区mkfs.* 命令格式化文件系统blkid 查看UUID。mount 临时挂载写入 /etc/fstab 实现开机永久挂载df -hT 查看磁盘使用情况。6. LVM核心原理PV→VG→LVPV物理卷底层物理磁盘/分区划分为最小单元PE默认4MVG卷组聚合多个PV形成存储池LV逻辑卷从VG划分的可用逻辑分区支持在线动态扩容灵活调整磁盘容量。7. LVM核心流程与命令创建流程新增磁盘→分区8e类型→pvcreate→vgcreate→lvcreate→格式化→挂载扩容流程新增PV→vgextend扩卷组→lvextend扩逻辑卷→xfs_growfs刷新文件系统删除需按LV→VG→PV顺序操作。