濮阳杆衣贸易有限公司

主頁 > 知識庫 > 動態(tài)在線擴容root根分區(qū)大小的方法詳解

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

熱門標(biāo)簽:百度地圖標(biāo)注備注 福州外呼系統(tǒng)中間件 機器人電銷有什么用 德州外呼系統(tǒng)排名 上海電銷卡外呼系統(tǒng)廠家 威海人工智能電銷機器人系統(tǒng) 好看的地圖標(biāo)注圖標(biāo)下載 地圖標(biāo)注員怎么去做 貴州全自動外呼系統(tǒng)廠家

前言

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

qemu-img resize yourname.img +10G 

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

LVM

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

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

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

在此之前,先補充一個“磁盤 MBR”的知識:

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

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

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

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

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

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

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

PART1

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

parted /dev/xxx

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

一些值得特別說明的命令:

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

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

實戰(zhàn):

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

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全部用于擴大extended。

用命令:

resize 2 257MB -0

其實,只需輸入 resize 2 ,回車,剩下的兩個參數(shù),parted 會通過交互的方式讓你填寫的。-0 表示到那個分區(qū)的磁盤末尾。

現(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)擴大成功了。

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

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

PART2

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

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

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

再執(zhí)行

vgextend <your_vg_name> /dev/vda6 

把新分區(qū)加進(jìn) volumn group (VG Name 可通過 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

然后把這個 volumn group 里面的 logic volumn 變大。

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

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

警告: 如果操作時出現(xiàn)下面這樣的 warning,就說明現(xiàn)在 logic volumn 的總大小還不對,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 通過 df 找到):

resize2fs -p <file_system_name>

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

非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創(chuàng)建新的分區(qū),然后從原有的柱面開始,一直分到最后的尺寸(默認(rèn)值兩次回車即可,如果之前的分區(qū)不是從第一柱面開始,則需要記錄之前分區(qū)的起始柱面),新的分區(qū)操作完畢后,按w保存。

總結(jié)

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

標(biāo)簽:葫蘆島 南陽 邵陽 白城 南陽 岳陽 撫州 泉州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《動態(tài)在線擴容root根分區(qū)大小的方法詳解》,本文關(guān)鍵詞  動態(tài),在線,擴容,root,根,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《動態(tài)在線擴容root根分區(qū)大小的方法詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于動態(tài)在線擴容root根分區(qū)大小的方法詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    阿瓦提县| 宁化县| 增城市| 定边县| 瓮安县| 左贡县| 怀远县| 淳化县| 祁门县| 定边县| 温州市| 和平县| 开平市| 塔城市| 平江县| 定边县| 大竹县| 连州市| 叙永县| 深圳市| 吉木乃县| 双柏县| 高要市| 平顺县| 辽中县| 龙州县| 阜阳市| 桦南县| 盐津县| 辉县市| 萨迦县| 华安县| 富蕴县| 长丰县| 巧家县| 上饶市| 绥德县| 禹州市| 南木林县| 托里县| 交口县|