|
Systemd BasicsEen eenvoudige systemd taak opzetten. Voorbeeld zelf gedefinieerde service met systemd enabled system. Deze service dotask1 voert een custom defined script uit. Maak eerst de bestanden Doe dan als als normal user met sudo-recht: sudo cp -i dotask1.service /etc/systemd/system/ chmod a+x dosomething-1.sh sudo cp -i dosomething-1.sh /usr/local/bin/ sudo systemctl enable dotask1.service sudo systemctl status dotask1 De task is inactive (dead), omdat de taak pas uitgevoerd wordt als het systeem down gaat. Als er een reboot uitgevoerd wordt, wordt hiermee een regel in de logfile toegevoegd. Als het goed is is er dan de file in de root-directory Reboot (warm of koud) wederom en check of de dotask1 service er nog is, d.w.z. persistent is. Listing van dotask1.service## Update 22-07-2017 Linux Lab en xw4600-1 ## URL 20-07-2017: http://userscripts4systemd.blogspot.nl [Unit] Description=Do something just before shutdown DefaultDependencies=no Before=shutdown.target reboot.target halt.target # This works because it is installed in the target and will be # executed before the target state is entered # Also consider kexec.target [Service] Type=oneshot ExecStart=/usr/local/bin/dosomething-1.sh [Install] WantedBy=halt.target reboot.target shutdown.target Listing van dosomething-1.sh#!/bin/bash version="ALPHA 2017.07.23 Linux Lab en xw4600-1" scriptname="${0##*/}" phrase1="done something just before shutdown..." logger -s -t $scriptname "$phrase1" sleep 5s echo "$(date '+%Y-%m-%d %T') ${HOSTNAME}: $phrase1" >> /${scriptname%.sh}.log Probeer bovenstaand script zo aan te passen dat het met het |