LVM管理之减少LV的大小

规定动作
1.umount filesystem
2.e2fsck filesystem
3.resize2fs filesystem
4.lvredure

实例演示————减少/home目录的大小,由40G调整到15G:
1.当前环境的VG,PV,LV的相关信息:
[root@powerpd ~]# vgs
  VG         #PV #LV #SN Attr   VSize   VFree 
  vg_powerpd   1   3   0 wz--n- 278.38g 123.35g
[root@powerpd ~]# pvs
  PV         VG         Fmt  Attr PSize   PFree 
  /dev/sda2  vg_powerpd lvm2 a--  278.38g 123.35g
[root@powerpd ~]# lvs
  LV      VG         Attr   LSize  Origin Snap%  Move Log Copy%  Convert
  lv_home vg_powerpd -wi-ao 40.00g                                     
  lv_root vg_powerpd -wi-ao 50.00g                                     
  lv_swap vg_powerpd -wi-ao 65.03g
 
[root@powerpd ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_powerpd-lv_root
                       50G  4.4G   43G  10% /
tmpfs                  32G  260K   32G   1% /dev/shm
/dev/sda1             485M   37M  423M   8% /boot
/dev/mapper/vg_powerpd-lv_home
                       40G  176M   38G   1% /home

2.umount filesystem
#umount /home

3.e2fsck filesystem
[root@powerpd ~]# e2fsck /dev/vg_powerpd/lv_home
e2fsck 1.41.12 (17-May-2010)
/dev/vg_powerpd/lv_home: clean, 11/2621440 files, 209554/10485760 blocks

4.resize2fs filesystem
[root@powerpd ~]# resize2fs -f /dev/vg_powerpd/lv_home 15g
resize2fs 1.41.12 (17-May-2010)
Resizing the filesystem on /dev/vg_powerpd/lv_home to 3932160 (4k) blocks.
The filesystem on /dev/vg_powerpd/lv_home is now 3932160 blocks long.

5.lvreduce
[root@powerpd ~]# lvreduce -L15g /dev/vg_powerpd/lv_home
  WARNING: Reducing active logical volume to 15.00 GiB
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce lv_home? [y/n]: y
  Reducing logical volume lv_home to 15.00 GiB
  Logical volume lv_home successfully resized
[root@powerpd ~]# lvs
  LV      VG         Attr   LSize  Origin Snap%  Move Log Copy%  Convert
  lv_home vg_powerpd -wi-a- 15.00g                                     
  lv_root vg_powerpd -wi-ao 50.00g                                     
  lv_swap vg_powerpd -wi-ao 65.03g

6.mount filesystem
[root@powerpd ~]# mount /dev/vg_powerpd/lv_home
[root@powerpd ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_powerpd-lv_root
                       50G  4.4G   43G  10% /
tmpfs                  32G  260K   32G   1% /dev/shm
/dev/sda1             485M   37M  423M   8% /boot
/dev/mapper/vg_powerpd-lv_home
                       15G  168M   14G   2% /home

经验总结:
减少文件的大小一定需要按照上面提高的4个规定动作顺序来做,在缩减LV大小前,首先要缩减filesystem的大小,否则将导致文件系统破坏等恶劣影响.

错误操作示例
将/home目录修改为10G大小.
1.umount filesystem
[root@powerpd ~]# umount /home
2.修改lv的大小
[root@powerpd ~]# lvreduce -L10G /dev/vg_powerpd/lv_home
  WARNING: Reducing active logical volume to 10.00 GiB
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce lv_home? [y/n]: y
  Reducing logical volume lv_home to 10.00 GiB
  Logical volume lv_home successfully resized
 
[root@powerpd ~]# lvs
  LV      VG         Attr   LSize  Origin Snap%  Move Log Copy%  Convert
  lv_home vg_powerpd -wi-a- 10.00g                                     
  lv_root vg_powerpd -wi-ao 50.00g                                     
  lv_swap vg_powerpd -wi-ao 65.03g                                     
[root@powerpd ~]# vgs
  VG         #PV #LV #SN Attr   VSize   VFree 
  vg_powerpd   1   3   0 wz--n- 278.38g 153.35g
3.e2fsck filesystem时,会报很多错误
[root@powerpd ~]# e2fsck -f /dev/vg_powerpd/lv_home
e2fsck 1.41.12 (17-May-2010)
The filesystem size (according to the superblock) is 3932160 blocks
The physical size of the device is 2621440 blocks
Either the superblock or the partition table is likely to be corrupt!
Abort? no

Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Error reading block 2621440 (Attempt to read block from filesystem
resulted in short read) while reading inode and block bitmaps.  Ignore
error? no

e2fsck: Can't read an block bitmap while retrying to read bitmaps for /dev/vg_powerpd/lv_home

4.修改文件系统大小
[root@powerpd ~]# resize2fs /dev/vg_powerpd/lv_home
resize2fs 1.41.12 (17-May-2010)
Please run 'e2fsck -f /dev/vg_powerpd/lv_home' first.

[root@powerpd ~]# resize2fs -f /dev/vg_powerpd/lv_home
resize2fs 1.41.12 (17-May-2010)
Resizing the filesystem on /dev/vg_powerpd/lv_home to 2621440 (4k) blocks.
resize2fs: Can't read an block bitmap while trying to resize /dev/vg_powerpd/lv_home
Please run 'e2fsck -fy /dev/vg_powerpd/lv_home' to fix the filesystem
after the aborted resize operation.

操作失败,提示需要先fsck文件系统.
到此文件系统缩减大小失败,补救的方法是将lv修改为改变前的大小.
[root@powerpd ~]# lvextend -L15G /dev/vg_powerpd/lv_home
  Extending logical volume lv_home to 15.00 GiB
  Logical volume lv_home successfully resized
[root@powerpd ~]# mount /home
[root@powerpd ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_powerpd-lv_root
                       50G  4.4G   43G  10% /
tmpfs                  32G  260K   32G   1% /dev/shm
/dev/sda1             485M   37M  423M   8% /boot
/dev/mapper/vg_powerpd-lv_home
                       15G  168M   14G   2% /home

LVM管理之减少LV的大小的更多相关文章

  1. lvm管理:扩展lv、删除pv、lv等

    从卷组VG里扩展lv.删除pv,并删除物理卷PV 一.扩展LV.缩小LV 1.卸载LV 命令:umount  "挂载目录" 2.扩展LV 命令:lvextend -L +500m  ...

  2. lvm管理卷之缩减卷大小

    最近刚刚装好了一个系统,但是因为没有分好区,导致home分区过大,所以想把home分区的一大半移动到根分区里面. 1.先说一下我的环境. 安装的是centos6版本的系统,使用的默认文件系统是ext4 ...

  3. Linux学习心得之 LVM管理与Linux系统安装

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 LVM管理与Linux系统安装 1.前言 2.LVM 简介与术语 3.LVM 使用 4.Li ...

  4. centos7中使用LVM管理磁盘和挂载磁盘

    centos7使用LVM管理一块新的磁盘 注意!文中凡是带#的都是命令标志. 一些重要概念: LV(Logical Volume)- 逻辑卷, VG(Volumne Group)- 卷组, PV(Ph ...

  5. linux lvm管理基础教程

    linux lvm管理基础教程 本人是在redhat7.x系统上亲测lvm管理功能,至于文中所受的CentOS 6 没有亲自试过. 本文来自:https://geekpeek.net/lvm-phys ...

  6. Linux下使用LVM管理(扩展/缩小/删除)

    LVM的工作原理 LVM( Logical Volume Manager)逻辑卷管理,是在磁盘分区和文件系统之间添加的一个逻辑层,来为文件系统屏蔽下层磁盘分区布局,提供一个抽象的盘卷,在盘卷上建立文件 ...

  7. Linux LVM学习总结——放大LV容量

    本篇介绍LVM管理中的命令lvresize,我们先创建一个卷组VG VolGroup02,它建立在磁盘/dev/sdc (大小为8G)上.创建逻辑卷LV时,我们故意只使用了一小部分.具体情况如下所示 ...

  8. LVM管理及扩容(转)

    LVM磁盘管理 一、LVM简介... 1 二、 LVM基本术语... 2 三、 安装LVM... 3 四、 创建和管理LVM... 4 2、 创建PV.. 6 3、 创建VG.. 7 4、 创建LV. ...

  9. Redhat 平台下 LVM 管理说明

    Redhat 平台下  LVM 管理说明 LVM 是 Logical Volume Manager(逻辑卷管理器)的简写,它为主机提供了更高层次的磁盘存储管理能力.LVM 可以帮助系统管理员为应用与用 ...

随机推荐

  1. ECC加密算法入门介绍 --- 看雪

    标 题:ECC加密算法入门介绍 作 者:zmworm 时 间:2003/05/04 08:32pm 链 接:http://bbs.pediy.com ECC加密算法入门介绍 作者  :ZMWorm[C ...

  2. PHP--php时间差8个小时的问题

    自PHP5.0开始,用PHP获取系统时间时,时间比当前时间少8个小时.原因是PHP.ini中没有设置timezone时,PHP是使用的UTC时间,所以在中国时间要少8小时. 解决办法: 1.在PHP. ...

  3. TIMESTAMPDIFF用法

    TIMESTAMPDIFF用法: TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2) 返回日期或日期时间表达式datetime_expr1 和d ...

  4. Go语言环境安装&搭建(Win)

    Go语言简介 什么是Go语言 Go语言是谷歌2009发布的第二款开源编程语言. Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全.支持 ...

  5. 安装elasticsearch 5.x, 6.x 常见问题(坑)的解决

    本人在elasticsearch 5.x, 6.x 安装过程中遇到了一些问题: 警告提示 [2016-11-06T16:27:21,712][WARN ][o.e.b.JNANatives ] una ...

  6. linux学习之软件包安装

    本学习基于redhat系统或者centos系统 一.软件包的安装 1.rpm安装,rpm安装分为俩种,一种是直接安装xxx.rpm包,另一种是通过yum安装一系列的rpm包. #推荐使用yum安装,y ...

  7. 牛客网 python 求解立方根

    •计算一个数字的立方根,不使用库函数 详细描述: •接口说明 原型: public static double getCubeRoot(double input) 输入:double 待求解参数 返回 ...

  8. 修改html中button显示的文字

    1. <input type="button">  实现密码输入框的可见和隐藏 直接修改value属性即可 <script type="text/jav ...

  9. Modbus库开发笔记之一:实现功能的基本设计

    Modbus作为开放式的工业通讯协议,在各种工业设备中应用极其广泛.本人也使用Modbus通讯很多年了,或者用现成的,或者针对具体应用开发,一直以来都想要开发一个比较通用的协议栈能在后续的项目中复用, ...

  10. java多线程快速入门(十九)

    如何停止线程 1.使用stop方法强行终止线程(这个方法不推荐使用,可能会出现业务操作未执行完,线程中断了) package com.cppdy; class MyThread15 extends T ...