mysqld wird nicht gestartet, da der Speicherplatz voll ist:
101221 14:06:50 [ERROR] /usr/libexec/mysqld: Error writing file '/var/run/mysqld/mysqld.pid' (Errcode: 28)
101221 14:06:50 [ERROR] Can't start server: can't create PID file: No space left on device
Laufen df -h
:
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 16G 3.2G 12G 23% /
/dev/sda5 4.8G 4.6G 0 100% /var
/dev/sda3 430G 855M 407G 1% /home
/dev/sda1 76M 24M 49M 33% /boot
tmpfs 956M 0 956M 0% /dev/shm
du -sh *
in /var
:
12K account
56M cache
24K db
32K empty
8.0K games
1.5G lib
8.0K local
32K lock
221M log
16K lost+found
0 mail
24K named
8.0K nis
8.0K opt
8.0K preserve
8.0K racoon
292K run
70M spool
8.0K tmp
76K webmin
2.6G www
20K yp
in /dev/sda5
gibt es Website-Dateien in /var/www
.
Da dies das erste Mal ist, habe ich keine Ahnung, welche Dateien entfernt werden sollen, außer /var/www
auf eine andere Partition zu verschieben
Und noch eine: Was ist der richtige Weg, um Protokolldateien, Verlauf usw. zu entfernen /dev/sda5
?
hard-drive
disk-space-utilization
partition
kopeklan
quelle
quelle
Was ist die Aufteilung
/var/lib
? Wenn es wie mein System ist, wird das meiste davon (sagen wir 500 MB) von aufgenommen/var/lib/mysql
?Die anderen Zahlen sehen alle ziemlich normal und vernünftig aus, sind also bewegend
/var/lib/mysql
und/var/www
die einzigen realistischen langfristigen Lösungen.Für alte Log - Dateien zu entfernen, werden Ihre Protokolle gedreht, zum Beispiel haben Sie
/var/log/messages
,/var/log/messages.1
,/var/log/messages.2.gz
, usw., oder vielleicht/var/log/messages-20101221
,/var/log/messages-20101220.gz
etc?Der offensichtliche Weg, diese zu entfernen, ist nach Alter, z
Überprüfen Sie außerdem, ob Ihre Logrotate-Einstellungen Ihren Wünschen entsprechen
/etc/logrotate.conf
. Ich würde sagen, Sie sollten sie nicht ändern, da sie nicht Ihr Hauptproblem sind, aber vielleicht möchten Sie nur eine Woche lang Protokolle führen. In diesem Fall versuchen Sie Folgendes:Dann gibt es Dateien für jeden Dienst, z. B. Syslog, MySQL, Apache usw., um die Protokollrotation für jeden dieser Dienste zu konfigurieren. Auf Debian- und Red Hat-Systemen sollte dies bereits für Sie eingerichtet sein.
Wenn Sie noch kein Logrotate haben, ist es etwas schwieriger. Ich würde versuchen, die letzten Einträge mit grep oder tail zu speichern, dann die Datei zu löschen und syslogd neu zu starten (z . B.
service syslogd restart
oderpkill -HUP syslogd
.Schließlich ist ein Skript, das ich für genau diese Situation geschrieben habe
diskuse
.quelle