fdisk 和 parted 都是 Linux 系統中用于磁盤分區的工具。
兩者主要區別:
-
支持的分區表類型:
- fdisk 主要支持 MBR分區表,MBR分區表支持的硬盤單個分區最大容量為2TB,最多可以有4個主分區。
- parted 支持 MBR分區表 和 GPT分區表,GPT分區表可以支持更大的硬盤容量和更多的分區數量。
-
用戶界面:fdisk 使用命令行界面,而 parted 也使用命令行但提供了更豐富的命令和交互。
-
功能:parted 提供了一些 fdisk 沒有的功能,如調整分區大小、格式化分區等。
-
易用性:parted 通常被認為比 fdisk 更易用,特別是在處理 GPT 分區表時。
但它們在功能和使用上有一些區別:
fdisk的功能
fdisk 是一個較老的分區表創建和管理工具,主要**支持 MBR (Master Boot Record) 格式的分區表**。它可以用來創建、刪除、調整分區大小等。
基本命令:
fdisk /dev/sda:啟動 fdisk 工具并選擇 /dev/sda 磁盤。
- p:顯示磁盤分區表
- n:創建新分區
- d:刪除分區
- t:改變分區類型
- w:寫入分區表并退出
- q:不保存更改并退出
使用示例
-
使用 fdisk 創建新分區:
fdisk /dev/sda
Command (m for help): nCommand actione extendedp primary partition (1-4)pPartition number (1-4): 1First sector (2048-104857551, default 2048): Last sector, +sectors or +size{K,M,G} (2048-104857551, default 104857551): +500GCommand (m for help): w
-
格式化新分區
使用 mkfs 命令為新分區創建文件系統。假設想要為該分區創建 ext4 文件系統:sudo mkfs.ext4 /dev/sda1
-
掛載分區
如果想掛載這些分區,可以使用 mount 命令。首先創建掛載點,然后掛載:# 創建掛載點sudo mkdir /data01# 手動掛載sudo mount /dev/sda1 /data01
再配置永久掛載,請參考下面parted永久掛載部分
parted的功能
parted 是一個更現代的分區工具,**支持 MBR 和 GPT (GUID Partition Table) 格式的分區表**。parted 提供了更豐富的命令和功能,包括調整分區大小、創建新的分區表、格式化分區等。
基本命令:
parted /dev/sda:啟動 parted 工具并選擇 /dev/sda 磁盤。
- print:顯示磁盤分區信息
- mklabel:創建新的分區表,可以是 msdos 或 gpt
- mkpart:創建新分區,需要指定分區類型(如 primary, logical)和大小(如 1MiB, 50%)
- rm:刪除分區,需要指定分區號
- resizepart:調整分區大小,需要指定分區號和新大小
- set:設置分區屬性,如bootable
- quit:退出 parted
使用示例
-
使用 parted 創建新分區
parted /dev/sda
假如/dev/sda是一塊10TB的大硬盤,按第1個分區為500GB,第2個分區9TB來創建分區。
(parted) mklabel gpt # 創建gpt分區表,也支持MBR,對于目前大硬盤,更推薦選擇GPT# 新建分區(parted) mkpart primary 0% 500GB # 創建第1個分區(按大小),0% 表示分區從磁盤的起始位置開始,500GB 是分區的大小。(parted) mkpart primary 500GB 100% # 創建第2個分區(按百分比),500GB 是第一個分區的結束位置,100% 表示使用所有剩余空間。# 刪除分區(parted) print # 首先查看當前磁盤的分區信息,確保你將要刪除的是正確的分區。使用 print 命令來顯示分區表(parted) rm 1 # 確定要刪除的分區號,例如,如果你要刪除第一個分區,分區號是 1。特別注意:刪除分區會丟失該分區上的所有數據# 退出parted(parted) quit
-
格式化新分區
使用 mkfs 命令為新分區創建文件系統。假設想要為第一個分區創建 ext4 文件系統,第二個分區創建 XFS 文件系統:sudo mkfs.ext4 /dev/sda1sudo mkfs.xfs /dev/sda2
-
掛載分區
3.1. 如果想掛載這些分區,可以使用 mount 命令:
```bash# 首先創建掛載點sudo mkdir /data01sudo mkdir /data02# 然后掛載sudo mount /dev/sda1 /data01sudo mount /dev/sda2 /data02
```
3.2. 添加永久掛載(以上mount直接掛載為臨時掛載,重啟后丟失)編輯 /etc/fstab 文件,文件內容末尾追加以下內容,后再保存關閉文件```bash/dev/sda1 /data01 ext4 default 0 2/dev/sda2 /data02 xfs default 0 2```3.3. 測試掛載配置,會嘗試掛載 /etc/fstab 中定義的所有掛載點。如果沒有錯誤消息,說明配置正確。```mount -a```3.4. 可再通過 ```df -h ```查看下 /data01、/data02 的分區信息---
-
假如后期使用中需要重新調整分區的大小
parted /dev/sda # 啟動 parted 并選擇磁盤
(parted) print # 查看當前分區信息,確定你想要調整大小的分區號# 方式1# 調整分區大小,注意:1 是分區號,300GB 是新的分區大小(parted) resizepart 1 300GB # 例如,如果想要調整第一個分區的大小到300GB:# 方式2# 也支持調整分區的起始或結束位置# 2. 1 如果你需要調整分區的起始位置,可以使用 --set 選項# 例如,將第一個分區的起始位置設置為 10GB(parted) resizepart 1 --set 10GB # # 2.2 如果你需要調整分區的結束位置,可以使用 --end 選項來指定新的結束位置# 例如,如果你想要將第一個分區的結束位置設置為 30GB(parted) resizepart 1 --end 30GB # # 退出parted(parted) quit
注意事項:
- 在調整分區大小之前,請確保備份所有重要數據,以防數據丟失。
- 如果分區中的數據已經填滿了整個分區,你可能需要先清理一些數據,以確保有足夠的空間進行調整。
- 如果調整的分區不是最后一個分區,或者調整操作涉及到多個分區,可能需要先移動數據,這通常涉及到更復雜的步驟,比如使用partprobe 命令通知內核分區表的變化,或者在調整前卸載分區。