I'm new to Arch (I used to run Fedora, but Arch's build from the ground up approach appeals to me) and am trying to install it on my Vaio Z laptop.
I need help setting up my Intel Matrix Storage Manager RAID0 stripe as the boot device for Arch. I've unsuccessfully tried dmraid and realized that the boot media was recognizing the array using mdadm. Can someone help or point me to a HOWTO?
The Full Story:
I have a rather particular install going:
1. the Sony uses a RAID0 stripe set on an Intel Matrix Storage Manager FakeRaid and I love the speed and responsiveness of this set up
2. I need to retain the ability to boot into Windows for work.
3. I am using btrfs for my Arch partition
4. I am using UEFI - I had it in my head that I needed this for btrfs but realize now that I was mistaken, but I'm too far into it to go back :-)
I have been primarily using the beginner's wiki, the btrfs install wiki and the fakeraid wiki to get my system set up (and google when I get stuck). I feel that I have been reasonably successful so far. I wiped the original windows and reinstalled to a GPT partition. I have rEFInd set up and detecting all bootable items. Windows successfully boots, and I can select the arch install and start to boot it. However, when I boot to the Arch install, it cannot find the Arch partition. The boot media pickup my array without issue, and I was able to create all of the proper partitions. This is what I have:
part1 : md126p1: EFI boot partition
part2: md126p2: MS SRP
part3: md126p3: MS Windows - NTFS
part4: md126p4: Arch - BTRFS
I was initially setting up dmraid following the FakeRAID wiki, assuming that was my only option. I was unsuccessful in setting this up. It would initialize the volume, but was unable to find the partitions. I then came across a report that mdadm now supports the IMSM. I double checked the boot media and found that it was in fact using mdadm rather than dmraid. So I figured that I might be more successful with mdadm. I installed mdadm, modified mkinitcpio.conf (added md_mod to modules line, mdadm to hooks) and rebuilt the image. i see that the boot process is running the mdadm hook, but it still doesn't find the root device (md126p4). I'm not finding anything about how to configure mdadm to boot an IMSM array, but it seems it should be possible. Does anyone out there know how to accomplish this or can someone point me to a HOWTO?
You need the mdadm_udev and shutdown hooks in mkinitcpio.conf as well as to add 'mdmon' to BINARIES=. This ensures that mdadm can monitor the external metadata and that you'll have a clean shutdown (to avoid forcing a rebuild of the metadata on every boot). I also strongly advise against using the kernel name /dev/md126p4 and rather using a LABEL or UUID to identify the device.
Right after I posted this I changed my HOOK to mdadm_udev and it mounted the partition on boot. However, now I get the message:
ERROR: root device mounted successfully, but /sbin/init does not exist.
Bailing out, you are on your own. Good Luck.
Is this related to the RAID configuration or something else entirely?
Thanks for the quick reply, I crossposted before I saw your message. I will make the changes you suggest to mkinitcpio.conf. I am actually already using the UUID of the partition in FSTAB. Is that what you meant?
Thanks again falconindy.
Sorry if I am being dense, I'm getting a little confused due to the cross post. Are you saying the '/sbin/init does not exist' error is caused by mounting the wrong partition? I'm using rEFInd as my boot manager, and it finds the boot loaders on its own. Would I create a custom boot entry for rEFInd or modify something else? rEFInd makes a point that is it a boot manager not a boot loader while something like GRUB is both in one and I'm still trying to understand the finer points of this.
Last edited by yesterdaysbuddha (2013-02-04 22:07:33)
Thanks for your help falconindy. I was able to get arch to boot. I found that rEFInd was indeed referring to my root partition as /dev/md126p4. I had to create a custom entry in refind.conf specifying the label of the root partition.