Re: Commande 'at' capricieuse

Top Page

Reply to this message
Author: Marc TERRIER
Date:  
To: Edgar Bonet
CC: guilde
Subject: Re: Commande 'at' capricieuse
Bravo Edgar pour l'analyse !!! Je suis impressionné ! :-)

Reste la question de savoir ce que doit faire exactement chacun de ces jobs 'at'. Il s'agit d'ouvertures et de fermetures planifiées de liens OpenVPN. Vu le contexte, je dirais que les jobs dont le nom commence par la lettre 'a' sont des ouvertures, et que ceux dont le nom commence par '!' sont des fermetures. OK, mais où est-ce que je trouve le code (probablement des scripts Bash) qui fait le boulot pour de vrai ? Est-ce que ce sont ces fichiers, situés dans /var/spool/at, qui devraient normalement contenir du code Bash pour "faire le boulot", et qui n'en contiennent pas parce que le /var étant plein comme un oeuf, il n'a pas été possible de créer autre chose que des fichiers de taille nulle ? On en saura sans doute un peu plus quand j'aurai killé les deux process openvpn, et permis d'écrire à nouveau dans /var.

Je vous tiens au courant. Merci à tous.

--
Marc

----- Mail original -----
De: "Edgar Bonet" <guilde@???>
À: guilde@???
Envoyé: Mercredi 14 Octobre 2020 10:23:56
Objet: Re: Commande 'at' capricieuse

Bonjour !

Marc Terrier a écrit :
> comment interpréter la fin du nom, en hexa ? [...]
>
> -rwx------ 1 root   root      0 mai  4 13:02 !0256b0193ffd8
> [...]


Remarque que les dates des fichiers ne correspondent pas tout à fait à
celles affichées par atq. Et vu que les fichiers sont vides, on peut
s'attendre à ce que leur nom encode toutes les informations affichées
par atq, à savoir le numéro de job et la date. En coupant au niveau du
zéro qui est au milieu de tous ces noms on a :

!0256b0193ffd8 → (0x0256b, 0x0193ffd8) = (9579, 26476504)

Le début est donc l'identifiant du job. Le reste semble trop petit pour
être un timestamp Unix. Sauf que... atq affiches des dates avec une
résolution de une minute. Si on multiplie ce nombre par 60 on a :

$ date -d @$(bc <<<"26476504 * 60")
lundi 4 mai 2020, 13:04:00 (UTC+0200)

Et voilà, c'est la date Unix en minutes.

À+,

Edgar.