SandmaulCron und Anacron.

Gesetzt den Fall Euer Rechner läuft  nicht 24/7 läuft und ihr zum Beispiel Backups als Cronjob eingerichtet habt, dann habt ihr mit dem Cronjob ggf. ein Problem.
Wie wir gleich feststellen, lässt sich dieses Problem mit Anacron lösen.
Damit nicht alle Jobs mit Root Rechten ausgeführt werden, werden wir Anacron mit Benutzerrechten einrichten.
Nehmen wir einmal an, ihr habt ein wöchentliches Backup mit Luckybackup eingerichtet welches immer Samstags um 10h00 startet.
Ist Euer Rechner um diese Uhrzeit nicht eingeschaltet,  wird der Cronjob nicht "wiederholt" sondern erst wieder am kommenden Samstag gestartet.

 

In einem solchen Fall wäre es einfacher dem Rechner zu sagen: Erstelle alle 7 Tage ein neues Backup.
An dieser Stelle kommt Anacron ins Spiel, da hiermit genau solche Planungen möglich sind.
Es gibt es jedoch ein Problem: Unsere Alternative startet per default mit Root Rechten.
Nachfolgend schauen wir uns  einmal an, wie sich das mit Benutzerrechten realisieren lässt.

Anacron mit Benutzerrechten einrichten.

Öffnet nun ein Terminal und wechselt in Euer Homeverzeichnis, das geht am besten mit:
cd ~
Nun erstellen wir ein neues Verzeichnis:
mkdir .anacron
und wechseln danach in dieses Verzeichnis:
cd .anacron/

Hier erstellen wir nun in einem Rutsch einige Unterverzeichnisse:
mkdir cron.daily cron.weekly cron.monthly spool etc

Nachdem das erledigt ist,  erstellen wir im neuen Verzeichnis 'etc' die Datei:
anacrontab

In diese Datei tragen wir die folgenden Zeilen ein:
# See anacron(8) and anacrontab(5) for details.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# These replace cron's entries
1 5 daily-cron nice run-parts --report /home/username/.anacron/cron.daily
7 10 weekly-cron nice run-parts --report /home/username/.anacron/cron.weekly
@monthly 15 monthly-cron nice run-parts --report /home/username/.anacron/cron.monthly

Den Namen 'username' müsst natürlich auf den eigenen Usernamen anpassen.

Zeitintervall.

Je nachdem wie  Eure Planung aussieht kommen die Scripts die Anacon ausführen soll nun in die entsprechenden Verzeichnis:
cron.daily, cron.weekly oder cron monthly.

Bitte darauf achten,  diese mit den Dateirechten 755 zu versehen und mit:
#!/bin/sh

Nehmen wir an Ihr habt in Luckybackup ein Profil namens 'Anatest' angelegt und eingerichtet habt würde die nachfolgende Datei mit den Rechten 755 und platziert im cron.daily Verzeichnis jeden Tag eine Sicherung durchführen:

#!/bin/sh
DISPLAY=:0.0 /usr/bin/luckybackup -c --no-questions --skip-critical /home/username/.luckyBackup/profiles/Anatest.profile        

Auch hier muss natürlich username mit dem eigenen Usernamen erstezt werden.

Damit diese Einstellungen greifen und bei jeder Anmeldung aktiv sind, öffnet ihr zum Abschluss der Arbeiten die Datei:
.profile
aus dem eigenen Home Verzeichnis.

Diese ergänzt ihr nun noch um die folgenden Zeilen:

# set PATH so it includes user's private bin directories
PATH="$HOME/bin:$HOME/.local/bin:$PATH"

/usr/sbin/anacron -t /home/ralf/.anacron/etc/anacrontab -S /home/username/.anacron/spool &> /home/username/.anacron/anacron.log.

Auch hier muss natürlich der username entsprechend angepasst werden.

Nachdem der Rechner neu gestartet wurde sind die Einstellungen aktiv und Anacron startet die so eingerichteten Jobs mit Userrechten.
Dies ist in der Praxis sehr hilfreich wenn die eigenen Dateien regelmässig gesichert werden sollen, der Rechner aber nicht immer läuft.