linuxlv
① linux中如何查看已經創建好的LV的文件系統類型
server1:~# fdisk -lDisk /dev/sda: 21.4 GB, 21474836480 bytes255 heads, 63 sectors/track, 2610 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System/dev/sda1 * 1 18 144553+ 83 Linux/dev/sda2 19 2450 19535040 83 Linux/dev/sda4 2451 2610 1285200 82 Linux swap / SolarisDisk /dev/sdb: 85.8 GB, 85899345920 bytes255 heads, 63 sectors/track, 10443 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System/dev/sdb1 1 3040 24418768+ 8e Linux LVM文件系統確實是用df來看,看磁碟系統的話應該是用fdisk -l來看,可以看到LVM下的磁碟分區sdb1的系統ID是8e 也就是LVM的格式② Linux文件系統-LVM邏輯卷
LVM(Logical Volume Manager)卷組管理器,通過對底層物理磁碟的封裝,可以將多塊物理磁碟組合成邏輯資源池,提供給上層應用使用(如文件系統). LVM的好處是,可以跨物理硬碟為文件系統提供容量,並且可以動態進行分區容量的調整,而不會損壞原有的文件系統.
物理磁碟 :物理存儲介質,可以是整塊物理存儲或一個分區.
物理卷PV(physical volume) :LVM要使用物理磁碟,在物理磁碟的頭部寫入lvm標簽頭,就創建了一個PV,PV是組成VG的基本單元.
卷組VG(Volume Group) :VG相當於非LVM系統中的物理硬碟,一個卷組VG由一個或多個PV組成,形成一個存儲資源池.
邏輯卷LV(logical volume) :LV相當於非LVM系統中的硬碟分區,LV建立在卷組VG之上,文件系統建立在LV之上.
物理塊PE(physical Extent) :創建LV時可以分配的最小存儲單元,大小可以指定,默認為4MB
如上是從物理磁碟到lvm邏輯卷的創建過程及映射關系,lv01、lv02被創建後,通過device-mapper映射為邏輯塊設備(塊設備路徑/dev/vg01/lv01、/dev/vg01/lv02),供文件系統使用,通過mkfs.ext4 /dev/vg01/lv02可創建ext4文件系統.
元數據主要是兩部分,PV header + metadata,位置一般是在PV的0~2048 sector中,從2048 sector開始是數據區域.
通過pvcreate創建pv時,會將pv header寫入物理磁碟,位置一般是在磁碟的第二個sector(512B/sector),lvm掃描磁碟時,通過pv header來識別PV.
pv header主要信息包括,pv uuid、元數據位置和metadata位置.
pv header實例:
metadata記錄的是vg和lv的配置信息,以ASCII碼的方式寫入metadata區域;vg和lv的每次配置變更,都會以追加的方式寫入metadata區域,並打上時間戳,該區域寫滿後,新的變更記錄會覆蓋最早的一次記錄. 進行vgscan時,猜測應該是通過讀取最新一次的配置記錄,進行激活.
vg配置信息,主要是包含的pv信息.
lv配置信息,主要是lv的起始位置和PE大小.
實例:
pvcreate /dev/vdb1
pvcreate /dev/vdb2
pvcreate /dev/vdb3
vgcreate /dev/vdb1 /dev/vdb2 /dev/vdb3
vgcreate wan /dev/vdb1 /dev/vdb2 /dev/vdb3
lvcreate -L 300M -n lv01 wan
將PV的前2048個sector通過dd拷貝出來,用cat查看如下.
假設我們有一塊磁碟 /dev/sdb1 作為應用數據盤使用,以此為例創建lvm分區
先創建物理卷PV,命令: pvcreate /dev/sdb1
創建卷組VG,卷組命名為kylin,命令:vgcreate kylin /dev/sdb1
在VG中創建邏輯分區LV,命令:lvcreate -L 30G -n test kylin
創建邏輯分區後,進行格式化,然後便可以掛載使用.
mkfs.ext4 /dev/kylin/test
mount /dev/kylin/test /data
假設我們在上述基礎上,又獲得一塊磁碟/dev/sdc1進行擴容,將磁碟容量增加到LV分區/dev/kylin/test中,具體操作如下.
先創建物理卷PV,命令: pvcreate /dev/sdc1
將/dev/sdc1添加進VG kylin,命令:vgextend kylin /dev/sdc1
增加LV分區容量,命令:lvextend -L +30G /dev/kylin/test
lvm卷組配置備份
lvm的配置信息默認在/etc/lvm/backup、/etc/lvm/archive/兩個目錄存在備份,當lvm元數據損壞,lvm卷組讀取異常時,可通過備份文件進行恢復.
/etc/lvm/backup: 保留了當前配置的備份
/etc/lvm/archive/:保留了每次配置更新前的備份
實例演示
邏輯卷/dev/wan/lv01
在/dev/wan/lv01上創建文件系統
掛載並創建文件
覆蓋/dev/vdb1、/dev/vdb2的lvm元數據,並重啟系統,vg已不能識別
通過pvcreate命令修復pv header 和metadata數據.
激活邏輯卷
掛載/dev/wan/lv01成功,說明成功修復
③ linux 文件系統和lv有什麼區別與聯系
首先,LV是一個基於物理設備(/dev/sdx)的虛擬設備(/dev/vggroup/lv)。在使用之前需要在文件系統層格式化。格式化的時候會將LV設備大小,block大小等數據寫入文件系統metadata(中文叫元數據?)。
LV擴容後,在LVM的管理數據,也就是虛擬設備層中,會有更多的物理資源分給虛擬的LV。但是在文件系統層,之前格式化時寫入的metadata並沒有被改變,所以文件系統並不知道可以利用的容量變大了。這時候就需要對"文件系統進行擴展「,我理解為就是更新metadata,讓文件系統更新對虛擬設備大小的認識。你可以看看這兩個
# man xfs_growfs
# man resize2fs
因為只是更新metadata內有關容量大小的指定的數據,所以並不需要太多時間,而且對已有的文件並不造成影響。
④ linux 查看lv佔用哪個pv
/usr 系統應用佔用一些再看看 /tmp /var ,時間長了也會佔用很多
你說的獨立是要把這些文件系統分別建立
你現在用了LVM,擴展文件系統是比較容易的
先看看卷組vg_XXX還有沒有空間:
vgdisplay vg_XXX
卷組有空間就可以直接擴展邏輯卷lv_root,沒空間就用剩餘磁碟或新磁碟擴展卷組:
磁碟分區:pvcreate /dev/sda3
vgextend vg_XXX /dev/sda3
⑤ linux 中的 lv 是 什麼意思
呃,貌似沒有lv 只有ls 那是用來列出目錄下的文件的 也可以以獲取文件的屬性
具體使用 man ls 或 info ls 可以獲得完整的幫助文檔
⑥ linux怎麼刪除lv
首先備份好你的數據。
然後用umount 卸載掉你的邏輯卷
最後,用lvremove 卷組名/邏輯卷名刪除該邏輯卷
比如vg0卷組下有個叫lv0的邏輯卷lvremove vg0/lv0
manpage 摘抄:
EXAMPLES
Remove the active logical volume lvol1 in volume group vg00 without asking for confirmation:
lvremove -f vg00/lvol1
Remove all logical volumes in volume group vg00:
lvremove vg00
⑦ Linux 下磁碟管理--邏輯卷--LV
在Linux磁碟操作中,如果磁碟寫滿,那麼就需要對磁碟進行擴容。把數據寫入到更大的磁碟中,這個工作量是非常大的,而且非常容易出現錯誤,危險性很高,那麼我們就可以使用邏輯卷管理器(LVM)來對磁碟進行管理擴容。這樣就可以很輕松的,沒有危險的對數據進行移動。
我們來看看LVM比傳統硬碟管理的優點:
1.靈活性容量:允許多個磁碟或分區作為一個邏輯卷。
2.可以伸縮的存儲池:不必格式化,用命令可以直接修改邏輯卷。
3.在線數據的分配:可以在線移動數據,可以熱插拔硬碟更換磁碟。
4.設備命名方便。
5.鏡像卷:很方便的做數據鏡像。
6.卷快照:快照會把邏輯卷的全部內容保存。
那麼邏輯卷要怎麼來創建呢,我們做如下步驟:
1.在創建邏輯卷前,必須要有一塊物理磁碟做物理卷(PV)。
2.由一個或多個物理卷組成一個存儲池,我們叫他卷組(VG)。
3.根據卷組中的空閑物理空間,建立邏輯卷(LV)。
上面3步時創建邏輯卷的具體思路。下面我們具體操作:
創建邏輯卷步驟:
1.使用fdisk創建一個物理分區,t 選項設置類型為:linuxLVM
2.使用partprobe向內核注冊新的分區。
3.創建物理卷pvcreate /dev/sdb1(需要創建的硬碟分區名,根據自己伺服器查找)
4.創建卷組 vgcreate 卷組名 /dev/sdb1
5.創建邏輯卷 lvcreate -n 邏輯卷名 -L 卷組大小 卷組名
lvcreate -n abc -L 10G myvg
6.創建文件系統 mkfs.ext4 /dev/卷組名/邏輯卷名
mkfs.ext4 /dev/myvg/abc
7.創建永久掛載點(寫入文件/etc/fstab),這一步就不在贅述,可以查閱我前一文章,有詳細記載。
這樣,我們的邏輯卷就創建成功了。
那我們怎麼查看物理卷,卷組,邏輯卷呢
查看物理卷信息:pvdisplay /dev/sdb1
查看卷組信息:vgdisplay myvg
查看邏輯卷信息:lvdisplay /dev/myvg/abc
邏輯卷的擴容
如果在建立的卷組還有空間,就可以給邏輯卷擴容。那怎麼做呢。
1.lvextend -L +10G /dev/myvg/abc
給邏輯卷 abc 擴容10G。減少容量直接把 + 變為 - 即可。
2.resize2fs /dev/myvg/abc 針對ext4文件
xfs_growfs /dev/myvg/abc 針對xfs文件
使擴容生效。
如果卷組空間不夠,需先增加卷組空間,在對邏輯卷擴容。
1.准備物理磁碟 fdisk ,partprobe ,mkfs.ext4
2.創建物理卷
3.給原來的卷組增加物理卷 vgextend myvg /dev/sdc1,然後vgdiaplay
創建完成,那麼我們需要刪除邏輯卷,怎麼做呢。
1.取消掛載,同時刪除 /etc/fstab 文件下的掛載內容。
2.刪除邏輯卷 lvremove /dev/myvg/abc
3.刪除卷組 vgremove myvg
4.刪除物理卷 pvremove /dev/sdb1
步驟和創建相反。
Linux下磁碟管理的邏輯卷就總結完畢。
⑧ 【計算機基礎】Linux 存儲 PV、VG 和 LV 及其使用
LVM ( Logical Volume Manager ) 架構採用分層結構,可以讓分區變得彈性,可以隨時隨地的擴大和縮小分區大小。
磁碟分區後使用 pvcreate 命令可以將分區創建為物理卷 PV。
將多個 PV 組合起來,使用 vgcreate 命令創建成卷組 VG。
VG 相當於整合過的硬碟,LV 則相當於分區,使用 lvcreate 創建 lV。
如何創建 PV、VG、LV 及掛載目錄 ?
⑨ Linux LVM分區的創建、分配
許多Linux使用者安裝操作系統時都會遇到這樣的困境:如何精確評估和分配各個硬碟分區的容量,如果當初評估不準確,一旦系統分區不夠用時可能不得不備份、刪除相關數據,甚至被迫重新規劃分區並重裝操作系統,以滿足應用系統的需要。
LVM是Linux環境中對磁碟分區進行管理的一種機制,是建立在硬碟和分區之上、文件系統之下的一個邏輯層,可提高磁碟分區管理的靈活性。RHEL5默認安裝的分區格式就是LVM邏輯卷的格式,需要注意的是/boot分區不能基於LVM創建,必須獨立出來。
LVM的配置過程也很簡單,並不是很難,為此,我畫了一張圖文並茂的解析圖,解析了LVM創建的整個過程。更詳細的理論知識還請參看一些教程或者去Google哦!
實驗環境:
首先從空的硬碟sdb上創建兩個分區sdb1 1G,sdb2 2G. 為接下來做LVM做准備.
為了後期便於維護管理,記得給分區加上標示,這樣即使你不在的情況下,別人看到標示了就不會輕易動這塊區域了. LVM的標識是8e,設置完成後記得按w保存
一、創建邏輯卷
將新創建的兩個分區/dev/sdb1 /dev/sdb2轉化成物理卷,主要是添加LVM屬性信息並劃分PE存儲單元.
創建卷組 vgdata ,並將剛才創建好的兩個物理卷加入該卷組.可以看出默認PE大小為4MB,PE是卷組的最小存儲單元.可以通過 –s參數修改大小。
從物理卷vgdata上面分割500M給新的邏輯卷lvdata1.
使用mkfs.ext4命令在邏輯卷lvdata1上創建ext4文件系統.
將創建好的文件系統/data1掛載到/data1上.(創建好之後,會在/dev/mapper/生成一個軟連接名字為」卷組-邏輯卷」)
便於以後伺服器重啟自動掛載,需要將創建好的文件系統掛載信息添加到/etc/fstab裡面.UUID可以通過 blkid命令查詢.
為了查看/etc/fstab是否設置正確,可以先卸載邏輯卷data1,然後使用mount –a 使內核重新讀取/etc/fstab,看是否能夠自動掛載.
二、邏輯卷 lvdata1 不夠用了,如何擴展。
給邏輯卷增加空間並不會影響以前空間的使用,所以無需卸載文件系統,直接通過命令lvextend –L +500M /dev/vgdata/lvdata1或者lvextend –l 2.5G /dev/vgdata/lvdata1 給lvdata1增加500M空間(lvdata1目前是2G空間)設置完成之後,記得使用resize2fs命令來同步文件系統。
三、當卷組不夠用的情況下,如何擴大卷組
重新從第二塊硬碟上創建一個分區sdb3,具體操作步驟省略。並將創建好的分區加入到已經存在的卷組vgdata中。通過pvs命令查看是否成功。
四、當硬碟空間不夠用的情況下,如果減少邏輯卷的空間釋放給其他邏輯卷使用。
減少邏輯卷空間,步驟如下
1、 先卸載邏輯卷data1
2、 然後通過e2fsck命令檢測邏輯卷上空餘的空間。
3、 使用resize2fs將文件系統減少到700M。
4、 再使用lvrece命令將邏輯卷減少到700M。
注意:文件系統大小和邏輯卷大小一定要保持一致才行。如果邏輯卷大於文件系統,由於部分區域未格式化成文件系統會造成空間的浪費。如果邏輯卷小於文件系統,哪數據就出問題了。
完成之後,就可以通過mount命令掛載重新使用了。
五、如果某一塊磁碟或者分區故障了如何將數據快速轉移到相同的卷組其他的空間去。
1、通過pvmove命令轉移空間數據
2、通過vgrece命令將即將壞的磁碟或者分區從卷組vgdata裡面移除除去。
3、通過pvremove命令將即將壞的磁碟或者分區從系統中刪除掉。
4、手工拆除硬碟或者通過一些工具修復分區。
六、刪除整個邏輯卷
1、先通過umount命令卸載掉邏輯卷lvdata1
2、修改/etc/fstab裡面邏輯卷的掛載信息,否則系統有可能啟動不起來。
3、通過lvremove 刪除邏輯卷lvdata1
4、通過vgremove 刪除卷組vgdata
5、通過pvremove 將物理卷轉化成普通分區。
刪除完了,別忘了修改分區的id標識。修改成普通Linux分區即可。
總結:LVM邏輯卷是Linux裡面一個很棒的空間使用機制,因為分區在沒有格式化的情況下是沒有辦法加大或者放小的。通過LVM可以將你的磁碟空間做到靈活自如。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
用以致學,學以致用