Y a-t-il un moyen d'empêcher un processus d'être tué quoi qu'il en soit? Je connais Nice
mais je ne sais pas si le fait de donner à une tâche longue comme une longue tâche gourmande en mémoire rake
la priorité la plus élevée l'empêchera de la tuer:
Nice -n -20 rake xyz
Edit: l’affiche originale souhaite très probablement qu’elle soit prioritaire même si le serveur manque également de ressources, à tel point que d’autres processus sont tués en premier.
Pourquoi serait il serait tué?
Parce que ce n'est pas automatique que quelque chose soit tué. Une fois que vous aurez répondu à cette question et expliqué pourquoi un élément serait détruit, vous pourrez peut-être trouver une solution.
Étant donné que vous parlez de la commande rake
de Rails, je suppose qu'il s'agit d'un processus s'exécutant sur un serveur. Le fait que vous craigniez que cet assassinat vous inquiète donne à penser que le serveur hôte l'a tué pour avoir utilisé trop de ressources. Dans de tels cas, il n'y a pas (et il ne devrait pas y avoir) de moyens d'arrêter votre processus pour être tué.
Si vous avez une tâche coûteuse en ressources, achetez plus de ressources. Utilisez votre propre temps serveur. Ou arrivez à un arrangement avec l'hôte qui vous permet de l'exécuter à sa guise.
Vous ne pouvez pas empêcher root de tuer un processus. Ou d'ailleurs: vous ne pouvez pas empêcher le serveur de tuer un processus qui consomme toutes vos ressources.
Ce que vous pouvez faire, c'est de brancher la commande pour qu'elle se redémarre automatiquement lorsqu'elle est tuée.
Exemple utilisant le code: