After successfully installing Fedora Core 15 on my home box I am moving all my stuff from Gentoo to Fedora. I’m still questioning my move, but lately I have less and less time to dedicate to proper maintenance of Gentoo, not to mention that at work I run RedHat servers so I’m much more familiar with RedHat insides than Gentoo’s at the moment (wasn’t like that a year or two ago). I still think Gentoo is a brilliant distro and taught me a lot about inner workings of things; I didn’t want to go Ubuntu (I really does piss me off how it gets in my way all the time) so Fedora was more like a happy medium between Gentoo and Ubuntu and it would provide some learning grounds for my office use of RedHat. Prior to my home move I moved my office machine with no problems whatsoever, but then my office setup was not as elaborate as the one at home. I have already tried migrating to Fedora at home once and failed thanks to LiveCD’s. This time I’ve got a system that works and doesn’t show too many signs of instability. Another thing is to keep Gentoo around in a VM just in case I have to fall back to it for some apps/functions.
Plan of actions:
- add/migrate all filesystems from Gentoo to F15
- make F15 boot from a sandwich I ran in Gentoo: RAW->MD-(raid1)->LVM
- enable SELinux
- depending on success: migrate Gentoo into a VM
Couple of interesting hurdles/glitches:
- Lightspark is way more unstable in fedora vs Gentoo
- my NVidia sound keep throwing some odd messages in F15 (not in Gentoo)
- I have to deal with sytemd startup (quite a bit of learning here)
- MD RAID and LVM issues
- I have to deal with SELinux
- NFS issues
- ReiserFS issues
So here’s the story so far…
Installing flash I ended up with 32bit Adobe crap bolted via nsplugin-wrapper (lightspark turned out to be quite unstable in Fedora). But at least it works…
To know where my problems start you’d have to know where am I coming from. So on my Gentoo box I’ve been using ReiserFS for quite some time now due to effectiveness of it on systems with lots of small files. I also have a NAS where most of my stuff lives (or is synced to) mounted over NFS.
After installing F15 on a fresh new partition[s] and making sure install is functional it was the time for migration of the systems. Couple of problems I ran into on the first go:
- SELinux wouldn’t let me use ReiserFS partitions as they don’t support Extended Attributes
- As soon as I plug-in Gentoo entries into /etc/fstab all goes to hell and systemd rebels against me
First one was easy – SElinux operates in “permissive” mode now and I slowly collect it’s reports and combine fixes either into a policy or fix contexts etc. on-disk. Very tedious task. Couple of really useful tips:
from Dan Walsh:
If he had the te files from the previous run, he could use audit2allow to add rules to the te file.# audit2allow >> myexim.te << /var/log/audit/audit.log,
I haven’t realized that every time I ran “audit2allow -M” it was leaving .te file for me in root’s home directory. So instead of generating gazillion tiny policies I ended up buffing up one generated by audit2allow further and further. Cuts down on clutter and keeps things neat.
Fedora SELinux pages have quite a bit of info too and were quite helpful in understanding what I’m dealing with so far.
My NFS shares from NAS mounted ok as root, but when I got to user access I discovered that I can’t view anything on NAS. Which naturally pissed me off. Then it dawned on me that NAS has groups out-of-sync with my workstation so I have to create nas-like group on my machine and get myself into it. So after simply adding;
to /etc/group and re-logging in things started to look bit better.
Next punch was delivered by systemd – it clearly gets ahead of itself and tries to mount MD RAID/LVM volumes prior to their initialization. So my first attempt was to get mounts into systemd-like form by crafting things like that:
$ cat /etc/systemd/system/mnt-gentoo.mount # This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. [Unit] Description=Gentoo root After=dev-md124.device Requires=dev-md124.device [Mount] What=/dev/md124 Where=/mnt/gentoo Type=ext3 # Options=bind
which looks and feels as an abomination to me. So it took me some time and effort and my last (but not least hackish) attempt looks like this: we initialize all MD/LVM devices from boot string via dracut – truly a strike of evil genius:
title Fedora (22.214.171.124-0.fc15.x86_64) root (hd0,0) kernel /vmlinuz-126.96.36.199-0.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=61111111:11111111:11111111:dd6f447f rd.md.uuid=21111111:11111111:11111111:3ac2a021 rd.md.uuid=f1111111:11111111:11111111:96e591a2 rd.md.uuid=f1111111:11111111:11111111:bb65be89 rd.lvm.vg=rvg rd.lvm.vg=vg_gamer rd.lvm.vg=backup initrd /initramfs-188.8.131.52-0.fc15.x86_64.img
If that doesn’t look evil – I don’t know what does…