Jangan Abaikan Swap Memory VPS Kamu, Kalau Tidak Ingin Proses Kompilasi Dihentikan Paksa oleh Sistem Operasi

cc: fatal error: Killed signal terminated program cc1
compilation terminated

Error yang muncul tersebut terjadi saat proses kompilasi program menggunakan compiler gcc atau g++ berkaitan erat dengan konsep manajemen proses dan manajemen memori dalam sistem operasi. Secara perspektif mata kuliah Sistem Operasi, error ini berkaitan erat dengan manajemen memori, khususnya penggunaan swap memory pada sistem Linux, termasuk pada server VPS (Virtual Private Server). Proses kompilasi, terutama untuk program besar atau kompleks, membutuhkan alokasi memori yang cukup besar. Jika memori fisik (RAM) yang tersedia tidak mencukupi, sistem operasi biasanya akan menggunakan swap memory sebagai memori cadangan yang disimpan di media penyimpanan seperti hard disk atau SSD.

Dalam kasus ini, VPS yang digunakan memiliki ukuran swap memory yang terlalu kecil. Ketika RAM penuh dan tidak ada cukup swap untuk menampung kelebihan beban, sistem operasi akan melakukan tindakan darurat, yaitu membunuh (kill) proses yang dianggap mengonsumsi terlalu banyak sumber daya—dalam hal ini adalah cc1, komponen dari compiler GNU C (gcc).

Akibatnya, proses kompilasi terhenti secara paksa dan menghasilkan error seperti yang disebutkan. Untuk mengatasi masalah ini secara sistemik dan sesuai dengan prinsip manajemen memori dalam sistem operasi, solusi yang paling tepat adalah menambahkan atau memperbesar ukuran swap memory pada VPS. Dengan menyediakan swap yang memadai, sistem dapat mempertahankan kestabilan saat beban memori tinggi, mencegah terjadinya pembunuhan proses penting, serta memastikan proses kompilasi atau aplikasi lainnya dapat berjalan hingga selesai tanpa gangguan.

Kamu tidak bisa langsung membuat file /swapfile, karena biasanya file itu sudah ada dan sedang dipakai (mungkin dari percobaan sebelumnya), jadi perlu dilakukan proses menonaktifkan dan juga proses menghapus file swap yang sebelumnya telah dinonaktifkan.

ls -lh /swapfile
sudo swapoff /swapfile
sudo rm /swapfile

1. ls -lh /swapfile

Perintah ini digunakan untuk menampilkan informasi tentang file swap yang bernama /swapfile dengan format yang mudah dibaca manusia.

  • ls adalah perintah untuk melihat isi direktori atau informasi file.
  • Opsi -l menunjukkan detail lengkap (long listing format), seperti izin file, pemilik, ukuran, dan tanggal dibuat.
  • Opsi -h membuat ukuran file tampil dalam format “human-readable” seperti KB, MB, atau GB, bukan hanya byte.

Tujuannya adalah memverifikasi apakah file swap /swapfile ada dan seberapa besar ukurannya.

2. sudo swapoff /swapfile

Perintah ini menonaktifkan penggunaan swap dari file /swapfile.

  • sudo memberikan hak akses administrator karena operasi ini menyentuh manajemen memori sistem.
  • swapoff adalah perintah untuk menghentikan sementara penggunaan swap yang sedang aktif.
  • /swapfile adalah nama file swap yang akan dinonaktifkan.

Langkah ini wajib dilakukan sebelum menghapus file swap dari sistem agar tidak merusak manajemen memori yang sedang berjalan.

3. sudo rm /swapfile

Perintah ini menghapus file swap yang sebelumnya telah dinonaktifkan.

  • rm adalah singkatan dari “remove”, digunakan untuk menghapus file dari sistem.
  • Karena /swapfile adalah file sistem penting yang biasanya memerlukan akses root, maka digunakan sudo.

Selanjutnya kamu lakukan perintah skrip tersebut yang digunakan untuk membuat dan mengaktifkan swap file baru sebesar 2GB di sistem Linux.

sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

1. sudo fallocate -l 2G /swapfile

Perintah ini berfungsi untuk membuat file swap baru berukuran 2 Gigabyte.

  • fallocate adalah perintah untuk mengalokasikan ruang pada disk tanpa benar-benar menulis data ke dalam file.
  • Opsi -l 2G berarti file yang akan dibuat berukuran 2 Gigabyte.
  • /swapfile adalah nama file swap yang akan dibuat.
  • sudo digunakan karena pembuatan file di root directory (/) memerlukan hak akses administrator.

Makna sistem operasi: Ini adalah proses awal untuk menyiapkan media swap, yaitu area di penyimpanan yang bisa digunakan sistem sebagai perpanjangan RAM.

2. sudo chmod 600 /swapfile

Perintah ini digunakan untuk mengatur izin akses file swap agar hanya dapat diakses oleh root (pemiliknya).

  • chmod mengubah mode atau izin file.
  • 600 berarti hanya pemilik (root) yang bisa membaca dan menulis file tersebut, sedangkan pengguna lain tidak memiliki akses sama sekali.
  • Hal ini penting karena file swap bisa berisi data sensitif yang berasal dari RAM.

Makna sistem operasi: Ini adalah bagian dari pengamanan memori virtual. Tanpa pengaturan izin ini, data dalam swap bisa diakses oleh pengguna lain dan menjadi celah keamanan.

3. sudo mkswap /swapfile

Perintah ini digunakan untuk memformat file yang baru dibuat menjadi swap file yang valid.

  • mkswap adalah utilitas untuk menyiapkan file atau partisi agar dikenali sistem sebagai swap space.
  • Setelah dieksekusi, file /swapfile secara teknis sudah menjadi swap yang siap digunakan oleh sistem operasi.

Makna sistem operasi: Swap file harus memiliki format tertentu agar bisa digunakan dalam mekanisme paging oleh kernel.

4. sudo swapon /swapfile

Perintah ini digunakan untuk mengaktifkan file swap yang baru saja dibuat.

  • swapon memberi tahu kernel untuk mulai menggunakan file /swapfile sebagai memori virtual tambahan.
  • Setelah perintah ini, sistem dapat menggunakan swap jika RAM tidak cukup untuk menampung proses.

Kegiatan belajar sistem operasi: Tahapan ini adalah kegiatan aktivasi dari memori virtual, memungkinkan sistem melakukan paging out data dari RAM ke swap ketika terjadi tekanan memori.

Berita Lainnya

ChatGPT Image 22 Apr 2025, 08.50
Laravel: Framework PHP Populer dengan Perjalanan Gemilang
Laravel, salah satu framework PHP paling populer di dunia...
IMG_20250223_092304
Mengasah Potensi Kepemimpinan Mahasiswa UNIKOM melalui LDK di Badger Camp
Bandung, 23 Februari 2025 – Himpunan Mahasiswa (HIMA) Komputerisasi...
ka_unikom_kosabangsa_2024_v2
Dosen Prodi Komputerisasi Akuntansi UNIKOM Berkolaborasi Lewat Program KOSABANGSA 2024
Dosen Tetap Prodi Komputerisasi Akuntansi UNIKOM Terlibat...
Computerized-Accounting-Systems-on-ML_
Profil Lulusan Prodi Komputerisasi Akuntansi UNIKOM
Profil lulusan Program Studi (Prodi) Komputerisasi Akuntansi...
Artificial-Intelligence-In-Accounting-1-1024x605
Machine Learning dalam Komputerisasi Akuntansi dan Analisis Keuangan, untuk Pengambilan Keputusan
Machine learning, sebagai cabang dari kecerdasan buatan,...
econometrics-finance-computerized-jpg
Econometrics dengan Komputerisasi Akuntansi dan Machine Learning
Econometrics atau Ekonometrika, sebagai jembatan antara...