Setelah menghapus file besar, berapa lama `df` untuk mengambil perubahan?

12

Saya menghapus file log 2.3GB di server Ubuntu saya, dan dfsepertinya tidak mengambil perubahan. Apakah biasanya ada penundaan sebelum dfdapat mendeteksi bahwa file besar telah dihapus?

dan
sumber

Jawaban:

20

Sepertinya file tersebut masih terbuka oleh beberapa proses. Anda harus memulai kembali layanan itu agar ruang disk dapat dibebaskan.

terguling
sumber
1
Sangat mungkin benar untuk file log. Banyak program membuka file log mereka ketika mereka mulai dan tidak menutupnya sampai keluar.
mattdm
1
Dan Anda dapat mengetahui apakah masih digunakan dan oleh siapa menggunakan lsof
Joris
Pertanyaan bagus dan jawaban bagus. Saya sudah bertanya-tanya ini untuk beberapa waktu sekarang. Selain itu, Anda mungkin bisa membuatnya untuk menangani file dengan mengirimkannya SIGHUP. Misalnya, jika proses 12345 memiliki file "dihapus" terbuka, maka sudo kill -HUP 12345proses itu dapat ditutup. (Tentu saja, ini tergantung pada bagaimana proses itu menangani sinyal SIGHUP. Tetapi banyak file berorientasi daemon akan menutup dan membuka kembali pegangan file ketika mereka menerima SIGHUP.)
Mark E. Haase
Saya pikir kami tidak dapat menghapus file yang dibuka!
Ashish Karpe
1
@AshishKarpe Tidak, Anda dapat menghapus file yang dibuka, tetapi proses dengan itu terbuka akan menjaga konten file pada disk. File sekarang tidak terlihat oleh proses lain, karena tidak direferensikan oleh nama file yang ada, tetapi proses yang telah dibuka masih dapat membaca dan menulisnya. Setelah proses itu menutup file, konten akan dihapus, mengklaim kembali ruang disk.
Jonathan Hartley
2

Jika sistem file kehabisan ruang Anda bisa menjalankan ke ruang yang disediakan pada sistem file. Filesystem ext2 / 3/4 memiliki beberapa ruang yang disediakan untuk root. Secara default ini adalah 5%. Jadi jika itu penuh dan 2.3GB kurang dari 5% dari ruang pada drive sistem file akan tetap tampak penuh.

Dalam situasi ini Anda punya dua pilihan. Untuk terus mengosongkan ruang hingga Anda memiliki ruang kosong yang dapat digunakan atau mengubah jumlah ruang yang disediakan sistem file. Untuk mengubah jumlah ruang yang dipesan gunakan tune2fs -m 0 /dev/sda1penggantian 0 dengan persentase ruang yang Anda inginkan dan / dev / hda1 dengan perangkat yang sesuai.

Lihat jawaban yang diterima untuk pertanyaan ini untuk lebih jelasnya.

Pengaruh 3d
sumber
0

Tidak lama. Kemungkinan besar bahwa file tersebut masih digunakan. Tidak akan ada ruang disk rilis sampai Anda menghentikan proses yang sesuai.

poige
sumber
0

Periksa juga direktori .trash Anda.

JakeRobinson
sumber
di mana direktori .trash ini?
Ashish Karpe
Di ubuntu 14.04 saya melihat saya punya ~/.local/share/Trash, yang penuh dengan sampah yang saya hapus di Nautilus.
Jonathan Hartley