041139411160服务咨询:工作日9:00 - 18:00

使用parted为磁盘分区

Linux

通常我们在为磁盘分区时都会使用fdisk工具,但fdisk支持的是MBR分区表,由于MBR分区表的最大可寻址存储空间只有2T这也意味着使用fdisk无法为超过2T的磁盘进行分区,如何解决2T以上的磁盘分区呢?这里就必须为大家介绍另一个磁盘分区管理工具parted。

parted要比fdisk更灵活,功能也更丰富,支持GPT分区表,可以使用交互式模式及非交互式模式进行分区,并且在磁盘小于2T时parted同样适用。

parted分区过程

(已知/dev/sdb磁盘空间为2G)

一.交互式分区

# parted /dev/sdb                   <==使用parted为/dev/sdb分区
(parted) mklabel gpt yes              <==将分区表改成GPT
(parted) mkpart primary 0 1G ignore    <==创建一个1G的主分区(起点0 ,结束点1G)
(parted) mkpart logical 1G 1.5G ignore  <==创建一个500M的逻辑分区(起点1G,结束点1.5G)
(parted) mkpart logical 1.5G 2G ignore  <==创建一个500M的逻辑分区(起点1.5G,结束点2G)
(parted) p                         <==输入"p"查看分区表
Model: ATA VMware Virtual S (scsi)
Disk /dev/sdb: 2147MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start      End     Size    File system   Name   Flags
 1      17.4kB   1000MB  1000MB             primary
 2      1000MB  1501MB  500MB              logical
 3      1501MB  2000MB  499MB              logical

(注:parted的操作是实时的,无需保存,所以操作时应注意准确)

二.删除分区

(parted) rm 3                       <==使用"rm"删除第3分区
(parted) p                          <==输入"p"再次查看分区表
Model: ATA VMware Virtual S (scsi)
Disk /dev/sdb: 2147MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start      End     Size    File system   Name   Flags
 1      17.4kB   1000MB  1000MB             primary
 2      1000MB  1501MB  500MB              logical

三.非交互式分区

顾名思义就是直接在命令行下操作:

# parted /dev/sdb mklabel gpt yes                <==将分区表改成GPT
# parted /dev/sdb mkpart primary 0 1G ignore      <==创建一个1G的主分区
# parted /dev/sdb mkpart primary 1G 1.5G ignore   <==创建一个500M的逻辑分区
# parted /dev/sdb p                           <==查看分区表

四.格式化

# partprobe /dev/sdb                <==将分区表变化通知内核
# mkfs.ext4 /dev/sdb1                <==以ext4格式化sdb1
# mkfs.ext4 /dev/sdb2                <==以ext4格式化sdb2

五.实现挂载

# mkdir /data1                      <==创建挂载点/data1
# mkdir /data2                      <==创建挂载点/data2
# vi /etc/fstab                       <==编辑/etc/fstab文件在底部添加如下内容
/dev/sdb1       /data1          ext4    defaults        0 0
/dev/sdb2       /data2          ext4    defaults        0 0
# mount -a                         <==挂载
# df -H                            <==查看磁盘空间
Filesystem              Size   Used  Avail  Use%  Mounted on
/dev/sda2              8.3G   2.0G  6.0G   25%  /
tmpfs                 519M     0  519M   0%  /dev/shm
/dev/sda1             204M   31M  162M  16%  /boot
/dev/sdb1             985M   19M  917M   2%  /data1
/dev/sdb2             485M   11M  449M   3%  /data2

可以看到成功将sdb1、sdb2挂载。

lxfangs