您的位置:首页 > 运维架构 > Linux

linux缩小lv发生文件系统错误

2012-02-29 15:26 197 查看
众所周知,linux lvm 扩大lv是先扩大lv,然后再扩大文件系统,所以有的人就认为缩小lv也是先缩小lv,再缩小文件系统,当然博主刚开始也那么认为,导致lvresize 以后,lv的大小小于文件系统大小而无法挂载,以下分享下解决办法。

案例:

缩小/opt from 8.46G to 4G.

HostA:~ # lvresize -L 4G /dev/vg00/lv_opt

WARNING: Reducing active logical volume to 4.00 GB

THIS MAY DESTROY YOUR DATA (filesystem etc.)

Do you really want to reduce lv_opt? [y/n]: y

Reducing logical volume lv_opt to 4.00 GB

Logical volume lv_opt successfully resized

HostA:~ # lvs

lv_opt vg00 -wi-a- 4.00G

HostA:~ # e2fsck -f /dev/vg00/lv_opt

e2fsck 1.41.9 (22-Aug-2009)

Error reading block 1049100 (Invalid argument). Ignore error<y>? no

Error reading block 1050125 (Invalid argument). Ignore error<y>? no

Error reading block 1049100 (Invalid argument). Ignore error<y>? no

Error reading block 1050125 (Invalid argument). Ignore error<y>? no

Superblock has an invalid journal (inode 8).

Clear<y>? yes

*** ext3 journal has been deleted - filesystem is now ext2 only ***

The filesystem size (according to the superblock) is 2217984 blocks

The physical size of the device is 1048576 blocks

Either the superblock or the partition table is likely to be corrupt!

Abort<y>? no

Pass 1: Checking inodes, blocks, and sizes

Journal inode is not in use, but contains data. Clear<y>? yes

Error reading block 1048578 (Invalid argument) while getting next inode from scan. Ignore error<y>? yes

HostA:~ # resize2fs /dev/vg00/lv_opt

resize2fs 1.41.9 (22-Aug-2009)

Please run 'e2fsck -f /dev/vg00/lv_opt' first.

会发生以上文件系统大于lv大小导致无法通过e2fsck

网上找了很多方法如何修复系统,其实方法很简单,只要先把lv扩大至原来大小,再重新用正确的方法缩小lv即可

HostA:~ # lvresize -L 8.46G /dev/vg00/lv_opt

HostA:~ # e2fsck -f /dev/vg00/lv_opt

e2fsck 1.41.9 (22-Aug-2009)

Pass 1: Checking inodes, blocks, and sizes

Inode 8, i_blocks is 0, should be 262408. Fix<y>? yes

Pass 2: Checking directory structure

Pass 3: Checking directory connectivity

Pass 4: Checking reference counts

Pass 5: Checking group summary information

/dev/vg00/lv_opt: ***** FILE SYSTEM WAS MODIFIED *****

/dev/vg00/lv_opt: 12703/554880 files (0.3% non-contiguous), 246796/2217984 blocks

HostA:~ # resize2fs /dev/vg00/lv_opt 4G

resize2fs 1.41.9 (22-Aug-2009)

Resizing the filesystem on /dev/vg00/lv_opt to 1048576 (4k) blocks.

The filesystem on /dev/vg00/lv_opt is now 1048576 blocks long.

HostA:~ # lvresize -L 4G /dev/vg00/lv_opt

WARNING: Reducing active logical volume to 4.00 GB

THIS MAY DESTROY YOUR DATA (filesystem etc.)

Do you really want to reduce lv_opt? [y/n]: y

Reducing logical volume lv_opt to 4.00 GB

Logical volume lv_opt successfully resized

HostA:~ # mount /opt/

HostA:~ # df -h /opt/

Filesystem Size Used Avail Use% Mounted on

/dev/mapper/vg00-lv_opt

4.0G 826M 3.0G 22% /opt

HostA:~ #

本文出自 “天涯第一号” 博客,请务必保留此出处http://loofeer.blog.51cto.com/707932/792739
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐