扩展运行Linux的RAID 1(HP SmartArray P410i)

我接手了一个相当简单的服务器设置,运行Ubuntu 11.10(Kernel 3.0.0-12-server x86_64):

=> ctrl all show config Smart Array P410i in Slot 0 (Embedded) (sn: removed) array A (SAS, Unused Space: 1335535 MB) logicaldrive 1 (279.4 GB, RAID 1, OK) physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 1 TB, OK) physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 1 TB, OK) 

最初有两个300GB磁盘被1TB磁盘取代,我现在必须扩展逻辑卷以使用额外的空间。

但是,当试图这样做时,我得到以下警告:

 => ctrl slot=0 ld 1 modify size=max Warning: Extension may not be supported on certain operating systems. Performing extension on these operating systems can cause data to become inaccessible. See ACU documentation for details. Continue? (y/n) 

是否可以肯定地说是或者我有损坏文件系统/丢失数据的风险? 事后重新整理和扩展文件系统不应该成为一个问题,因为我可以使服务器脱机并从gparted活动磁盘启动。

以下是正在使用的RAID控制器的configuration:

 => ctrl all show detail Smart Array P410i in Slot 0 (Embedded) Bus Interface: PCI Slot: 0 Serial Number: removed RAID 6 (ADG) Status: Disabled Controller Status: OK Hardware Revision: Rev C Firmware Version: 5.12 Rebuild Priority: Medium Expand Priority: Medium Surface Scan Delay: 15 secs Surface Scan Mode: Idle Wait for Cache Room: Disabled Surface Analysis Inconsistency Notification: Disabled Post Prompt Timeout: 0 secs Cache Board Present: False Drive Write Cache: Disabled SATA NCQ Supported: True 

和分区表:

 Number Start End Size Type File system Flags 1 1049kB 274GB 274GB primary ext4 boot 2 274GB 300GB 25.8GB extended 5 274GB 300GB 25.8GB logical linux-swap(v1) 

就Linux而言,它看起来像RAIDarrays是一个单一的设备,所以它从从一个较小的单一驱动器迁移到一个更大的一个没有什么不同。 不幸的是,你没有使用LVM,这使得使用额外空间的过程变得更复杂一些。

扩展过程应该非常安全。 当你下次运行fdisk或类似的时候,你会在磁盘的末尾看到一大块未分配的空间。

使用这个空间的简单方法是将其挂载为另一个文件系统:使用fdisk创build/ dev / sda6,在那里创build一个文件系统并挂载它。 您将使用什么文件系统(以及在哪里最好安装它)取决于您的服务器的使用。 对于一个共享的networking托pipe服务器,你可能会用它作为/home ,例如很多。

如果您想扩展当前的根分区以使用更多的共享空间(如果您使用的是LVM,则会更简单,更安全)。 您将需要删除交换分区,扩展根分区,然后重新创build交换。 这样做并不困难,尽pipe除非你有信心推荐使用像gparted( http://gparted.sourceforge.net/ )这样的工具。 手动步骤如下所示:

  1. 使用swapoffclosures交换
  2. /etc/fstab的分区列表中注释掉交换区域
  3. 使用fdisk删除交换分区和它所在的扩展分区
  4. 扩展根分区。 使用标准的fdisk,您需要通过删除现有的(首先仔细注意启动扇区)并重新创build一个更大的
  5. 此时您可能需要重新启动
  6. 运行ext2resize /dev/sda -v将文件系统扩展到新的更大空间。 它可能会要求你先运行fsck – 如果是这样,按照这个指令,然后重新运行。 ext2resize /dev/sda -v 。 在执行ext2 / 3/4文件系统时,可以实时resize。
  7. 你现在有一个更大的根文件系统
  8. 使用fdisk重新创build交换区域
  9. 将交换区域添加回/etc/fstab并使用swapon来启用它

注意:我假设earray显示为/ dev / sda – 如果不是,则调整上面的命令。

尽pipe以上所有内容都应该是安全的,但我 强烈 build议在继续之前进行备份并validation备份(即使使用gparted而不是DIY)。

您不会损坏文件系统,因为它们不会被更改。 只有逻辑驱动器的大小发生变化,之后您仍然需要增加分区和文件系统。

通常情况下,驱动程序应确保您看到新的驱动器大小。 如果没有,您将在重新启动后看到新的大小。

首先:扩大arrays是安全的。 您可以接受警告信息而不会造成任何后果。

接下来,你有几个select…

HP Smart Array控制器是硬件LVM的一种forms。 他们允许在线扩展,但了解数组逻辑驱动器之间的关系是很重要的。

  • 该arrays是磁盘的物理分组。
  • 逻辑驱动器是给予RAID级别和大小的arrays的细分。

相同arrays中的逻辑驱动器甚至可以具有不同的RAID级别! 以下是更复杂的智能arrays控制器布局示例:

 Smart Array P400 in Slot 8 (sn: P61630G9SVN702) array A (SAS, Unused Space: 385320 MB) logicaldrive 1 (72.0 GB, RAID 1+0, OK) logicaldrive 2 (120.0 GB, RAID 1+0, OK) logicaldrive 3 (100.0 GB, RAID 6 (ADG), OK) logicaldrive 4 (100.0 GB, RAID 1+0, OK) physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 146 GB, OK) physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 146 GB, OK) physicaldrive 1I:1:3 (port 1I:box 1:bay 3, SAS, 146 GB, OK) physicaldrive 1I:1:4 (port 1I:box 1:bay 4, SAS, 146 GB, OK) physicaldrive 2I:1:5 (port 2I:box 1:bay 5, SAS, 146 GB, OK) physicaldrive 2I:1:6 (port 2I:box 1:bay 6, SAS, 146 GB, OK) physicaldrive 2I:1:7 (port 2I:box 1:bay 7, SAS, 146 GB, OK) physicaldrive 2I:1:8 (port 2I:box 1:bay 8, SAS, 146 GB, OK) 

例如,在您的设置中显示的“未使用的空间”中,您可以创build另一个逻辑驱动器,可以是任何大小为1335535MB(RAID0)或1335535MB / 2(RAID1)的RAID1或RAID0,操作系统; /dev/sdb 。 或者您可以扩展现有的块设备/dev/sda以使用最多1335535/2 更多的兆字节。 在上面列出的命令中,您指定将数组增大到最大。

由于您已经通过插入新磁盘并让它们重build来照顾“arrays转换”步骤,因此此扩展操作将立即生效。

一旦你做完了这个,你有两个select你的操作系统。 我想问你最终的分区和文件系统的布局看起来像…

您可以通过重新扫描SCSI块设备或重新启动来扩展/dev/sda 。 对于您的系统,重新扫描看起来如下所示:

 echo 1 > /sys/class/scsi_disk/0\:0\:0\:0/device/rescan 

这将增长/dev/sda 。 用dmesgfdisk确认。

从那里,你可以添加分区,或扩大现有的分区。 你的具体布局目标是什么?