本节包含下列主题:
创建卷组 |
 |
要创建卷组,请使用 vgcreate 命令。根据要创建的是 1.0 版卷组还是 2.0 版卷组,选项会有所不同。
自 2008 年 3 月发行的 HP-UX 11i v3 起,无论卷组版本如何,vgcreate 命令均会自动创建设备文件 /dev/vgname/group 来管理卷组。如果使用的是 2008 年 3 月之前的 HP-UX 发行版,或者如果要指定 group 文件的次编号,则在运行 vgcreate 命令之前必须创建 /dev/卷组名/group。
如果 group 文件不存在,并且 vgcreate 无法创建它,vgcreate 将显示以下消息:
vgcreate: "/dev/vgname/group": not a character device. |
要创建卷组设备文件,请执行下列步骤:
为卷组创建一个目录。例如:
按照约定,vgname 为 vgnn,其中 nn 是所有卷组中的唯一编号。但可以选择长度不超过 255 个字符的任意唯一名称。
使用 mknod 命令在卷组目录中创建一个名为 group 的设备文件。例如:
# mknod /dev/vgname/group c major 0xminor |
跟在设备文件名后面的 c 指定 group 是字符设备文件。
主编号是 group 设备文件的主编号。对于 1.0 版卷组,该编号为 64。对于 2.0 版卷组,该编号为 128。
次编号是 group 文件的次编号,以十六进制形式表示。对于 1.0 版卷组,次编号的格式为 0xnn0000,其中 nn 是在所有 1.0 版卷组中唯一的编号。对于 2.0 版卷组,次编号的格式为 0xnnn000,其中 nnn 是在所有 2.0 版卷组中唯一的编号。
有关 mknod 的详细信息,请参阅 mknod(1M);有关主编号和次编号的详细信息,请参阅“设备号格式”。
要创建 1.0 版卷组,请使用 vgcreate 命令,并指定卷组中包含的每个物理卷。例如:
# vgcreate /dev/vgname /dev/disk/disk3 |
使用块设备文件来包含卷组中的每个磁盘。可以用一个命令将所有物理卷分配给卷组,也可以创建只有一个物理卷的卷组。其中任何物理卷都不能属于现有卷组。
可以使用下列选项设置卷组属性:
- -V 1.0
1.0 版卷组(缺省值)
- -s 物理盘区大小
以 MB 为单位表示的物理盘区大小(缺省值为 4)
- -e 最大物理盘区数
每个物理卷的最大物理盘区数(缺省值为 1016)
- -l 最大逻辑卷数
最大逻辑卷数(缺省值为 255)
- -p 最大物理卷数
最大物理卷数(缺省值为 255)
物理卷的大小受物理盘区大小与最大物理盘区数的乘积的限制。如果要向该卷组分配一个大约大于 4 GB (1016 * 4 MB) 的磁盘,请使用一个更大的物理盘区大小值或最大物理盘区数值。
每个磁盘上的 LVM 元数据的大小取决于最大逻辑卷数、最大物理卷数和最大物理盘区数。如果 vgcreate 选项会导致元数据超过它的可用空间,则 vgcreate 不会创建该卷组。必须选择一个新的最大逻辑卷数、最大物理卷数和最大物理盘区数值。例如,如果要使用大于 100 GB 的磁盘,请考虑减小最大物理卷数。
对于 2.0 版卷组,vgcreate 命令不需要物理卷数 (-p)、逻辑卷数 (-l) 或每个物理卷的盘区数 (-e) 的最大值。相反,只需指定盘区大小 (-s) 以及卷组可以增大到的最大大小 (-S) 即可。例如:
# vgcreate -V 2.0 -s pe_size -S vg_size /dev/vgname /dev/disk/disk3 |
使用块设备文件来包含卷组中的每个磁盘。可以用一个命令将所有物理卷分配给卷组,也可以创建只有一个物理卷的卷组。其中任何物理卷都不能属于现有卷组。
必须使用下列选项:
- -V 2.0
2.0 版卷组
- -s 物理盘区大小
物理盘区的大小 (MB)
- -S 卷组大小
卷组将来的最大大小
卷组大小是指分配给卷组的所有物理卷上的用户数据空间的总和。卷组大小并不是创建卷组时的卷组大小;它是卷组将来可以增大到的大小。可以通过分别添加字符 m、g、t 或 p 来以 MB、GB、TB 或 PB 为单位指定该值。例如,要指定一个 2 TB 的最大大小,请使用 -S 2t。
在 2.0 版卷组中,卷组中的物理盘区数具有体系结构限制,因此用户选择的物理盘区大小会影响卷组的最大大小。要显示针对给定物理盘区大小的最大卷组大小,请将 vgcreate 的 -E 选项与 -s 选项一起使用。例如:
# vgcreate -V 2.0 -E -s 256
Max_VG_size=2p:extent_size=256m |
反之,要显示针对给定卷组大小的最小物理盘区大小,请将 vgcreate 的 -E 选项与 -S 一起使用。例如:
# vgcreate -V 2.0 -E -S 2t
Max_VG_size=2t:extent_size=1m |
将磁盘添加到卷组 |
 |
通常,将新磁盘添加到系统中时,必须将其添加到现有的卷组,而不是创建一个全新的卷组。如果添加新磁盘是为了存储用户数据(如文件系统或数据库),请不要将其添加到根卷组,而应保持根卷组中只包含根文件系统和系统文件系统(如 /usr、/tmp 等)的磁盘。
要向卷组中添加磁盘,请执行下列步骤:
使用 pvcreate 命令将磁盘初始化为物理卷,如“初始化磁盘供 LVM 使用”中所述。
使用 vgextend 命令和磁盘的块设备文件将该物理卷添加到卷组中。例如:
# vgextend /dev/vgname /dev/disk/disk3 |
从卷组删除磁盘 |
 |
要从卷组中删除磁盘,请执行下列步骤:
使用 pvdisplay 命令确保磁盘中没有已分配的物理盘区。例如:
# pvdisplay /dev/disk/disk3
-- Physical volumes --
PV Name /dev/disk/disk3
VG Name /dev/vg00
PV Status available
Allocatable yes
VGDA 2
Cur LV 9
PE Size (Mbytes) 4
Total PE 1023
Free PE 494
Allocated PE 529
Stale PE 0
IO Timeout (Seconds) default
Autoswitch On
Proactive Polling On
-- Distribution of physical volume --
LV Name LE of LV PE for LV
/dev/vg00/lvol1 25 25
/dev/vg00/lvol2 25 25
/dev/vg00/lvol3 50 50
--- Physical extents ---
PE Status LV LE
0000 current /dev/vg00/lvol1 0000
0001 current /dev/vg00/lvol1 0001
0002 current /dev/vg00/lvol1 0002
1021 free 0000
1022 free 0000
|
检查可用物理盘区数 (Free PE) 是否与物理盘区总数 (Total PE) 相一致。如果不一致,请执行下列任务之一:
从磁盘中删除逻辑卷,如“删除逻辑卷”中所述。磁盘中包含物理盘区的逻辑卷在 pvdisplay 列表的末尾显示。
磁盘不再包含任何物理盘区后,可使用 vgreduce 命令将其从卷组中删除。例如:
# vgreduce /dev/vgnn /dev/disk/disk3 |
创建逻辑卷 |
 |
要创建逻辑卷,请执行下列步骤:
确定逻辑卷所需要的磁盘空间。
例如,可以添加 200 MB 的设备交换空间,也可以创建一个预计会增大到 10 GB 的新项目。
找到一个具有足够可用空间的卷组。
要确定是否有足够的磁盘空间可供卷组内的逻辑卷使用,请使用 vgdisplay 命令计算此信息。vgdisplay 将输出有关一个或多个卷组的数据,包括物理盘区大小(在 PE Size (Mbytes) 下)和可用物理盘区的数目(在 Free PE 下)。将这两个数字相乘,就可以得到卷组内的可用 MB 数。有关详细信息,请参阅 vgdisplay(1M)。
使用 lvcreate 创建逻辑卷。例如:
# lvcreate /dev/vgnn -L size_in_MB |
此命令创建逻辑卷 /dev/vgnn/lvoln,LVM 自动分配 lvoln 中的 n。
LVM 创建逻辑卷时,它会为该逻辑卷创建块设备文件和字符设备文件,并将它们放置在 /dev/vgnn 目录中。
要创建镜像逻辑卷,请使用带 -m 选项的 lvcreate 命令选择镜像副本数。要控制镜像副本的管理方式,请从下列选项中进行选择:
-
严格盘区分配、非严格盘区分配或 PVG 严格盘区分配
- -s y
严格分配(缺省值)
- -s n
非严格分配
- -s g
PVG 严格分配
-
连续盘区分配或非连续盘区分配
- -C y
连续分配
- -C n
非连续分配(缺省值)
-
镜像调度策略
- -d p
并行调度(缺省值)
- -d s
顺序调度
-
镜像一致性策略
- -M y
启用 MWC(缺省值,在崩溃恢复期间进行最佳镜像重新同步)
- -M n -c y
启用 MCR(在崩溃恢复期间进行完全镜像重新同步)
- -M n -c n
禁用 MCR(在崩溃恢复期间不进行镜像重新同步)
例如,要创建一个大小为 240 MB、具有一个镜像副本、使用非严格分配、并行调度并且不进行镜像重新同步的镜像逻辑卷,请输入以下命令:
# lvcreate -m 1 -s n -d p -M n -c n -L 240 -n lvol1 /dev/vg01 |
 |
 |  |
 |
 | 提示:要更改现有镜像逻辑卷的特性,请使用 lvchange 命令。它支持 -C、-c、-d、-M 和 -s 选项。有关详细信息,请参阅 lvchange(1M)。 |
 |
 |  |
 |
扩展逻辑卷 |
 |
 |
 |  |
 |
 | 注释:向逻辑卷中添加空间不会自动将该空间分配给使用该逻辑卷的实体。例如,如果要向包含在逻辑卷中的文件系统添加空间,必须在扩展逻辑卷之后运行 extendfs。有关详细信息,请参阅“管理文件系统逻辑卷”和“管理交换逻辑卷”。 |
 |
 |  |
 |
确定逻辑卷另外还需要多少磁盘空间。
例如,可以添加 200 MB 的交换空间,或某个现有项目可能额外需要 1 GB 的空间。
使用 vgdisplay 命令找出任何可用空间。例如:
# vgdisplay vg00
--- Volume groups ---
VG Name /dev/vg00
VG Write Access read/write
VG Status available
Max LV 255
Cur LV 8
Open LV 8
Max PV 16
Cur PV 1
Act PV 1
Max PE per PV 2000
VGDA 2
PE Size (Mbytes) 4
Total PE 249
Alloc PE 170
Free PE 79
Total PVG 0
Total Spare PVs 0
Total Spare PVs in use 0
VG Version 1.0
VG Max Size 1082g
VG Max Extents 69248 |
Free PE 条目显示了可用空间为 4 MB 的盘区的数量,本例中是 79 个 (316 MB)。
扩展逻辑卷。例如:
# /sbin/lvextend -L 332 /dev/vg00/lvol7 |
该命令将此卷的大小增加至 332 MB。
出于性能方面的原因,可以强制逻辑卷跨越多个磁盘。例如,如果要创建一个 30 GB 的逻辑卷,将 10 GB 放在第一个磁盘上,10 GB 放在第二个磁盘上,另外 10 GB 放在第三个磁盘上,并假定盘区大小是 4 MB,则该逻辑卷总共需要 7680 个盘区。要扩展逻辑卷,请执行下列步骤:
使磁盘成为物理卷并创建卷组后,请创建大小为 0 且名为 lvol1 的逻辑卷。例如:
# lvcreate -n lvol1 /dev/vg01 |
将三分之一的盘区分配给第一个物理卷上的逻辑卷。例如:
# lvextend -l 2560 /dev/vg01/lvol1 /dev/disk/disk7 |
然后,对其余的物理卷,将分配给逻辑卷的物理盘区的总数增加 2560。在每个例子中,另有 2560 个盘区分配给指定的磁盘。例如:
# lvextend -l 5120 /dev/vg01/lvol1 /dev/disk/disk8
# lvextend -l 7680 /dev/vg01/lvol1 /dev/disk/disk9 |
如果使用 lvextend 的 -l 选项,则可以指定以逻辑盘区为单位的空间。
再如,假设卷组中有两个磁盘,具有相同的磁盘模式。目前有 24 GB 的逻辑卷只驻留在其中一个磁盘上。您要将逻辑卷大小扩展到 40 GB,并确保其中增加的 16 GB 被分配给另一个磁盘。
将逻辑卷扩展到特定磁盘,如下所示:
# lvextend -L 40960 /dev/vg01/lvol2 /dev/disk/disk3 |
在这里,当使用 -L 选项(大写)时,可指定以 MB 为单位(而不是以逻辑盘区为单位)的空间。
有关命令选项的完整信息,请参阅 lvextend(1M)。
减小逻辑卷 |
 |
要减小逻辑卷,请执行下列步骤:
要找出正在使用逻辑卷的应用程序,请使用 fuser 命令。例如:
# fuser -cu /dev/vg01/lvol5 |
如果逻辑卷正在使用中,请确保基础应用程序可以处理大小减小。可能必须停止应用程序。
确定新的逻辑卷大小。
例如,如果将逻辑卷挂接到了某个文件系统上,则新的大小必须大于文件系统中的数据当前占用的空间。bdf 命令显示所有已挂接的卷的大小。第一列显示分配给该卷的空间;第二列显示实际使用了多少空间。逻辑卷的新大小必须大于 bdf 输出的第二列中所显示的大小。
减小逻辑卷的大小,如下所示:
# lvreduce -L 500 /dev/vg01/lvol5 |
使用此命令可将逻辑卷 /dev/vg01/lvol5 减小到 500 MB。
从逻辑卷中删除镜像 |
 |
要删除镜像副本,请使用 lvreduce 命令,同时指定要保留的镜像副本数目。例如,要删除逻辑卷的所有镜像,请输入以下命令:
# lvreduce -m 0 /dev/vg00/lvol1 |
这会将镜像副本的数目减小到 0,也就是只保留原始副本。
要从特定磁盘中删除镜像副本,请使用 lvreduce,并指定要从中删除镜像副本的磁盘。例如:
# lvreduce -m 0 /dev/vg00/lvol1 /dev/disk/disk4 |
重命名逻辑卷 |
 |
要更改逻辑卷名称,请执行下列步骤:
确保逻辑卷拥有两个现有设备文件:一个块设备文件和一个字符或原始设备文件。这些设备文件必须具有相同的名称,不同的是,字符设备文件名以 r 开头。例如,要将卷组 vg00 中某个逻辑卷的名称从 lvol1 更改为 database,请列出 /dev/vg00 目录的内容。例如:
# cd /dev/vg00
# ls -l
total 0
crw-r----- 1 root sys 64 0x000000 Nov 16 02:49 group
brw-r----- 1 root sys 64 0x000001 Nov 16 02:49 lvol1
brw-r----- 1 root sys 64 0x000002 Nov 16 02:49 lvol2
brw-r----- 1 root sys 64 0x000003 Nov 16 02:49 lvol3
brw-r----- 1 root sys 64 0x000004 Nov 16 02:49 lvol4
crw-r----- 1 root sys 64 0x000001 Nov 16 02:49 rlvol1
crw-r----- 1 root sys 64 0x000002 Nov 16 02:49 rlvol2
crw-r----- 1 root sys 64 0x000003 Nov 16 02:49 rlvol3
crw-r----- 1 root sys 64 0x000004 Nov 16 02:49 rlvol4 |
使用 mv 命令重命名相应的两个文件。例如:
# mv /dev/vg00/lvol1 /dev/vg00/database
# mv /dev/vg00/rlvol1 /dev/vg00/rdatabase |
在系统上的任何其他文件中更新对旧名称的所有引用。其中包括已挂接文件系统或交换设备的 /etc/fstab,以及来自 vgexport 命令的现有映射文件。
导出卷组 |
 |
导出卷组将从系统中删除有关该卷组的所有数据,但是这些数据会完整地保留在磁盘上。可通过物理方式移动导出卷的磁盘或将其连接到其他系统,而卷组可以导入到相应位置。
导出卷组将从 /etc/lvmtab 和 /etc/lvmtab_p 中删除有关该卷组及其相关物理卷的信息,并删除该卷组的目录以及 /dev 目录中的设备文件。
确保卷组中的所有逻辑卷均未在使用。可能需要停止那些正在使用卷组中任何逻辑卷的应用程序,并卸除卷组中包含的文件系统。
对每个逻辑卷执行 fuser 命令。例如:
# fuser -cu /dev/vgnn/lvoln |
停用卷组。例如:
使用 vgexport 命令导出卷组。例如:
# vgexport -v -m /tmp/vgnn.map vgnn |
如果计划将卷组移动到其他系统,请使用带 -m 选项的 vgexport 创建映射文件。此 ASCII 文件包含逻辑卷名称,因为它们未存储在磁盘上。如果不使用卷组中逻辑卷的缺省名称 /dev/vgnn/lvoln,必须创建一个映射文件。
如果卷组中包含多个磁盘,请使用带 –s 选项的 vgexport 命令;该选项会向映射文件中添加卷组标识符 (VGID)。导入卷组后,可以不必按名称指定所有磁盘。请参阅“导入卷组”。
vgexport 完成后,便从系统中删除了有关该卷组的所有信息。现在可以将磁盘移动到其他系统,也可以将卷组导入到相应位置。
导入卷组 |
 |
要导入卷组,请执行下列步骤:
将磁盘连接到系统。
如果使用的是 2008 年 3 月之前的 HP-UX 发行版,或者要指定卷组设备文件的次编号,请执行“创建卷组设备文件”中的步骤创建该卷组。
使用 vgimport 命令导入卷组:
# vgimport -v -N -m /tmp/vgnn.map /dev/vgnn list_of_disks |
如果卷组中包含多个磁盘,且 VGID 保存在映射文件中(也就是说,运行了带 –s 和 –m 选项的 vgexport 命令),则通过使用 -s 选项可以不必在 vgimport 命令行中指定所有这些磁盘。这会使 vgimport 扫描系统中的所有磁盘。VGID 与映射文件中的一个标识符相匹配的任何物理卷都会自动包含在该卷组中。
激活卷组,如下所示:
修改卷组参数 |
 |
 |
 |  |
 |
 | 注释:vgmodify 命令不支持 2.0 版卷组。 |
 |
 |  |
 |
创建卷组时,会设置卷组的某些特性,如每个物理卷的最大物理盘区数、最大物理卷数以及最大逻辑卷数。使用 vgmodify 命令可以调整这些参数,而不必删除并重新创建卷组,也不必移动数据。
执行下列步骤可调整这些卷组参数:
运行 vgmodify 收集有关卷组的信息。
保存以下三个命令的输出:
# vgmodify -o -r vgnn
# vgmodify -v -t vgnn
# vgmodify -v -n -t vgnn |
-o 选项会尝试通过充分利用现有的 LVM 元数据空间对这些值进行优化。-t 选项可报告设置的优化范围而不重新计算物理盘区数目;通过 -n 选项可重新计算物理盘区的数目。
根据上一步中收集的信息,选择新的卷组参数值。
这些新值可能会增加每个物理卷上卷组保留区域 (VGRA) 的大小。VGRA 驻留在 LVM 标头中,因此增加其大小可能需要移动物理卷上第一个物理盘区的任何用户数据。使用 pvmove 命令可将第一个物理盘区移动到其他位置。
按照新的设置运行带 -r 选项的 vgmodify 检查这些值。
停用卷组。
运行不带 -r 选项的 vgmodify 提交新值。
激活卷组。运行 vgdisplay 命令验证设置是否已应用。
例如,希望向卷组 vg32 中添加更大的磁盘。希望增加每个物理卷的最大物理盘区数 (max_pe) 和最大物理卷数 (max_pv)。以下是相关步骤:
运行 vgmodify 收集有关卷组的信息。
保存以下三个命令的输出:
 |
# vgmodify -o -r vg32
当前卷组设置:
最多 LV 数 255
最多 PV 数 16
每个物理卷的最大物理盘区 1016
物理盘区大小 (MB) 32
VGRA 大小 (KB) 176
新配置要求将“max_pes”从 1016 增加到 6652
当前卷组参数和新卷组参数不同。
需要更新卷组
新卷组设置:
最多 LV 数 255
最多 PV 数 16
每个物理卷的最大物理盘区 6652
物理盘区大小 (MB) 32
VGRA 大小 (KB) 896
审阅完成。卷组未被修改
# vgmodify -v -t vg32
当前卷组设置:
最多 LV 数 255
最多 PV 数 16
每个物理卷的最大物理盘区 1016
物理盘区大小 (MB) 32
VGRA 大小 (KB) 176
盘区正在使用中的物理卷上的 VGRA 空间 (KB):
PV 当前 -n
/dev/rdisk/disk6 896 32768
/dev/rdisk/disk5 896 32768
摘要 896 32768
卷组优化设置(PE 未重新编号):
max_pv(-p) max_pe(-e) 磁盘容量 (Mb)
2 53756 1720193
3 35836 1146753
...
213 296 9473
255 252 8065
# vgmodify -v -n -t vg32
/dev/vg32 的卷组配置已保存在 /etc/lvmconf/vg32.conf 中
当前卷组设置:
最多 LV 数 255
最多 PV 数 16
每个物理卷的最大物理盘区 1016
物理盘区大小 (MB) 32
VGRA 大小 (KB) 176
盘区正在使用中的物理卷上的 VGRA 空间 (KB):
PV 当前 -n
/dev/rdisk/disk6 896 32768
/dev/rdisk/disk5 896 32768
Summary 896 32768
编号为零的物理盘区在所有物理卷上都不是空闲的。无法达到这些值,
直到所有下列磁盘上的第一个盘区空闲为止(请参阅 pvmove(1M)):
/dev/rdisk/disk6
/dev/rdisk/disk5
卷组优化设置(PE 重新编号更低):
max_pv(-p) max_pe(-e) 磁盘容量 (Mb)
61 65535 2097152
62 65532 2097056
...
252 16048 513568
255 15868 507808 |
 |
根据 vgmodify -n -t 的输出,为 max_pv 和 max_pe 分别选择 255 和 15868。
由于新值要求物理盘区 0 可用,请使用 pvmove 将其移动到其他位置:
# pvmove /dev/disk/disk5:0 /dev/disk/disk5
Transferring logical extents of logical volume "/dev/vg32/lvol2"...
Physical volume "/dev/disk/disk5" has been successfully moved.
Volume Group configuration for /dev/vg32 has been saved in
/etc/lvmconf/vg32.conf
# pvmove /dev/disk/disk6:0 /dev/disk/disk6
Transferring logical extents of logical volume "/dev/vg32/lvol1"...
Physical volume "/dev/disk/disk6" has been successfully moved.
Volume Group configuration for /dev/vg32 has been saved in
/etc/lvmconf/vg32.conf |
使用带 -r 选项的 vgmodify 预览更改:
# vgmodify -p 255 -e 15868 -r -n vg32
当前卷组设置:
最多 LV 数 255
最多 PV 数 16
每个物理卷的最大物理盘区 1016
物理盘区大小 (MB) 32
VGRA 大小 (KB) 176
当前卷组参数和新卷组参数不同。
需要更新卷组
新卷组设置:
最多 LV 数 255
最多 PV 数 255
每个物理卷的最大物理盘区 15868
物理盘区大小 (MB) 32
VGRA 大小 (KB) 32640
审阅完成。卷组未被修改 |
停用卷组:
# vgchange -a n vg32
Volume group "vg32" has been successfully changed. |
提交新值:
# vgmodify -p 255 -e 15868 -n vg32
当前卷组设置:
最多 LV 数 255
最多 PV 数 16
每个物理卷的最大物理盘区 1016
物理盘区大小 (MB) 32
VGRA 大小 (KB) 176
当前卷组参数和新卷组参数不同。
需要更新卷组
新卷组设置:
最多 LV 数 255
最多 PV 数 255
每个物理卷的最大物理盘区 15868
物理盘区大小 (MB) 32
VGRA 大小 (KB) 32640
“vg32”的新卷组配置已保存在“/etc/lvmconf/vg32.conf”中
“vg32”的旧卷组配置已保存在“/etc/lvmconf/vg32.conf.old”中
通过写入所有物理卷开始修改
将此配置应用于“/etc/lvmconf/vg32.conf”中的所有物理卷
已完成修改过程。
“vg32”的新卷组配置已保存在“/etc/lvmconf/vg32.conf.old”中
卷组“vg32”已更改成功。 |
激活卷组并验证更改:
# vgchange -a y vg32
Activated volume group
Volume group "vg32" has been successfully changed.
# vgdisplay vg32
--- Volume groups ---
VG Name /dev/vg32
VG Write Access read/write
VG Status available
Max LV 255
Cur LV 0
Open LV 0
Max PV 255
Cur PV 2
Act PV 2
Max PE per PV 15868
VGDA 4
PE Size (Mbytes) 32
Total PE 1084
Alloc PE 0
Free PE 1084
Total PVG 0
Total Spare PVs 0
Total Spare PVs in use 0
VG Version 1.0 |
暂停并恢复使用卷组 |
 |
如果计划使用磁盘管理实用程序创建卷组中所有磁盘的备份映像或“快照”,必须确保在创建快照时 LVM 未对任何磁盘执行写入操作,否则,某些磁盘可能会包含一部分写入的 LVM 元数据或不一致的 LVM 元数据。要保持卷组磁盘映像处于一致状态,必须停用或暂停该卷组。
停用卷组需要关闭卷组中的所有逻辑卷,而这可能具有一定的破坏性。例如,必须卸除使用卷组中的逻辑卷的任何文件系统。然而,通过临时暂停卷组,可以使得在快照操作过程中卷组保持激活状态,并且逻辑卷处于打开状态,从而将对系统的影响降到最低。
可以同时暂停对卷组执行读取和写入操作,也可以仅暂停写入操作。卷组处于暂停状态时,vgdisplay 命令会将卷组访问模式报告为“quiesced”。在卷组恢复使用之前将会始终暂停指定的 I/O 操作,用于修改卷组配置的命令将立即失败。
要暂停卷组,请使用带 -Q 选项的 vgchange 命令,如下所示:
mode 参数可以是 rw 或 w,前者同时阻止读取和写入操作,后者允许读取操作但阻止写入操作。
缺省情况下,在明确恢复使用之前,卷组将一直保持暂停状态。可以使用 -t 选项指定最长暂停时间(以秒为单位)。过了暂停时间,卷组将自动恢复使用。例如,要暂停卷组 vg08(最长 10 分钟,即 600 秒)但允许执行读取操作,请输入以下命令:
# vgchange -Q w -t 600 vg08 |
要恢复使用暂停的卷组,请使用带 -R 选项的 vgchange 命令,如下所示:
重命名卷组 |
 |
要更改卷组的名称,请导出该卷组,然后使用新名称将其导入。有关如何导出和导入卷组的详细信息,请参阅“导出卷组”和“导入卷组”。
要将卷组 vg01 重命名为 vgdb,请执行下列步骤:
停用卷组,如下所示:
如果要为卷组保留相同的次编号,请检查卷组的 group 文件,如下所示:
# ls -l /dev/vg01/group
crw-r--r-- 1 root sys 64 0x010000 Mar 28 2004 /dev/vg01/group |
对于本示例,卷组的主编号为 64,次编号为 0x010000。
导出卷组,如下所示:
# vgexport -m vg01.map vg01 |
如果使用的是 2008 年 3 月之前的 HP-UX 发行版,或者要指定卷组设备文件的次编号,请执行“创建卷组设备文件”中的步骤为卷组的新名称创建设备文件。
由于本示例中的 group 文件的主编号为 64,次编号为 0x010000,因此请输入下列命令:
# mkdir /dev/vgdb
# mknod /dev/vgdb/group c 64 0x010000 |
在其新名称下导入卷组,如下所示:
# vgimport -m vg01.map /dev/vgdb |
备份卷组配置信息,如下所示:
激活卷组,如下所示:
# vgchange -a y /dev/vgdb |
删除已保存的基于旧卷组名的配置信息,如下所示:
# rm /etc/lvmconf/vg01.conf |
在系统上的任何其他文件中更新对旧名称的所有引用。其中包括用于已挂接的文件系统或交换设备的 /etc/fstab,以及来自 vgexport 命令的现有映射文件。
拆分卷组 |
 |
可以使用 vgchgid 将现有卷组拆分为两个或更多卷组,前提是要拆分的物理卷是独立的,也就是说,物理卷上的任何逻辑卷都必须完整地包含在这些物理卷上。例如,在一个可拆分的卷组中,逻辑卷 1、2 和 3 位于物理卷 0 和 1 上,而逻辑卷 4、5 和 6 位于物理卷 2、3、4 和 5 上。
在本示例中,卷组 vgold 包含物理卷 /dev/disk/disk0 至 /dev/disk/disk5。逻辑卷 lvol1、lvol2 和 lvol3 位于物理卷 /dev/disk/disk0 和 /dev/disk/disk1 上,而逻辑卷 lvol4、lvol5 和 lvol6 位于其余的物理卷上。
要将 /dev/disk/disk0 和 /dev/disk/disk1 保留在 vgold 中,而将其余物理卷拆分并组成名为 vgnew 的新卷组,请执行下列步骤:
停用卷组,如下所示:
导出卷组,如下所示:
更改要分配给新卷组的物理卷的 VGID,如下所示:
# vgchgid -f /dev/rdisk/disk2 /dev/rdisk/disk3 \
/dev/rdisk/disk4 /dev/rdisk/disk5 |
如果使用的是 2008 年 3 月之前的 HP-UX 发行版,或者要指定 vgold 组文件的次编号,请执行“创建卷组设备文件”中的步骤创建它。
如果使用的是 2008 年 3 月之前的 HP-UX 发行版,或者要指定 vgnew 组文件的次编号,请执行“创建卷组设备文件”中的步骤创建它。
将物理卷导入旧卷组,如下所示:
# vgimport /dev/vgold /dev/rdisk/disk0 /dev/rdisk/disk1 |
将物理卷导入新卷组,如下所示:
# vgimport /dev/vgnew /dev/rdisk/disk2 /dev/rdisk/disk3 \
/dev/rdisk/disk4 /dev/rdisk/disk5 |
激活卷组。对旧卷组禁用 Quorum 检查(该旧卷组将丢失一半以上的磁盘),如下所示:
# vgchange -a y -q n /dev/vgold
# vgchange -a y /dev/vgnew |
当前在两个卷组中均定义了逻辑卷。从不再包含重复逻辑卷的卷组中删除这些重复的逻辑卷,如下所示:
# lvremove -f vgold/lvol4 vgold/lvol5 vgold/lvol6
# lvremove -f vgnew/lvol1 vgnew/lvol2 vgnew/lvol3 |
当前在两个卷组中均定义了物理卷。从两个卷组中删除丢失的物理卷,如下所示:
# vgreduce -f vgold
# vgreduce -f vgnew |
对旧卷组启用 Quorum 检查,如下所示:
# vgchange -a y -q y /dev/vgold |
完成后,原始卷组将包含三个逻辑卷(lvol1、lvol2 和 lvol3)以及物理卷 /dev/disk/disk0 和 /dev/disk/disk1。新卷组 vgnew 包含三个逻辑卷(lvol4、lvol5 和 lvol6),这些逻辑卷跨越物理卷 /dev/disk/disk2、/dev/disk/disk3、/dev/disk/disk4 和 /dev/disk/disk5。
删除卷组 |
 |
 |
 |  |
 |
 | 提示:导出卷组比删除卷组容易,因为删除卷组需要在运行 vgremove 之前删除卷组中的所有逻辑卷和物理卷。此外,导出卷组不会损坏磁盘上的 LVM 信息,这对以后重新导入卷组很有帮助。有关导出卷组的步骤,请参阅“导出卷组”。 |
 |
 |  |
 |
要删除卷组,请执行下列步骤:
备份所有用户数据。
找到卷组中所有逻辑卷和物理卷的名称。输入以下命令:
确保这些逻辑卷均未使用。这可能需要停止那些使用卷组中任何逻辑卷的应用程序,并卸除卷组中包含的文件系统。
针对每个逻辑卷使用 fuser 命令:
# fuser -cu /dev/vgnn/lvoln |
删除每个逻辑卷,如下所示:
# lvremove /dev/vgnn/lvoln |
有关详细信息,请参阅“删除逻辑卷”。
只保留一个物理卷,删除其余物理卷,如下所示:
# vgreduce /dev/vgnn /dev/disk/diskn |
有关详细信息,请参阅“从卷组删除磁盘”。
使用 vgremove 命令删除卷组,如下所示:
备份镜像逻辑卷 |
 |
 |
 |  |
 |
 | 注释:镜像需要安装可选产品 HP MirrorDisk/UX。 |
 |
 |  |
 |
可以将一个镜像逻辑卷拆分成两个逻辑卷,以便在一个副本联机的时候对脱机副本执行备份。备份完脱机副本后,可以将两个逻辑卷合并回一个。为了使两个副本重新同步,LVM 将基于对使用中的副本所做的更改来更新脱机副本中的物理盘区。
可以使用 HP SMH 来拆分和合并逻辑卷,或者使用 lvsplit 和 lvmerge 命令。
要使用 lvsplit 和 lvmerge 备份包含文件系统的镜像逻辑卷,请执行下列步骤:
将逻辑卷 /dev/vg00/lvol1 拆分为两个单独的逻辑卷,如下所示:
# lvsplit /dev/vg00/lvol1 |
这样就创建了新的逻辑卷 /dev/vg00/lvol1b。原来的逻辑卷 /dev/vg00/lvol1 仍保持联机。
对要备份的逻辑卷执行文件系统一致性检查,如下所示:
挂接文件系统,如下所示:
# mkdir /backup_dir
# mount /dev/vg00/lvol1b /backup_dir |
使用选择的实用程序执行备份。
卸除文件系统,如下所示:
将拆分的逻辑卷与原始逻辑卷重新进行合并,如下所示: