Welcher Dienst ist Linux Abrtd?
linux abrtd ist ein Daemon, der Anwendungsabstürze überwacht. Wenn ein Absturz auftritt, sammelt er die abgestürzte Anwendung und ergreift Maßnahmen basierend auf der Art des Absturzes, der in der Konfigurationsdatei abrt.conf im Ordner „/etc/abrt“ konfiguriert ist. Verzeichnis Nachfolgend sind die Konfigurationen „abrt.conf“ usw. aufgeführt.
Die Betriebsumgebung dieses Tutorials: Linux5.9.8-System, Dell G3-Computer.
abrtd-Dienst belegt Systemressourcen?
Problembeschreibung
Es gibt einen Prozess in unserer Entwicklungsumgebung, der besonders Ressourcen verbraucht. Dies ist schon mehrmals vor Ort und in der öffentlichen Cloud passiert, und irgendwann wird dieser Prozess den Speicher der Maschine füllen und zum Absturz führen. Jetzt habe ich dieses Problem gerade vor Ort entdeckt
Lösungsideen und -methoden
Das erste, was Sie tun müssen, wenn der Prozess voll ist, ist, sich den Prozessnamen anzusehen und visuell zu überprüfen, ob er beendet ist Als ich es zum ersten Mal gesehen habe
top -pH 48297 Schauen Sie sich an, welcher Thread im jeweiligen Prozess ein Problem hat, und stellen Sie fest, dass nur ein Prozess keinen Thread hat
ps Schauen Sie sich an, wo sich das Verzeichnis dieses Dienstes befindet
[root@yq01-kg-section1-bud3 libexec]# ps -ef | grep abrt-hook-ccpp root 45733 11797 0 12:18 pts/8 00:00:00 grep --color=auto abrt-hook-ccpp root 48297 2 99 Nov16 ? 15:42:50 /usr/libexec/abrt-hook-ccpp 11 0 8669 0 0 1605530067 e 8669 8669
Keine Ahnung! ! Ich habe mit der Suche auf Baidu begonnen und Folgendes gefunden:
abrtd
abrtd ist ein Daemon-Prozess, der Anwendungsabstürze überwacht, die Absturzdaten (Befehlszeile der Kerndateien usw.) der Anwendung erfasst und übernimmt Maßnahmen je nach Art des Absturzes und basierend auf der Konfiguration in der Konfigurationsdatei abrt.conf. Es gibt verschiedene Aktionen des Plug-Ins: Beispielsweise meldet Bugzilla Abstürze, überträgt den Bericht per FTP oder Report oder SCP Überprüfen Sie die Manpage des entsprechenden Plug-Ins.
abrtd: Automatischer Fehlerberichts-Daemon
Das Schlimmste an Linux-Debugging-Programmen ist, dass das Programm abnormal abstürzt, die Kerndatei jedoch nicht gefunden werden kann um das Problem zu lokalisieren. Aber mit der Kerndatei ist es viel einfacher, sie zu finden.
Im Allgemeinen können Sie ulimit -c unlimited in der Umgebungsvariablen festlegen. Aber Außendienstmitarbeiter vergessen manchmal, diesen Befehl festzulegen. Was ist also zu tun? Dies kann durch Einrichten des Abrt-Dienstes von Linux erreicht werden.
Ändern Sie die Datei abrt-action-save-package-data.conf
Ändern Sie sie wie folgt:
vi /etc/abrt/abrt-action-save-package-data.conf # With this option set to "yes", # only crashes in signed packages will be analyzed. # the list of public keys used to check the signature is # in the file gpg_keys # OpenGPGCheck = no # Blacklisted packages # BlackList = nspluginwrapper, valgrind, strace, mono-core # Process crashes in executables which do not belong to any package? # ProcessUnpackaged = yes # Blacklisted executable paths (shell patterns) # BlackListedPaths = /usr/share/doc/, /example*, /usr/bin/nspluginviewer, /usr/lib/xulrunner-*/plugin-container 还可以调整core文件的大小: [root@xx-host2 abrt]# cat abrt.conf # Enable this if you want abrtd to auto-unpack crashdump tarballs which appear # in this directory (for example, uploaded via ftp, scp etc). # Note: you must ensure that whatever directory you specify here exists # and is writable for abrtd. abrtd will not create it automatically. # #WatchCrashdumpArchiveDir = /var/spool/abrt-upload # Max size for crash storage [MiB] or 0 for unlimited # MaxCrashReportsSize = 1000 # Specify where you want to store coredumps and all files which are needed for # reporting. (default:/var/spool/abrt) # # Changing dump location could cause problems with SELinux. See man abrt_selinux(8). # #DumpLocation = /var/spool/abrt # If you want to automatically clean the upload directory you have to tweak the # selinux policy. # DeleteUploaded = no
Starten Sie den abrtd-Dienst neu: service abrtd restart
Wenn Sie eine Kerndatei haben, müssen Sie diese rechtzeitig löschen Führen Sie die Datei über das Listenpaket abrt-cli aus und verwenden Sie dann abrt-cli rm [Dateipaket].
Wenn das Programm abstürzt, verbraucht abrt-hook-ccpp zu viel CPU und die IO ist zu hoch, was dazu führt, dass das System voll ist. Deaktivieren Sie es einfach.
systemctl stop abrt-ccpp.service
systemctl disable abrt-ccpp.service
systemctl status abrt-ccpp.service
Ich habe den systemctl status abrt-ccpp.service überprüft und festgestellt, dass dieser Dienst überhaupt nicht gestartet ist
Baidu schon wieder
usr/libexec/abrt-hook-ccpp Warum nimmt dieser Prozess ständig zu? Weil dies nicht möglich ist. Das durch die Erstellung der CCPP-Datei verursachte
sed -i 's/ProcessUnpackaged = no/ProcessUnpackaged = yes/g' /etc/abrt/abrt-action-save-package-data.conf&& service abrtd restart
Nov 17 13:15:15 yq01-kg-section1-bud3 abrtd: Lock file '.lock' is locked by process 48297 Nov 17 13:15:15 yq01-kg-section1-bud3 abrtd: Lock file '.lock' is locked by process 48297 Nov 17 13:15:16 yq01-kg-section1-bud3 abrtd: Lock file '.lock' is locked by process 48297 Nov 17 13:15:16 yq01-kg-section1-bud3 abrtd: Lock file '.lock' is locked by process 48297 Nov 17 13:15:17 yq01-kg-section1-bud3 abrtd: Lock file '.lock' is locked by process 48297 Nov 17 13:15:17 yq01-kg-section1-bud3 systemd: abrtd.service stop-sigterm timed out. Killing. Nov 17 13:15:17 yq01-kg-section1-bud3 systemd: abrtd.service: main process exited, code=killed, status=9/KILL Nov 17 13:15:17 yq01-kg-section1-bud3 systemd: Unit abrtd.service entered failed state. Nov 17 13:15:17 yq01-kg-section1-bud3 systemd: abrtd.service failed. Nov 17 13:15:17 yq01-kg-section1-bud3 abrtd: Lock file '.lock' is locked by process 48297
Empfohlenes Lernen: „
Linux-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonWelcher Dienst ist Linux Abrtd?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Wie benutze ich Docker Desktop? Docker Desktop ist ein Werkzeug zum Ausführen von Docker -Containern auf lokalen Maschinen. Zu den zu verwendenden Schritten gehören: 1.. Docker Desktop installieren; 2. Start Docker Desktop; 3.. Erstellen Sie das Docker -Bild (mit Dockerfile); 4. Build Docker Image (mit Docker Build); 5. Docker -Container ausführen (mit Docker Run).

Docker Process Viewing -Methode: 1. Docker Cli -Befehl: Docker PS; 2. SYSTEMD CLI -Befehl: SystemCTL Status Docker; 3.. Docker Compose CLI Command: Docker-Compose PS; 4. Process Explorer (Windows); 5. /proc -Verzeichnis (Linux).

Fehlerbehebung Schritte für fehlgeschlagene Docker -Bild Build: Überprüfen Sie die Dockerfile -Syntax und die Abhängigkeitsversion. Überprüfen Sie, ob der Build -Kontext den erforderlichen Quellcode und die erforderlichen Abhängigkeiten enthält. Sehen Sie sich das Build -Protokoll für Fehlerdetails an. Verwenden Sie die Option -Target -Option, um eine hierarchische Phase zu erstellen, um Fehlerpunkte zu identifizieren. Verwenden Sie die neueste Version von Docker Engine. Erstellen Sie das Bild mit--t [Bildname]: Debugg-Modus, um das Problem zu debuggen. Überprüfen Sie den Speicherplatz und stellen Sie sicher, dass dies ausreicht. Deaktivieren Sie Selinux, um eine Störung des Build -Prozesses zu verhindern. Fragen Sie Community -Plattformen um Hilfe, stellen Sie Dockerfiles an und erstellen Sie Protokollbeschreibungen für genauere Vorschläge.

VS Code system requirements: Operating system: Windows 10 and above, macOS 10.12 and above, Linux distribution processor: minimum 1.6 GHz, recommended 2.0 GHz and above memory: minimum 512 MB, recommended 4 GB and above storage space: minimum 250 MB, recommended 1 GB and above other requirements: stable network connection, Xorg/Wayland (Linux)

Die Gründe für die Installation von VS -Code -Erweiterungen können sein: Netzwerkinstabilität, unzureichende Berechtigungen, Systemkompatibilitätsprobleme, VS -Code -Version ist zu alt, Antiviren -Software oder Firewall -Interferenz. Durch Überprüfen von Netzwerkverbindungen, Berechtigungen, Protokolldateien, Aktualisierungen von VS -Code, Deaktivieren von Sicherheitssoftware und Neustart von Code oder Computern können Sie Probleme schrittweise beheben und beheben.

VS -Code ist auf Mac verfügbar. Es verfügt über leistungsstarke Erweiterungen, GIT -Integration, Terminal und Debugger und bietet auch eine Fülle von Setup -Optionen. Für besonders große Projekte oder hoch berufliche Entwicklung kann VS -Code jedoch Leistung oder funktionale Einschränkungen aufweisen.

VS Code ist der vollständige Name Visual Studio Code, der eine kostenlose und open-Source-plattformübergreifende Code-Editor und Entwicklungsumgebung von Microsoft ist. Es unterstützt eine breite Palette von Programmiersprachen und bietet Syntax -Hervorhebung, automatische Codebettel, Code -Snippets und intelligente Eingabeaufforderungen zur Verbesserung der Entwicklungseffizienz. Durch ein reiches Erweiterungs -Ökosystem können Benutzer bestimmte Bedürfnisse und Sprachen wie Debugger, Code -Formatierungs -Tools und Git -Integrationen erweitern. VS -Code enthält auch einen intuitiven Debugger, mit dem Fehler in Ihrem Code schnell gefunden und behoben werden können.

Zu den Hauptanwendungen von Linux gehören: 1. Server -Betriebssystem, 2. Eingebettes System, 3. Desktop -Betriebssystem, 4. Entwicklungs- und Testumgebung. Linux zeichnet sich in diesen Bereichen aus und bietet Stabilität, Sicherheits- und effiziente Entwicklungstools.
