標籤:des style blog http color os 使用 io strong
目錄
1. LVM 簡介
2. LVM基本術語
3. LVM的安裝
4. LVM的使用
4.1 物理卷的管理
4.2 卷組的管理:
4.3 邏輯卷的管理:
5. 一個例子
5.1 練習:
5.2 開始部署
1. LVM 簡介
LVM邏輯卷管理器(英語:Logical Volume Manager,縮寫為LVM),又譯為邏輯卷宗管理器、邏輯扇區管理器、邏輯磁碟管理器,是Linux核心所提供的邏輯卷管理(Logical volume management)功能。它在硬碟的硬碟分區之上,又建立一個邏輯層,以方便系統管理硬碟分區系統。
由四個磁碟分割可以組成一個很大的空間,然後在這些空間上劃分一些邏輯分區,我們可以對這些邏輯分區進行大小調節, 也可以進行快照備份.
2. LVM基本術語
Physical volume(PV): 物理卷就是指硬碟分區或從邏輯上與磁碟分割具有同樣功能的裝置(如RAID),是LVM的基本存放裝置邏輯塊,但和基本的實體儲存體介質(如分區、磁碟等)比較,卻包含有與LVM相關的管理參數。典型的物理卷是硬碟分區,但也可以是整個硬碟或已建立的Software RAID 卷。
Volume Group(VG): 卷組是LVM中最高抽象層,是由一個或多個物理卷所組成的儲存空間池。可以在卷組上建立一個或多個“LVM分區”(邏輯卷),LVM卷組由一個或多個物理卷組成。
Logical Volume(LV): 邏輯卷相當於非LVM系統中的分區,它在卷組上建立,是一個標準的塊裝置,可以在其上建立檔案系統
Physical Extent (PE): 物理塊, 物理卷按大小相等的“塊”為單位儲存,塊的大小與卷組中邏輯卷塊的大小相同。PE的大小是可配置的,預設為4MB。
3. LVM的安裝
查看lvm2是否已經安裝
1 [[email protected] ~]# rpm -qa|grep lvm
mesa-private-llvm-3.3-0.3.rc3.el6.i686
lvm2-2.02.100-8.el6.i686
lvm2-libs-2.02.100-8.el6.i686
如果沒有返回內容, 那麼需要進行安裝
1 [[email protected] ~]# yum install lvm2
4. LVM的使用
如果要建立一個邏輯卷需要經過以下三個階段:
4.1 物理卷的管理:
pvcreate /path/to/dev: 初始化一個磁碟或分區建立成為物理卷;
pvmove /path/to/dev: 移動該裝置上的物理塊到其他裝置上.(在移除物理卷時可以使用,防止資料丟失)
pvscan: 搜尋目前系統裡面任何具有物理卷的磁碟或分區;
pvdisplay: 顯示出目前系統上面的物理卷狀態;
pvremove /path/to/pv_dev : 將物理卷移除,讓該分區不具有物理卷屬性。
4.2 卷組的管理:
vgcreate : 建立卷組命令 –s PE大小, 預設4M;
vgscan : 搜尋系統上面是否有卷組存在
vgdisplay : 顯示目前系統上面的卷組狀態;
vgextend : 在卷組內添加額外的物理卷;
vgreduce : 在卷組內移除物理卷;
vgchange : 配置卷組是否啟動 (active);
vgremove : 刪除一個卷組
4.3 邏輯卷的管理:
lvcreate : 建立邏輯卷.
lvscan : 查詢系統上面的邏輯卷.
lvdisplay : 顯示系統上面的邏輯卷狀態
lvextend : 在邏輯卷裡面添加容量.
lvreduce : 在邏輯卷裡面減少容量.
lvremove : 刪除一個邏輯卷.
lvresize : 對 LV 進行容量大小的調整.
5. 一個例子
5.1 練習:
1. 建立一個由兩個物理卷組成的大小為20G的卷組myvg, 要求PE大小16M.
2. 在該卷組上建立大小為7G的邏輯卷mylv1, 要求其檔案系統為ext4, 塊大小為2048,
3. 開機自動掛載到/users
4. 建立使用者openstack, 其家目錄為/users/openstack, 切換至openstack使用者, 複製一些檔案到家目錄中
5. 縮減mylv1到5G大小, 切換到openstack使用者, 確保沒有資料丟失
6. 對mylv1建立快照卷snap-mylv1, 並通過其備份資料到/tmp/user.tar.bz2;
5.2 開始部署
- 準備了兩個分區, sdb1(8G),sdc1(12G)來組成一個20G 的myvg卷組
格式化第一個sdb1
#使用fdisk格式化sdb
1 [[email protected] ~]# fdisk /dev/sdb
WARNING: DOS-compatible mode is deprecated. It‘s strongly recommended to
switch off the mode (command ‘c‘) and change display units to
sectors (command ‘u‘).
#建立一個新的分區
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-1305, default 1): 1
Last cylinder, +cylinders or +size{K,M,G} (1-1305, default 1305): +8G
#調整分區格式為LVM
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 8e
Changed system type of partition 1 to 8e (Linux LVM)
#如果忘了代碼,可以輸入l尋找LVM格式的代碼
#查看分區狀況
Command (m for help): p
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x8633d49d
Device Boot Start End Blocks Id System
/dev/sdb1 1 1045 8393931 8e Linux LVM
#儲存退出
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
#格式化並儲存退出
準備第二個物理分區sdc1(12G) 步驟同上:
1 [[email protected] ~]# fdisk /dev/sdc
#確認分區狀況:
1 [[email protected] ~]# lsblk
2. 建立物理卷
1 [[email protected] ~]# pvcreate /dev/sdb1 /dev/sdc1
1 [[email protected] ~]# pvs
#查看物理卷情況
1 [[email protected] ~]# pvscan
3. 建立大小為20G的卷組myvg, 要求PE大小16M.
1 [[email protected] ~]# vgcreate -s 16M myvg /dev/sdb1 /dev/sdc1
1 [[email protected] ~]# vgs
#查看卷組情況
4. 在該卷組上建立大小為7G的邏輯卷mylv1, 要求其檔案系統為ext4, 塊大小為2048
1 [[email protected] ~]# lvcreate myvg -n mylv1 -L 7G
#在卷組myvg上建立大小為7G的邏輯卷mylv1
1 [[email protected] ~]# fdisk /dev/myvg/mylv1
#在邏輯卷上建立分區
1 [[email protected] ~]# mke2fs -t ext4 -b 2048 /dev/myvg/mylv1
#格式化邏輯卷mylv1為ext4檔案系統塊大小2048K
5. 開機自動掛載到/users
1 [[email protected] /]# mkdir /users2 3 [[email protected] /]# vim + /etc/fstab
#設定開機自動掛載邏輯卷到/users上
#添加/dev/myvg/mylv1 /users ext4 defaults 0 2到/dev/fstab 最後一行
1 [[email protected] /]# mount –a
#自動掛載
6. 建立使用者openstack, 其家目錄為/users/openstack, 切換至openstack使用者, 複製一些檔案到家目錄中
1 [[email protected] users]# useradd openstack -d /users/openstack
#建立使用者openstack, 其家目錄為/users/openstack
1 [[email protected] users]# su - openstack2 [[email protected] users]# cp -r /etc/* ~/
#切換至openstack使用者, 複製一些/etc/下的檔案到家目錄中
7. 縮減mylv1到5G大小, 切換到openstack使用者, 確保沒有資料丟失
縮減邏輯卷大小思路:
7.1. 卸載卷, 並執行強制檢測
# e2fsck -f /path/to/lv_device
7.2. 縮減邏輯邊界:
# resize2fs /path/to/lv_device Size
7.3. 縮減物理邊界:
# lvreduce -L [-]Size /path/to/vg_name/lvname
7.4. 驗證是否正常
7.5. 開始實施:
1 [[email protected] ~]# umount /dev/myvg/mylv1 #卸載卷2 [[email protected] ~]# e2fsck -f /dev/myvg/mylv1 #強行檢測3 [[email protected] ~]# resize2fs /dev/myvg/mylv1 5G #縮減邏輯邊界到5G4 [[email protected] ~]# lvreduce -L 5G /dev/myvg/mylv1 #縮減物理邊界到 5G5 [[email protected] ~]# lsblk #驗證資料
1 [[email protected] ~]# mount –a #重新掛載邏輯卷2 [[email protected] ~]# cd /users/openstack/ #驗證資料3 [[email protected] openstack]# ll
8. 對mylv1建立快照卷snap-mylv1, 並通過其備份資料到/tmp/user.tar.bz2;
1 [[email protected] openstack]# lvcreate -s -L 50M -n snap_mylv1 -p r /dev/myvg/mylv1 #建立快照2 [[email protected] openstack]# mount /dev/myvg/snap_mylv1 /media/snap/ #掛載快照3 [[email protected] openstack]# tar -jcf /tmp/user.tar.bz2 /media/snap/openstack/* #建立歸檔
[Linux] centOS 6.5 LVM 邏輯卷 管理 實驗報告