Script Bash qui plante aléatoirement : comment debugger ?
Script Bash qui plante aléatoirement : comment debugger ?
J'ai un script de backup qui tourne en cron depuis 6 mois. Depuis 2 semaines, il plante aléatoirement (code 139). J'ai ajouté 'set -x' mais rien dans les logs. Des outils pour tracer ?
-
admin_sys_gaming
- Messages : 571
- Inscription : sam. janv. 20, 2024 7:24 pm
Re: Script Bash qui plante aléatoirement : comment debugger ?
Code 139 = segmentation fault. Ton script utilise des binaires externes ? Essaye 'strace -f -o debug.log ton_script.sh' pour voir où ça crash.
Re: Script Bash qui plante aléatoirement : comment debugger ?
J'ajouterais 'ulimit -c unlimited' avant d'exécuter pour générer un core dump. Ensuite analyse avec gdb. J'ai déjà eu ça avec rsync qui plantait à cause d'un fichier corrompu.
Re: Script Bash qui plante aléatoirement : comment debugger ?
Bonne piste ! Le strace montre un crash dans 'tar' lors de la compression. Je vais tester avec pigz à la place. Vous pensez que c'est lié à la taille des fichiers ?
Re: Script Bash qui plante aléatoirement : comment debugger ?
Très probable. J'ai eu le même problème avec des archives >50Go. Solution : soit splitter en volumes, soit utiliser '--warning=no-file-ignored' pour ignorer les erreurs mineures.