This is a multi-part message in MIME format.
(disculpes per la resposta a dalt, però he cregut millor seguir la
convenció d'aquests missatges)
En primer lloc agraït per les explicacions detallades sobre anacron, és quelcom on mai havia aprofundit.
Dit tot això, el que em queda clar és que els
cron.{daily|weekly|monthly} amb anacron únicament garanteixen que el que
hi ha allà s'executarà un cop cada {dia|setmana|mes} però, si hi ha
anacron instal·lat, sense garantia sobre en quin moment exacte del dia passarà (quan es desperta anacron, a 2/4 de 8 del matí, o poca estona després que s'engega l'ordinador) mentre que, sense anacron, *no* hi ha garantia que es respecti la periodicitat si l'ordinador no està sempre engegat.
Reconec que al treballar normalment sobre servidors, que no tenen
instal·lat anacron i estan permanentment engegats, no havia detectat
aquesta particularitat. També, pel fet que mai esperava una hora
específica per a aquestes execucions periòdiques, simplement que s'executés.
Si el que realment interessa és que quelcom s'executi a una hora
determinada, bo i sabent que si l'ordinador no està engegat en aquella
hora no s'executarà (i, en el teu cas específic per a reiniciar, és que realment no ho necessites), el que jo faria seria posar una programació explícita sota /etc/cron.d:
55 5 * * * root reboot
No necessites tocar per a res anacron i pots especificar lliurement
l'hora d'execució.
El 11/2/23 a les 21:21, Josep Lladonosa ha escrit:
Hola,
Efectivament, la línia
25 5 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
té dues instruccions: primer el "test" mira si anacron fitxer
executable existeix. Si hi és aleshores ja no fa la segona instrucció (entre parèntesis) pel que no s'executa el que hi ha a cron.daily. Desinstal·lant anacron, t'ho faria a les 5:25 h.
On Sat, 11 Feb 2023 at 21:09, tictacbum <[email protected]> wrote:
Hola,
anacron està pensat per a sistemes que no estan sempre engegats,
crec que si el desinstales ja s'executarà a l'hora que vols
a man anacron diu:
DEBIAN-SPECIFIC CONFIGURATION
On Debian-based systems, anacron will be activated
hourly every day from *07:30* local time to 23:30 local time
through cron job (on non-systemd systems where cron is installed
and enabled) or systemd timer (on systemd-based systems).
On activation, anacron will check if it missed some jobs. If yes,
it will start those jobs after a short period of
time.
salut!
Lluís
Missatge de Narcis Garcia <[email protected]> del dia ds., 11
de febr. 2023 a les 20:17:
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.
--
--
Salutacions...Josep
--
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<div class="moz-cite-prefix">
<p>(disculpes per la resposta a dalt, però he cregut millor seguir
la convenció d'aquests missatges)</p>
<p>En primer lloc agraït per les explicacions detallades sobre
anacron, és quelcom on mai havia aprofundit.</p>
<p>Dit tot això, el que em queda clar és que els
cron.{daily|weekly|monthly} amb anacron únicament garanteixen
que el que hi ha allà s'executarà un cop cada {dia|setmana|mes}
però, si hi ha anacron instal·lat, sense garantia sobre en quin
moment exacte del dia passarà (quan es desperta anacron, a 2/4
de 8 del matí, o poca estona després que s'engega l'ordinador)
mentre que, sense anacron, *no* hi ha garantia que es respecti
la periodicitat si l'ordinador no està sempre engegat.</p>
<p>Reconec que al treballar normalment sobre servidors, que no
tenen instal·lat anacron i estan permanentment engegats, no
havia detectat aquesta particularitat. També, pel fet que mai
esperava una hora específica per a aquestes execucions
periòdiques, simplement que s'executés.</p>
<p>Si el que realment interessa és que quelcom s'executi a una
hora determinada, bo i sabent que si l'ordinador no està engegat
en aquella hora no s'executarà (i, en el teu cas específic per a
reiniciar, és que realment no ho necessites), el que jo faria
seria posar una programació explícita sota /etc/cron.d:</p>
<p>55 5 * * * root reboot</p>
<p>No necessites tocar per a res anacron i pots especificar
lliurement l'hora d'execució.<br>
</p>
</div>
<div class="moz-cite-prefix">El 11/2/23 a les 21:21, Josep Lladonosa
ha escrit:<br>
</div>
<blockquote type="cite" cite="mid:
CAPBO7TbVPdLPinmozNLwn3cJ+49GawoH2z+WvcUAmUbWeN2WUg@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="ltr">
<div dir="ltr">
<div>Hola,</div>
<div><br>
</div>
<div>Efectivament, la línia</div>
<div><br>
</div>
<div>25 5 * * * root test -x /usr/sbin/anacron || ( cd
/ && run-parts --report /etc/cron.daily )</div>
</div>
<div><br>
</div>
<div>té dues instruccions: primer el "test" mira si anacron
fitxer executable existeix. Si hi és aleshores ja no fa la
segona instrucció (entre parèntesis) pel que no s'executa el
que hi ha a cron.daily.</div>
<div>Desinstal·lant anacron, t'ho faria a les 5:25 h.</div>
<div><br>
</div>
<div><br>
</div>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Sat, 11 Feb 2023 at
21:09, tictacbum <<a href="mailto:
[email protected]"
moz-do-not-send="true" class="moz-txt-link-freetext">
[email protected]</a>>
wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div dir="ltr">
<div>Hola,</div>
<div>anacron està pensat per a sistemes que no estan
sempre engegats, crec que si el desinstales ja
s'executarà a l'hora que vols</div>
<div>a man anacron diu:</div>
<div>DEBIAN-SPECIFIC CONFIGURATION<br>
On Debian-based systems, anacron will be
activated hourly every day from <b>07:30</b> local time
to 23:30 local time through cron job (on non-systemd
systems where cron is installed<br>
and enabled) or systemd timer (on systemd-based
systems). On activation, anacron will check if it
missed some jobs. If yes, it will start those jobs after
a short period of<br>
time.</div>
<div><br>
</div>
<div>salut!</div>
<div>Lluís<br>
</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">Missatge de Narcis
Garcia <<a href="mailto:
[email protected]"
target="_blank" moz-do-not-send="true"
class="moz-txt-link-freetext">
[email protected]</a>>
del dia ds., 11 de febr. 2023 a les 20:17:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">El 11/2/23 a les
18:05, Eloi ha escrit:<br>
> El 11/2/23 a les 17:24, Narcis Garcia ha escrit:<br>
>> Salut a tothom.<br>
>><br>
>> Tinc un ordinador sempre engegat que necessito
que es reiniciï cada <br>
>> dia ben d'hora:<br>
>><br>
>> $ cat /etc/crontab | grep -e daily<br>
>> 25 5 * * * root test -x
/usr/sbin/anacron || ( cd / && <br>
>> run-parts --report /etc/cron.daily )<br>
>><br>
>> $ cat /etc/cron.daily/reboot<br>
>> #!/bin/sh<br>
>> reboot<br>
> <br>
> Has comprovat que el shell script tingui el bit
d'executable definit? <br>
> Alternativament, si només has d'executar una
comanda sense paràmetres <br>
> podries posar-hi un enllaç simbòlic (jo ho faig
així)<br>
<br>
Sí, de fet l'ordinador reinicia. També al programet li
he fet <br>
enregistrar una bitàcola a /var/log/reboot.log i la fa i
hi marco la <br>
data-hora.<br>
<br>
> Per cert, una cosa que s'ha de vigilar amb aquest
muntatge és que <br>
> run-parts executa els scripts de forma seqüencial
per ordre alfabètic. <br>
> Això vol dir, en particular, que si tens un altre
script a /cron.daily <br>
> posterior (bé sigui teu o instal·lat per un
paquet), posem per cas un <br>
> update-foo, aquest ja no s'executarà mai més.<br>
<br>
S'executa de ben segur, i una vegada al dia només.<br>
<br>
> "Un dels grans avantatges dels sistemes Linux és
que et permeten fer <br>
> qualsevol cosa.<br>
> Un dels grans inconvenients dels sistemes Linux és
que et permeten fer <br>
> qualsevol cosa."<br>
> <br>
>> Està clar que les tasques diàries estan
programades per a disparar-se <br>
>> a les 05:25h però malauradament l'ordinador
se'm reinicia sobre les <br>
>> 07:35h<br>
>> No pot ser cosa de la zona horària perquè
l'ordinador està establert <br>
>> amb la nostra (CET) i ara només tenim 1 hora de
diferència amb UTC.<br>
> Confirma que efectivament sigui així i no estiguis
consultant la zona <br>
> horària d'usuaris individuals. Mira /etc/timezone
per confirmar-ho<br>
<br>
$ cat /etc/timezone<br>
Europe/Madrid<br>
$ date<br>
dissabte, 11 de febrer de 2023, 20:14:01 CET<br>
$ date --utc<br>
dissabte, 11 de febrer de 2023, 19:14:03 UTC<br>
<br>
>> Estan instal·lats els paquets anacron i cron,
però no pas systemd-cron.<br>
>><br>
>> He provat de retocar directament /etc/crontab
avançant un parell <br>
>> d'hores la columna de l'hora, però no té efecte
(ni després d'un nou <br>
>> reinici).<br>
> Els canvis a /etc/crontab són d'aplicació
immediata, no cal realitzar <br>
> cap altra acció.<br>
>> He trobat que la comanda "crontab -e" és
adequada per a modificar i <br>
>> aplicar, però em fa editar un fitxer on només
hi ha comentaris i cap <br>
>> línia; no sé d'on surt ni on va a parar.<br>
> /var/spool/cron/crontabs/<br>
<br>
$ sudo ls /var/spool/cron/crontabs/<br>
(res)<br>
<br>
>> I ara fa poca estona em trobo amb això:<br>
>> $ sudo crontab -e<br>
>> no crontab for root - using an empty one<br>
>> /tmp/crontab.if94Er: El fitxer o directori no
existeix<br>
>> Creation of temporary crontab file failed -
aborting<br>
> Això és correcte, una cosa és el fitxer global de
crontab, que té un <br>
> camp addicional on s'indica amb quin usuari s'ha
d'executar cada <br>
> comanda, i una altra els fitxers individuals
editables amb crontab on <br>
> aquest camp no és necessari ni s'espera que hi
sigui (de fet, si hi fos <br>
> el nom d'usuari s'interpretaria com la comanda i la
comanda com els seus <br>
> paràmetres)<br>
>> LA MEVA CONSULTA:<br>
>> Algú sap si Systemd interfereix en tot això?<br>
>> Per on buscar l'origen del problema?<br>
> Això porta funcionant així des de molt abans que
existís systemd.<br>
> <br>
<br>
-- <br>
<br>
Narcis Garcia<br>
<br>
__________<br>
I'm using this dedicated address because personal
addresses aren't <br>
masked enough at this mail public archive. Public
archive administrator <br>
should fix this against automated addresses collectors.<br>
<br>
</blockquote>
</div>
</blockquote>
</div>
<br clear="all">
<br>
-- <br>
<div dir="ltr" class="gmail_signature">--<br>
Salutacions...Josep<br>
--</div>
</div>
</blockquote>
<p><br>
</p>
</body>
</html>
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)