Pada server virtual yang menjalankan Ubuntu 10.04, df melaporkan yang berikut:
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 7.4G 7.0G 0 100% /
none 498M 160K 498M 1% /dev
none 500M 0 500M 0% /dev/shm
none 500M 92K 500M 1% /var/run
none 500M 0 500M 0% /var/lock
none 500M 0 500M 0% /lib/init/rw
/dev/sda3 917G 305G 566G 36% /home
Ini membingungkan saya karena dua alasan: 1.) df mengatakan bahwa / dev / sda1, yang dipasang di /, memiliki kapasitas 7,4 gigabyte, yang hanya menggunakan 7,0 gigabyte, namun dilaporkan / penuh 100 persen; dan 2.) Saya dapat membuat file di / jadi itu jelas memiliki ruang tersisa.
Mungkin relevan adalah bahwa direktori / www adalah tautan simbolis ke / home / www, yang berada di partisi yang berbeda (/ dev / sda3, dipasang di / home).
Adakah yang bisa memberikan saran tentang apa yang sedang terjadi di sini? Server tampaknya berfungsi tanpa masalah, tetapi saya ingin memastikan bahwa tidak ada masalah dengan tabel partisi, sistem file atau hal lain yang mungkin mengakibatkan ledakan (atau ledakan) nanti.
Jawaban:
Mungkin saja suatu proses telah membuka file besar yang telah dihapus. Anda harus mematikan proses itu untuk membebaskan ruang. Anda mungkin dapat mengidentifikasi proses dengan menggunakan lsof. Di Linux yang dihapus namun file yang terbuka diketahui lsof dan ditandai sebagai (dihapus) dalam output lsof.
Anda dapat memeriksanya dengan
sudo lsof +L1
sumber
df -ah
, saya mendapatkan disk penuh, tetapidu -sh /
mengatakan bahwa saya harus memiliki ruang kosong. Setelah memulai ulang uwsgi, saya mendapat banyak ruang kosong!5% (secara default) dari sistem file dicadangkan untuk kasus-kasus di mana sistem file terisi untuk mencegah masalah serius. Sistem file Anda penuh. Tidak ada bencana yang terjadi karena buffer 5% - root diizinkan untuk menggunakan buffer keamanan itu dan, dalam pengaturan Anda, pengguna non-root tidak punya alasan untuk menulis ke sistem file itu.
Jika Anda memiliki daemon yang dijalankan sebagai pengguna non-root tetapi perlu mengelola file di sistem file itu, semuanya akan rusak. Salah satu daemon yang umum adalah
named
. Yang lain adalahntpd
.sumber
/
). Ini umumnya dianggap sebagai Hal yang Buruk (karena jika sesuatu menjadi kacau/
mengisi, dan dunia berakhir) tetapi distribusi Linux masih bertahan dalam melakukannya karena itu "lebih sederhana". Saya akan mulai dengan mencari/var
(esp./var/log
) Untuk file log besar.du -hs /
(sebagai root) akan membantu Anda menemukan direktori terbesar dan mungkin mengarahkan Anda pada apa yang perlu dibersihkan.Anda mungkin kehabisan inode. Periksa penggunaan inode dengan perintah ini:
sumber
Sebagian besar filesystem Linux menyediakan ruang 5% untuk hanya menggunakan pengguna root.
Anda dapat melihat ini dengan misalnya
Anda dapat mengubah jumlah yang dipesan menggunakan:
Dalam kebanyakan kasus, server akan tampak berfungsi dengan baik - dengan asumsi semua proses dijalankan sebagai 'root'.
sumber
Saya punya masalah ini dan bingung oleh kenyataan menghapus berbagai file besar tidak memperbaiki situasi (tidak tahu tentang buffer 5%) tetap mengikuti beberapa petunjuk di sini
Dari root berjalan ke direktori terbesar yang diungkapkan oleh melakukan berulang:
sampai saya datang direktori untuk file log server web yang memiliki beberapa log yang benar-benar besar
yang saya terpotong dengan
tiba-tiba dh -h turun hingga 48% digunakan!
sumber
Selain penyebab yang sudah disarankan, dalam beberapa kasus bisa juga berikut:
du -md 1
. Perbaiki situasi dengan memindahkan folder tersembunyi ke tempat lain atau pasang di tempat yang berbeda.sumber
df -h
membulatkan nilai-nilai. Bahkan persentasenya bulat. Abaikan-h
dan Anda melihat perbedaan berbutir halus.Oh Dan ext3 serta turunannya memiliki persentase (default 5%) untuk sistem file untuk konstelasi bermasalah ini. Jika root filesystem Anda benar-benar penuh (0 byte tersisa) Anda tidak dapat mem-boot sistem. Jadi porsi yang dipesan mencegah ini.
sumber
Saya melakukan pembaruan besar dari beberapa perpustakaan dan ada banyak perpustakaan yang tidak perlu dan file temporal jadi saya mengosongkan ruang di folder "/" menggunakan:
Dan kosongkan sampahmu
sumber
periksa / hilang + ditemukan, saya punya sistem (centos 7) dan beberapa file di / hilang + ditemukan memakan semua ruang
sumber
Jika partisi Anda btrfs, mungkin ada ruang subvolume yang mengambil ruang. Filesystem btrfs dapat memiliki banyak subvolume, hanya satu yang di-mount. Anda dapat menggunakan
btrfs subvolume list <dir>
untuk mendaftar semua subvolume danbtrfs subvolume delete <dir>/<subvolume>
menghapus satu. Pastikan Anda tidak menghapus yang sudah terpasang secara default.sumber