如何从 Ubuntu 上的 RAID 1 阵列中删除交换分区?

如何从 Ubuntu 上的 RAID 1 阵列中删除交换分区?

有人能指出如何从 Ubuntu 10.04 服务器上的 RAID1 配置中删除 SWAP 的正确方向吗?根据 Ubuntu Advanced 安装指南,这里,它说要将交换添加到 raid,但我遇到了一些严重的性能问题。我想将其从阵列中删除,并在两个单独的驱动器上以相同的大小重新创建它。另一个阵列上必须没有数据丢失。

它是一台远程计算机,所以如果可能的话,我更愿意通过命令行来执行此操作。

以下是 cat /proc/mdstat 的输出

md0 : active raid1 sdb1[1] sda1[0]
19530688 blocks [2/2] [UU]

md1 : active raid1 sdb2[1] sda2[0]
957230016 blocks [2/2] [UU]

交换位于 md0 设备上。

谢谢

答案1

假设你已经打开了 swap /dev/md1,这应该可以工作(这是在 root 提示下):

# mdadm /dev/md1 --fail /dev/sdb2
# mdadm /dev/md1 --remove /dev/sdb2
# mdadm --zero-superblock /dev/sdb2
# mkswap /dev/sdb2
# echo "/dev/sdb2 none swap sw 0 0" >> /etc/fstab
# swapon /dev/sdb2
# swapoff /dev/md1
# mdadm --stop /dev/md1
# mdadm --zero-superblock /dev/sda2
# mkswap /dev/sda2
# echo "/dev/sda2 none swap sw 0 0" >> /etc/fstab
# swapon /dev/sda2

如果您使用sudo这些(您可能应该这样做),您需要更改echo $foo >> $blahecho $foo | sudo tee -a $blah$

答案2

同时,这取决于您使用的内核版本,LSR RAID-1 提高性能读取时 — 由于可能的读取平衡。此外,进行交换不使用RAID-1 意味着当其中一个磁盘发生故障时,您的操作系统会不稳定(应用程序挂起/崩溃)。换句话说,这是一个相当无意义的想法。

相关内容