linux大于2T的磁盘使用GPT分区方式
一种由基于 Itanium 计算机中的可扩展固件接口 (EFI) 使用的磁盘分区架构。与主启动记录 (MBR) 分区方法相比,GPT 具有更多的优点,因为它允许每个磁盘有多达 128 个分区,支持高达 18 千兆兆字节的卷大小,允许将主磁盘分区表和备份磁盘分区表用于冗余,还支持唯一的磁盘和分区 ID (GUID)。与支持最大卷为 2 TB (terabytes) 并且每个磁盘最多有 4 个主分区(或 3 个主分区,1 个扩展分区和无限制的逻辑驱动器)的主启动记录 (MBR) 磁盘分区的样式相比,GUID 分区表 (GPT) 磁盘分区样式支持最大卷为 18 EB (exabytes) 并且每磁盘最多有 128 个分区。与 MBR 分区的磁盘不同,至关重要的平台操作数据位于分区,而不是位于非分区或隐藏扇区。另外,GPT 分区磁盘有多余的主要及备份分区表来提高分区数据结构的完整性。
所以在超过2TB时,我不能使用交互很好的Fdisk命令,只能磁盘转化为GPT格式。由于GPT格式的磁盘相当于原来MBR磁盘中原来保留4个 partition table的4*16个字节只留第一个16个字节,其它的类似于扩展分区,真正的partition table在512字节之后,所以对GPT磁盘表来讲没有四个主分区的限制。
对GPT磁盘分区表进行操作,我们要使用parted命令。其实parted功能很强大,它可以象fdisk一样既可用命令行也可以用于交互式。
下面我们就来实际操作吧,在提示符下输入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
记的哦,因为fdisk是不支持GPT磁盘,所以使用fdisk -l来查看磁盘刚才的分区是没有用的.
命令行的模式:
将硬盘转化为GPT磁盘后,执行下列命令
parted /dev/sdx mkpart primary 0 100 ##划分一个起始位置为0大小为100M的主分区。
inux 下用parted就可以使用GPT来分区。
以redhat 4为例:可以使用命令行来创建:
parted /dev/sdb mklabel gpt。 转换成GPT.
parted /dev/sdb mkpart primary 0 3000000创建3T的分区。
然后用mkfs -t ext3 /dev/sdb1格式化mount就可以用了。
不能在可移动媒体,或者在与群集服务使用的共享 SCSI 或 Fibre Channel 总线连接的群集磁盘上使用 GPT 分区样式
----------------------------------------------------------------------------------
最近由于数据量大,购入1块3T硬盘,买之前虽然也知道2T分区的限制,网上也看到过怎么处理3T硬盘的资料,但实际要用起来还是碰到些问题,好在有因特网,不懂就上网查和学习。
服务器硬件配置是2007年的,BIOS里可以认出3T硬盘但显示容量是802GB的,操作系统REDHAT AS4.5,用fdisk -l 却查不到3T硬盘的设备信息。出问题的可能一是BIOS设置和版本问题,二是REDHAT AS4.5。通过同机的win2003里识别出3T硬盘是746GB硬盘的情况可以基本排除BIOS的版本和设置问题。
将LINUX安装升级到CentOS5.3,在安装过程里即提示3TB硬盘的存在。安装完后fdsik -l里可以看出3T硬盘的设备信息。要想将其用起来,还得用parted命令进行,假定3T硬盘为第3块 /dev/sdc1,下面为具体命令和解释
partd /dev/sdc1 (用part命令 对3T硬盘进行分区处理)
mklabel gpt (用gpt格式可以将3TB弄在一个分区里)
unit TB (设置单位为TB)
mkpart primary 0 3 (设置为一个主分区,大小为3TB,开始是0,结束是3)
print (显示设置的分区大小)
quit (退出parted程序)
mkfs.ext3 /dev/sdc1(用parted将分区做好后,进行格式化操作,完成后即可挂载使用)
页:
[1]