Hallo,
On Fri 2016-11-11 00:13:24 Werner Holtfreter wrote:
> ich moechte in Debian 8 "jessie" beim booten ein
> Datensicherungsscript starten
> Gibt es eine Moeglichkeit, den (grafischen) Login-Screen zu
> verzoegern, bis die Datensicherung fertig ist, damit man sich
> nicht zu frueh einloggen kann?
Loesung:
Das System Q4OS-Trinity-Debian 8 arbeitet mit
https://wiki.debian.org/systemd
Man schreibt daher eine "Unit"
----------------------------------------
# Dieses selbstgemachte Systemd-File
# /etc/systemd/system/backup.service
# startet das bash script
# /home/bin/backup
[Unit]
Description=Startet backup waehrend boot
Before=display-manager.service
[Service]
Type=oneshot
ExecStart=/home/bin/backup
[Install]
WantedBy=multi-user.target
----------------------------------------
und verlinkt sie durch einmaligen Aufruf von
systemctl enable backup.service
ABER:
Das Script "backup" laeuft lange und der Schutz vor Login ist nur in
der ersten Phase noetig. Ich habe daher die Restarbeiten in
Funktionen gebuendelt, die im Hintergrund ausgefuehrt werden sollen,
waehrend das Script "fertig" zurueckmeldet, damit der Login-Screen
erscheint:
------------------------------------
restarbeiten()
{
echo "Einlogsignal 2" >> $log
beep;beep;beep
mv backup.$i backup.delete || true
--- usw ---
}
restarbeiten &
------------------------------------
Gestartet von Hand funktioniert das, aber wenn das Script von der
obigen Unit gestartet wird, bricht das Script nach ein oder zwei
Hintergrund-Befehlen in der Funktion ab.
Entferne ich das "&" am Aufruf der Funktion, dann laeuft das Script
in jedem Fall korrekt.
Ich probiere schon seit Stunden herum und hoffe nun auf eine Loesung
von euch.
Nur so eine Idee: Stoppt systemd einen Prozess noch extra, wenn er
ein Fertigmeldung zurueckgibt?
--
Viele Gruesse
Werner
--
UUGRN e.V. http://www.uugrn.org/
http://mailman.uugrn.org/mailman/listinfo/uugrn
Wiki: https://wiki.uugrn.org/UUGRN:Mailingliste
Archiv: http://lists.uugrn.org/