J'ai planifié un simple script python pour qu'il s'exécute toutes les minutes sous l'utilisateur foo
Shell=/bin/bash
BASH_ENV=/home/foo/.bash_profile
* * * * * python /home/foo/slack-bot/main.py 2>&1 /home/foo/slack-bot.log
Après quelques minutes, j'ai eu ces erreurs et j'ai peu de temps après lancé mon serveur
-bash: fork: Cannot allocate memory
-bash: wait_for: No record of process 32012
-bash: fork: Cannot allocate memory
-bash: wait_for: No record of process 32012
....
Euh oh. J'ai donc essayé de me connecter en tant que root
et Sudo-ing en tant que foo
Sudo -iu foo
Sudo: unable to execute /bin/bash: Cannot allocate memory
Génial.
J'ai ensuite supprimé la ligne incriminée du fichier crontab de l'utilisateur de foo
et j'ai également tué tous les processus avec slack
dans le nom
kill $(ps aux | grep 'slack' | awk '{print $2}')
Je reçois maintenant une erreur différente, mais je ne peux toujours pas Sudo cet utilisateur:
Sudo -iu foo
-bash: xmalloc: .././copy_cmd.c:86: cannot allocate 32 bytes (450560 bytes allocated)
Que se passe t-il ici? Je suis sûr qu'il y a une erreur dans mon programme cron que j'examinerai, mais quel type de comportement provoque les erreurs de fork de mémoire? Quelle est la meilleure façon de récupérer à part une réinitialisation matérielle?
Merci!
C'est un modèle de lancement commun - dépend de ce dont vous avez besoin ... vous pouvez
sans connaître le cas d'utilisation, il est difficile de procéder