Linux: systemd basics

Comandos basicos:

## Reload systemd configuration
systemctl daemon-reload
## Enable/Disable service
systemctl <enable|disable> XXX.service
## Star/Stop/Reload/Status of Service:
systemctl <start|stop|reload|status> XXX.service
## Get Service logs
journalctl -u XXX.service
## Tail log Services
journalctl -f
## Check if service is running (scripting)
systemctl -q is-active XXX.service && echo RUNNING || echo DEAD

Ejemplo de un tunel SSH con respawn:

# systemd: /etc/systemd/system/ssh-tunnel.service
[Unit]
Description=SSH Tunnel
After=network.target

[Service]
Type=simple
StartLimitInterval=0
Restart=always
RestartSec=3
User=root
ExecStart=-/usr/bin/ssh -2 -C -N -L 8080:127.0.0.1:8080 -i /root/.ssh/id_rsa \
                        -oStrictHostKeyChecking=no -oHashKnownHosts=no \
                        -oServerAliveInterval=30 -oServerAliveCountMax=3 \
                        -oTCPKeepAlive=yes -oExitOnForwardFailure=yes \
                        -p 22 user@host.acme.org

[Install]
WantedBy=multi-user.target

Ejemplo de un servicio dummy TCP:

# systemd: /etc/systemd/system/dummy.socket
[Unit]
Description=Dummy TCP Socket

[Socket]
ListenStream=1234
Accept=yes

[Install]
WantedBy=sockets.target
# systemd: /etc/systemd/system/dummy@.service
[Unit]
Description=Dummy TCP Server
Requires=dummy.socket

[Service]
Type=simple
ExecStart=-/bin/echo OK %H
StandardInput=socket
StandardOutput=socket

[Install]
WantedBy=multi-user.target

Referencias:
understanding systemd units
systemd inetd
man systemd.unit
man systemd.service
man systemd.socket

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

A %d blogueros les gusta esto: