Website-Suche

So reduzieren Sie die hohe RAM- und CPU-Auslastung unter Linux


Linux ist ein leistungsstarkes und effizientes Betriebssystem, aber eine hohe RAM- und CPU-Auslastung kann die Leistung beeinträchtigen, Anwendungen verlangsamen und sogar Systemabstürze verursachen, wenn Sie einen Server, eine Workstation oder ein eingebettetes System ausführen.

In diesem Leitfaden untersuchen wir praktische Methoden, um die RAM- und CPU-Auslastung unter Linux zu reduzieren. Wir behandeln Überwachungstools, Prozessmanagement, Kernel-Optimierungen und Systemoptimierungstechniken, um Ihr System effizient am Laufen zu halten.

1. Identifizieren Sie ressourcenhungrige Prozesse

Der erste Schritt zur Reduzierung der RAM- und CPU-Auslastung besteht darin, mithilfe mehrerer Befehlszeilentools zu ermitteln, welche Prozesse die meisten Ressourcen verbrauchen:

ein. Verwenden des Befehls top

Der Befehl top bietet eine Echtzeitansicht der Systemprozesse, einschließlich CPU- und Speicherauslastung.

top
  • Drücken Sie P, um Prozesse nach CPU-Auslastung zu sortieren.
  • Drücken Sie M, um Prozesse nach Speicherauslastung zu sortieren.
  • Suchen Sie nach Prozessen, die übermäßig viele Ressourcen verbrauchen, und notieren Sie sich deren Prozess-ID (PID).

b. Verwenden des Befehls htop

HTOP ist ein interaktiver Prozessbetrachter, der eine benutzerfreundlichere Oberfläche als Top bietet.

Um htop unter Linux zu installieren, verwenden Sie den folgenden entsprechenden Befehl für Ihre spezifische Linux-Distribution.

sudo apt install htop         [On Debian, Ubuntu and Mint]
sudo dnf install htop         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/htop  [On Gentoo Linux]
sudo apk add htop             [On Alpine Linux]
sudo pacman -S htop           [On Arch Linux]
sudo zypper install htop      [On OpenSUSE]    
sudo pkg install htop         [On FreeBSD]

Führen Sie htop aus, um Prozesse einfach anzuzeigen und zu verwalten.

htop
  • Drücken Sie F6, um Prozesse nach CPU- oder Speicherauslastung zu sortieren.
  • Drücken Sie F9, um einen ausgewählten Prozess zu beenden.

c. Verwenden des ps-Befehls

Der Befehl ps kann verwendet werden, um Prozesse und deren Ressourcenverbrauch aufzulisten.

ps aux --sort=-%mem | head  # Top memory-consuming processes
ps aux --sort=-%cpu | head  # Top CPU-consuming processes

2. Beenden Sie unnötige Prozesse

Sobald Sie ressourcenintensive Prozesse identifiziert haben, können Sie sie beenden, um Ressourcen freizugeben, indem Sie den Befehl kill gefolgt von der PID verwenden.

kill PID

Wenn der Prozess nicht beendet wird, verwenden Sie das Flag -9, um das Beenden zu erzwingen.

kill -9 PID

Alternativ können Sie den Befehl pkill verwenden, um Prozesse nach Namen zu beenden.

pkill process_name

3. Optimieren Sie Startanwendungen

Viele Anwendungen und Dienste werden beim Booten automatisch gestartet und verbrauchen wertvolle Systemressourcen.

So verwalten Sie Startanwendungen:

ein. Verwenden des Befehls systemctl

Listet alle aktivierten Dienste mit dem Befehl systemctl auf.

systemctl list-unit-files --type=service | grep enabled

Deaktivieren Sie nicht benötigte Dienste.

sudo systemctl disable service_name

b. Verwenden von GUI-Tools

Wenn Sie eine Desktop-Umgebung wie GNOME oder KDE verwenden, verwenden Sie den integrierten Programmmanager, um unnötige Programme zu deaktivieren.

4. Swappiness reduzieren (Swap-Nutzung optimieren)

Swappiness steuert, wie oft das System Swap-Speicherplatz anstelle von RAM verwendet. Ein hoher Swappiness-Wert kann zu übermäßigem Swapping führen und Ihr System verlangsamen.

So überprüfen Sie den aktuellen Swappiness-Wert:

cat /proc/sys/vm/swappiness

Der Standardwert ist normalerweise 60, aber um die Austauschbarkeit zu reduzieren, müssen Sie die Datei /etc/sysctl.conf bearbeiten.

sudo nano /etc/sysctl.conf

Fügen Sie die folgende Zeile hinzu oder ändern Sie sie.

vm.swappiness=10

Speichern Sie die Datei und übernehmen Sie die Änderungen.

sudo sysctl -p

5. Verwenden Sie leichtgewichtige Desktop-Alternativen

Umfangreiche Desktop-Umgebungen und Anwendungen können die Systemressourcen belasten, daher sollten Sie den Wechsel zu schlanken Alternativen in Betracht ziehen:

a. Desktop-Umgebungen

Ersetzen Sie GNOME oder KDE durch leichtere Optionen wie XFCE, LXDE oder MATE.

b. Anträge

Verwenden Sie leichtgewichtige Anwendungen wie:

  • Texteditor: Ersetzen Sie LibreOffice durch AbiWord oder Mousepad.
  • Webbrowser: Verwenden Sie Firefox mit weniger Erweiterungen oder wechseln Sie zu schlanken Browsern wie Midori.
  • Dateimanager: Ersetzen Sie Nautilus durch Thunar oder PCManFM.

6. Cache und Puffer löschen

Linux verwendet RAM, um Dateien zwischenzuspeichern und die Leistung zu verbessern. Sie können den Cache jedoch bei Bedarf manuell leeren:

sudo sync; sudo sysctl -w vm.drop_caches=3

Dieser Befehl löscht den Seitencache, die Einträge und die Inodes. Verwenden Sie es mit Vorsicht, da es den Dateizugriff vorübergehend verlangsamen kann.

7. Optimieren Sie die Kernel-Parameter

Um Kernel-Parameter zu optimieren oder zu optimieren, müssen Sie die Datei /etc/sysctl.conf bearbeiten und die folgenden Parameter hinzufügen oder anpassen, um die Systemleistung zu verbessern.

vm.dirty_background_ratio=5
vm.dirty_ratio=10
vm.min_free_kbytes=65536
kernel.sched_autogroup_enabled=0

Diese Einstellungen steuern, wie oft geänderte Daten auf die Festplatte geschrieben werden, wodurch die RAM-Auslastung reduziert wird.

8. Reduzieren Sie die Speicherauslastung mit ZRAM

Zram und Zswap sind komprimierte Speichertechnologien, die die RAM-Auslastung reduzieren können.

sudo apt install zram-config 
sudo systemctl start zram-config

Nach der Installation müssen Sie die GRUB-Konfigurationsdatei (/etc/default/grub) bearbeiten und Folgendes hinzufügen:

GRUB_CMDLINE_LINUX_DEFAULT="zswap.enabled=1"

Aktualisieren Sie GRUB und starten Sie neu:

sudo update-grub
sudo reboot

9. Begrenzen Sie die CPU-Auslastung von Prozessen

Wenn ein Prozess die CPU beansprucht, begrenzen Sie seine Auslastung mit cpulimit.

sudo apt install cpulimit  # Debian/Ubuntu  
sudo yum install cpulimit  # RHEL/CentOS  

Begrenzen Sie einen Prozess (z. B. Firefox) auf 30 % CPU-Auslastung.

sudo cpulimit -e firefox -l 30

Um einen Prozess dauerhaft einzuschränken, verwenden Sie systemd.

sudo systemctl set-property <service_name> CPUQuota=30%

10. Aktualisieren Sie Ihr System regelmäßig

Wenn Sie Ihr System auf dem neuesten Stand halten, stellen Sie sicher, dass Sie über die neuesten Leistungsverbesserungen und Fehlerbehebungen verfügen.

sudo apt update && sudo apt upgrade  # For Debian/Ubuntu
sudo yum update  # For CentOS/RHEL

Tipps zur Fehlerbehebung

  • Wenn ein Prozess nicht mit kill beendet wird, verwenden Sie kill -9 PID, um das Beenden zu erzwingen.
  • Wenn zram oder zswap nicht funktioniert, stellen Sie sicher, dass Ihr Kernel diese Funktionen unterstützt.
  • Wenn sich die Systemleistung nicht verbessert, sollten Sie ein Upgrade Ihrer Hardware in Betracht ziehen (z. B. durch Hinzufügen von mehr RAM oder Wechsel zu einer SSD).
Schlussfolgerung

Die Optimierung der RAM- und CPU-Auslastung unter Linux ist eine Mischung aus Überwachung, Optimierung und gelegentlicher Aufrüstung der Hardware. Indem Sie ressourcenintensive Prozesse identifizieren, Systemeinstellungen anpassen und sich für leichtgewichtige Alternativen entscheiden, können Sie Ihrem System neues Leben einhauchen.

Haben Sie diese Optimierungstechniken ausprobiert? Teilen Sie Ihre Erfahrungen in den Kommentaren unten mit oder besuchen Sie linux-console.net für weitere Linux-Anleitungen und Tutorials.

Verwandte Artikel: