GNU parted的指令說明
Parted是支很好用的程式,可以用來切割磁碟,也可以變動現有分割區的大小,很好用,尤其是變動分割區大小的功能超級好用,就像我學習parted的原因,是為了把我的/usr擴大(因為當初在分割的時候,把usr切太小了)。但網路上似乎沒有完整一點的parted指令說明,於是我就依據官方document,來做整理,因為小弟的英文程度不是很好,所以恐怕有的地方會有錯,或者有人願意為這文件增加內容,都歡迎指教,謝謝!!
GNU parted
文中的特殊用詞說明:
minor(我不會翻,意思就是在 parted裡的partition編號)
disk label(磁碟標記)
flag(旗標)
name
用法:name minor 名字
說明:為partition命名(只有Mac及PC98可以用)。
範例:
(parted)name 2 ‘abc’
將partition 2 命名為abc。
print
用法:print
說明:show出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 FAT boot, lba
2 945.000 2358.562 primary ext2
3 2358.562 2445.187 primary linux-swap
quit
用法:quit
說明:離開parted。
rescue
用法:rescue start end
說明:用來挽救不小心被你用rm指令delete掉的partition。
範例:
(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
Oh my god~~不小心把ext3的partition砍了,這時候就rescue就派上用場了
(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
set
用法:set minor flag 狀態(on,off)
說明:變更partiton的flag,狀態那欄就是拿來設定flag要打開或關閉用的。Flag有下列幾種:boot、lba、root、swap、hidden、raid、LVM。
範例:
(parted)set 1 boot on
將partition1的旗標設為boot並且將之開啟。
講那麼多,不如做幾個實例看看吧!!
範例 1:增加partition的大小
假如我們的/dev/hda的分割區是以下這樣:
(parted) print
Disk geometry for /dev/hda: 0.000-1000.000 megabytes
Disk label type: msdos
Minor Start End Type Filesystem Flags
1 0.063 500.000 primary ext2
2 500.000 625.000 primary linux-swap
(parted)resize 1 0.063 874.9
調整partition1的位置為從0.063到874.999,共875MB。
(parted) print
Disk geometry for /dev/hda: 0.000-1000.000 megabytes
Disk label type: msdos
Minor Start End Type Filesystem Flags
1 0.063 874.999 primary ext2
(parted) print
Disk geometry for /dev/hda: 0.000-1000.000 megabytes
Disk label type: msdos
Minor Start End Type Filesystem Flags
1 0.063 874.999 primary ext2
2 875.000 1000.000 primary linux-swap
這樣就大功告成啦~~
範例2:增加一個即將不夠用的partition空間
假設我們的/dev/hda如下:
(parted) print
Disk geometry for /dev/hda: 0-8063.5 megabytes
Disk label type: msdos
Minor Start End Type Filesystem Flags
1 0.0 23.5 primary ext2 boot
2 23.5 8056.0 extended
5 23.6 3545.6 logical ext2
6 3545.6 7067.7 logical ext2
7 7067.7 7326.5 logical ext2
8 7326.5 7585.4 logical ext2
9 7585.4 7844.2 logical linux-swap