利用 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 Flags 1 32.3kB 107MB 107MB primary ext3 boot 2 107MB 10.6GB 10.5GB primary ext3 3 10.6GB 15.8GB 5240MB primary ext3 4 15.8GB 41.2GB 25.3GB extended 5 15.8GB 16.9GB 1045MB logical linux-swap 6 16.9GB 18.9GB 2056MB logical ext3 7 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-swap 8 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://vbird.dic.ksu.edu.tw/linux_basic/0230filesystem_6.php