我读如何在 Ubuntu 10.04 中添加 RAID 1 阵列和在现有 Ubuntu 服务器上安装 Raid 1。但我只有以下2个硬盘:
dev/sdb1
Ubuntu 12.04 当前正在运行
dev/sda1
空磁盘
我想在这两个硬盘上创建 RAID,但我不想删除sdb1
分区,因为 Ubuntu 运行良好。
如何在现有设备上创建 RAID?
我表演
mdadm --create /dev/md0 --level=1 --raid-devices=2 missing /dev/sda1
然后
mkfs -t ext2 /dev/md0
然后我跑
echo "DEVICE partitions" > /etc/mdadm/mdadm.conf
mdadm --detail --scan >> /etc/mdadm/mdadm.conf
然后我将启动项md0
改为grub2
menuentry 'Ubuntu, with Linux 3.2.0-23-generic' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
gfxmode $linux_gfx_mode
insmod gzio
insmod part_msdos
insmod ext2
set root='(md0)'
search --no-floppy --fs-uuid --set=root 8fff7794-a156-46d2-92f8-4931d42abf36
linux /vmlinuz-3.2.0-23-generic root=/dev/mapper/ubuntu--server-root ro
initrd /initrd.img-3.2.0-23-generic
}
但是,当我想添加
mdadm --manage /dev/md0 -a /dev/sdb1
我总是得到
mdadm: Cannot open /dev/sdb1: Device or resource busy
答案1
在终端中使用以下命令创建具有“丢失”设备的新 RAID1 阵列(可能必须使用该sudo
命令):
# mdadm --create /dev/md0 -n 2 -l 1 /dev/sda1 missing
您将能够将所有数据移动到/dev/md0
,使用它进行启动,然后添加/dev/hdb1
到镜像中:
# mdadm --manage /dev/md0 -a /dev/hdb1
首先备份您的数据并熟悉 Linux 上的 mdadm 和软件 RAID,以避免自找麻烦。
答案2
看来您已经完成了大部分工作。我正在尝试做同样的事情,并在 Google 上找到了您。尽管您的驱动器大小可能不一样(我的驱动器大小相同),但我认为您需要做的就是:
- 启动 Ubuntu Live CD,添加并启动 mdadm
- 启动 md0,对其进行分区
- rsync -av 从 /dev/hdb1 到 /dev/md0p1
- 更改 grub 来启动你的 raid
- 重启进入你的团队
- 重新分区你的第一个磁盘
- 将另一个磁盘添加到 raid
完毕
但这只是猜测:-)可能还需一周左右的时间我才能亲自尝试。
这和我做过的事情类似 - 使用 rsync 将 Ubuntu 盒子从一个硬件移动到另一个硬件。我在那里了解到,您需要从实时 CD 复制操作系统 - 从操作系统本身启动时无法获得操作系统的良好副本。
你想要
rsync -av --exclude-from=excludefile /源/ /目标/
您的排除文件如下所示:
# 包括 + /dev/控制台 + /dev/initctl + /dev/null +/dev/零 # 排除 -/dev/* -/proc/* -/系统/* - /tmp/* - 失物招领/ - /媒体/备份/*