分區工具parted的詳解及常用分區使用方法


一、 parted的用途及說明

1.1 MBR分區與GPT分區

傳統的MBR分區表格式,僅支持最大四個主分區,而且不可以格式化2TB以上的磁盤,因此,大磁盤更適合使用parted工具進行GPT的分區格式。

1.2 概要說明

parted用於對磁盤(或RAID磁盤)進行分區及管理,與fdisk分區工具相比,支持2TB以上的磁盤分區,並且允許調整分區的大小。

1.3 GNU手冊說明

parted是一個用於硬盤分區或調整分區大小的工具。使用它你可以創建、清除、調整、移動和復制ext2、ext3、linux-swap、FAT、FAT32和reiserfs分區;也能創建、調整和移動蘋果系統的HFS分區;還能檢測jfs、ntfs、ufs和xfs分區。該工具常用於為新安裝的操作系統創建空間,重新分配硬盤使用情況,在將數據拷貝到新硬盤的時候也常常使用。

二、parted的使用方法(交互式)

2.1 對磁盤進行分區

$ parted /dev/sdb
# 對/dev/sdb進行分區或管理操作

GNU Parted 3.1
使用 /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.

(parted) mklabel gpt
# 定義分區表格式(常用的有msdos和gpt分區表格式,msdos不支持2TB以上容量的磁盤,所以大於2TB的磁盤選gpt分區表格式)

警告: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to continue?
# /dev/sdb上現有的磁盤標簽將被銷毀,該磁盤上的所有數據將丟失。你想要繼續
是/Yes/否/No? yes                                                         

(parted) mkpart p1
# 創建第一個分區,名稱為p1(p1只是第一個分區的名稱,用別的名稱也可以,如part1)

文件系統類型?  [ext2]? xfs        
# 定義分區格式(不支持ext4,想分ext4格式的分區,可以通過mkfs.ext4格式化成ext4格式)
                                       
起始點? 1       
# 定義分區的起始位置(單位支持K,M,G,T)
                                                         
結束點? 100%   
# 定義分區的結束位置(單位支持K,M,G,T)    
                                                      
(parted) print   # 查看當前分區情況
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 107GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End    Size   File system  Name  標志
 1      1049kB  107GB  107GB  xfs          p1

2.2 刪除分區

$ parted /dev/sdb
# 對/dev/sdb進行分區或管理操作

(parted) rm                
# rm刪除命令(刪除之前必須確保分區沒有被掛載)
                                               
分區編號? 1          
# 刪除第一個分區
                                                    
(parted) print   # 打印當前分區情況                                                         
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 107GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start  End  Size  File system  Name  標志

在格式化幾個TB的磁盤的時候,時間會非常的長,格式化6T的磁盤時間大概在一個半小時左右。(據硬盤實際情況而定)

三、partd分區實例

fdisk工具雖然很好用,但對於大於2T以上的硬盤分區特別慢,可能一部分容量識別不了,也不支持非交互模式。
用parted就非常方便了,對大硬盤支持很好,也可以實現腳本分區。

parted該指令默認都已經安裝過了,如果沒有安裝的話,使用以下命令進行安裝:

$ yum install parted

parted有個不提示用戶參數選項,就是通過這個選項來實現非交互!

       -s, --script
              never prompts for user intervention

3.1 定義分區類型

$ parted -s /dev/sdb mklabel gpt
# -s表示不輸出提示信息
# 如果不是用腳本執行分區操作,不建議忽略提示信息

3.2 查看磁盤分區信息

$ parted /dev/sdb print
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 107GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start  End  Size  File system  Name  標志

3.3 創建與刪除分區

命令格式如下:

parted 磁盤 mkpart 分區類型 [文件系統類型] 開始  結束

其中,分區類型有 primary、logical、extended三種,文件系統類型為可選項,一般選擇為 ext4、xfs或swap等。開始與結束表示分區開始與結束的位置(默認單位為MB),也可以使用百分比表示分區位置,比如你想把整個磁盤創建一個分區,可以使用下面的命令:

把整個磁盤/dev/sdb創建為一個主分區

$ parted /dev/sdb mkpart primary xfs 0% 100%

把磁盤/dev/sdb創建為多個主分區

$ parted /dev/sdb mkpart primary xfs 1G 10G
$ parted /dev/sdb mkpart primary xfs 10G 50%
$ parted /dev/sdb mkpart primary xfs  50% 100%
$ parted /dev/sdb print       # 查看
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 107GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name     標志
 1      1000MB  10.0GB  9000MB               primary
 2      10.0GB  53.7GB  43.7GB               primary
 3      53.7GB  107GB   53.7GB               primary

刪除分區

$ parted /dev/sdb rm 1
# 刪除分區號為 1 的分區
$ parted /dev/sdb print
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 107GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name     標志
 2      10.0GB  53.7GB  43.7GB               primary
 3      53.7GB  107GB   53.7GB               primary

格式化並掛載

$ mkfs.xfs /dev/sdb2
$ mkdir /data
$ mount /dev/sdb2 /data
$ df -hT /data
文件系統                類型      容量  已用  可用 已用% 掛載點
/dev/sdb2               xfs        41G   33M   41G    1% /data

四、操作示例

需求:一塊 100G的磁盤,使用parted創建一個分區(此分區包含所有磁盤空間),然后掛載到 /data 目錄進行使用。過程如下:

$ parted /dev/sdb mklabel gpt
$ parted /dev/sdb mkpart primary xfs 0% 100%
$ mkfs.xfs /dev/sdb1
$ mount /dev/sdb1 /data
$ df -hT /data
文件系統       類型  容量  已用  可用 已用% 掛載點
/dev/sdb1      xfs   100G   33M  100G    1% /data
$ vim /etc/fstab
/dev/sdb1   /data   xfs   defaults   0 0
# 實現開機自動掛載


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM