超大磁盘分区工具parted使用介绍(一)
使用parted
GNU Parted有兩種運行模式:命令行模式和交互模式。
1.命令行模式的選項
當你調(diào)用命令行模式時,parted的語法是這樣的:
格式1# parted [option] device
格式2# parted [option] device [command [argument]]
格式1:用于進入parted的交互模式,在該模式下輸入parted的子命令對指定的硬盤進行分區(qū)等操作。quit命令用于退出交互模式。
格式2:直接在命令行方式下對指定的硬盤進行分區(qū)等操作。
有幾個選項可以供你使用。對于其他涉及分區(qū)細節(jié)的Parted命令,請參見下一節(jié)。選項以一個橫杠開頭,而Parted命令前則沒有這個橫杠。
選項:
| 選項 |
說明 |
|
-h(--help) |
顯示幫助信息 |
|
-i(--interactive) |
在必要時提示用戶;進入交互模式 |
|
-l(--list) |
顯示所有磁盤設備的分區(qū)表 |
|
-s(--script) |
從不提示用戶 |
|
-v(--version) |
顯示版本 |
命令:
| 命令 |
描述 |
|
check minor-num |
執(zhí)行文件系統(tǒng)的簡單檢查 |
|
cp from to |
把文件系統(tǒng)從一個分區(qū)復制到另一個分區(qū),from和to是分區(qū)的次要號碼 |
|
Help |
顯示可用的命令列表 |
|
mklable label |
為分區(qū)表創(chuàng)建磁盤標簽 |
|
mkfs minor-num file-system-type |
創(chuàng)建類型為file-system-type的文件系統(tǒng) |
|
mkpart part-type fs-type start-mb end-mb |
不創(chuàng)建新文件系統(tǒng),而制作分區(qū) |
|
mkpartfs part-type fs-type start-mb end-mb |
制作分區(qū)并創(chuàng)建指定的文件系統(tǒng) |
|
move minor-num start-mb end-mb |
移動分區(qū) |
|
name minor-num name |
僅為MAC和PC98磁盤標簽的分區(qū)命名 |
|
|
顯示分區(qū)表 |
|
rescue start-mb end-mb |
拯救一個丟失的分區(qū),從“start-mb”到“end-mb” |
|
resize minor-num start-mb end-mb |
重新劃分分區(qū)大小,從“start-mb”到“end-mb” |
|
rm minor-num |
刪除分區(qū) |
|
select device |
選擇另一個設備來配置 |
|
set minor-num flag state |
在分區(qū)上設置標志:state要么是on,要么是off |
|
Quit |
退出parted |
子命令:
| 命令 |
說明 |
|
Help [command] |
打印命令的幫助信息,或指定命令的幫助信息 |
|
print [free|number|all] |
顯示分區(qū)表,指定編號的分區(qū),或所有設備的分區(qū)表 |
|
mkpart PART-TYPE [FS-TYPE] START END |
創(chuàng)建新分區(qū)。PART-TYPE是以下類型之一:primary(主分區(qū))、extended(擴展分區(qū))、logical(邏輯分區(qū))、START和END是新分區(qū)開始和結(jié)束的具體位置 |
|
rm Number |
刪除指定編號NUMBER的分區(qū) |
|
set Number FLAG STATE |
對指定編號NUMBER的分區(qū)設置分區(qū)標記FLAG。對于PC常用msdos分區(qū)表來說,分區(qū)標記FLAG可有如下取值:“boot(引導)”、“hidden(隱藏)”、“raid(軟RAID磁盤陣列)”、 “l(fā)vm(邏輯卷)”、“l(fā)ba(LBA,Logic Block Addressing模式)”。狀態(tài)STATE的取值是:on或off |
|
unit UNIT |
設置默認輸出時用UNIT表示磁盤大小,UNIT的常用取值可以為:“MB”、“GB”、“%(占整個磁盤設備的百分之多少)”、“compact(人類易讀方式,類似于df命令中-h參數(shù)作用)”、“s(扇區(qū))”、 “cyl(柱面)”、“chs(柱面cylinders:磁頭,heads:扇區(qū),sectors的地址)” |
|
mkfs NUMBER FS-TYPE |
對指定編號NUMBER的分區(qū)創(chuàng)建指定類型FS-TYPE的文件系統(tǒng) |
|
mkpartfs PART-TYPE FS-TYPE START END |
創(chuàng)建新分區(qū)同時創(chuàng)建文件系統(tǒng)。FS-TYPE是以下類型之一:ext2、fat16、fat32、linux-swap、ntfs、reiserfs、ufs等 |
|
cp [FROM-DEVICE] FROM-NUMBER TO-NUMBER |
將分區(qū)FROM-NUMBER上的文件系統(tǒng)完整地復制到分區(qū)TO-NUMBER中,作為可選項,還可以指定一個來源硬盤的設備名稱FROM-DEVICE,若省略可選項則在當前設備上進行復制 |
|
move NUMBER START END |
將指定編號NUMBER的分區(qū)移動到從START開始END結(jié)束的位置上。注意:(1)只能將分區(qū)移動到空閑空間中;(2)雖然分區(qū)被移動了,但它的分區(qū)編號是不會改變的 |
|
resize NUMBER START END |
對指定編號NUMBER的分區(qū)調(diào)整大小。分區(qū)的開始位置和結(jié)束位置由START和END決定 |
|
check NUMBER |
檢查指定編號NUMBER分區(qū)中的文件系統(tǒng)是否有什么錯誤 |
|
rescue START END |
恢復靠近位置START和END之間的分區(qū) |
|
mklabel,mktable LABEL-TYPE |
創(chuàng)建一個新的LABEL-TYPE類型的空磁盤分區(qū)表,對于PC而言msdos是常用的LABEL-TYPE。若是用GUID分區(qū)表,LABEL-TYPE應該為gpt |
|
name NUMBER NAME |
為指定編號NUMBER的分區(qū)命名為NAME |
2.Parted 交互模式下的命令
GNU Parted 提供以下命令:
(1)check(檢查)
格式:check number
檢查編號中所指定的文件系統(tǒng)是否有什么錯誤.。
例:
(parted) check 1
檢查分區(qū)1上的文件系統(tǒng).
(2)cp(復制)
格式:cp [from-device] from-number to-number
將分區(qū) from-number上的文件系統(tǒng)完整地復制到分區(qū)to-number 中。分區(qū)to-number 上的數(shù)據(jù)會被全部刪除。你可以再指定一個來源硬盤的設備名稱 from-device來指定來源分區(qū)所在的硬盤。
該命令支持以下文件系統(tǒng):
* ext2, ext3 (所提供的目標分區(qū)必須比源分區(qū)要大)
* fat16, fat32
* linux-swap (相當于再目標分區(qū)執(zhí)行mkswap 命令)
* reiserfs (如果安裝了libreiserfs庫)
例:
(parted) cp /dev/hdb 2 3
將/dev/hdb上的第二個分區(qū)的內(nèi)容復制到第三個分區(qū)上。
(3)help(幫助)
格式:help [command]
輸出一個命令的幫助信息
例:
(parted) help resize
輸出rezize 命令的幫助信息。
(4)mklabel(建立分區(qū)表)
格式:mklabel label-type
建立一個 label-type 類型的磁盤分區(qū)表。新的分區(qū)表不會有任何分區(qū)。這個命令通常不會破壞你的數(shù)據(jù),但是它有可能讓你的數(shù)據(jù)變得不可讀。這是你就需要用到rescue 命令來恢復分區(qū)。關于rescue 命令的用法請參見后文。Parted 能在各種分區(qū)表上工作。
label-type 必須是一下這些類型:
* bsd
* loop (raw disk access)
* gpt
* mac
* msdos
* pc98
* sun
例:
(parted) mklabel msdos
建立一個MS-DOS格式的分區(qū)表。這對于PC而言是一個非常常見的操作。
(5)mkfs(建立文件系統(tǒng))
格式:mkfs number fs-type
在指定的分區(qū)上建立指定的文件系統(tǒng)。這個命令會破壞該分區(qū)上的所有數(shù)據(jù)。
該命令支持以下文件系統(tǒng):
* ext2
* fat16, fat32
* linux-swap
* reiserfs (如果安裝了libreiserfs庫)
例:
(parted) mkfs 2 fat32
在第二個分區(qū)上建立FAT32格式的文件系統(tǒng)。
(6)mkpart(建立新分區(qū))
格式:mkpart part-type [fs-type] start end
建立一個新的分區(qū)。若要建立非擴展分區(qū),就最好用fs-type來指定文件系統(tǒng)。start和end是新分區(qū)開始和結(jié)束的具體位置。part-type是以下類型之一: primary(主分區(qū)), extended(擴展分區(qū)), logical(邏輯分區(qū)). 擴展分區(qū)和邏輯分區(qū)只對msdos 和dvh分區(qū)表有效。
fs-type必須是以下文件系統(tǒng):
* ext2
* fat16, fat32
* hfs, hfs+, hfsx
* linux-swap
* NTFS
* reiserfs
* ufs
例:
(parted) mkpart logical 0.0 692.1
建立一個包含ext2文件系統(tǒng)的邏輯分區(qū),其位置是從磁盤的開始位置(0.0)到692.1M之間 。
(7)mkpartfs(建立分區(qū)及其文件系統(tǒng))
格式:mkpartfs part-type fs-type start end
建立一個新的分區(qū),并在上面建立文件系統(tǒng)。與mkpart相似,分區(qū)的位置處于begin和end之間,默認的單位是MB.。請勿使用這個命令來恢復一個被刪除了的分區(qū)(應使用mkpart)。part-type是以下類型之一: primary(主分區(qū)), extended(擴展分區(qū)), logical(邏輯分區(qū)). 擴展分區(qū)和邏輯分區(qū)只對msdos 和dvh分區(qū)表有效。 fs-type必須是以下文件系統(tǒng):
* ext2
* fat16, fat32
* linux-swap
* reiserfs (如果安裝了libreiserfs庫)
例:
(parted) mkpartfs logical ext2 440 670
建立一個a包含ex2格式文件系統(tǒng)的邏輯分區(qū)。其開始位置是440 MB,結(jié)束位置是670MB。
(8)move(移動)
格式:move number start end
該命令能將選定的分區(qū)在硬盤中移動。start 可以指定一個新的分區(qū)的起始位置。不過,你不能將一個分區(qū)移到另一個分區(qū)上。也就是說,你只能在空閑的地方中移動分區(qū)。如果你想改變分區(qū)的大小,那么你所需要的命令是resize 。另外,雖然分區(qū)被移動了,但它的分區(qū)編號是不會改變的。
該命令支持以下文件系統(tǒng):
* ext2, ext3 (所提供的目標分區(qū)必須比源分區(qū)要大)
* fat16, fat32
* linux-swap
* reiserfs (如果安裝了libreiserfs庫)
例:
(parted) move 2 150M 500M
將編號為2的分區(qū)移動到硬盤中150M至500M的位置。
(9)name (命名)
格式:name number name
為編號所指定的分區(qū)命名(只支持GPT, Mac, MIPS 和PC98 格式的分區(qū))。名字可以用引號括起來。
例:
(parted) name 2 ’Secret Documents’
將第2個分區(qū)命名為 ’Secret Documents’。
(10)print (輸出信息)
格式:print [number]
輸出parted正在操作的硬盤的分區(qū)表的信息,或者是某一個具體分區(qū)的信息。
例:
(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%)
(11)quit (退出)
格式:quit
退出Parted.
只有當Parted退出后,Linux內(nèi)核才會知道磁盤的設置已經(jīng)被改變了。但是實際上只要你一執(zhí)行一條命令,更改馬上就會寫入磁盤。不過,磁盤緩存有可能延緩寫入的操作。
(12)rescue (恢復)
格式:rescue start end
如果你不小心用Parted的rm命令刪除了一個分區(qū),那么這個命令可以幫你恢復。你需要給出所誤刪的分區(qū)的大概的開始和結(jié)束的位置。Parted 就會在你給出的磁盤區(qū)域內(nèi)去尋找,如果找到這個分區(qū),那么Parted 就會詢問你是否重新建立這個分區(qū)。
例:
(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分區(qū)。不怕,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
呵呵。這就恢復了。
(13)resize (調(diào)整大小)
格式:resize number start end
將編號所指定的分區(qū)調(diào)整大小。分區(qū)的開始位置和結(jié)束位置由start和end決定。resize不會改變分區(qū)的編號。注意,如果更改擴展分區(qū)的大小,那么你必須保證新的分區(qū)大小能夠容納里面的邏輯分區(qū)。另外,在調(diào)整大小前你無須對分區(qū)進行碎片整理。
該命令支持以下文件系統(tǒng):
* ext2, ext3 – 限制:新的分區(qū)開始位置必須和原來的開始位置相同。也就是說,你只能向后擴展分區(qū)的大小。
* fat16, fat32
* hfs, hfs+, hfsx – 限制:新的分區(qū)開始位置必須和原來的開始位置相同。而且新的end必須小于原來的end。也就是說,你只能夠縮小分區(qū)。
* linux-swap
* reiserfs (如果安裝了libreiserfs庫)
例:
(parted) resize 3 200M 850M
改變編號為3的分區(qū)的大小。其新的位置是200MB至 850MB 之間。
(14)rm (刪除分區(qū))
格式:rm number
將編號所指定的分區(qū)刪除。如果你誤刪了某個分區(qū),那么你還可以用mkpart來挽救它(而不是用mkpartds)。注意,如果你使用的是MSDOS格式的分區(qū)表,那么假如你刪除了一個邏輯分區(qū),那么該分區(qū)后面的邏輯分區(qū)的編號都會相應地向前改變。例如,你刪除了編號為6的邏輯分區(qū),那么后面的7、8號邏輯分區(qū)的編號將會改變,分別變成6、7號邏輯分區(qū)。若在Linux下。這意味著你可能要改變/etc/fstab文件。
例:
(parted) rm 3
將編號為3的分區(qū)刪除。
(15)select (選擇設備)
格式:select device
選擇Parted將要編輯的磁盤設備。這個磁盤設備可以是一個Linux硬盤設備,一個軟盤、一個軟RAID磁盤陣或者是LVM邏輯卷。
例:
(parted) select /dev/hdb
選擇/dev/hdb作為Parted所要編輯的設備。
(16)set (設置標記)
格式:set number flag state
更改編號所指定的分區(qū)的標記。哪些標記可用是由你的分區(qū)表決定的。標記有兩種狀態(tài),要么是on(生效),要么是off(失效)。
‘boot’ (用于Mac, MS-DOS, PC98分區(qū)表) - 如果你想從某個分區(qū)引導,那么你應該將這個分區(qū)的boot標記設置為on。對于MS-DOS分區(qū)表,一個硬盤上只能有一個分區(qū)是可引導的。如果你將 LILO裝到某個分區(qū)上,那么這個分區(qū)一定是可引導的(也就是說你應該將安裝了LILO的分區(qū)的boot標記設為on)。對于PC98分區(qū)表,所有 ext3分區(qū)都必須是設置為可引導的。(Parted會對此強行操作)
‘lba’ (用于MS-DOS分區(qū)表)-這個標記可以告訴MS DOS、MS Windows 9x和 MS Windows ME等系統(tǒng)使用LBA(Logic Block Addressing)模式。
‘root’ (用于Mac分區(qū)表) - 如果某分區(qū)是Linux系統(tǒng)的根分區(qū),那么就要對該分區(qū)啟用這個標記。
‘swap’ (用于Mac分區(qū)表) - 如果某分區(qū)是Linux系統(tǒng)的交換分區(qū),那么就要對該分區(qū)啟用這個標記。
‘hidden’ (用于MS-DOS, PC98分區(qū)表) - 啟用這個標記能使一個分區(qū)‘隱藏’起來。(僅對微軟的操作系統(tǒng)有效)
‘raid’ (用于MS-DOS分區(qū)表)-啟用這個標記能夠告訴Linux系統(tǒng)這是一個軟RAID磁盤陣。
‘LVM’(用于MS-DOS分區(qū)表)-啟用這個標記能夠告訴Linux系統(tǒng)這是一個LVM邏輯。
使用print命令能夠?qū)⑺心苡玫臉擞涳@示出來。
例:
(parted) set 1 boot on
將編號為1的分區(qū)的boot標記設定為on(生效)
(17)unit (設置單位)
格式:unit unit
為Parted選擇一個表示磁盤大小的單位。之后,凡是關于磁盤的位置(如分區(qū)的開始位置等等)的數(shù)字都是使用這個單位,你就可以不用給出單位后綴。(如:如果你選擇了MB作為單位,那么512就代表512MB,你就不用額外打多個MB之類的東西)你可以使用下列單位:
‘s’ :扇區(qū) (通常一個扇區(qū)的大小是512個字節(jié))
‘B’ byte
‘kB’ kilobyte (1000 bytes)
‘MB’ megabyte (1000000 bytes)
‘GB’ gigabyte (1000000000 bytes)
‘TB’ terabyte (1000000000000 bytes)
‘%’ 表示占整個磁盤設備的百分之多少(顯而易見,這個數(shù)字必須在0和100之間)
‘cyl’ 柱面(這個具體的位置和BIOS的CHS地址有關)
‘chs’ 柱面(cylinders),磁頭(heads),扇區(qū)(sectors)的地址(這個具體的位置和BIOS的CHS地址有關)
‘compact’ 這是一個比較奇怪的單位。輸入時是使用MB作為單位,輸出時的單位有可能不同,但是它確保輸出時的單位能使用戶一眼就看得出來磁盤的大小的,而不用心里默默地進行復雜的換算。(例如。它會使用1GB而不是使用1024MB,使用2MB而不是2048KB)
一般來說,Parted只會使用默認的單位進行輸出,除非輸入的時候你沒有給出數(shù)字的后綴。你可以在輸入的數(shù)字后面加上一個單位來代替默認的單位(單位和數(shù)字之間是沒有空格的)。不過若你使用CHS地址作為單位時,你就不需要給定后綴。使用chs地址的格式是:“柱面:磁頭:扇區(qū)”。對你所給出的數(shù)字地址,Parted可能進行一些調(diào)整。例如,當你使用GB作為單位時,分區(qū)位置可能會有+-500M的誤差。不過Parted總會盡量地使誤差盡量地小。當然,你可以使用單位s(也就是扇區(qū))來指定一個精確的位置。若無法做到精確,Parted會讓你給出一個最接近的解決方案。另外,若你給出的數(shù)字為負數(shù),那么就表示從磁盤的末尾開始計算。如“-1s”就表示硬盤最后一個扇區(qū),就是硬盤的最末尾處。
例:
(parted) unit compact
(parted) print
Disk geometry for /dev/hda: 0kB - 123GB
Disk label type: msdos
Number Start End Size Type File system Flags
1 32kB 1078MB 1077MB primary reiserfs boot
2 1078MB 2155MB 1078MB primary linux-swap
3 2155MB 123GB 121GB extended
5 2155MB 7452MB 5297MB logical reiserfs
(parted) unit chs print
Disk geometry for /dev/hda: 0,0,0 - 14946,225,62
BIOS cylinder,head,sector geometry: 14946,255,63. Each cylinder
is 8225kB.
Disk label type: msdos
Number Start End Type File system Flags
1 0,1,0 130,254,62 primary reiserfs boot
2 131,0,0 261,254,62 primary linux-swap
3 262,0,0 14945,254,62 extended
5 262,2,0 905,254,62 logical reiserfs
(parted) unit mb print
Disk geometry for /dev/hda: 0MB - 122942MB
Disk label type: msdos
Number Start End Size Type File system Flags
1 0MB 1078MB 1077MB primary reiserfs boot
2 1078MB 2155MB 1078MB primary linux-swap
3 2155MB 122935MB 120780MB extended
5 2155MB 7452MB 5297MB logical reiserfs
link:http://hi.baidu.com/eao110/blog/item/379c368788b3db30c75cc309.html
總結(jié)
以上是生活随笔為你收集整理的超大磁盘分区工具parted使用介绍(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php截取字符串函数 左右,php截取中
- 下一篇: matlab广泛用于什么,目前,Matl