Linux 中软件 RAID 应用罕见后果处理

-

  张 志斌

  2007 年 11 月 08 日宣布

  Comments

  敬请等待该系列的后续内容。

  对一个磁盘上的多个磁盘分区做RAID是没有价值的,因为不单背犯了RAID阵列中装备自力性的准绳,不能添加阵列的牢靠性,当这个磁盘掉效后肯定不成防止的招致数据损掉,而且还招致阵列的功用清晰降低,当数据读写时磁头在磁盘的多个分区下去回颤抖带来长时间的搜刮耗时。

  RAID 0 只能应用数据块条带化(stripping)功用来提高功用,假设有磁盘掉效则会招致MD装备上的数据损掉,在读写MD装备时掉足。

  当创立磁盘时,假设已知装备上的数据曾经是同步(sync)胜利过,或许仅仅是用来测试阵列,可以应用--assume-clean参数来通知MD驱动不用初始化阵列。

  假设想防止mdadm每次创立敕令时,因为装备上还有之前的元数据的提醒,防止手工输入,可以应用--run(或许其缩写-R)通知阵列直接运转。

  RAID0可以支撑分歧大年夜小的磁盘结构多个区域(zone)的RAID,每个区域有分歧的磁盘个数。应用fdisk敕令查询/dev/sdi1为2GB, /dev/sdj1为4GB,/dev/sdk1为1GB,所以做成RAID0装备为7GB。

  而RAID1,RAID456, RAID10等对分歧大年夜小的磁盘只能应用最小的磁盘的容量作为公共的大年夜小,多余的局部被糜费掉落。/dev/sdi1,/dev/sdj1,/dev/sdk1做成的RAID5装备为2GB,是最小的装备/dev/sdk1的2倍,装备/dev/sdi1和sdj1辨别糜费了1GB和3GB。

  在阵列的形状信息查询中的大年夜小(ArraySize)前面应用的是KB,也表现MD块装备的实践大年夜小;而前面的两个值只是为了显示处理后的结果。

  mdadm依次是允很多个RAID组共享冗余磁盘的。 例如有/dev/md0和/dev/md1两个阵列,在创立时/dev/md0外面有一个热备磁盘,而/dev/md1没有热备磁盘。我们只需在/etc/mdadm.conf中设备两个阵列应用相反的spare-group组。

  并运转mdadm 的监控(monitor)形式敕令。当/dev/md1阵列中的一个磁盘/dev/sdi1掉效时,mdadm会主动从/dev/md0组中上移走spare磁盘,并参与/dev/md1中。

  今朝MD装备有两种主要的元数据格局(0.9版本和1.x版本),主如果元数据占用的空间分歧和支撑的底层装备个数分歧,而且1.x版本还可以指定元数据写入装备的具体位置(1.0为在装备尾部,1.1为在装备末尾,1.2为在装备末尾的4KB位置)。创立阵列经过--metadata(或许其缩写-e)参数来指定元数据格局版本。

  当阵列将磁盘移走后,也应用--zero-superblock清空装备下面的元数据信息。

猜你喜欢