How to extend unallocated space to an existing partition on linux? | 如何在 linux 上扩展已有分区至未分配空间?
How to extend unallocated space to an existing partition on linux?
背景:我這臺(tái)機(jī)器上(多重啟動(dòng))裝了三個(gè)系統(tǒng),windows + archlinux + ubuntu, 現(xiàn)在我想把 ubuntu 刪掉,然后剩余出來(lái)的空間用來(lái)擴(kuò)大(位置相鄰的)archlinux 的 partition。
要注意的是,刪除系統(tǒng)不要直接格式化分區(qū),要先在 grub 里將引導(dǎo)刪掉,然后再格式化分區(qū)。
我是在 windows 的磁盤管理工具進(jìn)行格式化分區(qū)操作的,刪除了 ubuntu 所在的 partition,多了一塊空閑空間,然后 extend 了一下隔壁的 archlinux 分區(qū),又留了一部分空間建了一個(gè) ntfs 的分區(qū),用來(lái) windows 和 linux 之間共享文件(在 linux 中,天生可以讀 windows 的 ntfs 文件系統(tǒng),所以也可以直接看到 windows 所在的 c 盤)。這波操作之后,回到 archlinux 下,查看效果。
上圖是從 linux 的視角看 windows 分區(qū)所在的 c 盤。
然而,雖然 archlinux 的所在分區(qū)已經(jīng) extend 過(guò)了,但經(jīng)過(guò) df -h 命令查看,發(fā)現(xiàn)可用空間沒(méi)有變化,所以需要想辦法將這個(gè)已有分區(qū)擴(kuò)張一下。
gparted 工具調(diào)整分區(qū)大小
gparted 是個(gè) GUI 工具,可以做分區(qū)查看和調(diào)整,于是先安裝了 gparted,嘗試在其中調(diào)整分區(qū)。查看 archlinux 所在分區(qū)的詳細(xì)信息,提示存在 100GB of unallocated space(如下圖),并且說(shuō)需要使用 check 來(lái) fill the partition.
但是當(dāng)前 partition 正在使用,有一個(gè) lock 的圖標(biāo),就像你站在橋上不能修橋一樣,你無(wú)法在當(dāng)前分區(qū)上對(duì)當(dāng)前分區(qū)進(jìn)行 check 操作,所以需要使用 gparted live 版本調(diào)整分區(qū)大小。
不知為何(猜測(cè)是顯示器分辨率問(wèn)題,因?yàn)橹把b archlinux 的時(shí)候遇到過(guò)安裝界面閃屏問(wèn)題,至今沒(méi)有找到好的解決方法),iso 文件制作的 usb 啟動(dòng)進(jìn)不去 gparted live gnome 界面,menu 選完任何啟動(dòng)選項(xiàng)之后都會(huì)卡死,只好另癖溪徑。一頓搜索,沒(méi)有找到好方法,直到參考了:How to merge unallocated partition to linux partition,里面提到 resize2fs 命令,于是去看了一下這個(gè)命令的用法。
resize2fs 命令
resize2fs 命令是用來(lái)增大或者收縮未加載的 ext2 / ext3 / ext4 文件系統(tǒng)的大小。
所以,不需要分區(qū)調(diào)整工具了,一個(gè)命令就可以搞定。
來(lái)看下原來(lái)的分區(qū)情況:
[root@arch gly]# df -h Filesystem Size Used Avail Use% Mounted on dev 7.7G 0 7.7G 0% /dev run 7.7G 1.9M 7.7G 1% /run /dev/nvme0n1p4 147G 30G 110G 22% / tmpfs 7.7G 118M 7.6G 2% /dev/shm tmpfs 7.7G 5.0M 7.7G 1% /tmp /dev/nvme0n1p1 256M 104M 153M 41% /boot tmpfs 1.6G 76K 1.6G 1% /run/user/1000使用 resize2fs /dev/nvme0n1p4 調(diào)整:
[root@arch gly]# resize2fs /dev/nvme0n1p4 resize2fs 1.46.4 (18-Aug-2021) Filesystem at /dev/nvme0n1p4 is mounted on /; on-line resizing required old_desc_blocks = 19, new_desc_blocks = 32 The filesystem on /dev/nvme0n1p4 is now 65535744 (4k) blocks long.調(diào)整之后的分區(qū)情況:
[root@arch gly]# fdisk -l /dev/nvme0n1p4 Disk /dev/nvme0n1p4: 250 GiB, 268434407424 bytes, 524285952 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes[root@arch gly]# df -h Filesystem Size Used Avail Use% Mounted on dev 7.7G 0 7.7G 0% /dev run 7.7G 1.9M 7.7G 1% /run /dev/nvme0n1p4 246G 30G 205G 13% / tmpfs 7.7G 108M 7.6G 2% /dev/shm tmpfs 7.7G 5.3M 7.7G 1% /tmp /dev/nvme0n1p1 256M 104M 153M 41% /boot tmpfs 1.6G 76K 1.6G 1% /run/user/1000這時(shí)已經(jīng)調(diào)整完成了。
現(xiàn)在,如果再執(zhí)行 resize2fs /dev/nvme0n1p4 的話,會(huì)顯示 nothing to do,所以它是自動(dòng)檢測(cè)目標(biāo)分區(qū)是否需要增大未加載空間的。
[root@arch gly]# resize2fs /dev/nvme0n1p4 resize2fs 1.46.4 (18-Aug-2021) The filesystem is already 65535744 (4k) blocks long. Nothing to do!總結(jié)
以上是生活随笔為你收集整理的How to extend unallocated space to an existing partition on linux? | 如何在 linux 上扩展已有分区至未分配空间?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: leetcode 282. Expres
- 下一篇: M.2 固态硬盘的两种类型:SATA 和