GNU/Linux >> Znalost Linux >  >> Cent OS

Jak povolit výpis jádra pro aplikace na CentOS/RHEL

1. V CentOS/RHEL je vytváření souborů jádra ve výchozím nastavení zakázáno. Chcete-li jej povolit, spusťte níže uvedený příkaz:

# ulimit -S -c unlimited > /dev/null 2>&1

pak spusťte program ve stejném prostředí shellu.

2. Chcete-li jej povolit trvale, postupujte podle následujících kroků:

– Upravte /etc/security/limits.conf .

# vi /etc/security/limits.conf
* soft core unlimited

* ‘ se používá k umožnění neomezené velikosti Coredump pro všechny uživatele.

– Upravte /etc/sysctl.conf přidejte cestu výpisu jádra a formát souboru jádra. Ve výchozím nastavení bude soubor jádra generován v pracovním adresáři běžícího procesu.

# vi /etc/sysctl.conf
kernel.core_pattern = /var/crash/core.%e.%p.%h.%t

Zde
/var/crash je cesta a jádro.%e.%p.%h.%t je formát souboru, kde:
%e – spustitelný název souboru.
%p – PID dumpingového procesu.
%t – čas výpisu (sekundy od 0:00 h, 1. ledna 1970).
%h – název hostitele (stejný jako „název uzlu“ vrácený funkcí uname(2)).

Ujistěte se, že procesy mají správná oprávnění pro nakonfigurovaný adresář (např. /var/carsh/).

– Nastavte fs.suid_dumpable pro setuid nebo jinak chráněné/zkažené binární soubory.

# vi /etc/sysctl.conf
fs.suid_dumpable = 2

Níže je uveden význam každé předdefinované hodnoty:

  • 0 – (výchozí) :tradiční chování. Žádný proces, který změnil úrovně oprávnění nebo je pouze spuštěn, nebude vypsán.
  • 1 – (ladění) :Pokud je to možné, všechny procesy vyprázdní jádro. Výpis jádra je vlastněn aktuálním uživatelem a není použito žádné zabezpečení. Toto je určeno pouze pro situace ladění systému.
  • 2 – (suidsafe) :všechny binární soubory, které se normálně nevypisují, jsou vypsány a mohou je číst pouze root. To umožňuje koncovému uživateli odstranit takový výpis, ale nemá k němu přímý přístup. Z bezpečnostních důvodů nebudou výpisy jádra v tomto režimu přepisovat navzájem ani jiné soubory. Tento režim je vhodný, když se správci pokoušejí ladit problémy v normálním prostředí.

– Načtěte nastavení pomocí příkazu sysctl níže po úpravě /etc/sysctl.conf níže:

# sysctl -p

Chcete-li shromažďovat výpisy jádra z nepodepsaných balíčků, nastavte OpenGPGCheck =no v /etc/abrt/abrt-action-save-package-data.conf . Chcete-li shromažďovat výpisy paměti z nezabaleného softwaru, nastavte ProcessUnpackaged =yes v /etc/abrt/abrt-action-save-package-data.conf

– Restartujte démona abrtd – jako root – aby se nová nastavení projevila.

# service abrtd restart
# service abrt-ccpp restart

V CentOS/RHEL 7:

# systemctl start abrtd.service
# systemctl start abrt-ccpp.service

Nyní je CentOS/RHEL připraven generovat soubory výpisu jádra, když jsou procesy ukončeny pomocí segfault.

Poznámka :Démoni a funkce poskytované nástrojem Red Hat Automatic Bug Reporting Tool (ABRT) nejsou podporovány s CentOS/RHEL. Balíčky ABRT a přidružené soubory, jako je libreport, jsou součástí distribuce, aby vyhovovaly závislostem balíčků, ale funkce v těchto balíčcích nejsou podporovány.


Cent OS
  1. Jak povolit IPv6 na CentOS / RHEL 7

  2. CentOS / RHEL:Jak povolit SSL pro Apache

  3. Jak povolit IPv6 v CentOS / RHEL 5

  1. Jak povolit X11 Forwarding na CentOS/RHEL 5,6,7

  2. Jak povolit ladění CUPS na CentOS/RHEL

  3. Jak povolit možnost ladění pro modul CIFS v CentOS/RHEL 7 a 8

  1. CentOS / RHEL 7 :Jak povolit telnet pro skupinu uživatelů

  2. Jak povolit IPv6 na CentOS / RHEL 6

  3. Jak povolit FTP v CentOS/RHEL 5 a 6