parted
对于小于2TB的磁盘可以用fdisk和parted命令进行分区,这种情况一般采用flisk命令,但对于大于2TB的磁盘则只能用parted分区,且需要将磁盘转换为GPT格式。
parted [选项] [设备名]
-l 显示所有磁盘分区的信息
-h 查看帮助
[root@cs6 ~]# parted GNU Parted 2.1 使用 /dev/sda Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) h align-check TYPE N #<==检查磁盘分区,TYPE分为min/opt两个选择,N为磁盘分区号。 check NUMBER #<==简单检查文件系统。 cp [FROM-DEVICE] FROM-NUMBER TO-NUMBER #<==将文件系统复制到另一个分区。 help [COMMAND] #<=查看帮助,简写h,还可以类似于help check 查看其他指令帮助。 mklabel,mktable LABEL-TYPE #<==创建分区表* mkfs NUMBER FS-TYPE #<==创建文件系统。 mkpart PART-TYPE [FS-TYPE] START END #<==创建分区*。 mkpartfs PART-TYPE FS-TYPE START END #<==创建带有文件系统的分区*。 move NUMBER START END #<==移动分区。 name NUMBER NAME #<==为分区命名 print [devices|free|list,all|NUMBER] #<==显示分区表信息,简写p*。 partitions, or a particular partition quit #<==退出程序。 rescue START END #<==挽救临近“起始点”、”终止点”的 失的分区。 resize NUMBER START END #<==重设分区大小。 rm NUMBER #<==删除编号 NUMBER的分区*。 select DEVICE #<==选择要编辑的设备。 set NUMBER FLAG STATE #<==改变分区的标志。 toggle [NUMBER [FLAG]] #<==设置分区标志。 unit UNIT #<==设置默认单位。 version #<==显示版本号。 (parted)
显示分区情况的例子
[root@cs6 ~]# parted -l #<==显示所有磁盘分区的信息。 Model: VMware, VMware Virtual S (scsi) #<=磁盘型号,这里采用VMware虚拟化演示。 Disk /dev/sda: 32.2GB #<==磁盘大小。 Sector size (logical/physical): 512B/512B #<==扇区大小,为msdos,这是适合disk分区的类型。 Partition Table: msdos #<==分区表类型。 Number Start End Size Type File system 标志 1 1049kB 525MB 524MB primary ext4 启动 2 525MB 32.2GB 31.7GB primary lvm Model: VMware, VMware Virtual S (scsi) Disk /dev/sdb: 1074MB Sector size (logical/physical): 512B/512B Partition Table: msdos Number Start End Size Type File system 标志 1 32.3kB 115MB 115MB primary ext4 2 115MB 1069MB 954MB extended 5 115MB 543MB 428MB logical 6 543MB 1069MB 526MB logical 上述内容每列说明具体如下: Number:分区编号。 Start:分区开始位置。 End:分区结束位置。 Size:分区大小。 Type:分区类型。 primary:为主分区。 File system:文件系统,例如ext4、swap等。 Flags:标志位,boot为启动分区。
在虚拟机(VMware Workstation Pro)中模拟2TB以上的磁盘分区
步骤1:在虚拟机中添加一块1GB的硬盘,如图8-2所示。
步骤2:交互式分区。
[root@cs6 ~]# parted /dev/sdb GNU Parted 2.1 Using /dev/sdb Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) mklabel gpt Warning: Partition(s) on /dev/sdb are being used. Ignore/Cancel? Ignore Warning: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to continue? Yes/No? Yes Warning: WARNING: the kernel failed to re-read the partition table on /dev/sdb (Device or resource busy). As a result, it may not reflect all of your changes until after reboot. (parted) mkpart primary 0 500 Warning: The resulting partition is not properly aligned for best performance. Ignore/Cancel? Ignore Warning: WARNING: the kernel failed to re-read the partition table on /dev/sdb (Device or resource busy). As a result, it may not reflect all of your changes until after reboot. (parted) p Model: VMware, VMware Virtual S (scsi) Disk /dev/sdb: 1074MB Sector size (logical/physical): 512B/512B Partition Table: gpt Number Start End Size File system Name Flags 1 17.4kB 500MB 500MB primary (parted) mkpart logical 501 1000 Warning: WARNING: the kernel failed to re-read the partition table on /dev/sdb (Device or resource busy). As a result, it may not reflect all of your changes until after reboot. (parted) p Model: VMware, VMware Virtual S (scsi) Disk /dev/sdb: 1074MB Sector size (logical/physical): 512B/512B Partition Table: gpt Number Start End Size File system Name Flags 1 17.4kB 500MB 500MB primary 2 501MB 1000MB 499MB logical #<-第一个逻辑分区已创建完毕。 (parted) quit [root@cs6 ~]# ls /dev/sdb* #<==查看己分的分区,parted分区是即时生效的,没有保存的步骤。 /dev/sdb /dev/sdb1 /dev/sdb2
后续格式化分区、分区挂载、开机自动挂载等步骤和fdisk分区实践的范例8-2完全相同,读者可前往参考。
非交互式分区(批量分区)案例
步骤1:先删除前面分的区。
[root@cs6 ~]# parted /dev/sdb GNU Parted 2.1 Using /dev/sdb Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) p Model: VMware, VMware Virtual S (scsi) Disk /dev/sdb: 1074MB Sector size (logical/physical): 512B/512B Partition Table: gpt Number Start End Size File system Name Flags 1 17.4kB 500MB 500MB primary 2 501MB 1000MB 499MB logical (parted) rm 1 (parted) rm 2 (parted) p Model: VMware, VMware Virtual S (scsi) Disk /dev/sdb: 1074MB Sector size (logical/physical): 512B/512B Partition Table: gpt Number Start End Size File system Name Flags (parted) quit Information: You may need to update /etc/fstab. [root@cs6 ~]# ls /dev/sd* /dev/sda /dev/sda1 /dev/sda2 /dev/sdb
步骤2:非交互创建分区命令。
[root@cs6 ~]# parted /dev/sdb mklabel gpt Yes #<=非交互创建分区的实质上就是将在交互窗口执行的命令作为参数。 Warning: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to continue? Information: You may need to update /etc/fstab. [root@cs6 ~]# parted /dev/sdb mkpart primary 0 500 Warning: The resulting partition is not properly aligned for best performance. Information: You may need to update /etc/fstab. [root@cs6 ~]# parted /dev/sdb mkpart primary 500 1000 Information: You may need to update /etc/fstab. [root@cs6 ~]# parted /dev/sdb p #<==查看分区结果。 Model: VMware, VMware Virtual S (scsi) Disk /dev/sdb: 1074MB Sector size (logical/physical): 512B/512B Partition Table: gpt Number Start End Size File system Name Flags 1 17.4kB 500MB 500MB primary 2 500MB 1000MB 500MB primary