歡迎您光臨本站 註冊首頁

red hat linux parted 應用

←手機掃碼閱讀     火星人 @ 2014-03-23 , reply:0

parted是redhat等linux品牌內置的一個分區調整工具,也同樣可以做到fdisk類似的功能,並且方便的調整分區的容量。

廢話不說,開始:

Parted 交互模式下的命令

GNU Parted 提供以下命令:


check(檢查)

格式:check number

檢查編號中所指定的文件系統是否有什麼錯誤.。

例:

(parted) check 1

信息: ext2 文件系統通過基本檢查。至於更廣泛的檢查,請使用 e2fsck 程序






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) print

磁碟 /dev/sdb: 3146MB

數字 開始: End Size 類型 文件系統 標誌

1 31.7kB 302MB 302MB 主分區 ext2

2 302MB 705MB 403MB 主分區 ext2



(parted) cp /dev/sdb 1 2

cp /dev/sdb 1 2

原始塊複製... 94%


(parted)

/*查看第二個分區,第一個分區的歸檔文件已經從拷貝過來,同時驗證文件沒有問題*/

如果是ext3文件系統,則會給出下面的錯誤:

(parted) cp /dev/sdb 1 2

錯誤: File system has an incompatible feature enabled.

註:我在測試的時候,發現了這樣的一個現象:首先parted目前對CP的功能支持EXT2但不支持EXT3,其他文件系統,我沒有測試。如果你用 mkfs.ext2命令來對分區做文件系統,做CP的時候,也會給出``File system has an incompatible feature enabled. ``的提示,你需要使用parted自己的mkfs子命創建文件系統才能執行CP功能,我不太清楚parted自身的mkfs和系統自帶的 mkfs.ext2在做文件系統的時候有什麼差別,畢竟ext2的定義是一樣的呀,那麼在組織文件結構的時候應該是一致的,這個需要有時間在去看看了。

所以,為了以後能夠用到這個功能,分區的時候的可以使用parted,也可以使用fdisk,但是做文件系統的時候,只能使用parted自己的mkfs。

不過,現在,還有誰使用ext2嗎?當然我們變態的使用這個功能,需要cp的時候,先降級為ext2,完成後,再升級為ext3。


help(幫助)

格式:help [command]

輸出一個命令的幫助信息

例:

(parted) help resize

resize NUMBER START END resize partition NUMBER and its file system


NUMBER 是 Linux 使用的分區編號。在 msdos 磁碟標籤中,主分區編號為 1 - 4,邏輯分區從 5 開始。

START and END are disk locations, such as 4GB or 10%. Negative values count from the end of the disk. For example,

-1s specifies exactly the last sector.


分區必須具有以下的其中一個文件系統類型: ext3, ext2, fat32, fat16, hfsx, hfs+, hfs, linux-swap


mklabel(建立磁碟分區表類型)

格式:mklabel label-type

建立一個label-type類型的磁碟分區表類型。新的分區表類型不會有任何分區操作。這個命令通常不會破壞你的數據,但是它有可能讓你 的數據變得不可讀(你可以嘗試將你的磁碟分區類型-默認是msdos-改成gpt試試)。這是你就需要用到rescue命令來恢復分區。關於rescue 命令的用法請參見第。Parted 能在各種分區表上工作。

label-type 必須是一下這些類型:


bsd
loop (raw disk access)
gpt
mac
msdos
pc98
sun
例:
(parted) mklabel msdos

建立一個MS-DOS格式的分區表。這對於PC而言是一個非常常見的操作


mkfs(建立文件系統)

格式:mkfs number fs-type

在指定的分區上建立指定的文件系統。這個命令會破壞該分區上的所有數據。

該命令支持以下文件系統:


ext2
fat16, fat32
linux-swap
reiserfs (如果安裝了libreiserfs庫)
例:
(parted) mkfs 2 fat32

在第二個分區上建立FAT32格式的文件系統


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之間


mkpartfs(建立分區及其文件系統)

格式:mkpartfs part-type fs-type start end

建立一個新的分區,並在上面建立文件系統。與mkpart相似,分區的位置處於begin和end之間,默認的單位是MB.。請勿使用這個命令來恢復一個被刪除了的分區(應使用mkpart)。part-type是以下類型之一:

primary(主分區), extended(擴展分區), logical(邏輯分區). 擴展分區和邏輯分區只對msdos和dvh分區表類型有效。 fs-type必須是以下文件系統:


ext2 (不支持ext3)
fat16, fat32
linux-swap
reiserfs (如果安裝了libreiserfs庫)
例:
(parted) mkpartfs logical ext2 440 670

建立一個包含ex2格式文件系統的邏輯分區。其開始位置是440 MB,結束位置是670MB


move(移動)

格式:move number start end

該命令能將選定的分區在硬碟中移動。start可以指定一個新的分區的起始位置。不過,你不能將一個分區移到另一個分區上。也就是說,你只能在空閑的地方中移動分區。如果你想改變分區的大小,那麼你所需要的命令是resize,見第節。另外,雖然分區被移動了,但它的分區編號是不會改變的。

該命令支持以下文件系統:


ext2, ext3 (所提供的目標分區必須比源分區要大)
fat16, fat32
linux-swap
reiserfs (如果安裝了libreiserfs庫)
例:
(parted)p

........

5 705MB 1207MB 502MB 邏輯分區 ext2

........


(parted) move

分區編號? 5

起始點? 1210

結束點? [1712MB]?

原始塊複製... 13% (剩餘時間 00:54)


(parted)p

.......

5 1210MB 1712MB 502MB 邏輯分區 ext2

........

註:主分區和邏輯分區之間不能互相移動


name (命名)

格式:name number name

為編號所指定的分區命名(只支持GPT, Mac, MIPS 和PC98 格式的分區)。名字可以用引號括起來。

例:

(parted) name 2 』Secret Documents』

將第2個分區命名為 』Secret Documents』。


print (輸出信息)

格式:print [number]

輸出parted正在操作的硬碟的分區表的信息,或者是某一個具體分區的信息。

例:

(parted) print

磁碟 /dev/sdb: 3146MB

Sector size (logical/physical): 512B/512B

分區表:msdos

數字 開始: End Size 類型 文件系統 標誌

2 302MB 705MB 403MB 主分區 ext2

1 705MB 1008MB 303MB 主分區 ext2

3 2000MB 3146MB 1146MB 擴展分區 lba

5 2000MB 2100MB 100MB 邏輯分區 ext2


(parted) print 1

Minor:1

標誌:

文件系統:ext2

大小: 303MB (9.62%)

最小尺寸: 19.5MB (0.62%)

最大尺寸: 3146MB (100%)


quit (退出)

格式:quit

退出Parted.

只有當Parted退出后,Linux內核才會知道磁碟的設置已經被改變了。但是實際上只要你一執行一條命令,更改馬上就會寫入磁碟。不過,磁碟緩存有可能延緩寫入的操作。



rescue (恢復)

格式:rescue start end

如果你不小心用Parted的rm命令刪除了一個分區,那麼這個命令可以幫你恢復。你需要給出所誤刪的分區的大概的開始和結束的位置。Parted 就會在你給出的磁碟區域內去尋找,如果找到這個分區,那麼Parted 就會詢問你是否重新建立這個分區。

例:

/*未刪除時的分區列表*/

(parted) p

磁碟 /dev/sdb: 3146MB

Sector size (logical/physical): 512B/512B

分區表:msdos

數字 開始: End Size 類型 文件系統 標誌

2 302MB 705MB 403MB 主分區 ext2

1 705MB 1008MB 303MB 主分區 ext2

3 2000MB 3146MB 1146MB 擴展分區 lba

5 2000MB 2100MB 100MB 邏輯分區 ext2


(parted) rm 1 /*刪除第一個分區 */


/*刪除后的分區列表*/

(parted) p

磁碟 /dev/sdb: 3146MB

Sector size (logical/physical): 512B/512B

分區表:msdos

數字 開始: End Size 類型 文件系統 標誌

2 302MB 705MB 403MB 主分區 ext2

3 2000MB 3146MB 1146MB 擴展分區 lba

5 2000MB 2100MB 100MB 邏輯分區 ext2


/*開始找回*/

(parted) rescue 700 1100


(parted) p

磁碟 /dev/sdb: 3146MB

Sector size (logical/physical): 512B/512B

分區表:msdos

數字 開始: End Size 類型 文件系統 標誌

2 302MB 705MB 403MB 主分區 ext2

1 705MB 1008MB 303MB 主分區 ext2

3 2000MB 3146MB 1146MB 擴展分區 lba

5 2000MB 2100MB 100MB 邏輯分區 ext2

/*由此可見分區已經找到了*/



resize (調整大小)

格式:resize number start end

將編號所指定的分區調整大小。分區的開始位置和結束位置由start和end決定。resize不會改變分區的編號。注意,如果更改擴展分區的大小,那麼你必須保證新的分區大小能夠容納裡面的邏輯分區。另外,在調整大小前你無須對分區進行碎片整理。

該命令支持以下文件系統:


ext2, ext3 - 限制:新的分區開始位置必須和原來的開始位置相同。也就是說,你只能向後擴展分區的大小。
fat16, fat32
hfs, hfs+, hfsx - 限制:新的分區開始位置必須和原來的開始位置相同。而且新的end必須小於原來的end。也就是說,你只能夠縮小分區。
linux-swap
reiserfs (如果安裝了libreiserfs庫)
例:
(parted) p

數字 開始: End Size 類型 文件系統 標誌

1 705MB 1008MB 303MB 主分區 ext2


(parted) resize 1 705 1200


(parted) p

數字 開始: End Size 類型 文件系統 標誌

1 705MB 1201MB 496MB 主分區 ext2


rm (刪除分區)

格式:rm number

將編號所指定的分區刪除。如果你誤刪了某個分區,那麼你還可以用mkpart來挽救它(而不是用mkpartds)。注意,如果你使用的是MSDOS格式 的分區表,那麼假如你刪除了一個邏輯分區,那麼該分區後面的邏輯分區的編號都會相應地向前改變。例如,你刪除了編號為6的邏輯分區,那麼後面的7、8號邏 輯分區的編號將會改變,分別變成6、7號邏輯分區。若在Linux下。這意味著你可能要改變/etc/fstab文件。

例:

(parted) rm 3

將編號為3的分區刪除。


select (選擇設備)

格式:select device

選擇Parted將要編輯的磁碟設備。這個磁碟設備可以是一個Linux硬碟設備,一個軟盤、一個軟RAID磁碟陣或者是LVM邏輯卷。

例:

(parted) select /dev/sdb

使用 /dev/sdb


set (設置標記)

格式:set number flag state

更改編號所指定的分區的標記。哪些標記可用是由你的分區表決定的。標記有兩種狀態,要麼是on(生效),要麼是off(失效)。


『boot』(用於Mac,MS-DOS,PC98分區表) - 如果你想從某個分區引導,那麼你應該將這個分區的boot標記設置為on。對於MS-DOS分區表,一個硬碟上只能有一個分區是可引導的。如果你將 LILO裝到某個分區上,那麼這個分區一定是可引導的(也就是說你應該將安裝了LILO的分區的boot標記設為on)。對於PC98分區表,所有 ext3分區都必須是設置為可引導的。(Parted會對此強行操作)
『lba』 (用於MS-DOS分區表)-這個標記可以告訴MS DOS、MS Windows 9x和 MS Windows ME等系統使用LBA(Logic Block Addressing)模式。
『root』 (用於Mac分區表) - 如果某分區是Linux系統的根分區,那麼就要對該分區啟用這個標記。
『swap』 (用於Mac分區表) - 如果某分區是Linux系統的交換分區,那麼就要對該分區啟用這個標記。
『hidden』 (用於MS-DOS, PC98分區表) - 啟用這個標記能使一個分區『隱藏』起來。(僅對微軟的操作系統有效)
『raid』 (用於MS-DOS分區表)-啟用這個標記能夠告訴Linux系統這是一個軟RAID磁碟陣。
『LVM』(用於MS-DOS分區表)-啟用這個標記能夠告訴Linux系統這是一個LVM邏輯。
使用print命令能夠將所有能用的標記顯示出來。
例:

(parted) set 1 boot on

將編號為1的分區的boot標記設定為on(生效)



unit (設置單位)

格式:unit unit

為Parted選擇一個表示磁碟大小的單位。之後,凡是關於磁碟的位置(如分區的開始位置等等)的數字都是使用這個單位,你就可以不用給出單位後綴。(如:如果你選擇了MB作為單位,那麼512就代表512MB,你就不用額外打多個MB之類的東西)你可以使用下列單位:


『s』 :扇區 (通常一個扇區的大小是512個位元組)
『B』 byte
『kB』 kilobyte (1000 bytes)
『MB』 megabyte (1000000 bytes)
『GB』 gigabyte (1000000000 bytes)
『TB』 terabyte (1000000000000 bytes)
『%』 表示占整個磁碟設備的百分之多少(顯而易見,這個數字必須在0和100之間)
『cyl』 柱面(這個具體的位置和BIOS的CHS地址有關)
『chs』 柱面(cylinders),磁頭(heads),扇區(sectors)的地址(這個具體的位置和BIOS的CHS地址有關)
『compact』這是一個比較奇怪的單位。輸入時是使用MB作為單位,輸出時的單位有可能不同,但是它確保輸出時的單位能使用戶一眼就看得出來 磁碟的大小的,而不用心裡默默地進行複雜的換算。(例如。它會使用1GB而不是使用1024MB,使用2MB而不是2048KB)
一般來說,Parted只會使用默認的單位進行輸出,除非輸入的時候你沒有給出數字的後綴。你可以在輸入的數字後面加上一個單位來代替默認的單位(單位和 數字之間是沒有空格的)。不過若你使用CHS地址作為單位時,你就不需要給定後綴。使用chs地址的格式是:「柱面:磁頭:扇區」。對你所給出的數字地 址,Parted可能進行一些調整。例如,當你使用GB作為單位時,分區位置可能會有+-500M的誤差。不過Parted總會盡量地使誤差盡量地小。當 然,你可以使用單位s(也就是扇區)來指定一個精確的位置。若無法做到精確,Parted會讓你給出一個最接近的解決方案。另外,若你給出的數字為負數, 那麼就表示從磁碟的末尾開始計算。如「-1s」就表示硬碟最後一個扇區,就是硬碟的最末尾處。
例:

(parted) unit compact

(parted) p

磁碟 /dev/sdb: 3146MB

Sector size (logical/physical): 512B/512B

分區表:msdos

數字 開始: End Size 類型 文件系統 標誌

2 302MB 705MB 403MB 主分區 ext2

1 705MB 1201MB 496MB 主分區 ext2 啟動

3 2000MB 3146MB 1146MB 擴展分區 lba

5 2000MB 2100MB 100MB 邏輯分區 ext2

(parted) unit chs

(parted) print

磁碟 /dev/sdb: 1021,59,47

Sector size (logical/physical): 512B/512B

BIOS 柱面、磁頭、簇 的結構為:1021,97,62。每一個柱面是 3079kB。

分區表:msdos

數字 開始: End 類型 文件系統 標誌

2 98,0,0 228,96,61 主分區 ext2

1 229,0,0 389,96,61 主分區 ext2 啟動

3 649,51,2 1021,59,47 擴展分區 lba

5 649,51,3 682,0,14 邏輯分區 ext2

(parted) unit mb

(parted) print

磁碟 /dev/sdb: 3146MB

Sector size (logical/physical): 512B/512B

分區表:msdos

數字 開始: End Size 類型 文件系統 標誌

2 302MB 705MB 403MB 主分區 ext2

1 705MB 1201MB 496MB 主分區 ext2 啟動

3 2000MB 3146MB 1146MB 擴展分區 lba

5 2000MB 2100MB 100MB 邏輯分區 ext2

[火星人 ] red hat linux parted 應用已經有549次圍觀

http://coctec.com/docs/linux/show-post-110464.html