home       inleiding       sysadmin       services       links       bash       werk       nothing      

daemon administratie: systemctl

Sedert 2016 gebruiken redhat, debian, ubuntu en linux mint het pakket systemd voor service beheer
Een uitgebreide uitleg vind je hier: digital ocean systemd.
 
We tonen kort de belangrijkste funkties:
 

  1. status van openssh tonen: [systemctl status naam.service]
     
    user@mint18-srv ~ $ sudo systemctl status ssh.service
    ● ssh.service - OpenBSD Secure Shell server
    Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enab
    Active: active (running) since Wed 2017-05-31 15:19:38 CEST; 1h 8min ago
    Main PID: 2620 (sshd)
    CGroup: /system.slice/ssh.service
           └─2620 /usr/sbin/sshd -D
     
    May 31 15:19:38 mint18-srv systemd[1]: Starting OpenBSD Secure Shell server...
    May 31 15:19:38 mint18-srv sshd[2620]: Server listening on 0.0.0.0 port 22.
    May 31 15:19:38 mint18-srv sshd[2620]: Server listening on :: port 22.
    May 31 15:19:38 mint18-srv systemd[1]: Started OpenBSD Secure Shell server.
    May 31 15:55:57 mint18-srv sshd[2924]: Accepted password for bert from 127.0.0.1
    May 31 15:55:57 mint18-srv sshd[2924]: pam_unix(sshd:session): session opened ..

     

  2. ssh-daemon stoppen: [systemctl stop naam.service]
     
    user@mint18-srv ~ $ sudo systemctl stop ssh.service
    (de command line zegt niets we moeten de status opvragen ...)
    user@mint18-srv ~ $ systemctl status ssh.service
    ● ssh.service - OpenBSD Secure Shell server
    Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enab
    Active: inactive (dead) since Wed 2017-05-31 16:31:10 CEST; 4s ago
    Main PID: 2620 (code=exited, status=0/SUCCESS)
    ...
    May 31 16:31:10 mint18-srv systemd[1]: Stopping OpenBSD Secure Shell server...
    May 31 16:31:10 mint18-srv systemd[1]: Stopped OpenBSD Secure Shell server.

     

  3. ssh-daemon starten: [systemctl start naam.service]
     
    user@mint18-srv ~ $ sudo systemctl start ssh.service
    user@mint18-srv ~ $ systemctl status ssh.service
    ● ssh.service - OpenBSD Secure Shell server
    Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
    Active: active (running) since Wed 2017-05-31 16:36:19 CEST; 5s ago
    Main PID: 3046 (sshd)
    CGroup: /system.slice/ssh.service
           └─3046 /usr/sbin/sshd -D
    May 31 16:36:19 mint18-srv systemd[1]: Starting OpenBSD Secure Shell server...
    May 31 16:36:19 mint18-srv sshd[3046]: Server listening on 0.0.0.0 port 22.
    May 31 16:36:19 mint18-srv sshd[3046]: Server listening on :: port 22.
    May 31 16:36:19 mint18-srv systemd[1]: Started OpenBSD Secure Shell server.

     

  4. ssh-daemon herstarten: [systemctl restart naam.service]
     
    herstarten is een stop gevolgd door een start
     
    user@mint18-srv ~ $ sudo systemctl restart ssh.service
    user@mint18-srv ~ $ systemctl status ssh.service
    ● ssh.service - OpenBSD Secure Shell server
    Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
    Active: active (running) since Wed 2017-05-31 16:40:56 CEST; 1s ago
    Main PID: 3055 (sshd)
    CGroup: /system.slice/ssh.service
           └─3055 /usr/sbin/sshd -D
    May 31 16:40:56 mint18-srv systemd[1]: Starting OpenBSD Secure Shell server...
    May 31 16:40:56 mint18-srv sshd[3055]: Server listening on 0.0.0.0 port 22.
    May 31 16:40:56 mint18-srv sshd[3055]: Server listening on :: port 22.
    May 31 16:40:56 mint18-srv systemd[1]: Started OpenBSD Secure Shell server.

    Merk op dat de PID veranderd is van 3046 naar 3055
     

  5. ssh-daemon reloaden: [systemctl reload naam.service]
     
    reloaden is een herinladen van de config-file (meestal na aanpassingen)
     
    user@mint18-srv ~ $ sudo systemctl reload ssh.service
    user@mint18-srv ~ $ systemctl status ssh.service
    ● ssh.service - OpenBSD Secure Shell server
    Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
    Active: active (running) since Wed 2017-05-31 16:40:56 CEST; 4min 21s ago
    Process: 3064 ExecReload=/bin/kill -HUP $MAINPID (code=exited, status=0/SUCCESS)
    Main PID: 3055 (sshd)
    CGroup: /system.slice/ssh.service
           └─3055 /usr/sbin/sshd -D
    May 31 16:40:56 mint18-srv systemd[1]: Starting OpenBSD Secure Shell server...
    May 31 16:40:56 mint18-srv sshd[3055]: Server listening on 0.0.0.0 port 22.
    May 31 16:40:56 mint18-srv sshd[3055]: Server listening on :: port 22.
    May 31 16:40:56 mint18-srv systemd[1]: Started OpenBSD Secure Shell server.
    May 31 16:45:16 mint18-srv systemd[1]: Reloading OpenBSD Secure Shell server.
    May 31 16:45:16 mint18-srv sshd[3055]: Received SIGHUP; restarting.
    May 31 16:45:16 mint18-srv systemd[1]: Reloaded OpenBSD Secure Shell server.
    May 31 16:45:16 mint18-srv sshd[3055]: Server listening on 0.0.0.0 port 22.

    De PID is nu gelijk gebleven ...
     

  6. ssh-daemon dis-ablen: [systemctl disable naam.service]
     
    disable, betekent dat de service niet meer automatisch wordt opgestart bij booten van je server
     
    user@mint18-srv ~ $ sudo systemctl disable ssh.service
    Synchronizing state of ssh.service with SysV init with /lib/systemd/systemd-sysv-install...
    Executing /lib/systemd/systemd-sysv-install disable ssh
    insserv: warning: current start runlevel(s) (empty) of script `ssh' overrides LSB defaults (2 3 4 5).
    insserv: warning: current stop runlevel(s) (2 3 4 5) of script `ssh' overrides LSB defaults (empty).
    Removed symlink /etc/systemd/system/sshd.service.

    user@mint18-srv ~ $ systemctl status ssh.service

    ● ssh.service - OpenBSD Secure Shell server
    Loaded: loaded (/lib/systemd/system/ssh.service; disabled; vendor preset: enabled)
    Active: active (running) since di 2017-06-06 12:32:52 CEST; 6h ago

    Hoewel bij de volgende system restart de service niet meer automatisch zal opstarten, wordt die nu met rust gelaten, en blijft de ssh.service draaien.
     
    We herstarten de machine:
    user@mint18-srv ~ ~$ sudo init 6
    Connection to 192.168.5.240 closed by remote host. Connection to 192.168.5.240 closed.
     
    ... en proberen nadien terug in te loggen:
    frank@system3 ~ $ ssh user@192.168.5.240
    ssh: connect to host 192.168.5.240 port 22: Connection refused
     

  7. ssh-daemon en-ablen: [systemctl enable naam.service]
     
    enable, betekent dat de service automatisch zal worden opgestart bij elke boot van je server.
    bij het installeren van een service met apt wordt een service normaal gezien automatisch ge-enabled.
     
    user@mint18-srv ~ $ sudo systemctl enable ssh.service
    Synchronizing state of ssh.service with SysV init with /lib/systemd/systemd-sysv-install...
    Executing /lib/systemd/systemd-sysv-install enable ssh
    insserv: warning: current start runlevel(s) (empty) of script `ssh' overrides LSB defaults (2 3 4 5).
    insserv: warning: current stop runlevel(s) (2 3 4 5) of script `ssh' overrides LSB defaults (empty).
    Created symlink from /etc/systemd/system/sshd.service to /lib/systemd/system/ssh.service.

     

  8. oefening: probeer de voorbeelden van hierboven met systemctl op de service httpd op je eigen centOS systeem of
    apache2 op je eigen ubuntu systeem (sudo apt install apache2)
     
     
    SSH service in centOS8
    ----------------------
    33  sudo systemctl status sshd
    34  sudo systemctl status sshd.service                                                                       
     
    APACHE2 in centOS8
    ------------------
    37  sudo yum install httpd
    60  sudo systemctl status httpd
    63  sudo systemctl start httpd    
     
    LYNX in centOS8
    ---------------
    43  yum search lynx
    48  cd /etc/yum.repos.d/                                                                                    
    49  ls
    56  sudo dnf config-manager --set-enabled powertools                                                         57  sudo yum install lynx                                                                                    
     
    APACHE testen in CENTOS8                                                                          
    ------------------------
    65  lynx localhost