銀河麒麟4.0.2(Ubuntu)擴展boot分區(qū)過程介紹
前言
在一些場合(如開發(fā)內(nèi)核模塊)我們需要安裝多個版本的內(nèi)核,這時候容易出現(xiàn)boot分區(qū)空間不夠的問題,本文介紹如何擴展銀河麒麟(4.0.2)的boot分區(qū)。
由于boot分區(qū)通常位于磁盤的第一個分區(qū),直接擴展難度較大,因此采取新分區(qū)替換原分區(qū)的方式間接實現(xiàn)boot分區(qū)的擴展。請注意,替換boot分區(qū)有風(fēng)險,請評估完風(fēng)險后,謹慎操作。
1、準備新的分區(qū)
如何是虛擬機,可以直接添加一塊虛擬磁盤,如果是物理機,可以從現(xiàn)有磁盤中清理出一塊未用分區(qū),并用磁盤工具(如parted)格式化。
如果磁盤是msdos格式,新分區(qū)須為primary。如何使用磁盤工具,這里不再贅述。假設(shè)新分區(qū)為/dev/newpart(你的新分區(qū)肯定不會叫這個名字),利用mkfs格式化:
mkfs.ext4 /dev/newpart
2、復(fù)制boot分區(qū)
首先將新分區(qū)掛載到某個目錄,如/mnt:
mount /dev/newpart /mnt
然后將/boot中的所有文件復(fù)制到掛載的目錄:
cp –a /boot/* /mnt
3、修改fstab文件
利用命令blkid或者lsblk –f查看新分區(qū)的UUID,并記下來。在root權(quán)限下修改/etc/fstab文件,將原boot分區(qū)對應(yīng)的分區(qū)UUID替換為新分區(qū)的UUID,保存退出。重啟前,可以用:
systemctl daemon-reload mount –a lsblk
依次確認配置文件修改正確,新分區(qū)能正常加載,重啟系統(tǒng)。重啟的目的是讓系統(tǒng)識別到新的boot分區(qū),然后方便自動更新grub。
4、更新grub
使用update-grub命令更新grub,并打開/boot/grub/grub.cfg確認是從新分區(qū)加載內(nèi)核和驅(qū)動,如下圖中黃線標注處應(yīng)為新分區(qū)的UUID。圖中只列出了一個啟動項的內(nèi)容,如果有多個啟動項,可以逐個檢查下。
但通常如果第一個是正確的,后面的也應(yīng)該是正確的。
理論上,接下來讓bios或者uefi從新分區(qū)啟動就可以了,但遺憾的是通常即使新的分區(qū)設(shè)置了boot屬性為on,在引導(dǎo)時也不一定能從新分區(qū)啟動(也可能是我操作的問題)。為了解決這個問題,我們?nèi)匀槐A粼瓉肀惶鎿Q掉的引導(dǎo)分區(qū),而且
將新的grub配置文件復(fù)制到原分區(qū)的grub目錄下。這樣操作系統(tǒng)仍然會從原來的引導(dǎo)分區(qū)啟動,但由于新的grub配置文件將內(nèi)核和驅(qū)動文件的位置指向了新的磁盤分區(qū),所以原有分區(qū)下的內(nèi)核和驅(qū)動文件就可以刪除了,boot分區(qū)空間不足的
問題就解決了。假設(shè)原boot分區(qū)掛載在/dev/oldpart下,重新掛載原分區(qū)實現(xiàn)grub.cfg文件的復(fù)制:
mount /dev/oldpart /mnt cp /boot/grub/grub.cfg /mnt/grub/
查看/mnt/grub/grub.cfg,確認一切正確后,此時可以重啟操作系統(tǒng)了。引導(dǎo)后,可以在grub引導(dǎo)界面里進到相應(yīng)的啟動項中進一步確認boot分區(qū)更換的正確性。
如果引導(dǎo)一切正常,進入系統(tǒng)后,可以通過df –h查看新的boot分區(qū)的利用率情況。此外,如果想進一步節(jié)省磁盤空間,可以刪除掉原boot分區(qū)中的內(nèi)核和驅(qū)動文件以。
如果不刪除,也沒有任何影響,因為后續(xù)添加新內(nèi)核等操作都不會用到這個原來的boot分區(qū)了。
值得一提的是,如果后續(xù)有新的內(nèi)核加入,在執(zhí)行完update-grub生成新的/boot/grub/grub.cfg后,不要忘了將該文件復(fù)制到原boot分區(qū)下的grub目錄中,否則在grub啟動界面中看不到相應(yīng)的內(nèi)核。
因為我們?nèi)匀皇菑脑謪^(qū)啟動的,grub啟動界面顯示的是原boot分區(qū)中的grub.cfg。
到此這篇關(guān)于銀河麒麟4.0.2(Ubuntu)擴展boot分區(qū)過程介紹的文章就介紹到這了,更多相關(guān)銀河麒麟Ubuntu擴展boot分區(qū)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
CentOS6.5平臺上rsync服務(wù)器安裝配置方法簡述
這篇文章主要介紹了CentOS6.5平臺上rsync服務(wù)器安裝配置方法,結(jié)合實例形式分析了CentOS上安裝與配置rsync服務(wù)器的具體步驟、相關(guān)命令與使用方法,需要的朋友可以參考下2018-04-04Centos7.5配置java環(huán)境安裝tomcat的講解
今天小編就為大家分享一篇關(guān)于Centos7.5配置java環(huán)境安裝tomcat的講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-03-03VPS CentOS-6 下 LNMP HTTP web服務(wù)器的搭建步驟
雖然現(xiàn)在很多朋友比較喜歡使用軍哥的lnmp一鍵安裝包,但手工配置方法也要會,否則容易技術(shù)退步2014-06-06jmeter在linux系統(tǒng)下運行及本地內(nèi)存調(diào)優(yōu)的方法詳解
這篇文章主要介紹了jmeter在linux系統(tǒng)下運行及本地內(nèi)存調(diào)優(yōu)的方法,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-07-07關(guān)于linux服務(wù)器hosts文件配置詳解
在本篇文章里小編給大家整理的是關(guān)于linux服務(wù)器hosts文件配置問題,需要的朋友們可以學(xué)習(xí)參考下。2020-02-02Linux nohup實現(xiàn)后臺運行程序及查看(nohup與&)
這篇文章主要介紹了Linux nohup實現(xiàn)后臺運行程序及查看(nohup與&),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09