mysqld tidak akan mulai karena ruang disk penuh:
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
berlari 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 *
di /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
di /dev/sda5
, ada file situs web di /var/www
.
karena ini adalah pertama kalinya, saya tidak tahu file mana yang harus dihapus selain pindah /var/www
ke partisi lain
Dan satu lagi, apa cara yang benar untuk menghapus file log, histori, dll /dev/sda5
?
hard-drive
disk-space-utilization
partition
kopeklan
sumber
sumber
Apa gangguannya
/var/lib
? Jika itu seperti sistem saya, sebagian besar (katakanlah 500 MB) diambil oleh/var/lib/mysql
?Semua angka lainnya terlihat cukup normal dan masuk akal, begitu mengharukan
/var/lib/mysql
dan/var/www
merupakan satu-satunya solusi jangka panjang yang realistis.Untuk menghapus file log lama, yang log Anda sedang diputar, misalnya apakah Anda memiliki
/var/log/messages
,/var/log/messages.1
,/var/log/messages.2.gz
, dll, atau mungkin/var/log/messages-20101221
,/var/log/messages-20101220.gz
, dll?Cara yang jelas untuk menghapusnya adalah berdasarkan usia, misalnya
Juga, periksa apakah pengaturan logrotate Anda
/etc/logrotate.conf
sesuai dengan yang Anda inginkan. Saya katakan Anda tidak boleh mengubahnya, karena itu bukan masalah utama Anda, tetapi mungkin Anda hanya ingin menyimpan satu minggu log, dalam hal ini coba sesuatu seperti ini:Lalu ada file untuk setiap layanan, misalnya syslog, mysql, apache, dll untuk mengkonfigurasi rotasi log untuk masing-masing layanan tersebut. Pada sistem Debian dan Red Hat, yang seharusnya sudah diatur untuk Anda.
Jika Anda belum memiliki logrotate, maka itu sedikit lebih sulit. Saya akan melihat menggunakan grep atau tail untuk menyimpan entri baru kemudian menghapus file dan me-restart syslogd (misalnya
service syslogd restart
ataupkill -HUP syslogd
.Akhirnya, naskah yang saya tulis untuk situasi ini adalah
diskuse
.sumber