El 11/2/23 a les 18:05, Eloi ha escrit:
El 11/2/23 a les 17:24, Narcis Garcia ha escrit:
Salut a tothom.
Tinc un ordinador sempre engegat que necessito que es reiniciï cada
dia ben d'hora:
$ cat /etc/crontab | grep -e daily
25 5 * * * root test -x /usr/sbin/anacron || ( cd / &&
run-parts --report /etc/cron.daily )
$ cat /etc/cron.daily/reboot
#!/bin/sh
reboot
Has comprovat que el shell script tingui el bit d'executable definit?
Alternativament, si només has d'executar una comanda sense paràmetres
podries posar-hi un enllaç simbòlic (jo ho faig així)
Sí, de fet l'ordinador reinicia. També al programet li he fet
enregistrar una bitàcola a /var/log/reboot.log i la fa i hi marco la
data-hora.
Per cert, una cosa que s'ha de vigilar amb aquest muntatge és que
run-parts executa els scripts de forma seqüencial per ordre alfabètic.
Això vol dir, en particular, que si tens un altre script a /cron.daily
posterior (bé sigui teu o instal·lat per un paquet), posem per cas un
update-foo, aquest ja no s'executarà mai més.
S'executa de ben segur, i una vegada al dia només.
"Un dels grans avantatges dels sistemes Linux és que et permeten fer
qualsevol cosa.
Un dels grans inconvenients dels sistemes Linux és que et permeten fer
qualsevol cosa."
Està clar que les tasques diàries estan programades per a disparar-se
a les 05:25h però malauradament l'ordinador se'm reinicia sobre les
07:35h
No pot ser cosa de la zona horària perquè l'ordinador està establert
amb la nostra (CET) i ara només tenim 1 hora de diferència amb UTC.
Confirma que efectivament sigui així i no estiguis consultant la zona
horària d'usuaris individuals. Mira /etc/timezone per confirmar-ho
$ cat /etc/timezone
Europe/Madrid
$ date
dissabte, 11 de febrer de 2023, 20:14:01 CET
$ date --utc
dissabte, 11 de febrer de 2023, 19:14:03 UTC
Estan instal·lats els paquets anacron i cron, però no pas systemd-cron.
He provat de retocar directament /etc/crontab avançant un parell
d'hores la columna de l'hora, però no té efecte (ni després d'un nou
reinici).
Els canvis a /etc/crontab són d'aplicació immediata, no cal realitzar
cap altra acció.
He trobat que la comanda "crontab -e" és adequada per a modificar i
aplicar, però em fa editar un fitxer on només hi ha comentaris i cap
línia; no sé d'on surt ni on va a parar.
/var/spool/cron/crontabs/
$ sudo ls /var/spool/cron/crontabs/
(res)
I ara fa poca estona em trobo amb això:
$ sudo crontab -e
no crontab for root - using an empty one
/tmp/crontab.if94Er: El fitxer o directori no existeix
Creation of temporary crontab file failed - aborting
Això és correcte, una cosa és el fitxer global de crontab, que té un
camp addicional on s'indica amb quin usuari s'ha d'executar cada
comanda, i una altra els fitxers individuals editables amb crontab on
aquest camp no és necessari ni s'espera que hi sigui (de fet, si hi fos
el nom d'usuari s'interpretaria com la comanda i la comanda com els seus
paràmetres)
LA MEVA CONSULTA:
Algú sap si Systemd interfereix en tot això?
Per on buscar l'origen del problema?
Això porta funcionant així des de molt abans que existís systemd.
--
Narcis Garcia
__________
I'm using this dedicated address because personal addresses aren't
masked enough at this mail public archive. Public archive administrator
should fix this against automated addresses collectors.