parted命令详解
parted是一个用于对分区及其文件系统进行建立、修改、调整、检查、复制等操作的一个工具,它比fdisk更加灵活,功能也更丰富,同时还支持GUID分区表(GUID Partition Table), 这在IA64平台上管理磁盘时非常有用,此外,你还可以用它来检查磁盘的使用状况,在不同的磁盘之间复制数据,甚至是“映象”磁盘——将一个磁盘的安装 完好地复制到另一个磁盘中。
parted同时支持交互模式和非交互模式. 它除了能够进行分区的添加,删除等常见操作外,还可以移动分区, 制作文件系统, 调整文件系统大小, 复制文件系统.
?
删除一个分区
命令格式:
parted device rm partition
实例: 删除分区/dev/sda1
[root@dev3-28 ~]# parted /dev/sda print
?
Model: MAXTOR ATLAS10K5_73SCA (scsi)
Disk /dev/sda: 73.6GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
?
Number? Start?? End???? Size??? Type????? File system? Flags
?1????? 32.3kB? 10.0GB? 10.0GB? primary?? ext3?????????????
?4????? 12.1GB? 73.6GB? 61.5GB? extended???????????????????
?5????? 12.1GB? 20.4GB? 8390MB? logical?? ext3?????????????
?6????? 20.4GB? 32.1GB? 11.6GB? logical?? ext3?????????????
?7????? 32.1GB? 73.6GB? 41.5GB? logical?? ext3?????????????
?
Information: Don't forget to update /etc/fstab, if necessary.????????????
?
[root@dev3-28 ~]# parted /dev/sda rm 1
Information: Don't forget to update /etc/fstab, if necessary.????????????
?
[root@dev3-28 ~]# parted /dev/sda print
?
Model: MAXTOR ATLAS10K5_73SCA (scsi)
Disk /dev/sda: 73.6GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
?
Number? Start?? End???? Size??? Type????? File system? Flags
?4????? 12.1GB? 73.6GB? 61.5GB? extended???????????????????
?5????? 12.1GB? 20.4GB? 8390MB? logical?? ext3?????????????
?6????? 20.4GB? 32.1GB? 11.6GB? logical?? ext3?????????????
?7????? 32.1GB? 73.6GB? 41.5GB? logical?? ext3?????????????
?
Information: Don't forget to update /etc/fstab, if necessary.???????
添加一个分区
命令格式:
parted device mkpart part-type [fs-type] start end
实例: 添加一个大小为3GB的主分区
[root@dev3-28 ~]# parted /dev/sda mkpart primary 32.3kB 3GB????????
[root@dev3-28 ~]# parted /dev/sda print -s???????????????????????
?
Model: MAXTOR ATLAS10K5_73SCA (scsi)
Disk /dev/sda: 73.6GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
?
Number? Start?? End???? Size??? Type????? File system? Flags
?1????? 32.3kB? 3002MB? 3002MB? primary?? ext3?????????????
?
4????? 12.1GB? 73.6GB? 61.5GB? extended???????????????????
?5????? 12.1GB? 20.4GB? 8390MB? logical?? ext3?????????????
?6????? 20.4GB? 32.1GB? 11.6GB? logical?? ext3?????????????
?7????? 32.1GB? 73.6GB? 41.5GB? logical?? ext3???????? ????
格式化分区
命令格式:
parted device mkfs
实例: 对刚刚添加的分区制作文件系统。
[root@dev3-28 ~]# parted /dev/sda mkfs?????
Warning: The ex
isting file system will be destroyed and all data on the partition will be lost. Do you want to continue?
Yes/No? y?????????????????????? ??????????????????????????????????????????
Partition number? 1??????????????????????????????????????????????????????
File system?? [ext2]?????????????????????????????????????????????????????
Information: Don't forget to update /etc/fstab, if necessary.? ???????????
?
[root@dev3-28 ~]# parted /dev/sda print -s?????
?
Model: MAXTOR ATLAS10K5_73SCA (scsi)
Disk /dev/sda: 73.6GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
?
Number? Start?? End???? Size??? Type????? File system? Flags
?1???? ?32.3kB? 3002MB? 3002MB? primary?? ext2?????????????
?4????? 12.1GB? 73.6GB? 61.5GB? extended???????????????????
?5????? 12.1GB? 20.4GB? 8390MB? logical?? ext3?????????????
?6????? 20.4GB? 32.1GB? 11.6GB? logical?? ext3?????????????
?7????? 32.1GB? 73.6GB? 41.5GB? logical?? ext3
调整文件系统大小
命令格式:
parted device resize partition start end
实例: 将分区/dev/sda1的大小增加到5GB。
[root@dev3-28 ~]# parted /dev/sda resize 1 32.3kB 5GB
Warning: You should reinstall your boot loader before rebooting.? Read section 4 of the Parted User documentation for more
information.
Information: Don't forget to update /etc/fstab, if necessary.????????????
?
[root@dev3-28 ~]# parted /dev/sda print -s????????????????
?
Model: MAXTOR ATLAS10K5_73SCA (scsi)
Disk /dev/sda: 73.6GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
?
Number? Start?? End???? Size??? Type????? File system? Flags
?1????? 32.3kB? 5001MB? 5001MB? primary?? ext2?????????????
?4????? 12.1GB? 73.6GB? 61.5GB? extended???????????????????
?5????? 12.1GB? 20.4GB? 8390MB? logical?? ext3?????????????
?6????? 20.4GB? 32.1GB? 11.6GB? logical?? ext3?????????????
?7????? 32.1GB? 73.6GB? 41.5GB? logical?? ext3
移动分区
命令格式:
parted device move partition start end
实例: 移动分区/dev/sda1
[root@dev3-28 ~]# parted /dev/sda move 1 5001MB
End?? [10.0GB]???????????????????????????????????????????????????????????
Warning: You should reinstall your boot loader before rebooting.? Read section 4 of the Parted User documentation for more
information.
Information: Don't forget to update /etc/fstab, if necessary.????????????
?
[root@dev3-28 ~]# parted /dev/sda print -s????????????
?
Model: MAXTOR ATLAS10K5_73SCA (scsi)
Disk /dev/sda: 73.6GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
?
Number? Start?? End???? Size??? Type????? File system? Flags
?1????? 5001MB? 10.0GB? 5001MB? primary?? ext2?????????????
?4????? 12.1GB? 73.6GB? 61.5GB? extended???????????????????
?5????? 12.1GB? 20.4GB? 8390MB? logical?? ext3?????????????
?6????? 20.4GB? 32.1GB? 11.6GB? logical ??ext3?????????????
?7????? 32.1GB? 73.6GB? 41.5GB? logical?? ext3??
注意: 不同于fdisk命令的使用w功能来确认来写入分区表信息, parted命令执行后立即生
效,因此输入时需要谨慎.
Parted 交互模式下的命令
GNU Parted 提供以下命令:
2.4.1 check(检查)
格式:check number ?
检查编号中所指定的文件系统是否有什么错误.。
例:
(parted) check 1
检查分区1上的文件系统.
?
2.4.2 cp(复制)
格式:cp [from-device] from-number to-number ?
将分区 from-number上的文件系统完整地复制到分区to-number 中。分区to-number 上的数据会被全部删除。你可以再指定一个来源硬盘的设备名称 from-device来指定来源分区所在的硬盘。
该命令支持以下文件系统:
* ext2, ext3 (所提供的目标分区必须比源分区要大)
* fat16, fat32
* linux-swap (相当于再目标分区执行mkswap 命令)
* reiserfs (如果安装了libreiserfs库)
例:
(parted) cp /dev/hdb 2 3
将/dev/hdb上的第二个分区的内容复制到第三个分区上。
?
2.4.3 help(帮助)
格式:help [command] ?
输出一个命令的帮助信息
例:
(parted) help resize
输出rezize 命令的帮助信息。
?
2.4.4 mklabel(建立分区表)
格式:mklabel label-type ?
建 立一个 label-type 类型的磁盘分区表。新的分区表不会有任何分区。这个命令通常不会破坏你的数据,但是它有可能让你的数据变得不可读。这是你就需要用到rescue 命令来恢复分区。关于rescue 命令的用法请参见后文。Parted 能在各种分区表上工作。
label-type 必须是一下这些类型:
* bsd
* loop (raw disk access)
* gpt
* mac
* msdos
* pc98
* sun
例:
(parted) mklabel msdos
建立一个MS-DOS格式的分区表。这对于PC而言是一个非常常见的操作。?
?
2.4.5 mkfs(建立文件系统)
格式:mkfs number fs-type ?
在指定的分区上建立指定的文件系统。这个命令会破坏该分区上的所有数据。
该命令支持以下文件系统:
* ext2
* fat16, fat32
* linux-swap
* reiserfs (如果安装了libreiserfs库)
例:
(parted) mkfs 2 fat32
在第二个分区上建立FAT32格式的文件系统。
?
2.4.6 mkpart(建立新分区)
格式:mkpart part-type [fs-type] start end ?
建 立一个新的分区。若要建立非扩展分区,就最好用fs-type来指定文件系统。start和end是新分区开始和结束的具体位置。part-type是以 下类型之一: primary(主分区), extended(扩展分区), logical(逻辑分区). 扩展分区和逻辑分区只对msdos 和dvh分区表有效。
fs-type必须是以下文件系统:
* ext2
* fat16, fat32
* hfs, hfs+, hfsx
* linux-swap
* NTFS
* reiserfs
* ufs
例:
(parted) mkpart logical 0.0 692.1
建立一个包含ext2文件系统的逻辑分区,其位置是从磁盘的开始位置(0.0)到692.1M之间 。
?
2.4.7 mkpartfs(建立分区及其文件系统)
式:mkpartfs part-type fs-type start end ?
建 立一个新的分区,并在上面建立文件系统。与mkpart相似,分区的位置处于begin和end之间,默认的单位是MB.。请勿使用这个命令来恢复一个被 删除了的分区(应使用mkpart)。part-type是以下类型之一: primary(主分区), extended(扩展分区), logical(逻辑分区). 扩展分区和逻辑分区只对msdos 和dvh分区表有效。 fs-type必须是以下文件系统:
* ext2
* fat16, fat32
* linux-swap
* reiserfs (如果安装了libreiserfs库)
例:
(parted) mkpartfs logical ext2 440 670
建立一个a包含ex2格式文件系统的逻辑分区。其开始位置是440 MB,结束位置是670MB。
?
forget2.4.8 move(移动)
格式:move number start end ?
该 命令能将选定的分区在硬盘中移动。start 可以指定一个新的分区的起始位置。不过,你不能将一个分区移到另一个分区上。也就是说,你只能在空闲的地方中移动分区。如果你想改变分区的大小,那么你所需要的命令是resize 。另外,虽然分区被移动了,但它的分区编号是不会改变的。
该命令支持以下文件系统:
* ext2, ext3 (所提供的目标分区必须比源分区要大)
* fat16, fat32
* linux-swap
* reiserfs (如果安装了libreiserfs库)
例:
(parted) move 2 150M 500M
将编号为2的分区移动到硬盘中150M至500M的位置。
?
?
2.4.9 name (命名)
格式:name number name ?
为编号所指定的分区命名(只支持GPT, Mac, MIPS 和PC98 格式的分区)。名字可以用引号括起来。
例:
(parted) name 2 ’Secret Documents’
将第2个分区命名为 ’Secret Documents’。
?
2.4.10 print (输出信息)
格式:print [number] ?
输出parted正在操作的硬盘的分区表的信息,或者是某一个具体分区的信息。
例:
(parted) print
Disk geometry for /dev/hda: 0.000-2445.679 megabytes
Disk label type: msdos
Minor Start End Type Filesystem Flags
1 0.031 945.000 primary fat32 boot, lba
2 945.000 2358.562 primary ext2
3 2358.562 2445.187 primary linux-swap
(parted) print 1
Minor: 1
Flags: boot, lba
File System: fat32
Size: 945.000Mb (0%)
Minimum size: 84.361Mb (0%)
Maximum size: 2445.679Mb (100%)
?
2.4.11 quit (退出)
格式:quit ?
退出Parted.
只有当Parted退出后,Linux内核才会知道磁盘的设置已经被改变了。但是实际上只要你一执行一条命令,更改马上就会写入磁盘。不过,磁盘缓存有可能延缓写入的操作。
?
2.4.12 rescue (恢复)
格式:rescue start end ?
如果你不小心用Parted的rm命令删除了一个分区,那么这个命令可以帮你恢复。你需要给出所误删的分区的大概的开始和结束的位置。Parted 就会在你给出的磁盘区域内去寻,如果
到这个分区,那么Parted 就会询问你是否重新建立这个分区。
例:
(parted) print
Disk geometry for /dev/hdc: 0.000-8063.507 megabytes
Disk label type: msdos
Minor Start End Type Filesystem Flags
1 0.031 8056.032 primary ext3
(parted) rm
Partition number? 1
(parted) print
Disk geometry for /dev/hdc: 0.000-8063.507 megabytes
Disk label type: msdos
Minor Start End Type Filesystem Flags
糟糕了!我们不小心删除了这个ext3分区。不怕,Parted可以将它起死回生。
(parted) rescue
Start? 0
End? 8056
Information: A ext3 primary partition was found at 0.031MB ->
8056.030MB. Do you want to add it to the partition table?
Yes/No/Cancel? y
(parted) print
Disk geometry for /dev/hdc: 0.000-8063.507 megabytes
Disk label type: msdos
Minor Start End Type Filesystem Flags
1 0.031 8056.032 primary ext3
呵呵。这就恢复了。
?
2.4.13 resize (调整大小)
格式:resize number start end ?
将编号所指定的分区调整大小。分区的开始位置和结束位置由start和end决定。resize不会改变分区的编号。注意,如果更改扩展分区的大小,那么你必须保证新的分区大小能够容纳里面的逻辑分区。另外,在调整大小前你无须对分区进行碎片整理。
该命令支持以下文件系统:
* ext2, ext3 – 限制:新的分区开始位置必须和原来的开始位置相同。也就是说,你只能向后扩展分区的大小。
* fat16, fat32
* hfs, hfs+, hfsx – 限制:新的分区开始位置必须和原来的开始位置相同。而且新的end必须小于原来的end。也就是说,你只能够缩小分区。
* linux-swap
* reiserfs (如果安装了libreiserfs库)
例:
(parted) resize 3 200M 850M
改变编号为3的分区的大小。其新的位置是200MB至 850MB 之间。
?
2.4.14 rm (删除分区)
格式:rm number ?
将 编号所指定的分区删除。如果你误删了某个分区,那么你还可以用mkpart来挽救它(而不是用mkpartds)。注意,如果你使用的是MSDOS格式的 分区表,那么假如你删除了一个逻辑分区,那么该分区后面的逻辑分区的编号都会相应地向前改变。例如,你删除了编号为6的逻辑分区,那么后面的7、8号逻辑 分区的编号将会改变,分别变成6、7号逻辑分区。若在Linux下。这意味着你可能要改变/etc/fstab文件。
例:
(parted) rm 3
将编号为3的分区删除。
?
2.4.15 select (选择设备)
格式:select device ?
选择Parted将要编辑的磁盘设备。这个磁盘设备可以是一个Linux硬盘设备,一个软盘、一个软RAID磁盘阵或者是LVM逻辑卷。
例:
(parted) select /dev/hdb
选择/dev/hdb作为Parted所要编辑的设备。
?
2.4.16 set (设置标记)
格式:set number flag state ?
更改编号所指定的分区

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。