- 论坛徽章:
- 0
|
简单描述一下如何使用大于2TB的文件系统。
大家可能都和我一样遇到过如此问题,看到上面很多兄弟在争论,我也来说说看法。
就我的理解:
如果想在X86里面使用大于2TB的分区,是可以的,但是前提条件是使用安藤Itanium芯片的机器,在linux下用parted可以分出来大于2TB的分区,但是前提条件也是使用安藤芯片,简单理解就是64的芯片。在parted下标记出来GPT的label(也就是GUID的分区表,和MBR可不兼容,M$的一些产品,比如集群就不支持在GPT的分区中使用,所以在64位的机器中一定要小心了。)然后再分区。这样就支持很大很大的分区了。
如果你的机器不是64位的,那也没有问题,大家都知道目前文件系统早就突破了2TB的界限,所以,我们在32位的机器(比如Xeon基于IA32的)中,只需要使用lvm2就行了。lvm2支持在32位的系统下大于2TB的分区,它相当于在pci总线和文件系统中间了一个虚拟的层。这样就很容易的突破了2TB的分区。
对了,你要确定你的SCSI卡是64位的,否则即便你的disk array是>2TB的,你的机器还是认不出来,不过一般来说,现在的服务器都是64位的pci卡了,比如dell 1850 ,2850。
总结一下,想使用大于2TB的文件系统在linux下有2种方法:
1、使用64位的系统,比如安藤系统。然后在linux下用parted建立GPT的分区表(不是msdos[MBR]或者loop),然后建立超级大的分区,然后直接用XFS(我比较喜欢这个)format就行了。
2、使用32位的系统,比如Xeon,在linux下建立N个分区,然后用LVM2来做虚拟盘,比如20个400G的盘,算算看就知道是8TB。
这里还有一些归纳:
1、对于GUID分区表(GPT)磁盘,最多可创建128个主磁盘分区。
2、x86 使用msdos,Itanium 使用gpt。
3、Redhat要到As4,而且是pack1之后才支持,如果仅仅是as4,需要打补丁。当然如果大家用centos很方便了。
4、图省力,把/dev/sda直接格式化为一个分区,是绝对绝对不推荐的。大家一定要记主!绝对不要直接把块设备格式化了。至少也要有个sda1。
http://wuarchive.wustl.edu/pub/c ... NOTES-U1-zh_CN.html 这里讲了为啥要用安藤。
http://www.adaptec.com/pdfs/3759_2TB_WP.pdf
这里讲了2TB的方案,从历史原因到现状。除了linux的还有如何在M$下使用大于2TB的磁盘。很详细的,建议初级作存储的兄弟都可以看看。
大概抄录一下:
Commonly, the firmware, BIOS, driver, and at least part of the
storage stack support 32-bit block numbers, thereby limiting
the storage to 2TB. However since most filesystems support
page sizes larger than 512 B, they actually already support volumes
greater than 2TB. In other words, a filesystem may have
only 32-bit block numbers, but those blocks are commonly
multiples of 512 bytes, such as 2KB, 4KB, 8KB, etc., allowing
the volume size to be 8TB, 16TB, 32TB, respectively. Of
course, the factors that go into defining the max volume size
are much more complicated than this, but block size certainly
is an important factor.
With drivers presenting up to 2TB volumes and filesystems
supporting greater than 2TB volumes, there is one piece of the
puzzle missing: a method for combining smaller drive volumes
into larger filesystem volumes. This is possible with the several
operating systems (OS) that have a virtualization layer in the
storage stack. Just like the array virtualization in a PCI RAID
controller, the OS virtualization layer is able to combine smaller
volumes (disks) into a larger volume (virtual disk) for
improved performance and increased capacity. This low-overhead,
high-performance operating system layer is the key to
the solution presented in this paper.
BTW:我随手写的哦,没有好好组织语言,大家凑或看看吧。CU的朋友也可以直接联系我:MSN
Erjing (at) hotmail.com,我有空的时候乐意帮大家解决问题。我不是做存储的,太专业的问题俺就
[ 本帖最后由 erjing 于 2006-6-29 23:43 编辑 ] |
|