Saya telah menjalankan "df -kh" pada kotak FreeBSD saya dan saya melihat bahwa / var hampir 100% penuh. Itu sudah berakhir tetapi saya telah memangkas apa yang saya bisa tetapi ada kurang dari 500MB total pada partisi sesuai dengan menjalankan "du -ksh *" saat di / var. Partisi / var sendiri adalah 6.8G dan sekarang dikatakan hanya memiliki 18M gratis. Itu tidak bertambah.
Saya menjalankan perintah berikut ini saya tidak menemukan penyebab.
find . -type f -size +2000 -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'
Saya bahkan menelusuri folder demi folder menggunakan "du -ksh *" untuk mengidentifikasi folder dengan banyak penggunaan disk tetapi saya tidak dapat menemukan bagaimana semuanya bertambah. Saya ingin mengompres, menghapus atau memindahkan file untuk membebaskan lebih banyak ruang karena partisi lain memiliki ruang, tetapi antara df dan du saya sepertinya tidak dapat menemukan apa yang menggunakan semua ruang disk.
Apa lagi yang harus saya lakukan untuk menemukan file dan folder mengambil semua ruang?
sumber
ls
tidak akan melaporkan ruang disk yang digunakan - untuk banyak file kecil ini dapat bertambah. Apakah Anda memiliki kapasitas cadangan untuk hanya membuat yang lebih besar / var?.*
file di root / var?Jawaban:
Saya akan menjalankan yang berikut ini, sehingga Anda memiliki snapshot yang bagus dari semua file untuk dikerjakan:
... dan kemudian lihat beberapa ratus baris terakhir.
Ini akan menangkap ukuran semua direktori (untuk menangkap sejumlah besar file kecil), serta menangkap file besar biasa. Perhatikan bahwa saya tidak menggunakan
-h
(dapat dibaca manusia), sehingga hasilnya mudah diurutkan secara numerik. Perhatikan juga bahwa saya tidak menggunakan/var/*
, yang akan mengambil apa pun yang dipasang/var
juga.Kemungkinan penyebab meliputi, dalam urutan kasar kemungkinan:
Basi file yang tidak ditautkan. Coba apa yang tidak disarankan oleh simon (
lsof /var
)./var/tmp
terkadang merupakan tempat yang jelas untuk menemukan ini. Jika Anda belumlsof
menginstal, Anda dapat menggunakanfstat -f /var | sort -k 8 -n
, yang tidak menampilkan nama file, tetapi setidaknya akan menampilkan ukuran (terkecil hingga terbesar), inode, dan proses mana yang membuka file.Sistem file korupsi. Jalankan
fsck
dari mode pengguna tunggal untuk memeriksa/var
.File lama disembunyikan di bawah titik mount. Jika ada mount di bawah
/var
, unmount mereka dan kemudian jalankan pencarian / diagnostik Anda lagi. Cara paling aman untuk melakukan ini mungkin dengan boot dalam mode single-user, dan hanya melakukan mount/var
tanpa memasang apa pun di bawahnya.Perbedaan dalam pelaporan ukuran file dapat disebabkan oleh keberadaan file yang jarang atau terkompresi. Anda dapat menggunakan
-A
opsi untukdu
bekerja dengan ukuran file yang tampak alih-alih penggunaan disk, yang mungkin menjelaskan beberapa perbedaan. Masukkan dan tinggalkan, dan bandingkan hasilnya. Di/var
partisi 3.6Gb saya , hasil dengan-A
sekitar 100Mb lebih kecil.sumber
Sudahkah Anda mempertimbangkan bahwa Anda mungkin memiliki file yang tidak ditautkan yang masih terbuka? Coba lihat output
lsof /var
untuk melihat apakah ada file besar yang luar biasa terdaftar.sumber
Saya memiliki masalah serupa di mana disk pergi. Mount point masih ada, tetapi karena beberapa alasan file sedang ditulis ke direktori pada partisi yang berisi mount point . Ini mungkin tidak berlaku untuk sistem operasi Anda, tetapi mem-boot sistem penyelamatan dan membaca partisi dari sana dapat mengungkapkan lebih banyak.
sumber