GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Aktivieren Sie Core/Crash-Dumps programmgesteuert

Ich habe eine funktionierende Lösung gefunden. Die Kerndateien werden jetzt erstellt.

struct rlimit core_limit;
core_limit.rlim_cur = RLIM_INFINITY;
core_limit.rlim_max = RLIM_INFINITY;

if (setrlimit(RLIMIT_CORE, &core_limit) < 0)
    fprintf(stderr, "setrlimit: %s\nWarning: core dumps may be truncated or non-existant\n", strerror(errno));

Gutschrift geht hier:http://adamrosenfield.com/blog/2010/04/23/dumping-core/


wenn Sie Ihr aktuelles Limit für Ihren Prozess überprüfen möchten, dann

struct rlimit  v;   //you can decelare any variable

getrlimit(RLIMIT_CORE, &v);

printf("softlimit=%d   hardlimit=%d  \n",v.rlim_cur,v.rlim_max);

Wenn Sie ein neues Limit festlegen möchten, verwenden Sie den folgenden Code

///////////////////// Limit setzen /////////////////////////// ///

machen wir es einfach

struct rlimit v;
v.rlim_cur = 0 ;  //if you do not want the core dump file

/*  v.rlim_cur=RLIM_INFINITY;    //set maximum soft limit of the file(unlimited) */

v.rlim_max = RLIM_INFINITY;    //for reference to the soft limit(unlimited)

setrlimit(RLIMIT_CORE, &v);

Ein Wert von rlim_cur zwischen 0 und unendlich bedeutet, dass Core-Dumps generiert und auf die angegebene Größe gekürzt werden. Dadurch besteht die Gefahr, dass ein unvollständiger Core-Dump erstellt wird


Linux
  1. Nagios XI Review (Kostenloser Nagios-Core vs. Nagios XI)

  2. So verwenden Sie kdump für die Linux-Kernel-Crash-Analyse

  3. Wie man programmgesteuert einen Core-Dump in C/C++ verursacht

  4. Verbindungsgeschwindigkeit programmgesteuert abrufen?

  5. Videoplayer mpv programmgesteuert anhalten

Kernkomponenten eines Kubernetes-Clusters

So installieren Sie Windows PowerShell Core 6.0 unter Linux

So aktivieren Sie den Dunkelmodus in Firefox

Deaktivieren Sie --skip-grant-tables in MySQL

Kennwort programmgesteuert ändern

So zeigen Sie die Core-Datei an (allgemein)