⑴ 物理卷管理
① 建立物理卷
⒈ 设置分区类型
假如你使用一整块磁盘作为 pv ,磁盘必须没有分区表,也就是之前没有被分区过
如果有分区的话,必须确保 partition ID 是 8e
如果是整个磁盘的话,必须把分区表擦除
要删除分区表,可以用 dd 命令把第一个扇区用 0 填充:
dd if=/dev/zero of=PhysicalVolume bs=512 count=1
当然这会摧毁原来盘上所有的数据
⒉ 初始化一个物理设备
pvcreate 命令用于初始化一个或者多个设备(磁盘 or 分区)成为 pv
语法:
pvcreate <disk> 如:pvcreate /dev/sdd1 /dev/sde1 /dev/sdf1
pvcreate <partition> 如:pvcreate /dev/hda{6,7,8}
⒊ 扫描块设备
你可以扫描所有块设备,以便知道那些可以用来建立物理卷
这是通过 lvmdiskscan 命令实现的
② 显示物理卷
有3个命令可以用于显示 LVM 物理卷的属性,分别是 pvs,pvdiskplay,pvscan
⒈ pvs
pvs 命令以配置文件的格式提供物理卷的信息,每行显示一个物理卷的信息
pvs 命令可以很灵活的控制输出格式,主要用于脚本中
不加参数,默认输出:
增加 -v 参数,会显示LVM 对像的额外信息,例如 UUID字段
增加 -o 参数,指定需要输出的字段
如果想在默认输出的前提下增加字段,可以使用 -o + 字段名
⒉ pvscan
扫描所有的已经存在的 pv
你可以在 lvm.conf 中定义一个过滤器,这样 pvscan 就不会扫描某些类型的设备了
⒊ pvdisplay
为每个 pv 提供一个冗余的多行格式的输出,它显示物理特性(大小,extents 数量,所在卷组等)
③ 阻止一个 pv 被分配
当有磁盘发生错误,或者你要删除该物理卷的时候
你可以使用 pvchange 命令阻止 PE 在一个或者多个 PV 的自由空间上的分配
pvchange 命令的 -x n <disk|partition> 可以阻止一个分区或者设备被使用
pvchange -x n /dev/sdk1
一旦想恢复对它的使用,使用 -x y 参数
④ 重新调整 pv 的大小
假如你需要改变一个 pv 的大小,使用 pvresize 命令来调整
即使在 LVM 正在使用该 pv 时也可以使用该命令
⑤ 删除一个 pv
假如一个设备不再需要被使用时,你可以使用 pvremove 命令来删除它
它会把该 pv 上的元数据清零
在删除一个 pv 之前,你必须先把它从卷组中移走。用 vgreduce 命令
⑥ 实验过程
- [root@localhost ~]# pvcreate /dev/sda{13,14,15}
- Writing physical volume data to disk "/dev/sda13"
- Physical volume "/dev/sda13" successfully created
- Writing physical volume data to disk "/dev/sda14"
- Physical volume "/dev/sda14" successfully created
- Writing physical volume data to disk "/dev/sda15"
- Physical volume "/dev/sda15" successfully created
- [root@localhost ~]# pvscan
- PV /dev/sda13 lvm2 [86.26 MB]
- PV /dev/sda14 lvm2 [86.26 MB]
- PV /dev/sda15 lvm2 [86.26 MB]
- Total: 3 [258.77 MB] / in use: 0 [0 ] / in no VG: 3 [258.77 MB]
- [root@localhost ~]# pvdisplay
- "/dev/sda13" is a new physical volume of "86.26 MB"
- --- NEW Physical volume ---
- PV Name /dev/sda13
- VG Name
- PV Size 86.26 MB
- Allocatable NO
- PE Size (KByte) 0
- Total PE 0
- Free PE 0
- Allocated PE 0
- PV UUID lKGamq-tlEi-dodU-9zjZ-pZr0-5p2q-NpGqmu
- "/dev/sda14" is a new physical volume of "86.26 MB"
- --- NEW Physical volume ---
- PV Name /dev/sda14
- VG Name
- PV Size 86.26 MB
- Allocatable NO
- PE Size (KByte) 0
- Total PE 0
- Free PE 0
- Allocated PE 0
- PV UUID zlKivB-rB69-TQdW-qnKv-Fmbr-VTPU-krefuc
- "/dev/sda15" is a new physical volume of "86.26 MB"
- --- NEW Physical volume ---
- PV Name /dev/sda15
- VG Name
- PV Size 86.26 MB
- Allocatable NO
- PE Size (KByte) 0
- Total PE 0
- Free PE 0
- Allocated PE 0
- PV UUID xhz0dv-rJJ2-PJUa-EfJT-bINn-zMSW-GZlFYT
- [root@localhost ~]# pvs
- PV VG Fmt Attr PSize PFree
- /dev/sda13 lvm2 a-- 86.26M 86.26M
- /dev/sda14 lvm2 a-- 86.26M 86.26M
- /dev/sda15 lvm2 a-- 86.26M 86.26M
- [root@localhost ~]# pvs -v
- Scanning for physical volume names
- Wiping cache of LVM-capable devices
- PV VG Fmt Attr PSize PFree DevSize PV UUID
- /dev/sda13 lvm2 a-- 86.26M 86.26M 86.26M lKGamq-tlEi-dodU-9zjZ-pZr0-5p2q-NpGqmu
- /dev/sda14 lvm2 a-- 86.26M 86.26M 86.26M zlKivB-rB69-TQdW-qnKv-Fmbr-VTPU-krefuc
- /dev/sda15 lvm2 a-- 86.26M 86.26M 86.26M xhz0dv-rJJ2-PJUa-EfJT-bINn-zMSW-GZlFYT
- [root@localhost ~]# pvs -o pv_name
- PV
- /dev/sda13
- /dev/sda14
- /dev/sda15
- [root@localhost ~]# pvs -o pv_name,dev_size
- PV DevSize
- /dev/sda13 86.26M
- /dev/sda14 86.26M
- /dev/sda15 86.26M
- [root@localhost ~]# pvs -o +pv_uuid
- PV VG Fmt Attr PSize PFree PV UUID
- /dev/sda13 lvm2 a-- 86.26M 86.26M lKGamq-tlEi-dodU-9zjZ-pZr0-5p2q-NpGqmu
- /dev/sda14 lvm2 a-- 86.26M 86.26M zlKivB-rB69-TQdW-qnKv-Fmbr-VTPU-krefuc
- /dev/sda15 lvm2 a-- 86.26M 86.26M xhz0dv-rJJ2-PJUa-EfJT-bINn-zMSW-GZlFYT
- [root@localhost ~]# pvremove /dev/sda13
- Labels on physical volume "/dev/sda13" successfully wiped
- [root@localhost ~]# pvcreate /dev/sda13
- Writing physical volume data to disk "/dev/sda13"
- Physical volume "/dev/sda13" successfully created
- [root@localhost ~]# pvs
- PV VG Fmt Attr PSize PFree
- /dev/sda13 lvm2 a-- 86.26M 86.26M
- /dev/sda14 lvm2 a-- 86.26M 86.26M
- /dev/sda15 lvm2 a-- 86.26M 86.26M
[root@localhost ~]# pvcreate /dev/sda{13,14,15}
Writing physical volume data to disk "/dev/sda13"
Physical volume "/dev/sda13" successfully created
Writing physical volume data to disk "/dev/sda14"
Physical volume "/dev/sda14" successfully created
Writing physical volume data to disk "/dev/sda15"
Physical volume "/dev/sda15" successfully created
[root@localhost ~]# pvscan
PV /dev/sda13 lvm2 [86.26 MB]
PV /dev/sda14 lvm2 [86.26 MB]
PV /dev/sda15 lvm2 [86.26 MB]
Total: 3 [258.77 MB] / in use: 0 [0 ] / in no VG: 3 [258.77 MB]
[root@localhost ~]# pvdisplay
"/dev/sda13" is a new physical volume of "86.26 MB"
--- NEW Physical volume ---
PV Name /dev/sda13
VG Name
PV Size 86.26 MB
Allocatable NO
PE Size (KByte) 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID lKGamq-tlEi-dodU-9zjZ-pZr0-5p2q-NpGqmu
"/dev/sda14" is a new physical volume of "86.26 MB"
--- NEW Physical volume ---
PV Name /dev/sda14
VG Name
PV Size 86.26 MB
Allocatable NO
PE Size (KByte) 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID zlKivB-rB69-TQdW-qnKv-Fmbr-VTPU-krefuc
"/dev/sda15" is a new physical volume of "86.26 MB"
--- NEW Physical volume ---
PV Name /dev/sda15
VG Name
PV Size 86.26 MB
Allocatable NO
PE Size (KByte) 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID xhz0dv-rJJ2-PJUa-EfJT-bINn-zMSW-GZlFYT
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda13 lvm2 a-- 86.26M 86.26M
/dev/sda14 lvm2 a-- 86.26M 86.26M
/dev/sda15 lvm2 a-- 86.26M 86.26M
[root@localhost ~]# pvs -v
Scanning for physical volume names
Wiping cache of LVM-capable devices
PV VG Fmt Attr PSize PFree DevSize PV UUID
/dev/sda13 lvm2 a-- 86.26M 86.26M 86.26M lKGamq-tlEi-dodU-9zjZ-pZr0-5p2q-NpGqmu
/dev/sda14 lvm2 a-- 86.26M 86.26M 86.26M zlKivB-rB69-TQdW-qnKv-Fmbr-VTPU-krefuc
/dev/sda15 lvm2 a-- 86.26M 86.26M 86.26M xhz0dv-rJJ2-PJUa-EfJT-bINn-zMSW-GZlFYT
[root@localhost ~]# pvs -o pv_name
PV
/dev/sda13
/dev/sda14
/dev/sda15
[root@localhost ~]# pvs -o pv_name,dev_size
PV DevSize
/dev/sda13 86.26M
/dev/sda14 86.26M
/dev/sda15 86.26M
[root@localhost ~]# pvs -o +pv_uuid
PV VG Fmt Attr PSize PFree PV UUID
/dev/sda13 lvm2 a-- 86.26M 86.26M lKGamq-tlEi-dodU-9zjZ-pZr0-5p2q-NpGqmu
/dev/sda14 lvm2 a-- 86.26M 86.26M zlKivB-rB69-TQdW-qnKv-Fmbr-VTPU-krefuc
/dev/sda15 lvm2 a-- 86.26M 86.26M xhz0dv-rJJ2-PJUa-EfJT-bINn-zMSW-GZlFYT
[root@localhost ~]# pvremove /dev/sda13
Labels on physical volume "/dev/sda13" successfully wiped
[root@localhost ~]# pvcreate /dev/sda13
Writing physical volume data to disk "/dev/sda13"
Physical volume "/dev/sda13" successfully created
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda13 lvm2 a-- 86.26M 86.26M
/dev/sda14 lvm2 a-- 86.26M 86.26M
/dev/sda15 lvm2 a-- 86.26M 86.26M