Ich möchte eine geplante Aufgabe über einrichten anacron
, möchte dies jedoch im Benutzermodus tun. Wie kann ich das erreichen?
Ich möchte eine geplante Aufgabe über einrichten anacron
, möchte dies jedoch im Benutzermodus tun. Wie kann ich das erreichen?
Antworten:
Sie können eine separate Anacron-Instanz für die Ausführung im Benutzermodus einrichten:
Erstellen Sie einen .anacron
Ordner in Ihrem Home-Verzeichnis und darin zwei Unterordner etc
und spool
:
mkdir -p ~/.anacron/{etc,spool}
Erstellen Sie eine neue Datei ~/.anacron/etc/anacrontab
mit ähnlichem Inhalt:
# /etc/anacrontab: configuration file for anacron
# See anacron(8) and anacrontab(5) for details.
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# period delay job-identifier command
1 10 testjob test.sh
Fügen Sie Ihrer Crontab die folgende Zeile hinzu crontab -e
:
@hourly /usr/sbin/anacron -s -t $HOME/.anacron/etc/anacrontab -S $HOME/.anacron/spool
whoami
im Skript den Benutzernamen angibt .
anacron
regelmäßig laufen ; es scheint einmal zu laufen und dann zu beenden. Das Anacron des Systems wird einmal pro Stunde aufgerufen. Ich nehme an, eine ähnliche Strategie würde hier funktionieren, dh den Benutzer anacron
vom Benutzer aus anrufen crontab
.
/etc/apm/event.d/anacron
als auch /etc/init/anacron.conf
, um Neustarts durchzuführen.
01 * * * * /usr/sbin/anacron -t /home/user/.anacron/etc/anacrontab -S /home/user/.anacron/spool
Das hat bei mir funktioniert (danke), aber ich habe den letzten Schritt in der Antwort nicht ausgeführt:
Fügen Sie dann die folgende Zeile hinzu
~/.profile
:
Ich verwende Ubuntu Studio 12.10 Quantal und in meinem Fall anstelle des letzten Schritts habe ich diesen einen Zeilenumbruch hier eingefügt: "Anwendungsmenü" → "Einstellungen" → "Einstellungsmanager", dann im Einstellungsmanager unter "Sitzung und Start" Registerkarte „Application Autostart“.
Dies ist für diejenigen unter uns, die GUI-Benutzer sind, da ~/.profile
Bash ~/bashrc
nur verwendet, wenn eine interaktive Anmeldeshell gestartet wird.
.profile
hat für mich immer gut funktioniert (Ubuntu 12.04 hier).
sudo -u <user>
vor der Aufgabe inanacrontab