"systemd" usage on SourceMage Gnu/Linux,¶
This is a braindump by Jeremy Kajikawa to describe the layout provided as a template and explain
what is essential along with various notes describing some of the provisions of systemd configs on SMGL
The spell was created on request and requires the following configuration settings to be dealt with
before becoming the system wide init daemon
After casting the "systemd" spell,
Edit /etc/systemd/systemd.conf for any daemon options you wish to use
(these are overridden by being given as kernel boot options :)
You may need to cast udev and dbus if they are not force-recast by the systemd spell (this is a planned ToDo)
this will install the proper configurations for these two dependencies.
You will then have to modify any configuration of the /etc/systemd/system/ content to suite what you want to run.
The following *.target files are essentials and are not the only targets available
basic cryptsetup emergency final getty graphical halt kexec local-fs multi-user network nss-lookup poweroff
reboot remote-fs rescue rpcbind rtc-set shutdown sigpwr sockets sound swap sysinit syslog umount
To run any services you need the appropriate .service files...
and any @.service files will trigger xinetd behaviours (making xinetd itself optional after this is working)
Some of the .target files also have .wants folders... these are for extending the service or target
to run extra services...
Examples from my own system are...[pathing relative to /etc/systemd/system/]
"graphical.target.wants/dm.service" is a symlink to "lxdm.service"
"network.target.wants/sshd.service" is a symlink to "sshd.service" forcing sshd to run at boot instead of on-demand
as there is also a provision of "sshd@.service" which allows sshd logins to occur on-demand (socket access)
instead of running everything at the system launch
Network-Manager is recommended to be installed but you also have wicd as an alternative...
for handling network connections with your own script able to be wrapped with a config entry to be called
prior to the network.target starting any services required
I additionally symlinked "multi-user.target.wants/network.target" to "network.target" forcing the network dependency
for a full multi-user enabled system and graphical.target also inherently depends on the multi-user.target
Additionally the following two Symlinks are mandatory
To Enable support of the Three-Finger-Salute of Control with Alt and Delete
ctrl-alt-del.target -> reboot.target
To Select what system configuration actually gets booted
default.target -> graphical.target
You can change the default.target to symlink to multi-user.target if you do not want an X login
For SysV init compatability you can either create or symlink the following entries...symlinking is easier
runlevel0.target -> poweroff.target
runlevel1.target -> rescue.target
runlevel2.target -> multi-user.target
runlevel3.target -> multi-user.target
runlevel4.target -> multi-user.target
runlevel5.target -> graphical.target
runlevel6.target -> reboot.target
these are recommendation only and are subject to your own whims for the multi-user and graphical target levels
You can also clearly see examples for additional configuration materials online and in the template materials
[the current SourceMage "imp-data-systemd"/template/ is actually a snapshot from my(J.Kajikawa's) running system]
Please feel free to change Display Manager and other runtime services that you want to use as you see fit,
I know you will anyway... and there is plenty of documentation and examples...
The systemd development team is also providing various configuration options to upstream packages as well...
so what I have available as a template will slowly be less and less needed beyond initial setup.