利用 GNU 的 parted 進行分割行為
雖然你可以使用 fdisk 很快速的將你的分割槽切割妥當,不過 fdisk 卻無法支持到高于 2TB 以上的分割槽! 此時就得需要 parted 來處理了。不要覺得 2TB 你用不著! 2009 年的現在已經有單顆硬盤高達 2TB 的容量了! 如果再搭配主機系統有內建磁盤陣列裝置,要使用數個 TB 的單一磁盤裝置也不是不可能的! 所以,還是得要學一下這個重要的工具! parted !
parted 可以直接在一行命令列就完成分割,是一個非常好用的命令!他的語法有點像這樣:
[root@www ~]# parted [裝置] [命令 [參數]] 選項與參數: 命令功能: 新增分割:mkpart [primary|logical|extended] [ext3|vfat] 開始 結束 分割表 :print 刪除分割:rm [partition]
?
以 parted 列出目前本機的分割表數據
[root@www ~]# parted /dev/hdc print Model: IC35L040AVER07-0 (ide) <==硬盤接口與型號 Disk /dev/hdc: 41.2GB <==磁盤文件名與容量 Sector size (logical/physical): 512B/512B <==每個扇區的大小 Partition Table: msdos <==分割表形式Number Start End Size Type File system Flags1 32.3kB 107MB 107MB primary ext3 boot2 107MB 10.6GB 10.5GB primary ext33 10.6GB 15.8GB 5240MB primary ext34 15.8GB 41.2GB 25.3GB extended5 15.8GB 16.9GB 1045MB logical linux-swap6 16.9GB 18.9GB 2056MB logical ext37 18.9GB 19.2GB 263MB logical linux-swap [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ]
上面是最簡單的 parted 命令功能簡介,你可以使用『 man parted 』,或者是『 parted /dev/hdc help mkpart 』去查詢更詳細的數據。比較有趣的地方在于分割表的輸出。我們將上述的分割表示意拆成六部分來說明:
- Number:這個就是分割槽的號碼啦!舉例來說,1號代表的是 /dev/hdc1 的意思;
- Start:起始的磁柱位置在這顆磁盤的多少 MB 處?有趣吧!他以容量作為單位喔!
- End:結束的磁柱位置在這顆磁盤的多少 MB 處?
- Size:由上述兩者的分析,得到這個分割槽有多少容量;
- Type:就是分割槽的類型,有primary, extended, logical等類型;
- File system:就如同 fdisk 的 System ID 之意。
接下來我們嘗試來創建一個全新的分割槽吧!因為我們僅剩下邏輯分割槽可用,所以等一下底下我們選擇的會是 logical 的分割類型喔!
?
創建一個約為 512MB 容量的邏輯分割槽
[root@www ~]# parted /dev/hdc mkpart logical ext3 19.2GB 19.7GB # 請參考前一表格的命令介紹,因為我們的 /dev/hdc7 在 19.2GB 位置結束, # 所以我們當然要由 19.2GB 位置處繼續下一個分割,這樣懂了吧? [root@www ~]# parted /dev/hdc print .....前面省略.....7 18.9GB 19.2GB 263MB logical linux-swap8 19.2GB 19.7GB 502MB logical <==就是剛剛創建的啦!
?
將剛剛創建的第八號磁盤分區槽刪除掉吧
[root@www ~]# parted /dev/hdc rm 8 # 這樣就刪除了!實在很厲害!所以這個命令的下達要特別注意! # 因為...命令一下去就立即生效了~如果寫錯的話,會哭死~
?
Linux大于2T的磁盤使用GPT分區
眾所周知,在linux下磁盤分區大于2TB的時候我不能使用常用Fdisk命令。是不是就沒有辦法在linux使用大容量的磁盤呢?答案:不是。
在linux我們可以先把大容量的磁盤進行轉換,轉換為GPT格式。由于GPT格式的磁盤相當于原來MBR磁盤中原來保留4個 partition table的4*16個字節只留第一個16個字節,其它的類似于擴展分區,真正的partition table在512字節之后,所以對GPT磁盤表來講沒有四個主分區的限制。
對GPT磁盤分區表進行操作,我們要使用功能強大的parted命令。
?
# parted /dev/sdb GNU Parted 1.8.1 Using /dev/sdb Welcome to GNU Parted! Type \'help\' to view a list of commands. (parted) mklabel gpt #將MBR磁盤格式化為GPT(parted) mkpart primary 0 100 #劃分一個起始位置為0大小為100M的主分區(parted) mkpart primary 100 200 #劃分一個起始位置為100M大小為100M的主分區(parted) mkpart primary 0 -1 #劃分所有空間到一個分區(parted) print #打印當前分區(parted) quit#可能還會用到的一些命令 (parted) mklable msdos #如果要反過來.將GPT磁盤轉化為MBR磁盤在這樣分完分區后,還要使用mkfs.ext3來進行格式化#partprobe #mkfs.ext3 -F /dev/sdb1
?
轉自?http://www.cnblogs.com/ggjucheng/archive/2012/10/07/2714280.html