Pernahkah Anda mengalami kejadian di mana database MySQL di VPS tiba-tiba mati sendiri? Atau saat Anda menjalankan perintah npm run build untuk aplikasi Next.js, prosesnya terhenti di tengah jalan dengan pesan error “Killed” atau “Out of Memory“?
Jika ya, kemungkinan besar VPS Anda kehabisan kapasitas RAM (Random Access Memory). Ketika sistem Linux kehabisan memori fisik, fitur bernama OOM (Out of Memory) Killer akan aktif secara otomatis dan “membunuh” aplikasi yang memakan RAM paling besar agar server tidak macet total.
Untuk mencegah VPS crash karena masalah ini tanpa harus mengeluarkan biaya tambahan untuk upgrade spesifikasi server, solusi terbaiknya adalah dengan mengaktifkan Swap File.
Baca Juga: Cara Deploy Node.js di Ubuntu
Swap adalah ruang khusus di hard drive (SSD/NVMe) server yang berfungsi sebagai “RAM cadangan”. Saat RAM fisik penuh, Linux akan memindahkan data yang jarang digunakan dari RAM ke dalam Swap. Dalam panduan ini, kita akan membuat Swap File di Ubuntu secara aman dan permanen.
Persyaratan Awal
- Anda memiliki akses root atau user dengan hak sudo di VPS Ubuntu Anda.
- Sisa penyimpanan (disk space) di VPS masih mencukupi (minimal 2GB hingga 4GB).
Langkah 1: Mengecek Swap yang Sudah Ada
Sebelum membuat Swap baru, pastikan server Anda belum memilikinya. Anda bisa mengeceknya dengan menjalankan perintah:
sudo swapon --show
Jika perintah tersebut tidak menampilkan output apa-apa, berarti server Anda belum memiliki Swap. Anda juga bisa memastikannya dengan melihat ringkasan memori menggunakan perintah:
free -h
Perhatikan baris “Swap“. Jika angkanya 0B, mari kita lanjut ke pembuatan Swap.

Langkah 2: Membuat Swap File
Ukuran Swap yang ideal biasanya adalah 1x hingga 2x lipat dari jumlah RAM fisik Anda. Jika VPS Anda memiliki RAM 1GB, membuat Swap sebesar 2GB adalah pilihan yang sangat aman.
Gunakan utilitas fallocate untuk mengalokasikan ruang penyimpanan sebesar 2GB (Anda bisa mengganti 2G dengan 1G atau 4G sesuai kebutuhan):
sudo fallocate -l 2G /swapfile
Cek apakah file berhasil dibuat dengan ukuran yang benar:
ls -lh /swapfile

Langkah 3: Mengamankan Swap File
Langkah ini sangat krusial. Swap menyimpan salinan dari RAM Anda, yang mungkin berisi data sensitif seperti password atau token akses. Kita harus memastikan hanya user root yang bisa membaca file ini.
Ubah hak aksesnya (Permission) menjadi 600:
sudo chmod 600 /swapfile
Langkah 4: Mengaktifkan Swap File
Setelah aman, kita harus memformat file tersebut menjadi memori Swap:
sudo mkswap /swapfile
Lalu, nyalakan Swap agar bisa mulai digunakan oleh sistem Ubuntu:
sudo swapon /swapfile
Untuk memastikannya, jalankan kembali perintah free -h atau sudo swapon –show. Sekarang Anda akan melihat kapasitas Swap sudah terisi sebesar 2GB!

Langkah 5: Membuat Swap Permanen (Tidak Hilang Saat Reboot)
Jika Anda hanya berhenti di Langkah 4, Swap akan hilang saat VPS di-restart. Agar Swap otomatis aktif setiap kali server menyala, kita harus menambahkannya ke dalam konfigurasi file /etc/fstab.
Gunakan perintah ini untuk mem-backup file aslinya terlebih dahulu demi keamanan:
sudo cp /etc/fstab /etc/fstab.bak
Lalu, tambahkan informasi Swap File ke akhir baris /etc/fstab:
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
Bonus: Menyesuaikan Nilai Swappiness
Swappiness adalah parameter (bernilai 0 hingga 100) yang menentukan seberapa sering Ubuntu memindahkan data dari RAM ke Swap. Karena kecepatan SSD tetap lebih lambat dari RAM fisik, untuk VPS server, disarankan menggunakan nilai Swappiness yang rendah (misalnya 10) agar Swap hanya digunakan di saat-saat kritis saja.
Ubah nilai sementara menjadi 10:
sudo sysctl vm.swappiness=10
Agar nilai ini permanen setelah reboot, edit file konfigurasinya:
sudo nano /etc/sysctl.conf
Tambahkan baris berikut di baris paling bawah:
Plaintext
vm.swappiness=10
Simpan file tersebut (Ctrl+X, Y, Enter).
Kesimpulan
Menambahkan Swap File adalah pertolongan pertama yang wajib dilakukan pada VPS dengan spesifikasi RAM kecil. Kini, server Anda memiliki “napas cadangan” yang siap menampung lonjakan proses berat, seperti saat Anda mengimpor database besar atau melakukan compile aplikasi menggunakan PM2, tanpa takut terhenti mendadak.
Baca Juga: Cara Setting Nginix Sebagai Reverse Proxy
Sekian untuk artikel kali ini semoga bermanfaat!!



