一、centos7 磁盘挂载
默认盘符格式
- centos7 默认文件格式xfs
- centos6 默认文件格式ext4
- centos5 默认文件格式ext3
1、/dev/vdb
和/dev/mapper/lvm-data
对比
1)/dev/vdb
/dev/vdb
通常表示一个裸的块存储设备,比如一个硬盘或者虚拟机中的一个虚拟硬盘。这种表示方法来自于Linux的设备文件系统,其中vda, vdb, vdc
等通常用于虚拟化环境中的虚拟磁盘。
- 优点:
简单直观:直接对应于一个物理或虚拟的存储设备,容易理解和操作。
无需额外软件:不需要额外的管理软件就可以直接格式化和挂载使用。 - 缺点:
灵活性差:一旦分区和格式化后,调整其大小比较困难,特别是在不丢失数据的情况下。
扩展性差:无法轻松地跨多个磁盘扩展或合并存储空间。
2)/dev/mapper/lvm-data
/dev/mapper/lvm-data
表示一个逻辑卷管理(LVM)
下的逻辑卷。LVM
是Linux环境下的一个逻辑卷管理器,它允许管理员创建逻辑卷,这些逻辑卷可以跨越多个物理磁盘,提供更灵活的存储管理方式。
- 优点:
灵活性高:可以在不丢失数据的情况下动态调整逻辑卷的大小。
扩展性强:支持跨多个物理或虚拟磁盘创建一个单一的逻辑卷,易于扩展。
支持快照:可以创建文件系统状态的快照,便于备份和恢复。
支持多种存储方案:例如,可以轻松配置镜像、条带和其他复杂的存储需求。 - 缺点:
管理复杂:比直接使用裸磁盘复杂,需要了解和管理物理卷、卷组和逻辑卷等概念。
需要额外软件:需要LVM软件支持。
2、直接挂载裸磁盘
磁盘比较固定的,比如应用服务器
,推荐使用这种方式,简单一些
xfs挂载
# 格式化
mkfs.xfs /dev/vdb
mkdir /data
mount /dev/vdb /data
# 将挂载配置写入 /etc/fstab 文件
echo "/dev/vdb /data xfs defaults 0 1 " >> /etc/fstab
ext4格式挂载
外部设备在插入时挂载,在未插入时忽略。使用 nofail 选项,启动时若设备不存在直接忽略它而不报错。( /dev/sdxxx /dir1/dir2 ext4 defaults,nofail 0 0)
# 格式化
mkfs.ext4 /dev/vdb
mkdir /data
mount /dev/vdb /data
# 将挂载配置写入 /etc/fstab 文件
echo "/dev/vdb /data ext4 defaults 0 1 " >> /etc/fstab
3、lvm挂载、扩容
后期磁盘可能出现写满,需要预留扩容,比如数据库
、文件服务器
等,推荐使用这种方式,以便于后续扩容
lvm挂载场景
现有2T
硬盘,通过lvm挂载,总结为以下步骤
# 1、创建物理卷(PV)
pvcreate /dev/vdb
# 2、创建卷组(VG)
vgcreate lvm /dev/vdb
# 3、创建逻辑卷(LV)
lvcreate -l 100%VG -n data lvm
# 4、格式化逻辑卷
mkfs.xfs /dev/mapper/lvm-data
# 5、创建目录并挂载逻辑卷
mkdir /data && mount /dev/mapper/lvm-data /data
# 6、自动挂载(可选),在系统启动时自动挂载逻辑卷
echo '/dev/mapper/lvm-data /data xfs defaults 0 0' >> /etc/fstab
# 7、查看挂载情况
df -Th
lsblk -f
lsblk
查看未挂载硬盘
1)创建物理卷(PV)pvcreate /dev/vdb
如果是新磁盘或者未被LVM管理的分区,你需要将其初始化为物理卷:
2)创建卷组(VG)vgcreate lvm /dev/vdb
创建一个名为lvm
的卷组
3)创建逻辑卷(LV)
在名为lvm
卷组内创建一个逻辑卷。以下命令创建一个名为data
的逻辑卷,使用了卷组vgdata中的全部空间
4)格式化逻辑卷
fdisk -l
查看逻辑卷全路径为/dev/mapper/lvm-data
格式化/dev/mapper/lvm-data
为xfs
格式
mkfs.xfs /dev/mapper/lvm-data
5)挂载逻辑卷
创建/data
目录并挂载
mkdir /data && mount /dev/mapper/lvm-data /data
6)# 自动挂载(可选),在系统启动时自动挂载逻辑卷
echo '/dev/mapper/lvm-data /data xfs defaults 0 0' >> /etc/fstab
7)查看挂载结果df -Th
或lsblk -f
lvm扩容场景
磁盘由1T
扩容至2T
,扩容前如下,逻辑卷/dev/mapper/lvm-data
只引用了/dev/vdb
的1T空间
需要确定lvm-data
逻辑卷属于哪个卷组。可以通过vgdisplay
或lvdisplay
命令查看逻辑卷的详细信息,从而找到卷组名。
现在看到详细信息一栏
VG Size <1024.00 GiB
PE Size 4.00 MiB
Total PE 262143
Alloc PE / Size 262143 / <1024.00 GiB
Free PE / Size 0 / 0
卷组中Free PE / Size
为零
1)扩展物理卷pvresize /dev/vdb
pvresize
命令用于调整物理卷(PV)
的大小。当你增加了物理硬盘的大小,例如在虚拟环境中调整了虚拟硬盘的容量,或者更换了更大的物理硬盘但保持了相同的设备标识符(如/dev/vdb
),你可以使用pvresize
命令来让LVM
识别这个新的容量。
简单来说,执行pvresize /dev/vdb
命令会更新LVM的物理卷/dev/vdb的大小信息
,使其匹配实际的磁盘大小。如果你扩大了/dev/vdb
的容量,这个命令会增加可用于LVM
的空间,然后你可以进一步扩展卷组(VG)中的逻辑卷(LV)或者创建新的逻辑卷。
扩展物理卷后,可以使用vgs
或vgdisplay
命令查看卷组的新可用空间。具体如下:
pvs
或vgs
检查现有的物理卷(PV)和卷组(VG)的状态
vgdisplay
查看详情显示有足够的FREE PE / Size
这里对比前面看到的,已经发生变化,Free PE / Size
为262144 / 1.00 TiB
,表示卷组空闲空间有1T
2)lvextend 扩容到逻辑卷/dev/mapper/lvm-data
直接100%扩容
lvextend -l +100%FREE /dev/mapper/lvm-data
或者指定容量扩容
lvextend -L +1024G /dev/mapper/lvm-data
3)xfs_growfs
新容量写入逻辑卷/dev/mapper/lvm-data
对于ext4
文件系统
resize2fs /dev/mapper/lvm-data
对于xfs
文件系统,我这里是xfs
,所以用的这个
xfs_growfs /dev/mapper/lvm-data
4)df -Th
查看扩容结果
查看已完成扩容,由1T
扩容到了2T
二、常用磁盘查看命令lsblk、df、fdisk
lsblk -f
lsblk -f
命令列出了所有可用的存储设备,包括它们的挂载点和文件系统类型。
df -h
df -h
# df -h 命令列出已挂载磁盘空间
df -Th
# df -Th 命令列出已挂载磁盘空间, -T显示出盘符格式类型
fdisk -l
fdisk -l
# fdisk -l 命令列出所有磁盘情况,包含未挂载磁盘
Linux - 通过LVM对磁盘进行动态扩容 (Linux的逻辑卷)