佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > 動(dòng)態(tài)在線擴(kuò)容root根分區(qū)大小的方法詳解

動(dòng)態(tài)在線擴(kuò)容root根分區(qū)大小的方法詳解

熱門(mén)標(biāo)簽:美圖手機(jī) 百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式 檢查注冊(cè)表項(xiàng) 使用U盤(pán)裝系統(tǒng) 智能手機(jī) 阿里云 網(wǎng)站建設(shè) 硅谷的囚徒呼叫中心

前言

本文主要介紹了關(guān)于動(dòng)態(tài)在線擴(kuò)容root根分區(qū)大小的相關(guān)內(nèi)容,分享出來(lái)供大家參考學(xué)習(xí),下面話不都說(shuō)了,來(lái)一起看看詳細(xì)的介紹吧。

qemu-img resize yourname.img +10G 

首先要用命令增加分區(qū)大小,針對(duì)qemu-kvm使用以上命令

LVM

情境描述:虛擬機(jī)用的磁盤(pán) image 已經(jīng)擴(kuò)容,或?qū)?yīng)于物理機(jī)的話,就是磁盤(pán)的容量已經(jīng)增加了。 然后我們希望把擴(kuò)大的容量用起來(lái),而且不影響現(xiàn)有的文件系統(tǒng)(不格盤(pán))。

實(shí)際使用過(guò)程中,我們有時(shí)候需要對(duì)虛擬機(jī)鏡像的硬盤(pán)擴(kuò)容,比如,一開(kāi)始我們創(chuàng)建虛擬機(jī)的時(shí)候,以為 20G 的磁盤(pán)空間就夠了,可某一次我們可能一次性就要拷貝一個(gè) 10G+ 的文件進(jìn)虛擬機(jī),這時(shí)候我們就傻了。

我們通過(guò) VMware 或者 VirtualBox 的圖形界面或者一些命令,我們可以很輕松地?cái)U(kuò)大虛擬機(jī)的磁盤(pán)大小,但是,磁盤(pán)變大后,系統(tǒng)并不會(huì)把它們利用起來(lái)。所以這時(shí)候,我們就要考慮怎么才能讓這些多出來(lái)的空間能夠被虛擬機(jī)里的 Linux 系統(tǒng)用起來(lái)。

在此之前,先補(bǔ)充一個(gè)“磁盤(pán) MBR”的知識(shí):

1個(gè)硬盤(pán)分為兩個(gè)區(qū)域,一個(gè)是 MBR(主引導(dǎo)分區(qū)),一個(gè)是數(shù)據(jù)區(qū)域。

MBR 里記錄了兩個(gè)重要信息:引導(dǎo)程序與磁盤(pán)分區(qū)表。

分區(qū)表定義了“第 n 個(gè)磁盤(pán)塊是從第 x 個(gè)柱面到第 y 個(gè)柱面”,所以,系統(tǒng)每次都取 n 號(hào)磁盤(pán)塊時(shí),就只會(huì)讀取第 x 到第 y 個(gè)扇區(qū)之間數(shù)據(jù)。

由于 MBR 容量有限,設(shè)計(jì)的時(shí)候,只設(shè)計(jì)成4個(gè)分區(qū)記錄。用起來(lái),可以作4個(gè)主分區(qū),或者3個(gè)主分區(qū)和一個(gè)擴(kuò)展分區(qū)。

如果超過(guò)四個(gè)分區(qū),系統(tǒng)允許在額外的硬盤(pán)空間放另一份磁盤(pán)分區(qū)信息,那就是擴(kuò)展分區(qū),當(dāng)硬盤(pán)被分出一個(gè)擴(kuò)展分區(qū)的時(shí)候,實(shí)際上擴(kuò)展分區(qū)在 MBR 磁盤(pán)分區(qū)表中的信息為另外那份分區(qū)表的位置。所以,在 擴(kuò)展分區(qū) 里面還要?jiǎng)澐?邏輯分區(qū) 才能使用。

每個(gè)硬盤(pán)最多只允許4個(gè)主分區(qū),其他的分區(qū)只能放在擴(kuò)展分區(qū)中。

這樣就明白了,因?yàn)橹鞣謪^(qū)的個(gè)數(shù)有限,而且我們希望增加的容量也只是作為存儲(chǔ)使用,所以加在拓展分區(qū) (extended) 就可以了。(而如果你是土豪,總共4個(gè)主分區(qū),你還打算這次再用一個(gè)主分區(qū)的名額,那你可以跳過(guò) Part1,直接看下面的 Part2 了。)

PART1

我們要把增加的容量加在拓展分區(qū)(extended)里。要對(duì) extended 分區(qū)進(jìn)行擴(kuò)容,這個(gè) fdisk 就做不了,需要用 parted 命令(如果系統(tǒng)不自帶 parted,那就從源上裝一個(gè)):

parted /dev/xxx

進(jìn)入交互模式,用 help 查看幫助命令。

一些值得特別說(shuō)明的命令:

  • print 查看分區(qū)表。留意要操作的分區(qū) ‘Number' 這一項(xiàng),后面操作要用到。
  • unit 改變 parted 所用的描述大小的默認(rèn)單位(比如設(shè)為 ‘compact' 就是以 ‘MB' 為單位)。
    值得注意的是,如果用 MB/GB 這樣的單位,磁盤(pán) sector 的選取會(huì)有誤差的。parted 會(huì)為你選最近的 sector,但未必精確。比如 unit 為 MB,那么可能產(chǎn)生 +-500KB 的誤差;如果是 GB,那就可能 +-500MB 的誤差,這就無(wú)法容忍了。所以如果是'創(chuàng)建分區(qū)'這樣的操作,建議用 ‘MiB' 這樣的單位,而不是 ‘MB'。'MiB' 會(huì)是一個(gè)精確值,parted 不會(huì)像對(duì)待 ‘MB' 那樣去找它最近的單元。
  • resize <minor> <start> <end> 對(duì)指定 minor 號(hào)(或 Number 號(hào))的分區(qū)從 start 位置到 end 位置 這里 start/end 可以是 xxxMB,也可以是負(fù)值,表示從磁盤(pán)末尾往前多少的位置,比如 -0 就是指到磁盤(pán)的末尾。

更多命令詳情請(qǐng)參考: http://www.gnu.org/software/parted/manual/html_chapter/parted_toc.html

實(shí)戰(zhàn):

操作前,print 結(jié)果如下?,F(xiàn)有磁盤(pán)62.3G,只分給 extended 8G,還有50多G根本沒(méi)分配。

Number Start End  Size Type  File system Flags
1  1049kB 256MB 255MB primary ext2   boot
2  257MB 8589MB 8332MB extended
5  257MB 8589MB 8332MB logical    lvm

我希望把這50多G全部用于擴(kuò)大extended。

用命令:

resize 2 257MB -0

其實(shí),只需輸入 resize 2 ,回車(chē),剩下的兩個(gè)參數(shù),parted 會(huì)通過(guò)交互的方式讓你填寫(xiě)的。-0 表示到那個(gè)分區(qū)的磁盤(pán)末尾。

現(xiàn)在再 print 看一下,

Number Start End  Size Type  File system Flags
1  1049kB 256MB 255MB primary ext2   boot
2  257MB 62.3GB 62.0GB extended
5  257MB 8589MB 8332MB logical    lvm

extended 區(qū)已經(jīng)擴(kuò)大成功了。

extended 區(qū)只是相當(dāng)于“一塊物理硬盤(pán)”,想把增加出來(lái)的空間用上,還要把 Number 為 5 的 lv 擴(kuò)大。

而 logic volumn 的擴(kuò)大依賴于它所在的 volumn group 的大小。因?yàn)?logic volumn 是從 volumn group 里分出來(lái)的,如果 volumn group 不變大,那么 logic volumn 是無(wú)法超過(guò) volumn group 的。所以 真正是應(yīng)該把空間加到 volumn group 上去 。

PART2

要增加 volumn group 的大小,先用 fdisk 在 extended 上,利用剛才增加但還未分配出去的磁盤(pán)空間創(chuàng)建出一個(gè)新分區(qū)。通過(guò) fdisk <disk_dev_name> 進(jìn)入交互模式,可以通過(guò)命令 m 查看幫助。首先,輸入 n 創(chuàng)建新分區(qū),然后選擇 l 設(shè)置新分區(qū)為邏輯分區(qū),接下來(lái)依次設(shè)置分區(qū)的起始、終止位置(默認(rèn)即完全利用這塊磁盤(pán)上剩余的所有空間,所以默認(rèn)即可)。創(chuàng)建出的分區(qū),編號(hào)為 6??梢杂妹?p 看一下。

 Device Boot  Start   End  Blocks Id System
/dev/vda1 *  2048  499711  248832 83 Linux
/dev/vda2   501758 121634815 60566529 5 Extended
/dev/vda5   501760 16775167  8136704 8e Linux LVM
/dev/vda6  16777216 121634815 52428800 83 Linux

接下來(lái),由于我們要用 LVM 來(lái)管理這個(gè)新分區(qū),我們需要把新分區(qū)的管理系統(tǒng)從 Linux 改為 Linux LVM。在交互模式下,輸入命令 t,然后選擇剛才創(chuàng)建的 6,輸入 8e (Linux LVM 的代號(hào))。最后,我們要把剛才的這些操作真正寫(xiě)入硬盤(pán),輸入命令 w。

至此,我們通過(guò) fdisk -l 已經(jīng)可以看到 /dev/vda6 被創(chuàng)建出來(lái)了。

再執(zhí)行

vgextend <your_vg_name> /dev/vda6 

把新分區(qū)加進(jìn) volumn group (VG Name 可通過(guò) vgdisplay 查到)。

現(xiàn)在用 vgs 查看 volumn group 的狀態(tài),發(fā)現(xiàn) volumn group 已經(jīng)變大。

 VG   #PV #LV #SN Attr VSize VFree
 jiang51-vg 2 2 0 wz--n- 57.75g 50.03g

然后把這個(gè) volumn group 里面的 logic volumn 變大。

命令(最后那個(gè)'Logic Volumn name'可通過(guò) lvdisplay 查到):

lvresize -l +100%FREE <Logic Volumn name>

警告: 如果操作時(shí)出現(xiàn)下面這樣的 warning,就說(shuō)明現(xiàn)在 logic volumn 的總大小還不對(duì),resize 不但不增加空間,反而在縮小空間,如果繼續(xù)操作下去,必將丟失數(shù)據(jù)。應(yīng)立即停止!按 n 取消。

WARNING: Reducing active and open logical volume to 32.00 MiB
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce root? [y/n]

最后,要更新 logic volumn 上的文件系統(tǒng),不然從 df 看出文件系統(tǒng)是不知道 logic volumn 變大的。

用命令(其中的 file_system_name 通過(guò) df 找到):

resize2fs -p <file_system_name>

這樣,磁盤(pán) extended 分區(qū)的擴(kuò)容終于完成了。

非LVM

fdisk /dev/sda
d
n
p
1

w
resize2fs /dev/sda1

df -h

最重要的一步:“刪除現(xiàn)在的分區(qū),重新分區(qū)” 按d刪除現(xiàn)在的分區(qū)1,注意:刪除后千萬(wàn)不要按w保存!直接按n創(chuàng)建新的分區(qū),然后從原有的柱面開(kāi)始,一直分到最后的尺寸(默認(rèn)值兩次回車(chē)即可,如果之前的分區(qū)不是從第一柱面開(kāi)始,則需要記錄之前分區(qū)的起始柱面),新的分區(qū)操作完畢后,按w保存。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

標(biāo)簽:懷化 通遼 黃山 賀州 煙臺(tái) 湘潭 山南 湖北

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《動(dòng)態(tài)在線擴(kuò)容root根分區(qū)大小的方法詳解》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    房产| 东丰县| 清河县| 井冈山市| 沙坪坝区| 夏河县| 东乡县| 甘南县| 靖边县| 威海市| 桂阳县| 五台县| 鄂州市| 门源| 嘉兴市| 宣威市| 武安市| 安图县| 始兴县| 桑日县| 浪卡子县| 宝坻区| 南宫市| 临漳县| 藁城市| 白河县| 左云县| 沧源| 兴山县| 霍山县| 手机| 大邑县| 山阴县| 临澧县| 托克托县| 车险| 桑植县| 甘洛县| 泰州市| 河源市| 方山县|