日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

学习OpenStack之 (4): Linux 磁盘、分区、挂载、逻辑卷管理 (Logical Volume Manager)

發(fā)布時(shí)間:2024/7/19 linux 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 学习OpenStack之 (4): Linux 磁盘、分区、挂载、逻辑卷管理 (Logical Volume Manager) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

0. 背景:

inux用戶安裝Linux操作系統(tǒng)時(shí)遇到的一個(gè)常見的難以決定的問題就是如何正確地評估各分區(qū)大小,以分配合適的硬盤空間。普通的磁盤分區(qū)管理方式在邏輯分區(qū)劃分好之后就無法改變其大小,當(dāng)一個(gè)邏輯分區(qū)存放不下某個(gè)文件時(shí),這個(gè)文件因?yàn)槭苌蠈游募到y(tǒng)的限制,也不能跨越多個(gè)分區(qū)來存放,所以也不能同時(shí)放到別的磁盤上。而遇到出現(xiàn)某個(gè)分區(qū)空間耗盡時(shí),解決的方法通常是使用符號鏈接,或者使用調(diào)整分區(qū)大小的工具,但這只是暫時(shí)解決辦法,沒有從根本上解決問題。隨著Linux的邏輯卷管理功能的出現(xiàn),這些問題都迎刃而解,用戶在無需停機(jī)的情況下可以方便地調(diào)整各個(gè)分區(qū)大小。

1. 硬盤類型 /dev/sda VS?/dev/hda

/dev/sda

/dev/sda1 /dev/sda2 /dev/sda3 而又的安裝時(shí)硬盤驅(qū)動(dòng)設(shè)備名為 /dev/hda /dev/hda1 Q:sda和hda有什么區(qū)別那? A: HDA是使用了ide接口的硬盤的名稱.SDA是sata接口的硬盤的名稱.在最新的2.6.19內(nèi)核里,所有的硬盤都叫SDA了. 硬盤接口分為:
  • ide? (integrated drive electronics)? 把盤體和控制器集成在一起
  • sata (serial ATA(advanced technology attachment))
  • scsi (small computer system interface)
  • 光纖通道 fibre channel

其中hda、hdb分別代表第一個(gè)IDE、第二個(gè)IDE。假如你電腦上插有2個(gè)IDE硬盤,就會(huì)出現(xiàn)hda、hdb嗎?不一定,因?yàn)槊菜艻DE硬盤默認(rèn)有兩個(gè)部分,Master和Slave,即主分區(qū)和擴(kuò)展分區(qū),而且a、b是根據(jù)IDE接口插槽順序來分的。這樣的話,第一IDE插槽主分區(qū)為hda,擴(kuò)展分區(qū)為hdb,第二IDE插槽主分區(qū)為hdc,擴(kuò)展分區(qū)為hdd。

但是SATA硬盤好像沒有擴(kuò)展分區(qū),而且Linux識(shí)別SATA等類型裝置的順序不是按插槽順序來的,是按照設(shè)備被偵測到的順序來定的,比如SATA的第1、5插槽分別插有硬盤,電腦上還插有一個(gè)USB,那么啟動(dòng)Linux的時(shí)候,先后偵測到SATA的第1、5插槽的硬盤和USB設(shè)備,那么分配的名稱就分別是sda,sdb,sdc。

但貌似,Ubuntu自8.04起,所有硬盤都編號為“sdx”,即不管IDE還是SATA,一律認(rèn)作SCIS硬盤。

2. 分區(qū) (Partition)

計(jì)算機(jī)中存放信息的主要的存儲(chǔ)設(shè)備就是硬盤,但是硬盤不能直接使用,必須對硬盤進(jìn)行分割,分割成的一塊一塊的硬盤區(qū)域就是磁盤分區(qū)。在傳統(tǒng)的磁盤管理中,將一個(gè)硬盤分為兩大類分區(qū):主分區(qū)和擴(kuò)展分區(qū)。主分區(qū)是能夠安裝操作系統(tǒng),能夠進(jìn)行計(jì)算機(jī)啟動(dòng)的分區(qū),這樣的分區(qū)可以直接格式化,然后安裝系統(tǒng),直接存放文件。

? ? ? ?在一個(gè)MBR分區(qū)表類型的硬盤中最多只能存在4個(gè)主分區(qū)。如果一個(gè)硬盤上需要超過4個(gè)以上的磁盤分塊的話,那么就需要使用擴(kuò)展分區(qū)了。如果使用擴(kuò)展分區(qū),那么一個(gè)物理硬盤上最多只能3個(gè)主分區(qū)和1個(gè)擴(kuò)展分區(qū)。擴(kuò)展分區(qū)不能直接使用,它必須經(jīng)過第二次分割成為一個(gè)一個(gè)的邏輯分區(qū),然后才可以使用。一個(gè)擴(kuò)展分區(qū)中的邏輯分區(qū)可以任意多個(gè)。

? ? ? ?磁盤分區(qū)后,必須經(jīng)過格式化才能夠正式使用,格式化后常見的磁盤格式有:FAT(FAT16)、FAT32、NTFS、ext2、ext3等。

那么sda1、sda2又分別代表什么呢?代表分區(qū)(Partition),比如

  • P1:/dev/hda1
  • P2:/dev/hda2
  • L1:/dev/hda5
  • L2:/dev/hda6
  • L3:/dev/hda7
  • L4:/dev/hda8
  • L5:/dev/hda9

為什么沒有hda3、4呢?因?yàn)?span style="text-decoration:underline;">P1~4保存給了Primary和Extended分區(qū)。一個(gè)硬盤的結(jié)構(gòu)如下:

MBR|主分區(qū)1|主分區(qū)2|主分區(qū)3|主分區(qū)4(擴(kuò)展分區(qū))|,?其中擴(kuò)展分區(qū)可以分為:?|邏輯分區(qū)1|邏輯分區(qū)2|……|邏輯分區(qū)n|

?所以說上面的P1、2指明系統(tǒng)有兩個(gè)主分區(qū),L1~5代表有5個(gè)邏輯分區(qū)。主分區(qū)(包括擴(kuò)展分區(qū))的總個(gè)數(shù)不能超過四個(gè);也不能把擴(kuò)展分區(qū)包圍在主分區(qū)之間。

參考:?http://blog.csdn.net/zollty/article/details/7001950

?fdisk 命令

root@dev:/home/s1# fdisk -l

Disk /dev/sda: 250.1 GB, 250059350016 bytes //這個(gè)硬盤有250.1 GB的容量
255 heads, 63 sectors/track, 30401 cylinders, total 488397168 sectors //255個(gè)磁頭;63個(gè)扇區(qū)每磁道,30401個(gè)磁柱
Units = sectors of 1 * 512 = 512 bytes //每個(gè) cylinder(磁柱)的容量是512字節(jié)
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000d7bf1

存儲(chǔ)容量=磁道(柱面)數(shù)×磁頭數(shù)×每道扇區(qū)數(shù)×每扇區(qū)字節(jié)數(shù) =?30401 * 255 * 63 * 512 =?25396387380 bytes?

Device Boot Start End Blocks Id System //Start (開始)/End (結(jié)束):表示的一個(gè)分區(qū)從X sector開始/結(jié)束

/dev/sda1 * 2048 484298751 242148352 83 Linux //引導(dǎo)(Boot):表示引導(dǎo)分區(qū),在上面的例子中 hda1 是引導(dǎo)分區(qū)
/dev/sda2 484300798 488396799 2048001 5 Extended //Blocks:表示的意思的確是容量的意思,其單位是K
/dev/sda3 484298752 484300797 1023 83 Linux
/dev/sda5 484300800 488396799 2048000 82 Linux swap / Solaris //大小,2048000/1024=2G

這里有一個(gè)主分區(qū)sda1,一個(gè)擴(kuò)展分區(qū)sda2,sda2包括兩個(gè)邏輯分區(qū)sda3和sda4.

硬盤總?cè)萘?#61;主分區(qū)(包括擴(kuò)展分區(qū))總?cè)萘?/p>

  • 主分區(qū)大小為?242148352 /1024 =?236473 M = 236 G
  • 擴(kuò)展分區(qū)大小為:2014001 / 1024 = 2000M = 2G
  • 磁盤總?cè)萘看笮?#xff1a;236 + 2 = 238G

擴(kuò)展分區(qū)容量=邏輯分區(qū)總?cè)萘?/span>

我們估算一個(gè)硬盤是否完全被劃分,我們只要看 fdisk -l 輸出的內(nèi)容中的 cylinders(柱體) 上一個(gè)分區(qū)的End 和 下一個(gè)分區(qū)的Start是不是一個(gè)連續(xù)的數(shù)字,另外要看一下每個(gè)硬盤設(shè)備的fdisk -l 的開頭部份,看一下他的 cylinders(柱體)的值。可見上圖中,擴(kuò)展分區(qū)都分完了。

df -h 命令:

注: df 下沒有顯示swap分區(qū)

改變Linux分區(qū)大小

1. 建議在安裝Ubuntu的過程中,選擇手動(dòng)方法進(jìn)行磁盤分區(qū)。可參考?http://blog.sina.com.cn/s/blog_56a70c0401018dki.html?中的具體步驟。

2. linux安裝好以后,根分區(qū)容量一般是不允許改變的。

LVM can be set up after the system is installed. But putting the root partition on the LVM after the fact is quite difficult and probably would be better done with a reinstallation. Furthermore, it is not possible to just create a LVM on a already mounted partition.

LVM可以在系統(tǒng)裝好后安裝。但是將根分區(qū)放進(jìn)LVM是非常困難的,因此建議重裝系統(tǒng)的時(shí)候再設(shè)置。而且,在已經(jīng)掛載的分區(qū)上創(chuàng)建LVM是不行的。

3.實(shí)在要改變,推薦用gparted-LiveCD進(jìn)行調(diào)整

? (1)、準(zhǔn)備
??1、下載最新版本的gparted ISO 鏡像文件:http://gparted.sourceforge.net/
??2、將gparted鏡像文件刻錄成光盤或壓制在U盤上制成LiveUSB
??3、建議備份重要數(shù)據(jù)到移動(dòng)硬盤上
??4、在BIOS中,將啟動(dòng)順序設(shè)置為首先光驅(qū)啟動(dòng)(如果是用LiveUSB,應(yīng)設(shè)為USB-HDD)
? (2)、調(diào)整分區(qū)
??1、將光盤放入光驅(qū)(如果是用LiveUSB,插上U盤),重啟電腦.?這時(shí)候我遇到一個(gè)錯(cuò)誤:vesamenu.c32 not a com32r image。 解決辦法是到Ubuntu系統(tǒng)中找到這個(gè)文件,替換掉USB上的這個(gè)文件,它存在于兩個(gè)文件夾中。
??2、進(jìn)入gparted啟動(dòng)界面,直接選Defalt settings
??3、第二個(gè)界面繼續(xù)按回車7 y: O. l3 A" E/ P??N0 L: j
??4、接下來選語言,輸入“26”回車(就是簡體中文,盡管漢化不全)
??5、接著提示將要進(jìn)入X-Windows界面,回車
??6、進(jìn)入gparted,就會(huì)發(fā)現(xiàn)和瘟到死的PQ相似的界面,實(shí)際操作也是一樣的,而且也支持瘟到死分區(qū)的調(diào)整
??7、點(diǎn)擊你要騰出空間的分區(qū),彈出右鍵菜單選擇“Resize/Move”& Z)?
??8、用鼠標(biāo)托動(dòng)或數(shù)字精確調(diào)整要釋放的空間大小,若要釋放在分區(qū)頭部拉左側(cè)的控制條(輸入第一行數(shù)值),若要釋放在分區(qū)尾部拉右側(cè)的控制條(輸入第三行數(shù)值),調(diào)整好之后點(diǎn)“更改大小/移動(dòng)”按鈕。
??9、點(diǎn)擊欲擴(kuò)大容量的分區(qū),彈出右鍵菜單選擇“Resize/Move”
??10、按照第8步的方法操作,只是現(xiàn)在變成擴(kuò)大分區(qū)容量而已
??11、點(diǎn)擊“Edit”菜單,選擇“Apply All Operations”3
??12、再次確認(rèn)要調(diào)整分區(qū)容量后,gparted開始調(diào)整分區(qū),完成后點(diǎn)“Close”按鈕
??13、點(diǎn)“gparted”菜單,選“Quit”關(guān)閉gparted窗口,再雙擊左上角的“Exit”按鈕退出gparted系統(tǒng)
??14、在彈出的窗口中選“Reboot”重啟電腦,退出時(shí)系統(tǒng)會(huì)提示你取出光盤
? (3)、可能遇到的問題
? 可能會(huì)發(fā)生swap分區(qū)丟失的情況,可在終端中用“free -m”命令查看swap分區(qū)是否激活(是否顯示容量),如果未激活,可用“sudo mkswap /dev/sdaX”命令(X為swap分區(qū)的編號)進(jìn)行激活,并將激活所得的UUID碼替換掉“/etc/fstab”文件(需要管理員權(quán)限)中原來 swap分區(qū)的UUID編碼,重啟后即可自動(dòng)激活掛載
??具體操作方法,請進(jìn)Ubuntu官方論壇中查找,有教程帖8 z. \0 s8 }- M& c
??警告:對swap分區(qū)的激活操作及對fstab文件的修改應(yīng)謹(jǐn)慎,必需仔細(xì)核對修改的值??

在界面上縮小sda1的大小,并創(chuàng)建新的分區(qū),重啟電腦后終于看到一個(gè)新的分區(qū)了,還有一些未分配空間。接下來就可以用下面的LVM方法來創(chuàng)建LVM啦。。

3. 掛載和掛載點(diǎn)

一個(gè)掛載點(diǎn)就是一個(gè)文件夾,將分區(qū)掛載到一個(gè)掛載點(diǎn),掛載點(diǎn)就成了分區(qū)的入口。沒有掛載分區(qū)的掛載點(diǎn)將使用根目錄的空間,沒有掛載到掛載點(diǎn)的分區(qū)是無法訪問的,如上邊第四個(gè)邏輯分區(qū)。

例如,如果分區(qū) /dev/hda5 被 掛載在 /usr 上,這意味著所有在 /usr 之下的文件和目錄在物理意義上位于 /dev/hda5 上。因此文件 /usr/share/doc/FAQ/txt/Linux-FAQ 被儲(chǔ)存在 /dev/hda5上,而文件 /etc/X11/gdm/Sessions/Gnome 卻不是。

  ?繼續(xù)以上的例子,/usr 之下的一個(gè)或多個(gè)目錄還有可能是其它分區(qū)的掛載點(diǎn)。例如,某個(gè)分區(qū)(假設(shè)為,/dev/hda7)可以被掛載到 /usr/local 下,這意味著 /usr/local/man/whatis 將位于 /dev/hda7 上而不是 /dev/hda5 上。

linux系統(tǒng)中每個(gè)分區(qū)都是一個(gè)文件系統(tǒng),都有自己的目錄層次結(jié)構(gòu)。linux會(huì)將這些分屬不同分區(qū)的、單獨(dú)的文件系統(tǒng)按一定的方式形成一個(gè)系統(tǒng)的總的目錄層次結(jié)構(gòu)。將一個(gè)文件系統(tǒng)的頂層目錄掛到另一個(gè)文件系統(tǒng)的子目錄上,使它們成為一個(gè)整體,稱為掛載。把該子目錄稱為掛載點(diǎn)。

注意:1、掛載點(diǎn)必須是一個(gè)目錄。     
2、一個(gè)分區(qū)掛載在一個(gè)已存在的目錄上,這個(gè)目錄可以不為空,但掛載后這個(gè)目錄下以前的內(nèi)容將不可用。對于其他操作系統(tǒng)建立的文件系統(tǒng)的掛載也是這樣。但是需要理解的是:光盤、軟盤、其他操作系統(tǒng)使用的文件系統(tǒng)的格式與linux使用的文件系統(tǒng)格式是不一樣的。光盤是ISO9660;軟盤是fat16或ext2;windows NT是fat16、NTFS;windows98是fat16、fat32;windows2000和windowsXP是fat16、fat32、NTFS。
掛載前要了解linux是否支持所要掛載的文件系統(tǒng)格式。   
掛載時(shí)使用mount命令:   

格式:mount [-參數(shù)] [設(shè)備名稱] [掛載點(diǎn)]   

其中常用的參數(shù)有     
-t<文件系統(tǒng)類型> 指定設(shè)備的文件系統(tǒng)類型,常見的有:    
minix linux最早使用的文件系統(tǒng)    
ext2 linux目前常用的文件系統(tǒng)    
msdos MS-DOS的fat,就是fat16     
vfat windows98常用的fat32     
nfs 網(wǎng)絡(luò)文件系統(tǒng)    
iso9660 CD-ROM光盤標(biāo)準(zhǔn)文件系統(tǒng)    
ntfs windows NT 2000的文件系統(tǒng)    
hpfs OS/2文件系統(tǒng)    
auto 自動(dòng)檢測文件系統(tǒng)    
-o<選項(xiàng)> 指定掛載文件系統(tǒng)時(shí)的選項(xiàng)。有些也可用在/etc/fstab中。常用的有 
   codepage=XXX 代碼頁    
iocharset=XXX 字符集    
ro 以只讀方式掛載    
rw 以讀寫方式掛載    
nouser 使一般用戶無法掛載    
user 可以讓一般用戶掛載設(shè)備   

提醒一下,mount命令沒有建立掛載點(diǎn)的功能,因此你應(yīng)該確保執(zhí)行mount命令時(shí),掛載點(diǎn)已經(jīng)存在。(不懂?說白了點(diǎn)就是你要把文件系統(tǒng)掛載到哪,首先要先建上個(gè)目錄。這樣OK?)   

例子:windows98裝在hda1分區(qū),同時(shí)計(jì)算機(jī)上還有軟盤和光盤需要掛載。     

# mk /mnt/winc     
# mk /mnt/floppy     
# mk /mnt/cdrom     
# mount -t vfat /dev/hda1 /mnt/winc     
# mount -t msdos /dev/fd0 /mnt/floppy     
# mount -t iso9660 /dev/cdrom /mnt/cdrom   

現(xiàn)在就可以進(jìn)入/mnt/winc等目錄讀寫這些文件系統(tǒng)了。?

自動(dòng)掛載:

在/etc/fstab文件里,第一列是掛載的文件系統(tǒng)的設(shè)備名,第二列是掛載點(diǎn),第三列是掛載的文件系統(tǒng)類型,第四列是掛載的選項(xiàng)。添加新行實(shí)現(xiàn)自動(dòng)掛載:

/dev/hdb1 /mnt/winc vfat defaults,codepage=936,iocharset=cp936 0 0     
/dev/hda5 /mnt/wind vfat defaults,codepage=936,iocharset=cp936 0 0?

4. LVM幾個(gè)基本概念

*物理存儲(chǔ)介質(zhì)(PhysicalStorageMedia):指系統(tǒng)的物理存儲(chǔ)設(shè)備:磁盤,如:/dev/hda、/dev/sda等,是存儲(chǔ)系統(tǒng)最底層的存儲(chǔ)單元。 *物理卷(Physical Volume,PV):可以在上面建立卷組的媒介,可以是硬盤分區(qū),也可以是硬盤本身或者回環(huán)文件(loopback file),它是LVM的基本存儲(chǔ)邏輯塊。物理卷包括一個(gè)特殊的header,其余部分被切割為一塊塊物理區(qū)域(physical extents)。 *物理塊(Physical Extent,PE):每一個(gè)物理卷PV被劃分為稱為PE(Physical Extents)的基本單元,具有唯一編號的PE是可以被LVM尋址的最小單元。PE的大小是可配置的,默認(rèn)為4MB。所以物理卷(PV)由大小等同的基本單元PE組成。 *卷組(Volume Group,VG):將一組物理卷收集為一個(gè)管理單元,類似于非LVM系統(tǒng)中的物理磁盤,其由一個(gè)或多個(gè)物理卷PV組成。可以在卷組上創(chuàng)建一個(gè)或多個(gè)LV(邏輯卷)。 *邏輯卷(Logical Volume,LV):虛擬分區(qū),由物理區(qū)域(physical extents)組成,邏輯卷建立在卷組VG之上。在邏輯卷LV之上可以建立文件系統(tǒng)(比如/home或者/usr等)。 *邏輯塊(Logical Extent,LE):邏輯卷LV也被劃分為可被尋址的基本單位,稱為LE。在同一個(gè)卷組中,LE的大小和PE是相同的,并且一一對應(yīng)。 LVM抽象模型

優(yōu)點(diǎn)

比起正常的硬盤分區(qū)管理,LVM更富于彈性:

  • 使用卷組(VG),使眾多硬盤空間看起來像一個(gè)大硬盤。
  • 使用邏輯卷(LV),可以創(chuàng)建跨越眾多硬盤空間的分區(qū)。
  • 可以創(chuàng)建小的邏輯卷(LV),在空間不足時(shí)再動(dòng)態(tài)調(diào)整它的大小。
  • 在調(diào)整邏輯卷(LV)大小時(shí)可以不用考慮邏輯卷在硬盤上的位置,不用擔(dān)心沒有可用的連續(xù)空間。It does not depend on the position of the LV within VG, there is no need to ensure surrounding available space.
  • 可以在線(online)對邏輯卷(LV)和卷組(VG)進(jìn)行創(chuàng)建、刪除、調(diào)整大小等操作。LVM上的文件系統(tǒng)也需要重新調(diào)整大小,某些文件系統(tǒng)也支持這樣的在線操作。
  • 無需重新啟動(dòng)服務(wù),就可以將服務(wù)中用到的邏輯卷(LV)在線(online)/動(dòng)態(tài)(live)遷移至別的硬盤上。
  • 允許創(chuàng)建快照,可以保存文件系統(tǒng)的備份,同時(shí)使服務(wù)的下線時(shí)間(downtime)降低到最小。

這些優(yōu)點(diǎn)使得LVM對服務(wù)器的管理非常有用,對于桌面系統(tǒng)管理的幫助則沒有那么顯著,你需要根據(jù)實(shí)際情況進(jìn)行取舍。

缺點(diǎn):

  • 只能在Linux上使用。對于其他操作系統(tǒng)(如FreeBSD, Windows等),尚未有官方支持。
  • 在系統(tǒng)設(shè)置時(shí)需要更復(fù)雜的額外步驟。
  • 假如你使用的是btrfs文件系統(tǒng),那么它所提供的子卷(subvolume)實(shí)際上已經(jīng)時(shí)一層可動(dòng)態(tài)調(diào)整的存儲(chǔ)層,此時(shí)再用LVM就顯得多余了。

操作:

要?jiǎng)?chuàng)建一個(gè)LVM系統(tǒng),一般需要經(jīng)過以下步驟: 1、創(chuàng)建分區(qū):?使用分區(qū)工具(如:fdisk等)創(chuàng)建LVM分區(qū),方法和創(chuàng)建其他一般分區(qū)的方式是一樣的,區(qū)別僅僅是LVM的分區(qū)類型為8e。 2、創(chuàng)建物理卷:創(chuàng)建物理卷的命令為pvcreate,利用該命令將希望添加到卷組的所有分區(qū)或者磁盤創(chuàng)建為物理卷。 將整個(gè)磁盤創(chuàng)建為物理卷的命令為:#pvcreate /dev/hdb 將單個(gè)分區(qū)創(chuàng)建為物理卷的命令為:#pvcreate /dev/hda5 3、創(chuàng)建卷組:創(chuàng)建卷組的命令為vgcreate,將使用pvcreate建立的物理卷創(chuàng)建為一個(gè)完整的卷組: #vgcreate web_document /dev/hda5 /dev/hdb vgcreate命令第一個(gè)參數(shù)是指定該卷組的邏輯名:web_document。后面參數(shù)是指定希望添加到該卷組的所有分區(qū)和磁盤。vgcreate 在創(chuàng)建卷組web_document以外,還設(shè)置使用大小為4MB的PE(默認(rèn)為4MB),這表示卷組上創(chuàng)建的所有邏輯卷都以4MB為增量單位來進(jìn)行擴(kuò)充 或縮減。由于內(nèi)核原因,PE大小決定了邏輯卷的最大大小,4MB的PE決定了單個(gè)邏輯卷最大容量為256GB,若希望使用大于256G的邏輯卷則創(chuàng)建卷組 時(shí)指定更大的PE。PE大小范圍為8KB到512MB,并且必須總是2的倍數(shù)(使用-s指定,具體請參考manvgcreate)。(centos 6.2系統(tǒng)已發(fā)現(xiàn)沒有這種限制) 4、激活卷組 為了立即使用卷組而不是重新啟動(dòng)系統(tǒng),可以使用vgchange來激活卷組: #vgchange -ay web_document 5、添加新的物理卷到卷組中 當(dāng)系統(tǒng)安裝了新的磁盤并創(chuàng)建了新的物理卷,而要將其添加到已有卷組時(shí),就需要使用vgextend命令: #vgextend web_document /dev/hdc1 這里/dev/hdc1是新的物理卷。 6、從卷組中刪除一個(gè)物理卷 要從一個(gè)卷組中刪除一個(gè)物理卷,首先要確認(rèn)要?jiǎng)h除的物理卷沒有被任何邏輯卷正在使用,就要使用pvdisplay命令察看一個(gè)該物理卷信息: 如果某個(gè)物理卷正在被邏輯卷所使用,就需要將該物理卷的數(shù)據(jù)備份到其他地方,然后再刪除。刪除物理卷的命令為vgreduce: #vgreduce web_document /dev/hda1 7、創(chuàng)建邏輯卷 創(chuàng)建邏輯卷的命令為lvcreate: #lvcreate -L1500 -n www1 web_document 該命令就在卷組web_document上創(chuàng)建名字為www1,大小為1500M的邏輯卷,并且設(shè)備入口為 /dev/web_document/www1(web_document為卷組名,www1為邏輯卷名)。如果希望創(chuàng)建一個(gè)使用全部卷組的邏輯卷,則需 要首先察看該卷組的PE數(shù),然后在創(chuàng)建邏輯卷時(shí)指定: #vgdisplay web_document | grep"TotalPE" TotalPE45230 #lvcreate -l45230 web_document -n www1 8、創(chuàng)建文件系統(tǒng) 筆者推薦使用reiserfs文件系統(tǒng),來替代ext2和ext3: 創(chuàng)建了文件系統(tǒng)以后,就可以加載并使用它: #mkdir/data/wwwroot #mount /dev/web_document/www1/data/wwwroot 如果希望系統(tǒng)啟動(dòng)時(shí)自動(dòng)加載文件系統(tǒng),則還需要在/etc/fstab中添加內(nèi)容: /dev/web_document/www1/data/wwwrootreiserfsdefaults12 9、刪除一個(gè)邏輯卷 刪除邏輯卷以前首先需要將其卸載,然后刪除: #umount /dev/web_document/www1 #lvremove /dev/web_document/www1 10、擴(kuò)展邏輯卷大小 LVM提供了方便調(diào)整邏輯卷大小的能力,擴(kuò)展邏輯卷大小的命令是lvextend: lvextend -L12G /dev/web_document/www1 上面的命令就實(shí)現(xiàn)將邏輯卷www1的大小擴(kuò)招為12G。 lvextend -L +1G /dev/web_document/www1 上面的命令就實(shí)現(xiàn)將邏輯卷www1的大小增加1G。 增加了邏輯卷的容量以后,就需要修改文件系統(tǒng)大小以實(shí)現(xiàn)利用擴(kuò)充的空間。筆者推薦使用reiserfs文件系統(tǒng)來替代ext2或者ext3。因此這里僅 僅討論reiserfs的情況。Reiserfs文件工具提供了文件系統(tǒng)大小調(diào)整工具:resize_reiserfs。對于希望調(diào)整被加載的文件系統(tǒng)大 小: #resize_reiserfs -f /dev/web_document/www1 一般建議最好將文件系統(tǒng)卸載,調(diào)整大小,然后再加載: #umount /dev/web_document/www1 #resize_reiserfs /dev/web_document/www1 #mount-treiserfs /dev/web_document/www1/data/wwwroot 對于使用ext2或ext3文件系統(tǒng)的用戶可以考慮使用工具?resize2fs?。 11、減少邏輯卷大小 使用 lvreduce 即可實(shí)現(xiàn)對邏輯卷的容量,同樣需要首先將文件系統(tǒng)卸載: #umount /data/wwwroot #resize_reiserfs -s -2G /dev/web_document/www1 #lvreduce -L -2G /dev/web_document/www1 #mount-treiserfs /dev/web_document/www1/data/wwwroot

lvreduce 可以使用兩種類型的size:

(1)指定減少的size

lvreduce --size -40G /dev/vg0/foo

(2)指定減少到的size

lvreduce --size 80G /dev/vg0/foo

?

實(shí)際測試(RedHat 6.5 環(huán)境,ext3 文件系統(tǒng)): 1. 縮小 lv 的容量 縮小 lv 容量之前,一定要先 umount,然后使用 resize2fs 命令將ext2/ext3文件系統(tǒng)的空間先縮小(不同的文件系統(tǒng)使用不同的命令),然后再使用 lvreduce 命令縮小 lv,然后再 mount。不是這個(gè)過程的話,文件系統(tǒng)非常有可能崩潰。 [root@rh65 ~]# umount /home[root@rh65 ~]# e2fsck -f /dev/mapper/vg_rh65-lv_home e2fsck 1.41.12 (17-May-2010) 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/mapper/vg_rh65-lv_home: 38/80543744 files (10.5% non-contiguous), 23715920/322174976 blocks [root@rh65 ~]# resize2fs /dev/mapper/vg_rh65-lv_home 800G resize2fs 1.41.12 (17-May-2010) Resizing the filesystem on /dev/mapper/vg_rh65-lv_home to 209715200 (4k) blocks. The filesystem on /dev/mapper/vg_rh65-lv_home is now 209715200 blocks long.[root@rh65 ~]# lvreduce --size 800G /dev/mapper/vg_rh65-lv_homeWARNING: Reducing active logical volume to 800.00 GiBTHIS MAY DESTROY YOUR DATA (filesystem etc.) Do you really want to reduce lv_home? [y/n]: yReducing logical volume lv_home to 800.00 GiBLogical volume lv_home successfully resized[root@rh65 ~]# fsck /dev/mapper/vg_rh65-lv_home fsck from util-linux-ng 2.17.2 e2fsck 1.41.12 (17-May-2010) /dev/mapper/vg_rh65-lv_home: clean, 38/52428800 files, 21950847/209715200 blocks[root@rh65 ~]# mount /dev/mapper/vg_rh65-lv_home /home

2. 增加 lv 容量

先使用 lvextend 增加 lv 容量,在使用?resize2fs ?增加文件系統(tǒng)的容量,使得兩者的size一直,否則重啟后會(huì)出現(xiàn) fsck 錯(cuò)誤。

[root@rh65 ~]# lvextend -L +500G /dev/mapper/vg_rh65-lv_rootExtending logical volume lv_root to 1.07 TiBLogical volume lv_root successfully resized [root@rh65 ~]# resize2fs /dev/mapper/vg_rh65-lv_root resize2fs 1.41.12 (17-May-2010) Filesystem at /dev/mapper/vg_rh65-lv_root is mounted on /; on-line resizing required old desc_blocks = 19, new_desc_blocks = 69 Performing an on-line resize of /dev/mapper/vg_rh65-lv_root to 288358400 (4k) blocks. The filesystem on /dev/mapper/vg_rh65-lv_root is now 288358400 blocks long.

?

?

命令列表: vgs,pvs,lvs e2fsadm(8),?lvchange(8),?lvcreate(8),?lvdisplay(8),?
lvextend(8),?lvmchange(8),?lvmdiskscan(8),?
lvmcreate_initrd(8),?lvmsadc(8),?lvmsar(8),?
lvreduce(8),?lvremove(8),?lvrename(8),?
lvscan(8),?pvchange(8),?pvcreate(8),?pvdata(8),?
pvdisplay(8),?pvmove(8),?pvscan(8),?vgcfgbackup(8),?
vgcfgrestore(8),?vgchange(8),?vgck(8),?vgcreate(8),?
vgdisplay(8),?vgexport(8),?vgextend(8),?vgimport(8),?
vgmerge(8),?vgmknodes(8),?vgreduce(8),?vgremove(8),?
vgrename(8),?vgscan(8),?vgsplit(8)? 以上文字由網(wǎng)絡(luò)上搜到的文字加工而成。主要參考材料包括: https://wiki.archlinux.org/index.php/LVM_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87) http://blog.csdn.net/zollty/article/details/7001950

轉(zhuǎn)載于:https://www.cnblogs.com/sammyliu/p/4157491.html

總結(jié)

以上是生活随笔為你收集整理的学习OpenStack之 (4): Linux 磁盘、分区、挂载、逻辑卷管理 (Logical Volume Manager)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。