Question Activer les vidages sur incident pour les non-emballés


Nous avons une application foo, que j'ai installé manuellement sur une machine Ubuntu (l'emballage n'est pas une option). foo est appelé à partir d'un script. Maintenant, lorsque cette application se bloque, je reçois une entrée dans /var/crash, mais aucun core dump n'est créé. Donc, en lisant ceci, j'ai fait ce qui suit:

  • désactivé apport (dans /etc/default/apport).
  • Désactiver la limite de vidage logiciel du système (* soft core unlimited à /etc/security/limits.conf)
  • Mettre ulimit -Sc unlimited et ulimit -Hc unlimited avant d'appeler à foo.

Cependant, je ne reçois pas de vidage de mémoire (s’attend à ce qu’il apparaisse dans le même répertoire que foo).

Est-ce que quelqu'un pourrait me dire ce qu'il me manque?


2
2017-09-23 10:18


origine


Q1: Qu'est-ce que votre /proc/sys/kernel/core_pattern  ressembler? Cela détermine comment le noyau gère les vidages de base. Voir man7.org/linux/man-pages/man5/core.5.html. Est-ce que tu vois toujours de la pipe à apport dans votre schéma de base? Si oui, alors vous devez comprendre ce que le enable=0 dans /etc/default/apport signifie réellement à apport. Et s'il vous plaît, en trouvant la réponse, répondez à votre propre question, car cela apport la bête semble vraiment mal documentée. - FooF
Q2: Juste pour vous assurer, après avoir fixé les limites, que ulimit -Sc montrer unlimited comme sortie? C'est à dire. Avez-vous vérifié que vous avez vraiment réussi à définir la limite avec le compte utilisateur que vous utilisiez? - FooF


Réponses:


Peut-être que vous vous êtes trompé de sens - par défaut, le compte ne doit pas être désactivé pour gérer les fichiers binaires non compressés, il suffit de connecter quelques lignes dans son fichier journal (/var/log/apport.log) et de tomber jusqu'au comportement du noyau par défaut - écrivez le fichier core dans le répertoire en cours.

Si cela ne fonctionnait pas pour vous, il n’était probablement pas question de apport, il est plus probable que vous n’ayez pas d’autres prérequis, tels que le répertoire de foo n'est pas accessible en écriture à l'utilisateur exécutant le binaire.


1
2017-12-07 15:50