Cara Setup Swap File di Ubuntu VPS Biar Gak Kehabisan RAM

Pernah gak sih VPS kamu tiba-tiba lemot atau bahkan proses ke-kill sendiri pas lagi jalanin banyak container Docker bareng? Kemungkinan besar itu karena RAM-nya abis. Solusi paling gampang tanpa perlu upgrade paket VPS: pakai swap file Ubuntu buat nambah RAM cadangan dari disk.

Di artikel ini kita bahas cara setup swap file Ubuntu dari nol, plus tuning dikit biar performanya tetap oke.

Apa itu Swap dan Kenapa Perlu

Swap itu ruang di disk yang dipakai sistem operasi sebagai RAM cadangan kalau RAM fisik udah penuh. Kernel Linux otomatis mindahin data yang jarang dipakai dari RAM ke swap, biar RAM yang beneran cepat bisa dipakai buat proses yang lebih aktif. Ini bukan pengganti RAM asli (disk jauh lebih lambat dari RAM), tapi berguna banget buat jaga-jaga biar server gak langsung crash atau proses gak ke-kill paksa pas beban lagi tinggi-tingginya.

Banyak VPS murah cuma dikasih 1-2GB RAM doang, dan itu gampang banget abis kalau kamu jalanin Docker, database, sama web server bareng-bareng. Buat referensi lebih lengkap soal konsep swap, kamu bisa baca Swap FAQ resmi dari komunitas Ubuntu.

1. Cek Swap File Ubuntu yang Udah Ada

Sebelum bikin baru, cek dulu apakah VPS kamu udah punya swap aktif. Beberapa provider VPS udah nyiapin swap file kecil secara default pas provisioning, jadi cek ini penting biar kamu gak bikin dobel yang malah bikin bingung nanti.

sudo swapon --show
free -h

Kalau kolom Swap di free -h nunjukin semua angka 0, berarti belum ada swap aktif sama sekali.

2. Bikin Swap File Ubuntu

Bikin file swap ukuran 2GB (sesuaikan sama kebutuhan kamu, umumnya swap sebesar RAM fisik udah cukup buat VPS kecil). Command fallocate ini cepat banget karena dia langsung alokasiin space di disk tanpa perlu nulis data beneran, beda sama cara lama yang isi file pakai nol satu-satu.

sudo fallocate -l 2G /swapfile

Kalau fallocate gak jalan/error, pakai dd sebagai alternatif:

sudo dd if=/dev/zero of=/swapfile bs=1M count=2048 status=progress

3. Set Permission dan Aktifkan

Setelah swap file Ubuntu kebuat, batasin dulu aksesnya cuma buat root, biar aman. Ini langkah kecil tapi penting, karena kalau file swap bisa dibaca user lain, ada risiko data sensitif yang sempat kesimpen di RAM (dan kepindah ke swap) bisa keintip:

sudo chmod 600 /swapfile

Format jadi swap area, terus aktifkan:

sudo mkswap /swapfile
sudo swapon /swapfile

Cek lagi buat mastiin udah aktif:

sudo swapon --show
free -h

4. Bikin Permanen Setelah Reboot

Swap file Ubuntu yang tadi kita aktifkan bakal hilang kalau server di-reboot, kecuali kita daftarin ke fstab. Backup dulu file fstab-nya buat jaga-jaga:

sudo cp /etc/fstab /etc/fstab.backup

Tambahin baris ini di akhir file fstab:

echo "/swapfile none swap sw 0 0" | sudo tee -a /etc/fstab

5. Tuning Swappiness

Nilai swappiness nentuin seberapa agresif kernel Linux mindahin data ke swap, dan ini salah satu setting yang paling sering kelewat pas orang setup swap file Ubuntu. Default Ubuntu itu 60, tapi buat server produksi biasanya lebih baik diturunin, biar kernel gak buru-buru pakai swap sebelum RAM beneran abis:

cat /proc/sys/vm/swappiness

Set ke nilai lebih rendah:

sudo sysctl vm.swappiness=10
echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf

Setelah setup swap file Ubuntu ini kelar dan swappiness udah di-tuning, VPS kamu bakal jauh lebih tahan banting pas kena lonjakan beban, tanpa perlu buru-buru upgrade paket.

Cara Pantau Pemakaian Swap Nanti

Setelah swap file Ubuntu ini jalan, sesekali cek pemakaiannya biar kamu tau apakah RAM VPS kamu emang beneran udah kurang atau masih aman. Command paling gampang:

watch -n 2 free -h

Ini bakal nampilin pemakaian RAM dan swap yang update tiap 2 detik, jadi kamu bisa liat real-time pas server lagi diakses. Kalau kamu notice swap kepake terus-menerus dalam jumlah besar (bukan cuma sesekali pas ada lonjakan), itu tandanya RAM fisik VPS kamu emang udah kurang buat beban kerja sekarang, dan swap cuma solusi sementara, bukan solusi jangka panjang. Saatnya pertimbangkan upgrade paket VPS ke RAM yang lebih besar.

Kendala yang Sering Muncul

  • Error insecure permissions pas swapon
    Berarti langkah chmod 600 kelewat atau permission-nya berubah. Jalanin ulang sudo chmod 600 /swapfile.
  • fallocate gagal, operation not supported
    Biasa kejadian di beberapa filesystem (misal BTRFS/ZFS tertentu). Pakai dd sebagai gantinya kayak di langkah 2.
  • Swap gak aktif otomatis setelah reboot
    Cek lagi isi fstab, pastiin baris swapfile-nya beneran kesave dan gak ada typo. Test tanpa reboot pakai sudo swapoff /swapfile && sudo swapon -a.
  • Disk penuh setelah bikin swap file
    Pastiin sisa storage VPS kamu cukup sebelum bikin swap file gede-gede. Cek dulu pakai df -h sebelum eksekusi langkah 2.

Penutup

Nah, segitu aja cara bikin swap file Ubuntu di VPS kamu. Setup ini simpel tapi ngaruh banget buat stabilitas server, apalagi kalau kamu jalanin banyak service sekaligus kayak yang kita bahas di artikel install Docker sebelumnya. Swap bukan pengganti RAM asli, tapi jadi jaring pengaman biar server gak tiba-tiba crash pas beban lagi tinggi.

Kalau ada yang error atau nyangkut, drop komentar aja bro.

Jundi Husni Mubaraq

Jundi Husni Mubaraq

Saya seorang software engineer yang sejak awal 2026 megang penuh (sendirian) tanggung jawab infrastruktur server di tempat saya kerja: deploy dan maintain server Linux Ubuntu on-premises, bangun keamanan berlapis pakai CrowdSec dan Cloudflare, kelola job scheduling dan monitoring pakai Cronicle, deploy aplikasi containerized pakai Docker, sampai ngurusin mail server korporat dari nol. Sebelumnya saya 3+ tahun jadi Software Engineer/Fullstack Developer di beberapa perusahaan, termasuk proyek skala internasional (EUDR compliance system buat Lindt & Sprungli) dan sistem rumah sakit (SIMRS, rekam medis elektronik, integrasi BPJS Kesehatan) di RS PKU Muhammadiyah Surakarta. jundi.hm ini tempat saya dokumentasiin apa yang beneran saya kerjain dan pelajarin di lapangan, bukan sekadar riset teori, S.Kom dari Universitas Duta Bangsa Surakarta jadi bekal awal, tapi yang nulis di sini adalah pengalaman langsung ngelola server production sehari-hari. Selengkapnya: https://iam.jundi.hm

Lihat Juga Nih

Selanjutnya Nih

Kasih Komentar

Email kamu gak bakal ditampilin ke publik. Kalau ada tanda ini artinya wajib diisi ya *

Rekomendasi.

Lagi Viral.