linux系统磁盘管理
普通服务器磁盘管理
查看磁盘信息
一般系统盘都安装在为 sda1 或 vda1 上
fdisk -l
Disk /dev/vda: 32.2 GB, 32212254720 bytes, 62914560 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
Disk label type: dos
Disk identifier: 0x0009ac89
Device Boot Start End Blocks Id System
/dev/vda1 * 2048 62914526 31456239+ 83 Linux
普通磁盘的分区管理
- fdisk -l 确认新磁盘盘符 如 /dev/vdb
- 对新磁盘进行 分区
# 进去分区划分命令行
fdisk /dev/vdb
Command (m for help): n #新建磁盘分区
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
# 提示创建分区 p 主分区 ,e 扩展分区
Select (default p):p # 创建主分区
Partition number (1-4, default 2):1 #分区号设置
起始 扇区 (20973568-41943039,默认为 20973568):+10G #设置分区起始,一般默认将使用默认值 20973568 可以使用 +nG 的方式设定分区大小
分区 1 已设置为 Linux 类型,大小设为 10 GiB
命令(输入 m 获取帮助):w #保存磁盘分区设置
# fdisk -l 重新查看看到新分区
- 对超过2T空间的磁盘使用 parted 命令分区
parted /dev/vdb
p
mklabel gpt
mkpart
vdb1
xfs
0
4001GB
p
quit
- 对新分区进行格式化 严重高位命令 执行前确认盘号
# 将新分区格式化为 xfs
mkfs.xfs /dev/vdb1
# 将新分区格式化为 ext4
mkfs.ext4 /dev/xdb1
- 挂载
# 普通挂载
mkdir /mnt
mount /dev/vdb1 /mnt/
# 永久挂载
echo "/dev/vdb1 /mnt/ xfs defaults 0 0" > /etc/fstab
逻辑卷
- lvm逻辑卷是Linux环境下对磁盘分区进行管理的一种机制。在传统的磁盘管理机制中,我们的上层应用是直接访问文件系统,从而对底层的物理硬盘进行读取;
而在lvm逻辑卷配置过程中,其通过对底层的硬盘进行封装,当我们对底层的物理硬盘进行操作时,其不再是针对于分区进行操作,而是通过一个叫做逻辑卷的东西来对其进行底层的磁盘管理操作。
逻辑卷优点
LVM与直接使用物理存储相比,有以下优点:
- 灵活的容量.
当使用逻辑卷时,文件系统可以扩展到多个磁盘上,你可以聚合多个磁盘或磁盘分区成单一的逻辑卷. - 可伸缩的存储池.
你可以使用简单的命令来扩大或缩小逻辑卷大小,不用重新格式化或分区磁盘设备. - 在线的数据再分配.
你可以在线移动数据,数据可以在磁盘在线的情况下重新分配.比如,你可以在线更换可热插拔的磁盘. - 方便的设备命名
逻辑卷可以按你觉得方便的方式来起任何名称. - 磁盘条块化.
你可以生成一个逻辑盘,它的数据可以被条块化存储在2个或更多的磁盘上.这样可以明显提升数据吞吐量. - 镜像卷
逻辑卷提供方便的方法来镜像你的数据. - 卷快照
使用逻辑卷,你可以获得设备快照用来一致性备份或者测试数据更新效果而不影响真实数据.
逻辑卷架构和 概念
- PV(物理卷):设定那些硬盘和分区(做逻辑卷时分区必须是8e类型)可以做逻辑卷
- VG(卷组):将物理卷告诉的硬盘,卷组将硬盘的大小打碎成PE,一个PE大概4M
- LV(逻辑卷):从VG中取需要的PE来决定逻辑卷的大小。
创建&扩容逻辑卷
- fdisk or parted 对磁盘进行分区
fdisk /dev/sdc
# 依次输入# n p 1 +40G w
# 生成 /dev/sdc1
- 创建物理卷将linux物理分区转变为物理卷
# 查看物理卷
pvdisplay
pvscan
# 创建物理卷
pvcreate /dev/sdc1
# 一次创建多个物理卷
pvcreate /dev/sdc1 /dev/sdd1 /dev/sde1
# 删除物理卷
pvremove /dev/sde1
- 创建卷组
# 查看卷组
vgdisplay
vgscan
# 创建卷组 并添加物理卷 物理卷名称 vg01
vgcreate vg01 /dev/sdc1
# 向已有卷组添加 物理卷
vgextend vg01 /dev/sdd1
# 激活卷组
vgchange -a y vg01
#删除卷组
vgremove /dev/vg01
- 创建逻辑卷
#查看逻辑卷
lvdisplay
lvscan
# 查看某一逻辑卷详细信息
lvdisplay -v /dev/vg01/lvdata01
# 创建逻辑卷 逻辑卷大小50G 逻辑卷名称lvdata02 vg01卷组名称
lvextend L +20G /dev/mapper/vg01-lvdata01
# 逻辑卷格式化
mkfs -t ext4 /dev/mapper/vg01-lvdata01
# 挂载
mount /dev/mapper/vg01-lvdata01 /data/
# 删除逻辑卷
umount /data
lvremove /dev/mapper/vg01-lvdata01
- 逻辑卷扩容
# 扩容逻辑卷
# 1. 逻辑卷本身有空间未分配
# 2. 将新的磁盘分区扩容到已有逻辑卷的卷组中 逻辑卷空间增大后进行扩容 vgextend vg01 /dev/sdx1
lvcreate -L 50G -n lvdata02 vg01
# 扩展逻辑卷 对逻辑卷lvdata01进行扩展增加20G大小
# 使扩展大小生效
resize2fs -f /dev/mapper/vg01-lvdata01
# 如果逻辑卷分区格式为 xfs格式,需要用 xfs_growfs /dev/mapper/vg01-lvdata01