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

Bash:Kein Platz mehr auf dem Gerät

Wenn Sie diesen Fehler auf Ihrem Linux-Webserver erhalten: -bash:No space left on device , bedeutet dies, dass auf einigen Ihrer Linux-Partitionen kein Speicherplatz mehr vorhanden ist und Sie so schnell wie möglich Speicherplatz freigeben müssen.

Wenn Ihnen der Speicherplatz auf Ihrem Server ausgeht, werden viele Systemdienste fehlschlagen. In diesem Beitrag werden wir die Hauptursachen für diesen Fehler „bash:no space left on device“ analysieren.

Behebung von Bash:Kein Platz mehr auf Gerätefehler

Es gibt zwei Hauptursachen für diesen Fehler:

1- Sie haben den gesamten verfügbaren Speicherplatz erschöpft, indem Sie große Dateien angesammelt haben.

cPanel- und Linux-Server generieren oft viele Fehlerprotokolle, diese Protokolle können in einigen Fällen sehr groß werden und GB an nützlichem Speicherplatz verschwenden. Sie können die error_logs des Benutzers aus dem public_html-Verzeichnis jeder Website löschen, indem Sie diese Befehle ausführen:

rm /home/*/public_html/error_log -fv
rm /home/*/public_html/*/error_log -fv
rm /home/*/public_html/*/*/error_log -fv
rm /home/*/public_html/*/*/*/error_log -fv

Oder wie Ivan oben vorgeschlagen hat:

find /home -type f -name "error_log" -size +10M -delete

„Findet sie in allen Unterverzeichnissen, man kann die Größe angeben und geht schneller durch sie als mit einfachem rm.“

Das Entfernen von Apache-Protokollen kann auch eine nützliche Methode sein, um Speicherplatz zu sparen, wenn Sie keinen Speicherplatz mehr haben. Versuchen Sie, Apache-Protokolle zu entfernen, wenn Sie sie nicht benötigen:

rm -fv /usr/local/apache/logs/*

Für erweiterte Möglichkeiten zum Freigeben von Speicherplatz auf cPanel empfehlen wir Ihnen, diesen Beitrag zu lesen, in dem wir alles darüber erklären, wie Sie Speicherplatz auf cPanel-Servern freigeben

2- Ihnen sind die Inodes ausgegangen, geben Sie diesen Befehl ein, um zu prüfen, ob dies der Grund ist:

df -i

Wenn Sie so etwas sehen:

Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda1 1420790 1420790 0 100% /

Dann sind Ihnen definitiv die Inodes ausgegangen . Der beste Weg, dies zu beheben, besteht darin, Inodes auf Ihrem Server freizugeben.

Dieser „bash:no space left on device“-Fehler wird oft durch viel zu viele PHP-Sitzungsdateien verursacht.

PHP-Sitzungsdateien befinden sich häufig unter:

/var/lib/php/sessions

Der Speicherort Ihrer PHP-Sitzungsdateien hängt jedoch von Ihrem php.ini-Sitzungshandlerpfad ab, der in Ihrer allgemeinen php.ini-Datei definiert ist. Stellen wir sicher, dass Sie Dateien vom richtigen Speicherort entfernen. So finden Sie Ihre php.ini-Datei:

find / -name php .ini

Unter CentOS befindet es sich normalerweise unter /etc/php.ini. Sehen wir uns den Session-Speicherpfad an, um herauszufinden, wo Ihre PHP-Session-Dateien gespeichert sind:

grep session.save_path /etc/php.ini

Wenn Sie so etwas erhalten, lautet Ihr Sitzungsspeicherpfad: /var/lib/php/session

session.save_path = "/var/lib/php/session"

Sie können versuchen, den Inhalt des angegebenen Ordners zu entfernen:

rm /var/lib/php/session/* -fvR

Danach sollten alle Ihre PHP-Sitzungen entfernt werden.

Wenn sich jedoch zu viele Dateien im Verzeichnis befinden, funktioniert der Befehl rm nicht wie erwartet. Sie können stattdessen den Befehl find verwenden und -exec rm mit einem schnellen Skript wie diesem für jedes Element ausführen, um dieses Bash-Skript zum Entfernen von PHP-Sitzungsdateien zu handhaben :

find /var/lib/php/sessions -type f -cmin +24 -name "sess_*" -exec rm -f {} \;

Schlussfolgerung

Zu diesem Zeitpunkt sollte Ihr Problem behoben sein, jetzt wissen Sie, wie Sie bash beheben können:kein Speicherplatz mehr auf dem Gerät Ihrer Linux-Box. Sie können auch einen Cronjob einstellen, damit Ihre PHP-Sitzungsdateien nach einer bestimmten Zeit (Tage oder Wochen) gelöscht werden.

Bash:Kein Platz mehr auf dem Gerät wurde zuletzt geändert:7. März 2017 von Esteban Borges
Linux
  1. Linux – Sudo:Mkdir /var/log/sudo-io/00/2a nicht möglich:Kein Speicherplatz mehr auf dem Gerät?

  2. Kein Speicherplatz mehr auf dem Gerät, obwohl vorhanden?

  3. Bash - Datumsbefehl und Leerzeichen

  4. Kompilieren mit make | nicht möglich Schwerwiegender Fehler Kein freier Speicherplatz auf dem Gerät

  5. Auf dem Gerät ist kein Speicherplatz mehr vorhanden, aber die Partition ist nur halb voll und Inodes sind verfügbar

Diskonaut:Ein Terminal-Festplattennavigator für Linux

Linux:Kein Speicherplatz mehr auf dem Gerät, während der df-Befehl viel freien Speicherplatz anzeigt

Auch nach dem Hinzufügen eines Persistenzspeichers in gcloud ist kein Speicherplatz mehr auf dem Gerät vorhanden

Wie überprüfe ich, wie viel freier Speicherplatz auf einem Gerät verbleibt, um eine Partition zu erstellen?

Shared Memory:shmget schlägt fehl:Kein Speicherplatz mehr auf dem Gerät – wie kann man die Limits erhöhen?

Gibt es einen anderen Grund dafür, dass auf dem Gerät kein Speicherplatz mehr vorhanden ist?