# [SOLVED] Raspberry Pi linux kernel and systemd

## AchilleTalon

I noticed there is no option to select systemd as the initialization system for Linux for the Raspberry Pi. I got the last version available on GitHub which happens to be 3.12.26 and it seems systemd is not yet an option.

Anyone knows when this will be?

----------

## xaviermiller

Hello,

The option is only a shortcut that forces certain parameters. So, if you enable them manually, the kernel will be compatible for systemd.

But be sure that systemd is fully compatible with ARM architectures...

----------

## AchilleTalon

systemd's KEYWORDS include arm keyword. So, yes it is supposed to be fully compatible.

And all options selected by the SYSTEMD option are selected by default.

----------

## AchilleTalon

I confirm this is working fine. I compiled my own kernel, however I believe the latest compiled kernel should do fine as well since the required options are selected by default when I followed the procedure to build my own kernel.

----------

## evilshenaniganz

Would you mind sharing with everybody what you did to allow the Pi to run with systemd?  I have a Pi 2 running Gentoo and I'd like to use systemd instead of openrc.  Any tips/tricks/shortcuts would be most helpful.  All I can find on the subject are posts about Raspbian Jesse movin to systemd.

----------

## AchilleTalon

First of all, read the Wiki.

Since I built my own kernel from source code, I picked the appropriate options for the kernel configuration. I have no idea if the compiled kernels available out-there have been compiled with appropriate options. I haven't try any, but as I mentioned above, I guess they should work.

In my /boot/cmdline.txt file I have the entry: init=/usr/lib/systemd/systemd to activate systemd at boot time.

Unless you have more specific questions, this is about it.

----------

## evilshenaniganz

I did read the wiki, AchilleTalon.  I've also implemented systemd on my Kodi media center as well as a Lenovo laptop, both running Gentoo.  Both of them are x86, and thus, can run sys-kernel/gentoo-sources-3.17.8-gentoo-r1, a source tree that has the following configuration options:

```

Gentoo Linux  --->

   [*] Gentoo Linux support

   [*]   Linux dynamic and persistent device naming (userspace devfs) support

       Support for init systems, system and service managers  --->

      [ ] OpenRC, runit and other script based systems and managers

      [*] systemd

```

And the Help on the systemd option reads:

```

CONFIG_GENTOO_LINUX_INIT_SYSTEMD:                                                                                                                                      

                                                                                                                                                                           

    The init system is the first thing that loads after the kernel booted.

    These config settings allow you to select which init systems to support;

    instead of having to select all the individual settings all over the

    place, these settings allows you to select all the settings at once.

    

    This particular setting enables all the known requirements for systemd;

    it also enables suggested optional settings, as the package suggests to.

    

    Symbol: GENTOO_LINUX_INIT_SYSTEMD [=y]                                                                                                                                 

    Type  : boolean                                                                                                                                                        

    Prompt: systemd                                                                                                                                                        

      Location:                                                                                                                                                            

        -> Gentoo Linux                                                                                                                                                    

          -> Support for init systems, system and service managers                                                                                                         

      Defined at distro/Kconfig:68                                                                                                                                         

      Depends on: GENTOO_LINUX [=y] && GENTOO_LINUX_UDEV [=y]                                                                                                              

      Selects: AUTOFS4_FS [=y] && BLK_DEV_BSG [=y] && CGROUPS [=y] && DEVPTS_MULTIPLE_INSTANCES [=y] && EPOLL [=y] && FANOTIFY [=y] && FHANDLE [=y] && \                   

    INOTIFY_USER [=y] && NET [=y] && NET_NS [=y] && PROC_FS [=y] && SIGNALFD [=y] && SYSFS [=y] && TIMERFD [=y] && ANON_INODES [=y] && BLOCK [=y] && EVENTFD [=y] && \     

    FSNOTIFY [=y] && INET [=y] && NLATTR [=y]

```

These options don't appear to exist in either the sources I fetched from the Raspberry Pi's git repo nor in raspberrypi-sources.  Is this option merely a shortcut to implement everything that's described in the "Selects" section?  Just trying to understand is all, not throwing my homework on the floor and whining for somebody else to do it.

----------

## AchilleTalon

I'll be back to answer. I am pretty busy these days and haven't much time to dedicate to this. Maybe next weekend I will be able to check your question and answer. I just want to let you know I haven't forget you.

----------

