為什麼要使用 LVM?它創造了更多的邊界(更少的自由)
我有一個在 VM 中執行的 linux 伺服器。管理程序是 VMWare。
此設置由前管理員完成:
server:~ # pvs PV VG Fmt Attr PSize PFree /dev/sda2 system lvm2 a-- 119,84g 0 server:~ # vgs VG #PV #LV #SN Attr VSize VFree system 1 3 0 wz--n- 119,84g 0 server:~ # lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert home system -wi-ao--- 97,84g root system -wi-ao--- 20,00g swap system -wi-ao--- 2,00g
我問自己:為什麼?
很高興你可以用 LVM 做很多有趣的事情。但為什麼?
為什麼不創建一個塊設備/分區/文件系統?
交換可以完成到文件中。
一個分區/文件系統會給我更少的塊設備。這意味著文件系統中的目錄有更多的空間來增長。
如果我將一個塊設備與一個文件系統一起使用,則磁碟空間不足的可能性較小。
範例:如果“根系統”的文件需要超過 20GByte,而“家”還有空間,那麼一切都很好。
這是 LVM 設置的簡化 ascii 藝術:
+--------------------+ | | | Filesystem | | | |--------------------- | | | Logical Volume | | | |--------------------- | | | Volume Group | | | ---------------------- | | | Physical Volume | | | |--------------------- | | | Block device | | | +--------------------+
背景:這不是一個高可用的系統。晚上重新啟動總是可能的。
通常使用 LVM 可以啟用多個功能。只是一對:
- 擴展卷是一步和線上:
lvextend --resize
.- 不需要分區。如果沒有 LVM,調整 root fs 大小的常見案例需要停機,並且可能需要從第二個系統編輯分區表。
- 快照始終可用,即使儲存系統或管理程序上沒有此類功能。
- 極端案例可能需要由多個磁碟 (LUN) 支持的捲。這幾天很少見。但還不如在更靈活的 LVM 上進行標準化。
(一些細節是特定於 Linux LVM 的,但 LVM 通常在許多作業系統上實現。在 UNIX 上,AIX 和 HP-UX 早於 Linux 並且具有類似的 LVM。)
該特定分配類似於Red Hat 等發行版的預設值,反映了他們長期以來給出的一些建議。
要將使用者數據與系統數據分開儲存,請在卷組內為 /home 目錄創建一個專用分區。這將使您能夠在不刪除使用者數據文件的情況下升級或重新安裝 Red Hat Enterprise Linux。
分頁空間可以放在更方便的文件中,是的。我認為這需要某些文件系統。無論文件系統如何,直接在塊級設備上都可以工作,很明顯,正常文件沒有可用空間。此外,您可以將此分頁空間卷移動到快速不太耐用的儲存中,例如單個本地 SSD。
一些管理員走得更遠,將 say 隔離
/var
在自己的捲和/tmp
tmpfs 上。這樣日誌文件等就不會填滿/usr
.就個人而言,如果沒有大小要求,我會從
/home
較小的 20 GB 開始。這在 VG 中留下了 70 GB 的可用空間,用於下一個需要lvextend
。這也是長期以來的建議。我懷疑這不是自動分區預設設置,因為使用者數據往往會無限增長,並且他們希望使用該空間以防容量規劃不再被重新訪問。保留未分配的多餘容量,僅將儲存容量分配給您立即需要的那些分區。您可以隨時分配可用空間,以滿足出現的需求。