Ubuntu下使用gdisk將硬盤格式化為GPT分區(qū)表的完整指南
在 Ubuntu 系統(tǒng)中,當我們需要初始化一塊新硬盤,或者將舊硬盤從傳統(tǒng)的 MBR 分區(qū)表轉(zhuǎn)換為更現(xiàn)代的 GPT 分區(qū)表時, gdisk 是一個功能強大、安全可靠的命令行工具。本文將手把手教你如何使用 gdisk 完成分區(qū)表的創(chuàng)建、分區(qū)劃分、格式化及掛載,并涵蓋從 MBR 無損轉(zhuǎn)換為 GPT 的進階操作。
一、為什么要使用 GPT 分區(qū)表?
- 支持大容量硬盤:MBR 最大支持 2TB 硬盤,GPT 則可以處理 18EB(百億億字節(jié))以上的硬盤。
- 更多分區(qū):MBR 最多 4 個主分區(qū)或 3 個主分區(qū)+1 個擴展分區(qū);GPT 理論上支持 128 個主分區(qū)(Windows 限制)甚至更多。
- 數(shù)據(jù)冗余與安全:GPT 在磁盤頭部和尾部各保存一份分區(qū)表,具有校驗機制,更不容易被破壞。
- 現(xiàn)代系統(tǒng)兼容:UEFI 啟動模式強制要求 GPT;傳統(tǒng) BIOS 也可引導(dǎo) GPT(需有 BIOS boot 分區(qū))。
二、準備工作
2.1 備份數(shù)據(jù)
警告:無論使用何種分區(qū)工具,修改分區(qū)表都可能導(dǎo)致數(shù)據(jù)丟失。如果你的硬盤上已有重要數(shù)據(jù),請務(wù)必提前備份到其他存儲設(shè)備。
2.2 確認硬盤路徑
在終端執(zhí)行以下命令,列出當前所有塊設(shè)備:
lsblk
示例輸出:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 238.5G 0 disk ├─sda1 8:1 0 512M 0 part /boot/efi └─sda2 8:2 0 238G 0 part / sdb 8:16 0 931.5G 0 disk
- 通常 SATA/SAS 硬盤顯示為
/dev/sda、/dev/sdb…… - NVMe SSD 顯示為
/dev/nvme0n1、/dev/nvme1n1……
請根據(jù)容量和已有分區(qū)情況確定你要操作的硬盤。小心別選錯,否則會誤清空系統(tǒng)盤。
三、安裝 gdisk
Ubuntu 大多數(shù)最小化安裝可能不自帶 gdisk。安裝命令:
sudo apt update sudo apt install gdisk -y
安裝完成后,可以通過 gdisk -v 驗證版本。
四、全新硬盤初始化為 GPT 并分區(qū)
假設(shè)你的目標硬盤是 /dev/sdb(已無有用數(shù)據(jù)或全新)。
4.1 進入 gdisk 交互界面
sudo gdisk /dev/sdb
你會看到類似下面的提示:
GPT fdisk (gdisk) version 1.0.8 Partition table scan: MBR: not present BSD: not present APM: not present GPT: not present Creating new GPT entries in memory. Command (? for help):
4.2 創(chuàng)建全新的 GPT 分區(qū)表
在 Command 提示符后輸入 o 并回車:
Command (? for help): o
程序會詢問是否確認創(chuàng)建新的空 GPT 分區(qū)表,輸入 y 確認。
一步會徹底清除磁盤上原有的任何分區(qū)表(MBR 或 GPT),所有舊分區(qū)信息都將消失。
4.3 創(chuàng)建分區(qū)
輸入 n 開始創(chuàng)建新分區(qū):
Command (? for help): n
接著按提示一步步操作:
- 分區(qū)號 (Partition number):直接按回車使用默認值(通常從 1 開始)。
- 起始扇區(qū) (First sector):直接按回車使用默認值(自動對齊)。
- 結(jié)束扇區(qū) (Last sector):
- 如果要使用整個剩余空間,直接按回車。
- 如果要創(chuàng)建指定大小的分區(qū),輸入
+200G(表示 200 GB)、+500M(表示 500 MB)等格式。
- 分區(qū)類型代碼 (Hex code or GUID):
- 普通 Linux 數(shù)據(jù)分區(qū):輸入
8300回車。 - EFI 系統(tǒng)分區(qū)(ESP):輸入
EF00回車。 - Linux swap:輸入
8200回車。 - 查看所有代碼:輸入
L會列出長列表。
- 普通 Linux 數(shù)據(jù)分區(qū):輸入
重復(fù)使用 n 命令可以繼續(xù)添加更多分區(qū)。
4.4 查看分區(qū)表
輸入 p 可以打印當前分區(qū)方案,確認無誤。
4.5 保存并退出
非常重要:輸入 w 才會將上述所有更改真正寫入磁盤。
Command (? for help): w
系統(tǒng)會再次確認:
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING PARTITIONS!! Do you want to proceed? (Y/N):
輸入 Y 并回車,gdisk 寫入分區(qū)表后自動退出。
如果中途想放棄所有修改,輸入 q 即可不保存退出。
五、格式化分區(qū)
gdisk 只是劃分了分區(qū),還需創(chuàng)建文件系統(tǒng)才能存儲數(shù)據(jù)。
例如,將第一個分區(qū) /dev/sdb1 格式化為 ext4:
sudo mkfs.ext4 /dev/sdb1
其他常用格式化命令:
sudo mkfs.xfs /dev/sdb1– XFS 文件系統(tǒng)sudo mkfs.btrfs /dev/sdb1– Btrfs 文件系統(tǒng)sudo mkfs.vfat -F 32 /dev/sdb1– FAT32(常用于 UEFI 的 EFI 分區(qū))
如果分區(qū)是作為 EFI 系統(tǒng)分區(qū)(代碼 EF00),應(yīng)格式化為 FAT32:sudo mkfs.fat -F32 /dev/sdb1
六、掛載并使用分區(qū)
6.1 手動掛載
創(chuàng)建一個掛載點目錄(例如 /mnt/data),然后將分區(qū)掛載上去:
sudo mkdir -p /mnt/data sudo mount /dev/sdb1 /mnt/data
掛載后可通過 df -h /mnt/data 查看可用空間。
6.2 開機自動掛載(fstab)
獲取分區(qū)的 UUID(比設(shè)備名更穩(wěn)定):
sudo blkid /dev/sdb1
輸出示例:/dev/sdb1: UUID="a1b2c3d4-..." TYPE="ext4"
編輯 /etc/fstab 文件:
sudo nano /etc/fstab
添加一行(請?zhí)鎿Q UUID 和掛載點):
UUID=a1b2c3d4-... /mnt/data ext4 defaults 0 2
保存后執(zhí)行 sudo mount -a 測試是否有錯誤。
七、進階:將 MBR 分區(qū)表無損轉(zhuǎn)換為 GPT
如果硬盤已經(jīng)是 MBR 分區(qū)表且存有數(shù)據(jù),但你想轉(zhuǎn)為 GPT 以使用 2TB 以上容量或支持 UEFI,可以嘗試 無損轉(zhuǎn)換。但請注意:
風(fēng)險提示:任何分區(qū)表轉(zhuǎn)換操作都有失敗風(fēng)險,強烈建議先備份所有數(shù)據(jù)。
方法一:使用 gdisk 的自動轉(zhuǎn)換
sudo gdisk /dev/sdb
如果 gdisk 檢測到磁盤為 MBR,會提示:
Found valid MBR; converting to GPT format in memory.
此時直接按照第四節(jié)的步驟創(chuàng)建分區(qū)表,保存時 gdisk 會嘗試轉(zhuǎn)換并保留原有分區(qū)的內(nèi)容。但部分分區(qū)類型可能需手動調(diào)整。
方法二:使用 sgdisk 命令
sgdisk 是 gdisk 的腳本版本,可以直接執(zhí)行轉(zhuǎn)換:
sudo sgdisk -g /dev/sdb
該命令會將 MBR 轉(zhuǎn)換為 GPT,并盡可能保留分區(qū)數(shù)據(jù)。轉(zhuǎn)換后建議用 gdisk 檢查并修復(fù)分區(qū)類型代碼。
轉(zhuǎn)換后注意事項:
- 如果系統(tǒng)是從 MBR 磁盤引導(dǎo)的,轉(zhuǎn)換后需要重新配置引導(dǎo)程序(如 GRUB)或改為 UEFI 引導(dǎo)。
- 轉(zhuǎn)換不會影響分區(qū)內(nèi)的文件,但一些舊工具可能無法識別 GPT。
八、gdisk 常用命令速查
| 命令 | 作用 |
|---|---|
p | 打印當前分區(qū)表 |
n | 創(chuàng)建新分區(qū) |
d | 刪除分區(qū) |
t | 修改分區(qū)類型代碼 |
i | 顯示指定分區(qū)的詳細信息 |
o | 創(chuàng)建新的空 GPT 分區(qū)表(清空磁盤) |
w | 保存修改并退出 |
q | 不保存修改直接退出 |
九、常見問題
Q1:執(zhí)行sudo gdisk /dev/sdb報錯 “No such file or directory”?
說明 /dev/sdb 不存在,請用 lsblk 重新確認硬盤正確名稱。
Q2:創(chuàng)建分區(qū)時提示 “No free sectors available”?
磁盤已經(jīng)沒有任何未分配空間??梢杂?p 查看現(xiàn)有分區(qū),然后用 d 刪除不需要的分區(qū)后再創(chuàng)建。
Q3:格式化后掛載時提示 “mount: /mnt/data: wrong fs type, bad option, bad superblock…”
說明分區(qū)可能沒有成功格式化,或者格式化的文件系統(tǒng)類型與掛載參數(shù)不匹配。重新執(zhí)行 mkfs 并確保掛載時不指定 -t 類型或使用正確的類型。
Q4:如何在 Ubuntu 圖形界面下管理 GPT 分區(qū)?
可以使用 gnome-disks(磁盤工具)或 gparted。兩者都完整支持 GPT,但命令行 gdisk 更適合遠程操作或精確控制。
十、總結(jié)
gdisk 是 Ubuntu 下處理 GPT 分區(qū)表的強大工具。通過 o、n、w 三個核心命令即可完成全部分區(qū)工作。對于已經(jīng)使用的 MBR 硬盤,gdisk 也提供了轉(zhuǎn)換途徑,但 數(shù)據(jù)安全永遠是第一位的,操作前務(wù)必備份重要數(shù)據(jù)。
掌握 gdisk 后,你便可以輕松管理大容量硬盤、搭建多系統(tǒng)環(huán)境,或為服務(wù)器準備標準的數(shù)據(jù)分區(qū)。如果遇到更復(fù)雜的分區(qū)需求(如混合 MBR、特定對齊方式等),gdisk 也提供了高級選項,可以通過 ? 獲取幫助。
本文基于 Ubuntu 22.04 / 24.04 及
gdisk1.0.8 版本編寫。不同版本界面略有差異,但核心命令相同。
希望這篇指南能幫助你順利完成 GPT 分區(qū)操作。如果覺得有用,歡迎分享給更多 Linux 用戶。
以上就是Ubuntu下使用gdisk將硬盤格式化為GPT分區(qū)表的完整指南的詳細內(nèi)容,更多關(guān)于Ubuntu gdisk硬盤格式化為GPT分區(qū)表的資料請關(guān)注腳本之家其它相關(guān)文章!

