Bei Verwendung der Registerkartenleiste erhalte ich immer wieder folgende Fehlermeldung:
bash: temporäre Datei für here-document kann nicht erstellt werden: Kein Platz mehr auf dem Gerät "
Irgendwelche Ideen?
Ich habe einige Nachforschungen angestellt und viele Leute sprechen über die / tmp-Datei, die möglicherweise einen Überlauf aufweist. Wenn ich ausführe, df -h
bekomme ich:
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 9.1G 8.7G 0 100% /
udev 10M 0 10M 0% /dev
tmpfs 618M 8.8M 609M 2% /run
tmpfs 1.6G 0 1.6G 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 1.6G 0 1.6G 0% /sys/fs/cgroup
/dev/sda1 511M 132K 511M 1% /boot/efi
/dev/sda4 1.8T 623G 1.1T 37% /home
tmpfs 309M 4.0K 309M 1% /run/user/116
tmpfs 309M 0 309M 0% /run/user/1000
Es sieht so aus, als würde das Verzeichnis / dev / data gleich explodieren.
$ du -sh /dev/sda2
0 /dev/sda2
Es scheint leer zu sein.
Ich bin neu in Debian und weiß wirklich nicht, wie ich vorgehen soll. Normalerweise habe ich über ssh auf diesen Computer zugegriffen. Abgesehen von diesem Problem habe ich mehrere andere mit diesem Computer, die möglicherweise zusammenhängen. Jedes Mal, wenn ich meinen Benutzer über die GUI eingeben möchte (mit root funktioniert es), erhalte ich Folgendes:
Xsession: Warnung: Schreiben in / tmp nicht möglich: Xsession wird möglicherweise mit einem Fehler beendet
du -hxd1 /
nicht laufendu /dev/sda2
./dev/sda2
existiert nicht wirklich auf der Festplatte.Antworten:
Ihr Root-Dateisystem ist voll und daher ist auch Ihr temporäres Verzeichnis (/ tmp und / var / tmp) voll. Viele Skripte und Programme benötigen Speicherplatz für Arbeitsdateien, sogar zum Sperren von Dateien. Wenn / tmp nicht beschreibbar ist, passieren schlimme Dinge.
Sie müssen herausfinden, wie Sie das Dateisystem gefüllt haben. Dies geschieht normalerweise in / var / log (prüfen Sie, ob Sie die Protokolldateien durchlaufen). Oder / tmp ist möglicherweise voll. Es gibt jedoch noch viele andere Möglichkeiten, wie eine Festplatte gefüllt werden kann.
Möglicherweise möchten Sie die Partition neu partitionieren, um / tmp eine eigene Partition zu geben (das ist die alte Methode, aber wenn Sie genügend Festplatten haben, ist das in Ordnung), oder sie in den Arbeitsspeicher abbilden (was sie sehr schnell macht, aber anfängt Auslagerungsprobleme verursachen, wenn Sie die temporären Dateien übertreiben).
quelle
Möglicherweise haben Sie auch den Schreibzugriff auf das
/tmp/
Verzeichnis verloren.Es sollte so aussehen:
Sie können die Berechtigungen folgendermaßen festlegen:
quelle
ls -ld /tmp
stattdessen.Wenn jemand mit diesem Fehler hierher kommt, wenn seine Festplatte nicht voll ist, überprüfen Sie nicht nur,
df
sondern auchdf -i
. Es gibt eine feste Anzahl von Inodes in einem Dateisystem, und jede Datei benötigt einen. Wenn Sie nur Tonnen kleiner Dateien haben, ist es für Ihr Dateisystem sehr einfach, diese kleinen Dateien aufzuladen, während beim Ausführen noch viel Speicherplatz auf dem Laufwerk vorhanden istdf
.quelle
/dev/root 4980000 4980000 0 100% /
Vielleicht sollte das System mit einer entsprechenden Fehlermeldung antworten?Ich habe Fehler bekommen, dann habe ich gesehen
Ich konnte dies bestätigen,
quelle
Der schnellste Weg, um Ihre Ordner zu finden, die zu voll sind, besteht darin, die Dateigröße des Ordners in Stufen vom Stammordner aus einzugrenzen. Sie beginnen mit dem Stammordner durch:
Dann - WEDER erhöhen Sie die Tiefe, dh die Ebenen darunter:
ODER - schneller - Sie suchen, welcher Ordner den meisten Speicherplatz in Anspruch genommen hat, und tun dasselbe für diesen Ordner:
Sobald Sie es gefunden haben, entfernen Sie es einfach:
quelle
sudo du -h --max-depth=1 / | sort -h
(größeresort -hr
Für meinen Fall des gleichen Fehlers handelte es sich um ein CageFS-Problem, da sich dieser Server unter CloudLinux befand und mit adressiert wurde
cagefsctl --remount username
quelle
Dies liegt daran, dass der Speicherplatz nicht ausreicht. Sie müssen große Dateien bereinigen oder den Prozess bereinigen, der Speicherplatz beansprucht:
df -h
Festplattenspeicher anzeigendu -sh /*
Sehen Sie sich Schritt für Schritt an, welches Verzeichnis das größte ist, um große Dateien zu findendu -h --max-depth=1
Finde die größte Dateiquelle