05 November 2012

Archlinux moves to systemd. My own remarks.

After notice that systemd is now default in new installations I realised that sooner or later I'll be forced to migrate disregarding whether I like this idea or not :)
After some reading I rebooted, edited kernel loading line in my Grub2 with init param pointing to systemd and booted into my Arhclinux. What was noticable that I received to GUI :) Though I was aware that systemd ignores /etc/inittab (my SLiM used to start from inittab) and I wasn't that surprised. I did sudo systemctl enable slim.service (along with couple of other services which made sense for me) and rebooted again (needed not to forget to put init kernel param in place again).
Basically everything went smooth except just a few points, which weren't clear from documentation and which made me post this writing :)

 

Here I'm talking about pure systemd installations.

 

1. systemd-sysvcompat

Documentation from Archwiki states that you must not remove this package or you won't be able to boot any more. Though this package doesn't seem to contain any things I may need now (file list for systemd-sysvcompat). And it appeared to be true - if you want to remove this package you need to do the following (instructions for Grub2 loader):
  1. edit /etc/default/grub and make sure you have init kernel param present, like this:
    GRUB_CMDLINE_LINUX_DEFAULT="init=/usr/lib/systemd/systemd"
  2. regenerate grub.cfg with
    sudo grub-mkconfig -o /boot/grub/grub.cfg
  3. now when everything went fine you could remove unnecessary things:
    sudo pacman -Rcs sysvinit-tools
    this should remove sysvinit-tools, initscripts, sysvinit and systemd-sysvcompat.

2. PCManFM doesn't show removable drives

While some other tools may show them. If not check documentation first. For me problem was that udisks daemon was inactive. So simple sudo systemctl enable udisks.service fixed this for me.

These seem to be all the troubles with systemd for me, which I find pretty painless! :) And instead of conclusion: if you want to know what else services you could enable (or disable) use systemctl list-unit-files


Update 12.01.2015

After quite some time i concluded that having a /sbin/init makes way more sense in terms of compatibility and stability then having an init= kernel option configured in a boot loader. I just switched to UEFI and had to specify init= again. This time i just symlinked systemd to /sbin/init to end up this fight:
ls -s '../lib/systemd/systemd' /usr/bin/init

4 comments:

ProfeJoel said...

Hi, do you see the terminal loging before slim showed?

Kirill Malyshev said...

Hi,
yes i do. and IMO this is natural (though i've recently set up fresh install of latest ArchBang iso and slim starts up very fast, just in seconds after grub2)
if you want graphic splash (like the one Ubuntu has) you should look for a bootsplash http://en.wikipedia.org/wiki/Bootsplash#Linux_boot_screens

ProfeJoel said...

Actually I'd like it that way :)
But I'm looking for a way to not to be visile that login screen...after natural boot message should go directly to slim or another Display manager.

Kirill Malyshev said...

then it seems that i did not understand what you were talking about :)
i see systemd output starting services and then slim appears. how does this work for you?