Forum Linux.général Script detection HDD/SSD -> Prévention

Posté par  . Licence CC By‑SA.
Étiquettes :
2
2
oct.
2024

Bonjour,

J'ai construit un script pour check des paramètres de la table SMART suivant le type de disque HDD ou SSD.

Seulement, j'ai un comportement différent lorsque je lance le script via un crontab et via un shell bash.

Exemple depuis le shell bash :

~/scripts_scheduler# ./script_check_hdd_ssd_sdx.sh

Par mail, j'obtiens le corps du mail suivant :
Alerte niveau 1/5 : reallocated visible,bad sector < 145 0

Exemple depuis un crontab :

crontab -e
@daily /root/scripts_scheduler/script_check_hdd_ssd_sdx.sh >/dev/null 2>&1

Par mail, j'obtiens le corps du mail suivant :
Revoir Attribut Pending Smartctl : PENDING

Lien pour le code complet.

https://debian-facile.org/paste-0E5C976707-a7ca3cfd8955e37f30fb205044559610

Je me demande ce qui cloche entre une execution à la main et un crontab !

Merci pour votre retour.

  • # Logs

    Posté par  (site web personnel) . Évalué à 3 (+1/-0).

    Est ce que tu as regardé le comportement en mettant dans ton cron tab la redirection vers un fichier de log et non /dev/null ?

    Style :
    @daily /root/scripts_scheduler/script_check_hdd_ssd_sdx.sh >/root/monscript.log 2>&1

    S'il y a un problème, il y a une solution; s'il n'y a pas de solution, c'est qu'il n'y a pas de problème.

    • [^] # Re: Logs

      Posté par  . Évalué à 1 (+0/-0).

      Non, pas encore mais je peux faire cette étape !

      Un topic sur les variables d'environnement dit.

      Bon je sais pas si j'ai été clair en résumé si un script qui fonctionne ,ne fonctionne plus avec crontab il faut se penché sur les variables d'environnement et le PATH.
      Avec crontab env et PATH me renvoie

      env
      HOME=/home/stephane
      LOGNAME=stephane
      LANG=fr_FR.UTF-8
      SHELL=/bin/sh
      PWD=/home/stephane

      PATH=/usr/bin:/bin

      • [^] # Re: Logs

        Posté par  (site web personnel) . Évalué à 2 (+0/-0).

        J'ai l'impression que tu lances ton script avec l'utilisateur root, et ton cron est bien celui de root ?

        S'il y a un problème, il y a une solution; s'il n'y a pas de solution, c'est qu'il n'y a pas de problème.

      • [^] # Re: PATH

        Posté par  . Évalué à 2 (+1/-0).

        Se pourrait-il que l'utilitaire smartctl ne soit pas dans le PATH utilisé par ton script quand il est exécuté via crontab ?

        Chez moi, sur un Mint 21.3, il se trouve dans /usr/sbin

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.