SystemCTL Cheat Sheet



Published: 2018-04-04 09:03:07 +0000
Categories: BASH,

Language

BASH

Description

Whether or not you like SystemD it is a reality of the world we currently live in, and anyone managing a modern operating system is likely to have a need to interact with it.

Utilities such as service,ckconfig and update.rc-d have largely been replaced with systemctl and it's syntax isn't always as simple and intuitive - especially when you're used to the other ways of doing things

Similar to

  • chkconfig
  • service
  • update-rc.d

Snippet

## Interacting with services

# Start service foo
# equiv: service foo start
systemctl start foo

# Stop service foo
# equiv: service foo stop
systemctl stop foo

# Restart service foo
# equiv: service foo restart
systemctl restart foo

# Reload service foo
# equiv: service foo reload
systemctl reload foo

# Conditional restart service foo
# equiv: service foo condrestart
systemctl condrestart foo

# Get status of service foo
# equiv: service foo status
systemctl status foo

## Managing services

# Disable service foo
# equiv: chkconfig foo off
systemctl disable foo.service

# Enable service foo
# equiv: chkconfig foo on
systemctl enable foo.service

# Check whether foo is enabled
# equiv: chkconfig foo
systemctl is-enabled foo.service

# Check what levels foo runs at
# equiv: chkconfig foo --list
ls /etc/systemd/system/*.wants/foo.service

## Checking runlevels and services

# List service unit files (what would have been init scripts)
# equiv: chkconfig --list
systemctl list-unit-files --type=service

# List services that run at runlevel 5 (graphical mode)
# equiv: chkconfig --list | grep 5:on
systemctl list-dependancies graphical.target

## General

# Force systemd to rescan unit files after you've made changes
# No equiv
systemctl daemon-reload

# Change to runlevel 3
# equiv: telinit 3
systemctl isolate runlevel3.target

# Make runlevel 3 the default runlevel
ln -sf /lib/systemd/system/runlevel3.target /etc/systemd/system/default.target

# Specifying runlevel from Grub
#
# Edit the kernel command line in grub like you would to add init=/bin/bash
# but add
systemd.unit=runlevel3.target #or
system.unit=resuce.target

Keywords

systemctl, systemd, init scripts, unit files, Linux, init, services, managing,

Latest Posts

Remotely backing up PFsense Configuration (BASH)
FFMPEG: Converting RMVB to X264 MP4 (BASH)
Recursively print table (print_r equivalent) (LUA)
Bulk Delete Comments from (Self-Hosted) JIRA Issues (Misc)
Add a static entry to the ARP table (BASH)
SSL Cipher Hex codes to Human Readable Names (Misc)
Convert Ascii to Binary (BASH)
Intercepting Outbound DNS Queries (BASH)
Handle Google Verification files within NGinx Configuration (NGinx)
Getting WhatsApp Rich Snippet Previews Working (Misc)

Copyright © 2018 Ben Tasker | Sitemap | Privacy Policy
Available at snippets.bentasker.co.uk and snippets.6zdgh5a5e6zpchdz.onion