systemd is the new system and service manager in RHEL 7. It is backward compatible with SysV init scripts used by previous versions of Oracle Linux including RHEL 6. systemd is the first process that starts after the system boots, and is the final process that is running when the system shuts down.
Features
– Speeds up booting by loading services concurrently.
– Allows you to manage various types of units on a system, example:
- services (name.service)
- targets (name.target)
- devices (name.device)
- file system mount points (name.mount)
- sockets (name.socket)
– Snapshotting of the system state and restoration of the system state from a snapshot is supported.
– Mount points can be configured as systemd targets.
systemd unit types
Below is a most commonly used list of systemd unit types.
unit | function | extention |
---|---|---|
service unit | Start and control daemons and the processes they consist of. | .service |
target unit | replaces sysV init run levels. | .target |
mount unit | Control mount points in the file system. | .mount |
device unit | Expose kernel devices in systemd | .device |
Snapshot unit | Can be used to temporarily save the state of the set of systemd units, which can later be restored by activating the saved snapshot unit. | .snapshot |
swap unit | Encapsulate memory swap partitions or swap files. | .swap |
systemd configuration files
systemd units are defined by unit configuration files located in the following directories :
/usr/lib/systemd/system
systemd units distributed with installed RPM packages.
/run/systemd/system
systemd units created at runtime. This directory takes precedence over the directory with installed service units.
/etc/systemd/system
systemd units created and managed by the system administrator. This directory takes precedence over the directory with runtime units.
CentOS / RHEL 7 : Beginners guide to systemd service units
CentOS / RHEL 7 : How to set default target (default runlevel)
CentOS / RHEL 7 : How to change runlevels (targets) with systemd