PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Unattended Upgrade unter Debian



DrunkenFreak
20.02.15, 07:59
Hallo,

seit einiger Zeit habe ich auf meinen Servern unattended-upgrades von Debian am laufen. Die meisten Server schicken mir deshalb täglich über Cron eine Nachricht, dass /etc/cron.daily/apt gelaufen ist mit folgender Ausgabe:
[quote]
/etc/cron.daily/apt:
verbose level 2
sleeping for 13 seconds
check_stamp: interval=86400, now=1424300400, stamp=1424214000, delta=86400 (sec) download updated metadata (success).
dbus signal not send (command not available)
check_stamp: interval=86400, now=1424300400, stamp=1424214000, delta=86400 (sec) download upgradable (success)
check_stamp: interval=86400, now=1424300400, stamp=1424214000, delta=86400 (sec) unattended-upgrade (success)
check_stamp: interval=1814400, now=1424300400, stamp=1423004400, delta=1296000 (sec) autoclean (not run) skip aging since MaxAge is 0
[/code]

Sollten Updates vorhanden sein, gibt es noch eine zweite Mail mit dem Status der Updates. Jetzt ist mir aber aufgefallen, dass ein Server die erste tägliche Mail von Cron nicht schickt, sondern nur die Statusmail bei den Updates. Ich finde aber partout nicht den Unterschied bei den Konfigurationen.

Hat jemand einen Tipp, welche Einstellung mir die tägliche Mail unterdrückt?

muell200
20.02.15, 10:54
Hat jemand einen Tipp, welche Einstellung mir die tägliche Mail unterdrückt?

was steht in der /etc/cron.daily/apt?

landen die email evt. unter /var/spool/mail/root

DrunkenFreak
20.02.15, 11:10
Das ist wohl das Problem. Die Mails an root gehen auch nicht an mich raus. Die Mail landet in /var/spool/mail/nobody, weil root auf user gemappt ist und der nicht existent ist.

Ich hatte schon gehofft, dass man diese täglichen Mails ausschalten kann.

nopes
20.02.15, 13:18
afaik kann man die Variable MAILTO auf nichts stellen (MAILTO="" in den entsprechenden Cron-Dateien)...

DrunkenFreak
20.02.15, 13:22
Sagt die Manpage genauso. Ich setze es mal und berichte.

muell200
20.02.15, 19:10
Sagt die Manpage genauso. Ich setze es mal und berichte.

kannst du mir noch den inhalt von /etc/cron.daily/apt zeigen.

damit ich sehen kann, wie du das machst...

mercy

DrunkenFreak
20.02.15, 19:15
Die /etc/cron.daily/apt muss dafür nicht angepasst werden. Wie Es richtig geht steht hier (https://wiki.debian.org/UnattendedUpgrades).

Wenn Weiterhin gewünscht kann ich sie Montag Posten.

DrunkenFreak
23.02.15, 07:44
Es klappt natürlich nicht, wenn man MAILTO="" in ein Skript unterhalb von /etc/cron.* schreibt. Die Variable muss global in /etc/crontab gesetzt werden, was ich aber nicht will. Ich werde weiter forschen.

marce
23.02.15, 07:59
Du kannst die Variable in der crontab setzen - sie gilt dann für alle Cronjobs, die NACH der Definition eingetragen sind. Sprich Du kannst die Variable auch mehrfach setzen, der jeweilige Wert gilt dann für die Cron-Einträge, die nach der entsprechenden Definition aufgeführt sind.

mailto=user1@wo.auch.immer
0 * * * * job
0 1 * * * job2

mailto=user2@wo.auch.immer
0 * * * * job3

mailto=""
*/5 * * * * job4

DrunkenFreak
23.02.15, 11:47
Ich habe es jetzt so gelöst, dass ich /etc/cron.daily/apt über regex bei run-parts ausschließe und per Hand nach #9 ausführe:


25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report --regex='^[b-z].*$' /etc/cron.daily )

MAILTO=""
45 6 * * * root /etc/cron.daily/apt


Der Nachteil ist ganz klar, dass andere Skripte mit a am Anfang nicht ausgeführt werden. Man muss sie per Hand hinzufügen. Negative matching mit (?!apt).+ scheint das Regex von run-parts nicht zu können.