磁盘分区工具
parted
特别注意:parted 有两种运行模式:命令行模式和交互模式。与 fdisk 的交互模式不同,在 parted 的交互模式下执行命令,一旦按回车键确认,命令就马上执行,对磁盘的更改就立刻生效。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | parted --help Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...] Apply COMMANDs with PARAMETERS to DEVICE. If no COMMAND(s) are given, run in interactive mode. 选项: -h, --help 显示此求助信息 -l, --list 列出所有block设备上的分区 -m, --machine displays machine parseable output -s, --script 从不提示用户 -v, --version 显示版本 -a, --align=[none|cyl|min|opt] alignment for new partitions 命令: align-check TYPE N check partition N for TYPE(min|opt) alignment #查看分区对齐类型 help [COMMAND] print general help, or help on COMMAND #打印帮助 mklabel,mktable LABEL-TYPE create a new disklabel (partition table) #创建新的磁盘标签 (创建分区表) gpt&msdos(mbr) #LABEL-TYPE:"aix", "amiga", "bsd", "dvh", "gpt", "loop", "mac","msdos", "pc98", "sun" mkpart PART-TYPE [FS-TYPE] START END make a partition #创建新分区。 #PART-TYPE :primary(主分区)、extended(扩展分区)、logical(逻辑分区)。 #FS-TYPE : ext2、ext3、ext4、fat16、fat32、NTFSReiserFS、JFS、XFS、UFS、HFS、swap(此选项可以省略,在格式化时指定文件系统类型后,parted会自动更改分区类型) #START 和 END 是新分区开始和结束的具体位置。 name NUMBER NAME name partition NUMBER as NAME #将编号为 NUMBER 的分区命名为 NAME ,仅用于Mac,PC98,and GPT disklabels. print [devices|free|list,all|NUMBER] display the partition table, available devices, free space,all found partitions, or a particular partition #打印 分区表,可用设备,可用空间,所有分区或特定分区 quit exit program rescue START END rescue a lost partition near START and END #恢复 START END 之间丢失的分区 resizepart NUMBER END resize partition NUMBER #调整分区号NUMBER rm NUMBER delete partition NUMBER #删除指定编号 NUMBER 的分区。 select DEVICE choose the device to edit #选择需要编辑的设备 disk_set FLAG STATE change the FLAG on selected device #更改选定设备上的 FLAG disk_toggle [FLAG] toggle the state of FLAG on selected device #切换选定设备上的FLAG状态 set NUMBER FLAG STATE change the FLAG on partition NUMBER #指定编号 NUMBER 的分区设置分区标记 FLAG。 # FLAG 可有如下值:"boot"[(Mac, MS-DOS, PC98) 引导], “hidden”(隐藏), “raid”(软RAID磁盘阵), “lvm”(逻辑卷), “lba” (LBA,Logic Block Addressing模式)。 #FLAG:"bios_grub"[(GPT)GRUB BIOS], "legacy_boot"[(GPT) 引导],"palo"."swap", "root" #状态STATE 的取值是:on 或 off toggle [NUMBER [FLAG]] toggle the state of FLAG on partition NUMBER #切换分区号NUMBER上的FLAG状态 unit UNIT set the default unit to UNIT #设置默认输出时表示磁盘大小的单位为 UNIT,UNIT 的常用取值可以为:‘MB’、‘GB’、‘%’(占整个磁盘设备的百分之多少)、‘compact’(人类易读方式,类似于 df 命令中 -h 参数的用)、‘s’(扇区)、‘cyl’ (柱面)、‘chs’ (柱面cylinders:磁头 heads:扇区 sectors 的地址) version display the version number and copyright information of GNU Parted Report bugs to [email protected] |
命令结构明细
1 | parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...] |
-
OPTION
- -h, --help #显示此求助信息
- -l, --list #列出所有block设备上的分区
- -m, --machine #displays machine parseable output
- -s, --script #从不提示用户
- -v, --version #显示版本
- -a, --align=[none|cyl|min|opt] #分区的对齐检查方式
-
DEVICE #block设备
-
COMMAND
-
align-check TYPE N
检查分区N是否满足类型 TYPE(min|opt)的约束 (完整检查|最小化检查) 也就是检查分区是否对齐
此处注意:一般是检查分区的文件系统类型是否满足,一般在格式化后操作
-
help [COMMAND] #打印 COMMAND 命令的帮助信息
-
mklabel,mktable LABEL-TYPE
创建新的磁盘标签 (创建分区表)
-
LABEL-TYPE
标签类型有 LABEL-TYPE:“aix”, “amiga”, “bsd”, “dvh”, “gpt”, “loop”, “mac”,“msdos”, “pc98”, “sun”
常用的有 “gpt”, “msdos”
-
-
mkpart PART-TYPE [FS-TYPE] START END
创建新分区
-
PART-TYPE
分区类型
- primary(主分区)、extended(扩展分区)、logical(逻辑分区)
-
FS-TYPE
ext2、ext3、ext4、fat16、fat32、NTFSReiserFS、JFS、XFS、UFS、HFS、swap
(此选项可以省略,在格式化时指定文件系统类型后,parted会自动更改分区类型)
-
START END
新分区开始和结束的具体位置
-
-
name NUMBER NAME
将编号为 NUMBER 的分区命名为 NAME ,仅用于Mac,PC98,and GPT disklabels.
-
print [devices|free|list,all|NUMBER]
打印 分区表,可用设备,可用空间,所有分区或特定分区
-
quit
退出分区工具
-
rescue START END
恢复 START END 之间丢失的分区
-
resizepart NUMBER END
调整分区号NUMBER
-
rm NUMBER
删除指定编号 NUMBER 的分区。
次处于fdisk有一个不同之处,parted删除分区1后,分区2不会变成1
-
select DEVICE
选择需要编辑的设备
-
disk_set FLAG STATE
更改选定设备上的 FLAG
-
FLAG
-
STATE
状态STATE 的取值是:on 或 off
-
-
disk_toggle [FLAG]
切换选定设备上的FLAG状态
- FLAG
-
set NUMBER FLAG STATE
指定编号 NUMBER 的分区设置分区标记 FLAG
-
NUMBER #分区编号
-
FLAG
-
STATE
状态STATE 的取值是:on 或 off
-
-
toggle [NUMBER [FLAG]]
取消或开启分区标志
-
unit UNIT
设置默认输出时表示磁盘大小的单位为 UNIT,UNIT 的常用取值可以为:‘MB’、‘GB’、‘%’(占整个磁盘设备的百分之多少)、‘compact’(人类易读方式,类似于 df 命令中 -h 参数的用)、‘s’(扇区)、‘cyl’ (柱面)、‘chs’ (柱面cylinders:磁头 heads:扇区 sectors 的地址)
-
version
Report bugs to [email protected]
-
FLAG
根据磁盘标签来选取分区的FLAG
-
bios_grub
(GPT) 启动此FLAG的分区是一个GRUB BIOS分区
-
legacy_boot
(GPT) 使用此FLAG的分区告诉专用软件此分区可以启动,或者说可以用BIOS(非UEFI)方式引导该分区
-
boot
(Mac, MS-DOS, PC98) 分区启动标志,磁盘标签不同意义不同
对于MS-DOS只能启动一个分区,如果要安装LILOon,则该分区必须是可引导的.对于PC98磁盘标签,所有ext2分区都必须可引导(这由Parted强制规定的)
-
msftdata
(GPT) 此标志标识包含Microsoft文件系统(NTFS或FAT)的分区。可以选择在Linux文件系统上进行设置,以模拟parted 3.0及更早版本创建的配置类型,其中GPT磁盘上没有单独的Linux文件系统类型代码。此标志只能在parted内通过替换为competingflag(如boot或msftres)来删除。
-
msftres
(MS-DOS,GPT) 此标志标识Windows使用的“Microsoft Reserved”分区。请注意,此标志通常不应位于Windows文件系统分区(包含NTFS或FAT文件系统的分区)上
-
irst
(MS-DOS, GPT) 此标志是识别Intel Rapid Start Technologypartition(英特尔快速启动技术).
-
esp
(MS-DOS, GPT) 此标志标识UEFI系统分区,在GPT上,它是boot的别名
-
lba
(MS-DOS) 此标志可用于告诉MS DOS、MS Windows 9x和MS Windows ME操作系统使用线性(LBA)模式
-
root
(Mac) 如果分区是Linux要使用的根设备,则应启用此标志。
-
swap
(Mac) 如果分区是要由Linux使用的交换分区设备,则应启用此标志。
-
hidden
(MS-DOS, PC98) 此标志可用于隐藏Microsoft操作系统中的分区。
-
raid
(MS-DOS) 启用此标志来告诉linux分区是软RAID分区。
-
LVM
(MS-DOS) 启用此标志来告诉linux分区是物理卷。
-
PALO
(MS-DOS) 启用此标志,以便Linux/PA-RISC引导加载程序palo可以使用分区。
-
PREP
(MS-DOS, GPT) 可以启用此标志,以便该分区可以用作PowerPC PReP或IBM RS6K/CHRP硬件上的PReP引导分区。
-
DIAG
(MS-DOS) 启用此选项表示分区可以用作诊断/恢复分区。
fdisk
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | fdisk -h 用法: fdisk [选项] <磁盘> 更改分区表 fdisk [选项] -l <磁盘> 列出分区表 fdisk -s <分区> 给出分区大小(块数) 选项: -b <大小> 扇区大小(512、1024、2048或4096) -c[=<模式>] 兼容模式:“dos”或“nondos”(默认) -h 打印此帮助文本 -u[=<单位>] 显示单位:“cylinders”(柱面)或“sectors”(扇区,默认) -v 打印程序版本 -C <数字> 指定柱面数 -H <数字> 指定磁头数 -S <数字> 指定每个磁道的扇区数 帮助: DOS (MBR) a 开关 可启动 标志 b 编辑嵌套的 BSD 磁盘标签 c 开关 dos 兼容性标志 GPT M 进入 保护/混合 MBR 常规 d 删除分区 F 列出未分区的空闲区 l 列出已知分区类型 n 添加新分区 p 打印分区表 t 更改分区类型 v 检查分区表 i 打印某个分区的相关信息 杂项 m 打印此菜单 x 更多功能(仅限专业人员) 脚本 I 从 sfdisk 脚本文件加载磁盘布局 O 将磁盘布局转储为 sfdisk 脚本文件 保存并退出 w 将分区表写入磁盘并退出 q 退出而不保存更改 新建空磁盘标签 g 新建一份 GPT 分区表 G 新建一份空 GPT (IRIX) 分区表 o 新建一份的空 DOS 分区表 |
例子:新建一个GPT标签的磁盘,分配第一个分区大小为512M,第二个分区大小为24G,将第一个分区类型改为EFI,第二个分区类型默认为Linux filesystem
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | fdisk /dev/sda 命令(输入 m 获取帮助):g 已创建新的 GPT 磁盘标签(GUID: 3A60FB68-50C7-FC43-A633-6F603EA6DE7A)。 The old gpt signature will be removed by a write command. 命令(输入 m 获取帮助):n 分区号 (1-128, 默认 1): 第一个扇区 (2048-100663262, 默认 2048): Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-100663262, 默认 100663262): +512M 命令(输入 m 获取帮助):n 分区号 (2-128, 默认 2): 第一个扇区 (1050624-100663262, 默认 1050624): Last sector, +/-sectors or +/-size{K,M,G,T,P} (1050624-100663262, 默认 100663262): +24G 创建了一个新分区 2,类型为“Linux filesystem”,大小为 24 GiB。 命令(输入 m 获取帮助):l 1 EFI System C12A7328-F81F-11D2-BA4B-00A0C93EC93B 19 Linux swap 0657FD6D-A4AB-43C4-84E5-0933C84B4F4F 20 Linux filesystem 0FC63DAF-8483-4772-8E79-3D69D8477DE4 命令(输入 m 获取帮助):t 分区号 (1,2, 默认 2): 1 分区类型(输入 L 列出所有类型):1 已将分区“Linux filesystem”的类型更改为“EFI System”。 命令(输入 m 获取帮助):w |