lvm的設置
原理:
LVM:logical volume manager(邏輯卷管理)
LVM可以隨意拉伸和縮小,SCSI的硬盤最多隻能夠分15個區,如果需要更多的分區,怎麼辦呢,如果分區在規劃的時候分小了或者大了,怎麼辦呢,而LVM很好的就解決了這些問題。
下面開始進行LVM邏輯卷創建的討論
從上面這個圖可以看到,創建邏輯卷的步驟:
Linux分區----------物理卷-----------卷組-----------邏輯卷
1,首先:新建兩個分區512M,類型爲lvm的分區
[root@station20 ~]# fdisk /dev/sda
Command (m for help): n ##新建分區
First cylinder (1320-2610, default 1320):
Using default value 1320
Last cylinder or +size or +sizeM or +sizeK (1320-2610, default 2610): +512M #分區大小512M
Command (m for help): n
First cylinder (1383-2610, default 1383):
Using default value 1383
Last cylinder or +size or +sizeM or +sizeK (1383-2610, default 2610): +512M
Command (m for help): t ##更改分區類型
Partition number (1-9): 8
Hex code (type L to list codes): 8e ##8e的類型爲LVM具體類型可輸入L查詢
Changed system type of partition 8 to 8e (Linux LVM)
Command (m for help): t
Partition number (1-9): 9
Hex code (type L to list codes): 8e
Changed system type of partition 9 to 8e (Linux LVM)
Command (m for help): w ##保存並退出
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.
[root@station20 ~]# partprobe /dev/sda #使分區立即分區而不需重啓
2,創建物理卷
[root@station20 ~]# pvcreate /dev/sda[89]
Wiping software RAID md superblock on /dev/sda8
Physical volume "/dev/sda8" successfully created
Wiping software RAID md superblock on /dev/sda9
Physical volume "/dev/sda9" successfully created
-------------àpvdisplay命令可以查看物理卷的詳細信息
[root@station20 ~]# pvdisplay
"/dev/sda9" is a new physical volume of "494.16 MB"
--- NEW Physical volume ---
PV Name /dev/sda9
VG Name
PV Size 494.16 MB
Allocatable NO
PE Size (KByte) 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID BWWolQ-A0Pz-gGD7-zbqu-qoWS-fXyw-uiIETV
"/dev/sda8" is a new physical volume of "494.16 MB"
--- NEW Physical volume ---
PV Name /dev/sda8
VG Name
PV Size 494.16 MB
Allocatable NO
PE Size (KByte) 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID EewF0N-7X1z-SRnI-WW7A-WrlR-V0aY-fIi9CB
3.創建卷組
[root@station20 ~]# vgcreate vg02 /dev/sda[89]
Volume group "vg02" successfully created
-----------------可以使用vgdisplay查看卷組詳細信息
[root@station20 ~]# vgdisplay
--- Volume group ---
VG Name vg02
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 2
Act PV 2
VG Size 984.00 MB
PE Size 4.00 MB
Total PE 246
Alloc PE / Size 0 / 0
Free PE / Size 246 / 984.00 MB
VG UUID tDd40t-fDoU-ocJo-dFyt-4A4a-xrbr-l7kE6S
4,創建卷
[root@station20 ~]# lvcreate -L 700M -n lv02 vg02 (參數L指定大小,n指定名字)
Logical volume "lv02" created
-------------同樣也可使用lvdisplay命令查看lvm詳細信息
[root@station20 ~]# lvdisplay /dev/vg02/lv02
--- Logical volume ---
LV Name /dev/vg02/lv02
VG Name vg02
LV UUID zrNmph-jt9m-oQK0-NPoM-D23y-kZG4-Qx8vL2
LV Write Access read/write
LV Status available
# open 0
LV Size 700.00 MB
Current LE 175
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:1
---------格式化lvm分區並掛載在/lvm中使用且每次開機都生效.
[root@station20 ~]# mkfs.ext3 /dev/vg02/lv02
[root@station20 ~]# mkdir /lvm
[root@station20 ~]# vim /etc/fstab
/dev/vg02/lv02 /lvm ext3 defaults 0 0
[root@station20 ~]# mount –a
[root@station20 ~]# df –h |grep lv
/dev/mapper/vg02-lv02
689M 17M 638M 3% /lvm
二lvm拉伸與收縮
1,拉伸操作可以在線完成.
-----------拉伸lvm
[root@station20 ~]# lvextend -L 800M /dev/vg02/lv02
Extending logical volume lv02 to 800.00 MB
Logical volume lv02 successfully resized
-----------à拉伸文件系統
[root@statin20 ~]# resize2fs /dev/vg02/lv02
resize2fs 1.39 (29-May-2006)
Filesystem at /dev/vg02/lv02 is mounted on /lvm; on-line resizing required
Performing an on-line resize of /dev/vg02/lv02 to 204800 (4k) blocks.
The filesystem on /dev/vg02/lv02 is now 204800 blocks long.
----------df查看效果
[root@station20 ~]# df -h |grep lv
/dev/mapper/vg02-lv02
788M 17M 734M 3% /lvm
2收縮lvm需要離線操作,而且要嚴格按照步驟完成,不然影響遠大.
--------------首先卸載分區
[root@station20 ~]# umount /lvm/
-------------掃描分區
[root@station20 ~]# e2fsck -f /dev/vg02/lv02
e2fsck 1.39 (29-May-2006)
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/vg02/lv02: 11/104608 files (9.1% non-contiguous), 7571/204800 blocks
---------------à收縮文件系統
[root@station2 ~]# resize2fs /dev/vg02/lv02 500M
resize2fs 1.39 (29-May-2006)
Resizing the filesystem on /dev/vg02/lv02 to 128000 (4k) blocks.
The filesystem on /dev/vg02/lv02 is now 128000 blocks long.
---------------收縮lvm分區
[root@station20 ~]# lvreduce -L 500M /dev/vg02/lv02
WARNING: Reducing active logical volume to 500.00 MB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce lv02? [y/n]: y
Reducing logical volume lv02 to 500.00 MB
Logical volume lv02 successfully resized
-------------重新掛載並查看效果
[root@station20 ~]# mount -a
[root@station20 ~]# df -h |grep lv
/dev/mapper/vg02-lv02
493M 17M 457M 4% /lvm
最後最好重啓測試.
簡述一下其他命令
--------------添加一個pv進卷組
[root@station20 ~]# vgextend vg02 /dev/sda9
--------------從卷組中移除pv
[root@station20 ~]#vgreduce vg02 /dev/sda9
具體命令請參照-------------man page
三.lvm快照的功能
優點是速度快,快速備份,保持一致性
具體命令
[root@station20 ~]# lvcreate -L 200M -s -n snaplv2 /dev/vg02/lv02
Logical volume "snaplv2" created
這樣創建快照完成了,可以只讀掛載對分區進行備份,
[root@station20 ~]# mkdir /mnt/snap
[root@station20 ~]# mount -o ro /dev/vg02/snaplv2 /mnt/snap/
備份完之後就可以移除快照了
[root@station20 ~]# umount /mnt/snap/
[root@station20 ~]# lvremove /dev/vg02/snaplv2
Do you really want to remove active logical volume snaplv2? [y/n]: y
Logical volume "snaplv2" successfully removed
LVM基本研究在這裏