利用 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