I've been running Fedora on my office laptop for a while and was happy with it, at the same time I have been running Gentoo at home in a sandwich-like storage configuration:
I have 3 physical drives on which I have several MDraid devices: one RAID1 for /boot, one RAID1 for [Gentoo] root, one RAID0 for /tmp and one RAID1 that serves as a PV for LVM volumes. I also have NAS which exports disks via NFS.
F15 install was not without a hitch (got bitten by dmraid so learned my lesson now), however installing F15 in parallel with Gentoo was relatively painful while I was using space on a single disk for install. After I have completed the installation I started to plug-in my "old" Gentoo devices that are all scattered across my sandwich-setup.
What I end up with is that systemd apparently tries to mount too many things too soon - it looks like it tries to mount entries from /etc/fstab even though underlying devices are not ready (MD+LVM). I have worked around some (like my /home) via /etc/systemd/system/home.mount and referencing it from /etc/systemd/system/multi-user.target.wants/ . Here's content of that file:
Code:
# cat /etc/systemd/system/home.mount
[Unit]
Description=Home Directory
After=dev-md126.device
Requires=dev-md126.device
After=lvm2-monitor.service
Requires=lvm2-monitor.service
[Mount]
What=/dev/mapper/rvg-home
Where=/home
which is trying to prevent mount of /home before /dev/md126 was set up and LVM monitor service started (in other words all volumes are exposed)...
I ended up having only partial success as some mounts work in this kind of scenario, some - don't. For example /boot - doesn't:
Code:
# cat /etc/systemd/system/boot.mount
[Unit]
Description=Boot Directory
After=dev-md125.device
Requires=dev-md125.device
[Mount]
What=/dev/md125
Where=/boot
Type=ext2
Initially populating all of the mounts via /etc/fstab worked for a boot or two and then I couldn't even get to the CLI prompt of any kind to try and recover the system (luckily Gentoo is still operational so I fell back to it).
So at the moment I have an odd mix of /etc/fstab entries that work so far and systemd .mount entries, but there are several entries that whenever I plug them in (whichever way) result in errors during boot in best case and inability to start F15 in worst.
I did end up tinkering with dracut trying to pre-populate things before systemd gets to it. I have modified /etc/dracut.conf:
Code:
add_dracutmodules+="mdraid lvm"
and adding a bunch of
Code:
rd.md.uuid=2xxxxxx4:6xxxxxx0:4xxxxxx0:xxxxxxxx
entries to kernel's command line in /boot/grub/menu.lst which helped a bit but /boot is still impossible to mount. Other mounts won't come up either.
Now my kernel line in Grub looks like abomination:
Code:
kernel /vmlinuz-2.6.38.8-35.fc15.x86_64 ro root=/dev/mapper/vg_gamer-rootfs rd_luks=0 rd.dm=0 LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us nodmraid nouveau.modeset=0 rdblacklist=nouveau rd.md.uuid=xxxx:xxxx:xxxx:xxxxx rd.md.uuid=xxxx:xxxx:xxxx:xxxxx rd.md.uuid=xxxx:xxxx:xxxx:xxxxx rd.md.uuid=xxxx:xxxx:xxxx:xxxxx rd.lvm.vg=rgv rd.lvm.vg=vg_gamer rd.lvm.vg=backup
What *is* the right way of addressing it? I feel like I'm walking through a field nicely covered in rakes with no obvious guidelines (F15 documentation is surprisingly brief and non-descriptive).
BTW, I have rebuilt initrd several times too via:
Code:
# cat initramfs_rebuild.sh
#!/bin/bash
kernel_ver=$(rpm -q --queryformat="%{version}-%{release}.%{arch}\n" kernel | tail -n 1)
/sbin/new-kernel-pkg --mkinitrd --dracut --update ${kernel_ver}
/sbin/new-kernel-pkg --package kernel --rpmposttrans ${kernel_ver}
which I picked up someplace while looking for solutions.
For completeness here's snipped of my fstab:
Code:
/dev/mapper/vg_gamer-rootfs / ext4 defaults 1 1
/dev/mapper/vg_gamer-usrfs /usr ext4 defaults 1 2
/dev/mapper/rvg-fusrlocalfs /usr/local ext4 defaults 1 2
/dev/mapper/vg_gamer-varfs /var ext4 defaults 1 2
/dev/mapper/vg_gamer-varlogfs /var/log ext4 defaults 1 2
/dev/sda5 swap swap defaults 0 0
/dev/sdb6 swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/sdb7 /mnt/dump reiserfs defaults 1 2
/dev/mapper/backup-nas /mnt/backup/nas reiserfs defaults 1 2
1.1.1.1:/photos /mnt/photos nfs vers=2,hard,intr,bg 1 2