Ketika file besar dihapus di server, file mungkin masih dirujuk oleh proses, sehingga sistem file tidak memiliki lebih banyak ruang kosong.
Saya mencoba menggunakan lsof , tetapi sepertinya tidak mencantumkan file yang dihapus. fuser -c
memang bekerja lebih baik, tetapi daftar proses terlalu lama untuk memeriksanya untuk setiap proses, terutama karena setiap proses adalah proses Oracle.
bash-3.2# fuser -c /var
/var: 105o 29999o 20444c 3528c 27258o 7715o 3864o 3862o 2494o 18205o 17450co 17445co 14912co 14824co 14818co 14816o 14814o 8532c 8530c 7633com 7118o 6958o 6790c 6784co 6734o 6693o 6689o 6684o 6675o 6635o 6594c 6548o 6547o 6546o 6545o 6544o 6543o 6542o 6541o 6540o 6537o 6535o 6456o 6128co 6113o 335o 245co 229o 161o 8o
bash-3.2# du -hs /proc
139T /proc
Kadang-kadang terjadi bahwa file terhapus oleh aplikasi atau pengguna, misalnya file log dan file ini masih dirujuk oleh proses yang tidak dapat dimulai ulang.
Apakah ada metode barang untuk mendapatkan kembali ruang disk pada file yang dihapus tanpa memulai kembali proses yang memiliki referensi ke file yang dihapus ini?
cp /dev/null
adalah perintah nol karena cp
tidak ada yang perlu disalin, pengalihan sederhana sangat setara :>file
atau bahkan>file
cp /dev/null file