「lvresize(8)」-

  LINUX MANUAL PAGES

调整LV的大校

命令语法格式

lvresize option_args position_args

[ option_args ]

[ position_args ]

–alloc contiguous|cling|cling_by_tags|normal|anywhere|inherit
-A|–autobackup y|n
–commandprofile String

–config String
-d|–debug
–driverloaded y|n
-l|–extents [+|-]Number[PERCENT]

-f|–force

-h|–help
–longhelp
-n|–nofsck
–nosync

–noudevsync

–poolmetadatasize [+]Size[m|UNIT]

–profile String
-q|–quiet
–reportformat basic|json
-r|–resizefs

-L|–size [+|-]Size[m|UNIT]

-i|–stripes Number

-I|–stripesize Size[k|UNIT]

-t|–test
–type linear|striped|snapshot|mirror|raid|thin|cache|thin-pool|cache-pool
-v|–verbose
–version
-y|–yes

使用指定大小来调整LV的大小

lvresize -L|–size [+|-]Size[m|UNIT] LV
[ -l|–extents [+|-]Number[PERCENT] ]

[ -r|–resizefs ]

[ –poolmetadatasize [+]Size[m|UNIT] ]

[ COMMON_OPTIONS ]

[ PV … ]

使用指定PV来调整LV大小

lvresize LV PV …
[ -r|–resizefs ]

[ COMMON_OPTIONS ]

使用指定大小来调整池元数据SubLV的大小

lvresize –poolmetadatasize [+]Size[m|UNIT] LV_thinpool
[ COMMON_OPTIONS ]

[ PV … ]

命令的通用选项

[ -A|–autobackup y|n ]

[ -f|–force ]

[ -n|–nofsck ]

[ -i|–stripes Number ]

[ -I|–stripesize Size[k|UNIT] ]

[ –alloc contiguous|cling|cling_by_tags|normal|anywhere|inherit ]

[ –nosync ]

[ –noudevsync ]

[ –reportformat basic|json ]

[ –type linear|striped|snapshot|mirror|raid|thin|cache|thin-pool|cache-pool ]

命令描述

命令lvresize调整LV的大小,以与lvextend和lvreduce相同的方式。 有关更多信息,请参阅lvextend(8)和lvreduce(8)。

在下面的使用部分中,–size Size可以替换为–extents Number。 请参阅选项部分的两个说明。

命令支持的选项及含义

–alloc contiguous|cling|cling_by_tags|normal|anywhere|inherit
当命令需要从VG分配PE时,确定分配策略。 每个VG和LV都有一个分配策略,可以使用vgchange/lvchange进行更改,也可以在命令行上覆盖。

  • normal适用共同规则,例如不在同一PV上放置平行条带。
  • inherit将VG策略应用于LV。
  • contiguous要求将新PE放置在现有PE附近。
  • cling将新PE放在”与LV相同条带中的现有PE相同“的PV上。
  • 如果有足够的PE用于分配,但是正常不使用它们,即使它降低了性能,anywhere都会使用它们,例如,在同一个PV上放置两个条纹。

命令行上的可选位置PV参数也可用于限制命令将用于分配的PV。 有关分配的更多信息,请参阅lvm(8)。

-A|–autobackup y|n
指定更改后是否应自动备份元数据。 强烈建议启用此功能! 有关更多信息,请参见vgcfgbackup(8)。

-l|–extents [+|-]Number[PERCENT]
指定LE中LV的新大小。 –size和–extents选项是指定大小的替代方法。

当RAID级别需要冗余数据时,使用的PE总数将更大。替代语法允许间接确定大小,通过使用相关VG,LV或PV集的大小的百分比。后缀%VG表示VG的总大小;后缀%FREE表示VG中剩余的可用空间;后缀%PVS表示指定PV中的可用空间。对于快照,大小可以表示为原始LV的总大小的百分比,后缀为%ORIGIN(100%ORIGIN为整个原点提供空间)。当以百分比表示时,大小定义了新LV中逻辑盘区数的上限。在命令完成之前,不确定新LV中的精确LE数。

使用加号(+)或减号(-)前缀时,该值不是绝对大小,而是相对的,并从当前大小中加上或减去。

-f|–force …
覆盖各种检查,确认和保护。 使用时要格外小心。

-n|–nofsck
在文件系统要求调整文件系统大小时,请不要执行fsck。 您可能需要使用–force继续此选项。

–nosync
导致创建mirror,raid1,raid4,raid5,raid10以跳过初始同步。 对于mirror,raid1,raid10,之后写入的任何数据都将被镜像,但不会复制原始内容。 在raid4和raid5的情况下,不会写入奇偶校验块,但之后写入的任何数据都将导致存储奇偶校验块。 这对于跳过空mirror/raid1/raid4/raid5和raid10 LV的潜在长且资源密集的初始同步非常有用。 此选项对raid6无效,因为raid6依赖于在初始同步期间创建的正确奇偶校验(P和Q Syndromes),以便在设备出现故障时重建正确的用户日期。 raid0和raid0_meta不提供任何数据副本或奇偶校验支持,因此不支持初始同步。

–noudevsync
禁用udev同步。 该进程不会等待来自udev的通知。 无论后台有任何可能的udev进程,它都将继续。 仅在udev未运行或具有忽略LVM创建的设备的规则时才使用此选项。

–poolmetadatasize [+]Size[m|UNIT]
指定池元数据LV的新大小。 可以使用加号前缀加号(+),在这种情况下,将值添加到当前大小。

–reportformat basic|json
覆盖报告的当前输出格式,该格式由lvm.conf中的report/output_format设置全局定义。basic是包含列和行的原始格式。 如果每个命令有多个报告,则每个报告都以报告名称为前缀进行标识。 json以JSON格式生成报告输出。 有关更多信息,请参阅lvmreport(7)。

-r|–resizefs
使用fsadm(8)来一起调整基础文件系统与LV大小。

-L|–size [+|-]Size[m|UNIT]
指定LV的新大小。选项–size和–extents是指定大小的替代方法。 当RAID级别需要冗余数据时,使用的PE总数将更大。 使用加号(+)或减号(-)前缀时,该值不是绝对大小,而是相对的,并从当前大小中加上或减去。

-i|–stripes Number
指定条带LV中的条带数。 这是条带LV分布的PV(设备)数量。 在LV中按顺序出现的数据以条带大小为单位分布在多个设备上(请参阅–stripesize)。 这不会更改现有的已分配空间,但仅适用于命令分配的空间。创建RAID 4/5/6 LV时,此数字不包括奇偶校验所需的额外设备。 最大的数量取决于RAID类型(raid0:64,raid10:32,raid4/5:63,raid6:62),未指定时,默认值取决于RAID类型(raid0:2,raid10:2,raid4/5:3,raid6:5。)默认情况下,要在所有PV中划分新的raid LV,请参阅lvm.conf allocation/raid_stripe_all_devices。

-I|–stripesize Size[k|UNIT]
在条带化LV中移动到下一个设备之前写入一个设备的数据量。

–type linear|striped|snapshot|mirror|raid|thin|cache|thin-pool|cache-pool
LV类型,也称为“segment type”或“segtype”。 有关使用这些类型的具体方法,请参阅用法说明。 有关冗余和性能的更多信息(raid<N>, mirror, striped, linear),请参阅lvmraid(7)。 对于精简配置(thin, thin-pool),请参阅lvmthin(7)。 对于性能缓存(cache, cache-pool),请参阅lvmcache(7)。 对于写时复制快照(snapshot),请参阅使用定义。 有几个命令省略了显式类型选项,因为类型是从其他选项或快捷方式推断出来的(例如–stripes,–mirrors,–snapshot,–virtualsize,–first,–cache)。 小心使用推断类型,因为它可能导致意外结果。

用于lvm的公共选项

-y|–yes
不要以交互方式提示确认,但总是假设答案是肯定的。 使用时要格外小心。 (对于自动no,请参阅-qq。)

-v|–verbose …
设置详细级别。 重复1到4次以增加发送到标准输出和标准错误的消息的详细信息。

-t|–test
在测试模式下运行。 命令不会更新元数据。 这是通过禁用所有元数据写入,但仍然将成功返回到调用函数来实现的。 如果工具依赖于读回它认为已更改但尚未更改的元数据,则可能会在多阶段操作中导致异常错误消息。

-q|–quiet …
抑制输出和日志消息。 覆盖–debug和–verbose。 重复一次也可以通过回答“no”来抑制任何提示。

-h|–help
显示帮助信息。

-d|–debug …
设置调试级别。 重复1到6次以增加发送到日志文件和/或syslog(如果已配置)的消息的详细信息。

–version
显示版本信息并退出。

–profile String
选项–commandprofile或–metadataprofile的别名,具体取决于命令。

–longhelp
显示长帮助文本。

–driverloaded y|n
如果设置为no,则该命令不会尝试使用device-mapper。 用于测试和调试。

–config String
配置命令的设置。 这些覆盖lvm.conf设置。参数String使用与lvm.conf相同的格式,或者可以使用section/field语法。 有关config的更多信息,请参阅lvm.conf(5)。

–commandprofile String
用于命令配置的命令配置文件。 有关配置文件的更多信息,请参阅lvm.conf(5)。

命令行参数

LV
逻辑卷名称。 有效名称请参见lvm(8)。 LV位置参数通常包括VG名和LV名,例如,VG/LV。

PV
物理卷名称,在/dev下的设备路径。 对于管理PE的命令,PV位置参数通常接受指示物理范围(PE)的范围(或多个范围)的后缀。 省略第一个PE时,默认为设备的起始位置,省略最后一个PE时,默认为结束。

开始和结束范围(包括在内):PV[:PE-PE]…
开始和长度范围(从0开始计算):PV [:PE+PE]…

String
有关String的内容的信息,请参阅选项说明。

Size[UNIT]
参数Size是接受可选单位UNIT的输入数字。 无论大小写如何,输入单位UNIT始终被视为基数两个值,例如 ‘k’和’K’都指1024。默认输入单位由字母指定,后跟|UNIT。

参数UNIT代表其他可能的输入单位:bBsSkKmMgGtTpPeE。 b|B是字节,s|S是512字节的扇区,k|K是千字节,m|M是兆字节,g|G是千兆字节,t|T是太字节,p|P是petabytes,e|E是exabytes。 (这不应该与输出控制–units混淆,大写字母表示1000的倍数。)

相关环境变量

有关lvm使用的环境变量的信息,请参阅lvm(8)。 例如,LVM_VG_NAME通常可以替换所需的VG参数。

使用示例

使用特定的PE来将LV扩展16MB:

# lvresize -L+16M vg1/lv1 /dev/sda:0-1 /dev/sdb:0-1

相关手册

lvm(8) lvm.conf(5) lvmconfig(8)

pvchange(8) pvck(8) pvcreate(8) pvdisplay(8) pvmove(8) pvremove(8) pvresize(8) pvs(8) pvscan(8)

vgcfgbackup(8) vgcfgrestore(8) vgchange(8) vgck(8) vgcreate(8) vgconvert(8) vgdisplay(8) vgexport(8) vgextend(8) vgimport(8) vgimportclone(8) vgmerge(8) vgmknodes(8) vgreduce(8) vgremove(8) vgrename(8) vgs(8) vgscan(8) vgsplit(8)

lvcreate(8) lvchange(8) lvconvert(8) lvdisplay(8) lvextend(8) lvreduce(8) lvremove(8) lvrename(8) lvresize(8) lvs(8) lvscan(8)

lvm-fullreport(8) lvm-lvpoll(8) lvm2-activation-generator(8) blkdeactivate(8) lvmdump(8)

dmeventd(8) lvmetad(8) lvmpolld(8) lvmlockd(8) lvmlockctl(8) clvmd(8) cmirrord(8) lvmdbusd(8)

lvmsystemid(7) lvmreport(7) lvmraid(7) lvmthin(7) lvmcache(7)

参考文献

  • man 8 lvresize, Version 2.02.176-4.1

更新日志

  • 12/05/2018 创建文章