Tips Linux: File Sudah Dihapus Tapi Free Space Disk Tidak Berubah
Jika disk server sudah mencapai threshold tertentu(misalnya 90%),
maka admin server tersebut harus melakukan cleansing dengan cara
menghapus atau memindahkan folder/file yang besar.
Untuk mengetahui folder yang memakai disk usage terbesar, cek terlebih dahulu
menggunakan command du.
Jika sudah menemukan folder yang besar, cek file di dalamnya dengan
menggunakan command:
ls -lSh | moreuntuk mengurutkan file dari size yang terbesar.
Jika di server ada partisi lain yang spacenya masih besar,
pindahkan folder atau file yang besar ke partisi tersebut.
Tapi jika hanya ada 1 partisi, maka folder/file yang besar harus di hapus.
Berikut hal yang harus diperhatikan sebelum menghapus file di suatu folder:
Tapi jika hanya ada 1 partisi, maka folder/file yang besar harus di hapus.
Berikut hal yang harus diperhatikan sebelum menghapus file di suatu folder:
1. Jangan menghapus file log yang aktif seperti error.log, access.log,
messages, maillog,dll.
Karena bisa menyebabkan error pada aplikasi atau sistem.
2. Jika file log yang sudah di rotate ukurannya besar, compress file tersebut
2. Jika file log yang sudah di rotate ukurannya besar, compress file tersebut
misalnya dengan command gzip yang secara otomatis
menghapus file asli jika sudah selesai di compress.
Atau enable opsi compress di konfigurasi logrotate.
3. Minta izin user untuk konfirmasi menghapus file yang besar
Jika sudah dapet izin dari user, hapus file yang besar tersebut.
Namun ada case dimana file sudah di hapus, tapi free space disk tidak berubah.
Karena file tersebut ternyata masih tersimpan di disk, sehingga harus di truncate.
Berikut cara untuk truncate file yang sudah di delete:
Atau enable opsi compress di konfigurasi logrotate.
3. Minta izin user untuk konfirmasi menghapus file yang besar
Jika sudah dapet izin dari user, hapus file yang besar tersebut.
Namun ada case dimana file sudah di hapus, tapi free space disk tidak berubah.
Karena file tersebut ternyata masih tersimpan di disk, sehingga harus di truncate.
Berikut cara untuk truncate file yang sudah di delete:
1. Cek PID dan FD dari file sudah di delete dengan menggunakan command
lsof -a +L1 *mountpoint*misalnya file yang di delete ada di partisi /
lsof -a +L1 /Contoh ouputnya adalah sebagai berikut(note: sebenarnya lebih panjang dan,
tapi di cut karena gak muat dalam 1 baris):
2. Truncate file /var/log/error_log-20190701 dengan command berikut:
COMMAND PID USER FD DEVICE SIZE/OFF NODE NAMEDari output di atas, file yang di delete adalah /var/log/error_log-20190701, PID 23862 dan FD 2
httpd 23862 apache 2w 8,2 1153433629 /var/log/error_log-20190701 (deleted)
2. Truncate file /var/log/error_log-20190701 dengan command berikut:
$ echo > /proc/pid/fd/fd_numberDari contoh di atas, maka commandnya adalah:
echo > /proc/23862/fd/2Kemudian cek freespace disk dengan menggunakan command df -h
untuk memastikan bahwa filenya sudah di truncate.
Komentar
Posting Komentar