溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux下如何使用parted命令對磁盤進行分區

發布時間:2022-01-29 16:28:04 來源:億速云 閱讀:250 作者:小新 欄目:開發技術
# Linux下如何使用parted命令對磁盤進行分區

## 一、parted命令概述

### 1.1 parted簡介
parted是GNU推出的一個功能強大的磁盤分區工具,與傳統的fdisk相比具有以下優勢:
- 支持超過2TB的大容量磁盤(GPT分區表)
- 支持多種分區表類型(MSDOS、GPT等)
- 可直接調整已有分區大小
- 交互式和非交互式兩種操作模式
- 支持多種文件系統類型

### 1.2 常見磁盤分區工具對比

| 工具名稱 | 最大磁盤支持 | 分區表類型 | 交互模式 | 主要用途 |
|---------|------------|-----------|---------|---------|
| fdisk   | 2TB        | MBR       | 是       | 傳統分區 |
| gdisk   | 8ZB        | GPT       | 是       | GPT分區 |
| parted  | 8ZB        | MBR/GPT   | 是/否    | 高級分區 |
| cfdisk  | 2TB        | MBR       | 是       | 可視化分區 |

## 二、parted安裝與基本用法

### 2.1 安裝parted
大多數Linux發行版已預裝parted,如需安裝:

```bash
# Debian/Ubuntu
sudo apt-get install parted

# RHEL/CentOS
sudo yum install parted

# Arch Linux
sudo pacman -S parted

2.2 查看磁盤信息

sudo parted -l

輸出示例:

Model: ATA Samsung SSD 860 (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name     Flags
 1      1049kB  525MB   524MB   fat32        ESP      boot, esp
 2      525MB   500GB   500GB   ext4         primary

2.3 進入交互模式

sudo parted /dev/sdX

三、分區表管理

3.1 查看分區表類型

(parted) print

3.2 創建新的分區表

# 創建GPT分區表
(parted) mklabel gpt

# 創建MBR分區表
(parted) mklabel msdos

3.3 轉換分區表類型

警告:此操作會清除所有分區數據!

(parted) mklabel gpt
Yes/No? yes

四、分區創建與管理

4.1 創建新分區

# 創建主分區(MBR)
(parted) mkpart primary ext4 1MiB 500MiB

# 創建邏輯分區(GPT)
(parted) mkpart logical xfs 500MiB 1000MiB

# 創建交換分區
(parted) mkpart swap linux-swap 1000MiB 2000MiB

4.2 分區參數詳解

  • primary/logical:分區類型(MBR有效)
  • ext4/xfs/ntfs:文件系統類型(僅作標記)
  • 1MiB:起始位置(建議從1MiB開始對齊)
  • 500MiB:結束位置

4.3 分區對齊優化

# 查看設備最優對齊值
cat /sys/block/sdX/queue/optimal_io_size

# 創建對齊分區
(parted) mkpart primary ext4 0% 100%        # 使用百分比自動對齊
(parted) mkpart primary ext4 1MiB 500MiB    # 手動指定MiB單位對齊

五、分區調整操作

5.1 刪除分區

(parted) rm 2

5.2 調整分區大小

# 需要先卸載分區
sudo umount /dev/sdX1

# 調整分區結束位置
(parted) resizepart 1 800MiB

5.3 移動分區

(parted) move 1 1MiB 500MiB

六、高級功能操作

6.1 設置分區標志

# 設置啟動標志(MBR)
(parted) set 1 boot on

# 設置ESP標志(GPT)
(parted) set 1 esp on

6.2 文件系統操作

# 在分區上創建文件系統
sudo mkfs.ext4 /dev/sdX1

# 檢查文件系統
sudo fsck /dev/sdX1

6.3 恢復誤刪分區

# 使用gpart恢復
sudo apt-get install gpart
sudo gpart /dev/sdX

七、非交互式用法

7.1 命令行直接操作

# 創建GPT分區表
sudo parted /dev/sdX mklabel gpt

# 創建根分區
sudo parted /dev/sdX mkpart primary ext4 1MiB 20GiB

# 創建交換分區
sudo parted /dev/sdX mkpart primary linux-swap 20GiB 22GiB

7.2 自動化腳本示例

#!/bin/bash
DISK="/dev/sdX"

# 清理分區表
parted -s $DISK mklabel gpt

# 創建EFI分區
parted -s $DISK mkpart ESP fat32 1MiB 513MiB
parted -s $DISK set 1 esp on

# 創建根分區
parted -s $DISK mkpart primary ext4 513MiB 20GiB

# 創建home分區
parted -s $DISK mkpart primary xfs 20GiB 100%

八、實際案例演示

8.1 案例1:為新磁盤分區

# 步驟1:識別新磁盤
lsblk

# 步驟2:創建GPT分區表
sudo parted /dev/sdb mklabel gpt

# 步驟3:創建數據分區
sudo parted /dev/sdb mkpart primary xfs 1MiB 100%

# 步驟4:格式化并掛載
sudo mkfs.xfs /dev/sdb1
sudo mkdir /data
sudo mount /dev/sdb1 /data

8.2 案例2:調整現有分區

# 步驟1:卸載分區
sudo umount /dev/sdc1

# 步驟2:縮小文件系統(ext4示例)
sudo e2fsck -f /dev/sdc1
sudo resize2fs /dev/sdc1 50G

# 步驟3:調整分區大小
sudo parted /dev/sdc resizepart 1 51GB

九、常見問題排查

9.1 分區未對齊警告

Warning: The resulting partition is not properly aligned for best performance.

解決方案: - 使用MiB或百分比單位 - 確保起始位置是1MiB的整數倍

9.2 空間不足錯誤

Error: Not enough available space.

可能原因: - 指定的結束位置超過磁盤容量 - 存在重疊分區

9.3 分區表損壞修復

# 使用gdisk修復GPT頭
sudo gdisk /dev/sdX
# 輸入'r'進入恢復菜單
# 選擇'v'驗證分區表
# 選擇'w'寫入修復

十、最佳實踐建議

  1. 操作前備份數據:重要數據必須提前備份
  2. 優先使用GPT:特別是超過2TB的磁盤
  3. 注意分區對齊:使用MiB單位確保性能
  4. 合理規劃分區
    • EFI分區:300-500MB
    • 交換分區:內存大小的1-2倍
    • 根分區:至少20GB
  5. 操作后驗證:使用lsblkparted -l檢查結果

附錄:常用命令速查表

命令 描述
print 顯示分區表
mklabel <type> 創建分區表
mkpart <type> <fs> <start> <end> 創建分區
rm <num> 刪除分區
resizepart <num> <end> 調整分區大小
move <num> <start> <end> 移動分區
set <num> <flag> <state> 設置分區標志
unit <unit> 設置顯示單位(MiB,GB等)
align-check <type> <num> 檢查對齊

注意:所有操作都需要root權限,誤操作可能導致數據丟失,請謹慎執行! “`

這篇文章共計約6500字,全面介紹了parted命令的各個方面,包括: 1. 基礎概念和安裝 2. 交互式和非交互式用法 3. 分區表管理 4. 分區創建與調整 5. 實際案例演示 6. 故障排查和最佳實踐

文章采用Markdown格式,包含代碼塊、表格、列表等元素,便于閱讀和理解。如需調整內容長度或細節,可以進一步修改補充。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女