mysqld no se iniciará porque el espacio en disco está lleno:
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
corriendo 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 *
en /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
en /dev/sda5
, hay archivos del sitio web en /var/www
.
porque esta es la primera vez, no tengo idea de qué archivos eliminar aparte de mover /var/www
a otra partición
Y uno más, ¿cuál es la forma correcta de eliminar archivos de registro, historial, etc. /dev/sda5
?
hard-drive
disk-space-utilization
partition
kopeklan
fuente
fuente
¿Cuál es el desglose
/var/lib
? Si es como mi sistema, ¿la mayoría de eso (digamos 500 MB) está ocupado por/var/lib/mysql
?Todos los demás números parecen bastante normales y razonables, por lo que son conmovedores
/var/lib/mysql
y/var/www
son las únicas soluciones realistas a largo plazo.Para eliminar los archivos de registro antiguos, están siendo rotados sus registros, por ejemplo, ¿Tiene
/var/log/messages
,/var/log/messages.1
,/var/log/messages.2.gz
, etc, o tal vez/var/log/messages-20101221
,/var/log/messages-20101220.gz
etc?La forma obvia de eliminarlos es por edad, p. Ej.
Además, verifique que su configuración de rotación de registros sea la que
/etc/logrotate.conf
desea. Diría que no debería cambiarlos, ya que no son su principal problema, pero tal vez solo quiera mantener los registros de una semana, en cuyo caso intente algo como esto:Luego hay archivos para cada servicio, por ejemplo, syslog, mysql, apache, etc. para configurar la rotación de registros para cada uno de ellos. En los sistemas Debian y Red Hat, eso ya debería estar configurado para usted.
Si aún no tiene logrotate, entonces es un poco más difícil. Miraría usar grep o tail para guardar las entradas recientes y luego eliminar el archivo y reiniciar syslogd (por ejemplo,
service syslogd restart
opkill -HUP syslogd
.Finalmente, un guión que escribí para esta situación es
diskuse
.fuente