sub:lvm

sub:lvm

Content #

lvextend不会丢数据,lvreduce可能会导致整个磁盘的文件不能用? #

lvm lvextend -L +1G vg_cent2/lv_home
resize2fs /dev/mapper/vg_cent2-lv_home

为根文件系统所在在lv改名 #

如果lvrename更改的logical volume正好是根文件系统,那么,只更新 /etc/fstab是不够的,往往还要改grub的配置,要不然grub将无法加载根文件系统。

扩展根文件系统所在lv容量 #

如果是ext3,内核在2.6及以上,则可在线resize2fs,在线即可扩展。扩展根文件系统,使用所有空闲空间:

lvextend -l +100%FREE /dev/mapper/vg_moodle-lv_root

用resize2fs在线扩展文件系统容量:

resize2fs /dev/mapper/vg_moodle-lv_root

减少根文件系统所在lv容量 #

需要unmount根文件系统,系统启动进入rescue模式,步骤如下:

  • 验证磁盘上的lvm结构的正确性

    pvscan,vgscan,lvscan
    
  • 激活逻辑卷

    lvchange -ay /dev/VolGroup00/LogVol00
    
  • 减少文件系统和逻辑卷的大小

    e2fsck -f /dev/VolGroup00/LogVol00
    resize2fs /dev/VolGroup00/LogVol00 3000M
    lvreduce -L 3000M /dev/VolGroup00/LogVol00
    

    或者先用lvreduce,然后用不跟size参数的resize2fs。尤其要小心size参数指定,如果不对可能会导致文件系统破坏。

  • 验证

    vgdisplay,lvdisplay
    

添加新硬盘 #

vgextend vg0 /dev/sdb
lvcreate -L 10G -i 2 --type striped -n lv_data vg0

查看lv设置的参数

lvs -o lv_name,lv_attr,lv_size,seg_pe_ranges

LVM2 Resource Page http://www.tldp.org/HOWTO/LVM-HOWTO/index.html fsadm命令