原文鏈接:http://blog.51cto.com/woyaoxuelinux/1870299
resize2fs:調整ext文件系統的空間大小
搭配邏輯卷lv使用方法:resize2fs /PATH/TO/LV_NAME 3G 調整LV的邏輯邊界大小為3G
一、擴展邏輯卷lv:(必須先擴展邏輯卷的物理邊界,再擴展邏輯邊界)
lvextend 擴展邏輯卷的物理邊界
-L [+]# /PATH/TO/LV_NAME 指定擴展后的容量,+表示在目前容量上直接增加#容量
不用+表示,擴展后的容量為#
Usag: lvextend -L +5G /PATH/TO/LV_NAME 表示LV在現有的容量上再增加5G容量
lvextend -L 5G /PATH/TO/LV_NAME 表示擴展后的LV總大小為5G容量
resize2fs 擴展邏輯卷的邏輯邊界
resize2fs /PATH/TO/LV 5G 擴展邏輯邊界到5G,該值不能超過物理邊界
resize2fs -p /PATH/TO/LV :-p表示擴展邏輯邊界跟物理邊界一樣大。
二、縮減邏輯卷lv:(必須先縮減邏輯卷的邏輯邊界,再縮減物理邊界)
注意:1、不能在線縮減,得先卸載;
2、確保縮減后的空間大小依然能存儲原有的所有數據;
3、在縮減之前應該先強行檢查文件,以確保文件系統處於一致性狀態。
縮減步驟:
1、先查看已經使用的lv大小,以便保證縮減后的容量大小能夠容納現有的數據。
df -lh 查看容量大小
[root@xuelinux ~]# df -lh
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 4.9G 1.5G 3.1G 33% /
tmpfs 947M 0 947M 0% /dev/shm
/dev/sda1 2.0G 61M 1.8G 4% /boot
/dev/sda3 3.9G 73M 3.6G 2% /home
/dev/sda7 2.0G 35M 1.8G 2% /tmp
/dev/sda5 2.9G 1.7G 1.2G 59% /usr
/dev/mapper/myvg-testlv 3.0G 4.5M 2.8G 1% /mnt 此選項表示lv目前只使用了4.5M
2、必須先卸載掛載,不能在線縮減。
umount /mnt 卸載掛載的lv
[root@xuelinux ~]# umount /mnt 卸載掛載的lv
[root@xuelinux ~]# mount 查看掛載的lv是否卸載成功
/dev/sda2 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda1 on /boot type ext4 (rw)
/dev/sda3 on /home type ext4 (rw)
/dev/sda7 on /tmp type ext4 (rw)
/dev/sda5 on /usr type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
3、強行對lv執行文件系統檢測
e2fsck -f /dev/myvg/testlv 對lv強制執行文件系統檢測
[root@xuelinux ~]# e2fsck -f /dev/myvg/testlv 對lv強制執行文件系統檢測
e2fsck 1.41.12 (17-May-2010)
第一步: 檢查inode,塊,和大小
第二步: 檢查目錄結構
第3步: 檢查目錄連接性
Pass 4: Checking reference counts
第5步: 檢查簇概要信息
/dev/myvg/testlv: 11/196608 files (0.0% non-contiguous), 13500/786432 blocks
4、使用resize2fs對lv邏輯卷的邏輯邊界空間大小調整為縮減后的大小
resize2fs /dev/myvg/testlv 2G 對lv邏輯卷的邏輯邊界空間大小調整為2G
[root@xuelinux ~]# resize2fs /dev/myvg/testlv 2G 調整邏輯卷的邏輯邊界大小為2G
resize2fs 1.41.12 (17-May-2010)
Resizing the filesystem on /dev/myvg/testlv to 524288 (4k) blocks.
The filesystem on /dev/myvg/testlv is now 524288 blocks long.
5、使用lvreduce對lv邏輯卷的物理邊界進行縮減
lvreduce -L 2G /dev/myvg/testlv 對邏輯卷的物理邊界縮減為2G
[root@xuelinux ~]# lvreduce -L 2G /dev/myvg/testlv 對邏輯卷的物理邊界縮減為2G
WARNING: Reducing active logical volume to 2.00 GiB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce testlv? [y/n]: y
Reducing logical volume testlv to 2.00 GiB
Logical volume testlv successfully resized
6、然后繼續對lv進行掛載操作
mount /dev/myvg/lv /mnt 掛載lv邏輯卷
[root@xuelinux ~]# mount /dev/myvg/testlv /mnt 掛載lv邏輯卷
[root@xuelinux ~]# df -lh 查看已經掛載的分區信息
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 4.9G 1.5G 3.1G 33% /
tmpfs 947M 0 947M 0% /dev/shm
/dev/sda1 2.0G 61M 1.8G 4% /boot
/dev/sda3 3.9G 73M 3.6G 2% /home
/dev/sda7 2.0G 35M 1.8G 2% /tmp
/dev/sda5 2.9G 1.7G 1.2G 59% /usr
/dev/mapper/myvg-testlv 2.0G 4.5M 1.9G 1% /mnt 此處lv邏輯卷縮減為2G
三、快照卷
1、生命周期為整個數據時長,在這段時間內,數據的增長量不能超出快照卷大小(即創建快照卷所指定的容量大小-L指定的大小);
2、快照卷應該是只讀的;
3、快照卷必須跟原卷在同一卷組內;
lvcreate
-s:表示創建快照卷 snapshot快照
-p r|w :指定快照卷權限 r為只讀 w為寫
格式:lvcreate -L # -n SLV_NAME -s -p r /dev/myvg/testlv
Usage: lvcreate -L 1G -n testlv-snap -s -p r /dev/myvg/testlv
對/dev/myvg/testlv 邏輯卷創建一個1G的只讀快照卷,名稱為testlv-snap
[root@xuelinux ~]# lvcreate -L 1G -n testlv-snap -s -p r /dev/myvg/testlv
Logical volume "testlv-snap" created
掛載該snap設備
[root@xuelinux ~]# mount /dev/myvg/testlv-snap /user
mount: block device /dev/mapper/myvg-testlv--snap is write-protected, mounting read-only
然后對該snap掛載目錄里面的文檔進行備份即可,如遇到被刪除可以直接從snap中恢復。