Cara Membersihkan PHP Session Penyebab Inode Di Server Linux Penuh

Dalam kondisi tertentu, kadang saat menggunakan website tidak bisa untuk upload file apapun. biasanya kalau hal ini terjadi ada beberapa hal penyebabnya, bisa dari permission file ataupun disk psace yang penuh. tapi jika sudah di lakukan pengecekan keduanya dan ternyata normal semua, anda perlu mengecek dari sisi inode. bisa jadi, website anda penuh karena inode di server penuh.

Silahkan gunakan perintah berikut untuk mengecek inode server anda:

df -i

sehingga akan menghasilkan seperti berikut:

Filesystem       Inodes   IUsed    IFree IUse% Mounted on
/dev/sda2       1310720 1310720        0  100% /

Dari situ, sudah jelas bahwa penyebab masalah di server adalah inode yang penuh. Untuk mengecek lebih detail darimana penyebab penuhnya, anda bisa melihatnya lewat perintah yang ada di artikel berikut: https://hosteko.com/kb/cara-cek-besar-inode-di-server-linux/

Biasanya, penyebab inode cepat penuh berasal dari PHP SESSION. yang berlokasi di folder /var/lib/php/session dengan isi kurang lebih seperti ini: sess_*

Untuk membersihkannya, anda bisa menggunakan perintah berikut:

find /var/lib/php/session -type f -cmin +24 -name "sess_*" -exec rm -f {} \;

Tetapi kami akan merekomendasikan Anda untuk menggunakan skrip bash, agar kedepan anda tidak perlu repot lagi untuk membersihkan PHP Session:
Sebelum membuat script, periksa dahulu setting PHP anda dan ubah seperti di bawah ini:

; After this number of seconds, stored data will be seen as 'garbage' and
; cleaned up by the garbage collection process.
session.gc_maxlifetime = 1440
 
; NOTE: If you are using the subdirectory option for storing session files
;       (see session.save_path above), then garbage collection does not
;       happen automatically.  You will need to do your own garbage
;       collection through a shell script, cron entry, or some other method.

buat folder di /root dengan nama bebas, misal dalam hal ini saya buat nama hapusphpsession, sehingga alan terbentuk lokasi folder /root/hapusphpsession

silahkan masuk ke folder/ directory /root/hapusphpsession dan buat script berikut dengan di berinama hapus-php-session.sh

#!/bin/bash 
 
# Export bin paths
export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
 
# Get PHP Session Details
PHPSESSIONPATH=$(php -i 2>/dev/null | grep -w session.save_path | awk '{print $3}' | head -1);
PHPSESSIONLIFETIME=$(php -i 2>/dev/null | grep -w session.gc_maxlifetime | awk '{print $3}' | head -1);
PHPSESSIONLIFETIMEMINUTE=$( expr $PHPSESSIONLIFETIME / 60 );
 
# If PHPSESSIONPATH exists
if [ -d $PHPSESSIONPATH ];
then
    # Find and delete "expired" sessions
    find $PHPSESSIONPATH -type f -cmin +$PHPSESSIONLIFETIMEMINUTE -name "sess_*" -exec rm -f {} \;
fi

Buat cronjob dengan menjalankan perintah crontab -e dengan setting setiap jam sekali.

# Delete PHP sessions
0 * * * *   root    /root/hapusphpsession/hapus-php-session.sh >/dev/null 2>&1
5/5 - (3 votes)
Tri Wahyudi

Recent Posts

Mengamankan Server Cyberpanel dengan Fail2ban dan Firewalld

setelah firewalld berhasil di aktifkan di cyberpanel. dan untuk mengantisipasi serangan dari luar terhadap server…

1 week ago

Cara Mengaktifkan Firewalld di Server Cyberpanel

bagi pengguna CSF yang ingin beralih firewall dari CSF ke FirewallD berikut langkah-langkahnya. Silahkan uninstall…

1 week ago

Cara menghapus CSF (ConfigServer Security & Firewall) dari server cyberpanel

saat ini CSF sudah tidak di kembangkan lagi, sehingga sudah tidak kompatibel dengan cyberpanel versi…

1 week ago

Cara mengatasi Errors during downloading metadata for repository ‘gf’ saat menjalankan update linux

saat menjalankan perintah: yum update -y Keluar pesan error seperti berikut: [root@server ~]# yum update…

1 week ago

Mengatasi error ‘tech_domains’ array in /etc/cpanel/ea4/ea4-metainfo.json contained only invalid or empty entries pada cpanel

Saat akses file manager ataupun DNS Zone Manager, keluar error seperti berikut: A warning occurred…

9 months ago

Cara Secure Partisi /tmp di WHM/Cpanel

cPanel & WHM juga menawarkan skrip bawaan yang memaksimalkan keamanan partisi /tmp. Hal ini dilakukan…

1 year ago