您的位置:首页 > 其它

增加和减小LV的容量以及创建快照卷

2014-07-17 18:58 246 查看
1. 扩大LV的容量
扩大lv的容量不需要将文件系统卸载。
步骤如下:
A.使用fdisk设定具有8e system id的分区
B.利用pvcreate创建pv
C.利用vgextend将pv加入到vg里面扩容vg
D.利用lvresize将新加入的pv的pe加入到lv里面
E.通过resize2fs使文件系统的容量增加。

示例:
步骤1:将lv-01挂载到/backup目录下,并复制/etc/services到该文件系统中。
[root@Server3 ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2             9.9G  7.8G  1.6G  83% /
tmpfs                 245M     0  245M   0% /dev/shm
/dev/sda1             194M   28M  156M  16% /boot
/dev/mapper/DATA_01-lv--01
155M  5.6M  142M   4% /backup
[root@Server3 ~]# lvs
LV    VG      Attr     LSize   Pool Origin Data%  Move Log Copy%  Convert
lv-01 DATA_01 -wi-ao-- 160.00m
[root@Server3 ~]# cp /etc/services /backup/
[root@Server3 ~]# ls -l /backup/
total 638
drwx------ 2 root root  12288 Jul 17 02:10 lost+found
-rw-r--r-- 1 root root 641020 Jul 17 02:11 services
[root@Server3 ~]#


步骤2: 查看VG的容量
[root@Server3 ~]# vgdisplay
--- Volume group ---
VG Name               DATA_01
System ID
Format                lvm2
Metadata Areas        2
Metadata Sequence No  17
VG Access             read/write
VG Status             resizable
MAX LV                0
Cur LV                1
Open LV               1
Max PV                0
Cur PV                2
Act PV                2
VG Size               2.00 GiB
PE Size               32.00 MiB
Total PE              64
Alloc PE / Size       5 / 160.00 MiB
Free  PE / Size       59 / 1.84 GiB
VG UUID               tEVjly-icsW-Jin7-1Bmn-xil1-LvpP-3PQI5C

[root@Server3 ~]# vgs
VG      #PV #LV #SN Attr   VSize VFree
DATA_01   2   1   0 wz--n- 2.00g 1.84g
[root@Server3 ~]#
说明:
当前VG中还剩余1.84g的容量,如果没有多余的空间的话,需要使用pvcreate创建PV,并使用vgextend将PV加入到VG中去。

步骤3:扩容LV,这里将其扩容到500M左右
说明:这里讲采用增加PE的数量增加LV,在我的系统中,PE的大小为32M,原来的LV的大小为160M,如果要增加到500M的话,需要增加340M,340/32=10.625,这里增加11个PE。
具体操作:
[root@Server3 ~]# lvresize -l +11 /dev/DATA_01/lv-01
Extending logical volume lv-01 to 512.00 MiB
Logical volume lv-01 successfully resized
[root@Server3 ~]# lvs
LV    VG      Attr     LSize   Pool Origin Data%  Move Log Copy%  Convert
lv-01 DATA_01 -wi-ao-- 512.00m
[root@Server3 ~]#


查看文件系统的容量:
[root@Server3 ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2             9.9G  7.8G  1.6G  83% /
tmpfs                 245M     0  245M   0% /dev/shm
/dev/sda1             194M   28M  156M  16% /boot
/dev/mapper/DATA_01-lv--01
155M  6.2M  141M   5% /backup
[root@Server3 ~]#
说明:文件系统的容量依然没有增加

步骤4:增加文件系统的容量。
指令:resize2fs /dev/vgname/lvname
[root@Server3 ~]# resize2fs /dev/DATA_01/lv-01
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/DATA_01/lv-01 is mounted on /backup; on-line resizing required
old desc_blocks = 1, new_desc_blocks = 2
Performing an on-line resize of /dev/DATA_01/lv-01 to 524288 (1k) blocks.
The filesystem on /dev/DATA_01/lv-01 is now 524288 blocks long.
[root@Server3 ~]#


查看文件系统的容量:
[root@Server3 ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2             9.9G  7.8G  1.6G  83% /
tmpfs                 245M     0  245M   0% /dev/shm
/dev/sda1             194M   28M  156M  16% /boot
/dev/mapper/DATA_01-lv--01
496M  6.9M  464M   2% /backup
[root@Server3 ~]#
说明:文件系统的容量已经增加。

查看文件系统中的内容是否已经丢失:
[root@Server3 ~]# ls -l /backup/
total 638
drwx------ 2 root root  12288 Jul 17 02:10 lost+found
-rw-r--r-- 1 root root 641020 Jul 17 02:11 services
[root@Server3 ~]#
文件还在……

2. 减小LV的容量
如果要减小lv的容量做好能用图形化界面来做,如果不能使用图形化界面的话,需要严格的按照如下步骤进行,否则可能会损坏文件系统,图形化的LVM软件包为:system-config-lvm
步骤(必须严格执行):
A.对要减小容量的文件系统卸载。根文件系统是无法卸载的。
B.使用e2fsck –f检查lv的文件系统
C.使用resize2fs减小文件系统的大小。
resize2fs /dev/vg-name/lv-name <减小之后的大小>
D.减小LV的大小。lvreduce或lvresize这一步最好用PE的数量。

示例:
步骤1:先卸载文件系统
[root@Server3 ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2             9.9G  7.8G  1.6G  83% /
tmpfs                 245M     0  245M   0% /dev/shm
/dev/sda1             194M   28M  156M  16% /boot
/dev/mapper/DATA_01-lv--01
496M  6.9M  464M   2% /backup
[root@Server3 ~]# umount /backup/
[root@Server3 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 9.9G 7.8G 1.6G 83% /
tmpfs 245M 0 245M 0% /dev/shm
/dev/sda1 194M 28M 156M 16% /boot
[root@Server3 ~]#


步骤2:检查文件系统
[root@Server3 ~]# e2fsck -f /dev/DATA_01/lv-01
e2fsck 1.41.12 (17-May-2010)
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
/dev/DATA_01/lv-01: 12/131072 files (0.0% non-contiguous), 23571/524288 blocks
[root@Server3 ~]#


步骤3:使用resize2fs减小文件系统的大小
说明:这里减小到50M
[root@Server3 ~]# resize2fs /dev/DATA_01/lv-01 50M
resize2fs 1.41.12 (17-May-2010)
Resizing the filesystem on /dev/DATA_01/lv-01 to 51200 (1k) blocks.
The filesystem on /dev/DATA_01/lv-01 is now 51200 blocks long.
[root@Server3 ~]#


步骤4:减小LV的大小
说明:LV原先的大小是512M,现在减小到50M,减小了512-50=462M。
[root@Server3 ~]# lvresize -L -462M /dev/DATA_01/lv-01
Rounding size to boundary between physical extents: 448.00 MiB
WARNING: Reducing active logical volume to 64.00 MiB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce lv-01? [y/n]: y
Reducing logical volume lv-01 to 64.00 MiB
Logical volume lv-01 successfully resized
[root@Server3 ~]# lvs
LV    VG      Attr     LSize  Pool Origin Data%  Move Log Copy%  Convert
lv-01 DATA_01 -wi-a--- 64.00m
[root@Server3 ~]#


步骤5:挂载测试数据是否还在
[root@Server3 ~]# mount /dev/DATA_01/lv-01 /backup/
[root@Server3 ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2             9.9G  7.8G  1.6G  83% /
tmpfs                 245M     0  245M   0% /dev/shm
/dev/sda1             194M   28M  156M  16% /boot
/dev/mapper/DATA_01-lv--01
49M  5.7M   41M  13% /backup
[root@Server3 ~]# ll /backup/
total 638
drwx------ 2 root root  12288 Jul 17 02:10 lost+found
-rw-r--r-- 1 root root 641020 Jul 17 02:11 services
[root@Server3 ~]#
数据还在……

3. 快照卷
快照可以保留改变数据前那一刻的数据,可以作为访问原数据中的另一个通道,快照卷不应该允许用户修改,应该创建为只读(-p r)的方式,如果要创建为读写的方式,可以指定-p w选项,创建快照为-s选项。
1. 快照卷的生命周期为整个数据时长,在该数据时长内,数据增长量不能超出快照卷的大小,如果超过的话,则快照卷会自我损毁。最安全的做法是快照卷和原卷一样大。
2. 快照卷为只读的。

创建快照:
指令:lvcreate -L 50M -n lv-snapshot -s -p r /dev/vgname/lvname
示例:
[root@Server3 backup]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2             9.9G  7.8G  1.6G  83% /
tmpfs                 245M     0  245M   0% /dev/shm
/dev/sda1             194M   28M  156M  16% /boot
/dev/mapper/DATA_01-lv--01
49M  5.7M   41M  13% /backup
[root@Server3 backup]# lvcreate -L 50M -n lv-01-snap -p r /dev/DATA_01/lv-01
Volume group name expected (no slash)
Run `lvcreate --help' for more information.
[root@Server3 backup]# lvcreate -L 50M -n lv-01-snap -s -p r /dev/DATA_01/lv-01
Rounding up size to full physical extent 64.00 MiB
Logical volume "lv-01-snap" created
[root@Server3 backup]# lvs
LV         VG      Attr     LSize  Pool Origin Data%  Move Log Copy%  Convert
lv-01      DATA_01 owi-aos- 64.00m
lv-01-snap DATA_01 sri-a-s- 64.00m      lv-01    0.02
[root@Server3 backup]#


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