我有2个磁盘与下一个结构:
lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 3,7T 0 disk ├─sda1 8:1 0 2,7T 0 part └─sda2 8:2 0 931,5G 0 part sdb 8:16 0 2,7T 0 disk └─sdb1 8:17 0 2,7T 0 part
如果我执行,sda1和sdb1是md0的一部分
mdadm --misc --detail /dev/md0
返回
mdadm: cannot open /dev/md0: No such file or directory
我的mdadm.conf是:
# mdadm.conf # # Please refer to mdadm.conf(5) for information about this file. # # by default (built-in), scan all partitions (/proc/partitions) and all # containers for MD superblocks. alternatively, specify devices to scan, using # wildcards if desired. DEVICE partitions # auto-create devices with Debian standard permissions CREATE owner=root group=disk mode=0660 auto=yes # automatically tag new arrays as belonging to the local system HOMEHOST <system> # instruct the monitoring daemon where to send mail alerts MAILADDR root # definitions of existing MD arrays # This configuration was auto-generated on Thu, 03 Mar 2016 21:53:00 +0100 by mkconf ARRAY /dev/md/0 metadata=1.2 UUID=6ca17528:517621d3:e1c460a2:529955dd name=rp3-0:0
如果我执行
sudo mdadm -A /dev/md0
要么
sudo mdadm --assemble --scan
返回
mdadm: /dev/md/0 has been started with 2 drives.
而新的磁盘结构是:
sda 8:0 0 3,7T 0 disk ├─sda1 8:1 0 2,7T 0 part │ └─md0 9:0 0 5,5T 0 raid0 └─sda2 8:2 0 931,5G 0 part sdb 8:16 0 2,7T 0 disk └─sdb1 8:17 0 2,7T 0 part └─md0 9:0 0 5,5T 0 raid0
raid的fstab行是
/dev/md0 /mnt/ext ext4 defaults,nobootwait,nofail 0 0
nobootwait和nofail是不是在系统启动时崩溃。
当我重新启动系统raid0 disapear。 如何在每次重新启动后坚持进行RAID?
谢谢。
你只需要conf和initrd / initramfs钩子。 这可能因发行版而异。
首先,添加conf:
mdadm -D --scan > /etc/mdadm.conf
如果你能find一个像/ etc / mdadm这样的目录,也许你的发行版需要这个文件,而不是…符号链接,或者直接使用那个path。
其次,确保已经安装并启用了mdadm initrd钩子。 (正常的mdadm包应该有他们…我只提到这一点,如果你的发行版很奇怪,所以你知道寻找第二个包)
例如基于Arch的:
$ pacman -Ql mdadm | grep hook mdadm /usr/lib/initcpio/hooks/ mdadm /usr/lib/initcpio/hooks/mdadm $ grep mdadm /etc/mkinitcpio.conf HOOKS="base ... mdadm lvm2 filesystems ..."
和基于Debian的:
$ dpkg -L mdadm | grep initr.*hook /usr/share/initramfs-tools/hooks /usr/share/initramfs-tools/hooks/mdadm (I'm not really sure where the hook is enabled, but I think it should be enabled by default... someone else please fill that in)
然后在安装这些文件和软件包之后,你必须重build你的initramfs,并且可能更新grub,以防万一:
基于Arch:
# mkinitcpio -p /etc/mkinitcpio.d/somekernel.preset # update-grub
Debian基于:
# update-initramfs -u # update-grub
另外,请记住在你的fstab中使用UUID而不是/ dev / md0来更可靠的引导。 (例如,如果你在救援盘上启动它并修改它,有时候它会变成/ dev / md127,有时会固执而难以设置回0)。 查看man fstab的语法,blkid UUID。
这是一个解决方法,但是在几个小时之后,唯一的解决scheme是编辑etc/rc.local
我在exit 0之前添加了这一行
sudo mdadm -A /dev/md0 && sudo mount /dev/md0 /mnt/ext
现在,每次重新启动后,RAID成功挂载。