Sebagai administrator sistem Linux, terkadang Anda mungkin perlu mengubah perilaku kernel default. Misalnya, Anda mungkin perlu mengaktifkan kunci SysRq ajaib atau menambah jumlah koneksi yang akan diterima Kernel. Parameter kernel dapat disetel saat membangun kernel, saat boot sistem, atau saat runtime.
Artikel ini menjelaskan cara menggunakan sysctl
perintah untuk melihat dan memodifikasi parameter kernel saat runtime.
Menggunakan sysctl
untuk Melihat Parameter Kernel #
Untuk melihat semua parameter kernel saat ini, panggil sysctl
perintah dengan -a
pilihan:
sysctl -a
Ini akan menampilkan daftar besar yang terlihat seperti berikut ini di mana setiap baris menyertakan nama parameter dan nilainya:
abi.vsyscall32 = 1
debug.exception-trace = 1
debug.kprobes-optimization = 1
...
Semua pengguna dapat melihat parameter kernel saat ini; hanya pengguna root yang dapat mengubah nilainya.
Anda dapat memeriksa nilai parameter tunggal dengan meneruskan namanya sebagai argumen ke sysctl
. Misalnya, untuk memeriksa nilai swappiness saat ini, Anda akan mengetik:
sysctl vm.swappiness
vm.swappiness = 60
Swappiness adalah properti kernel Linux yang menentukan seberapa sering sistem akan menggunakan ruang swap.
sysctl
perintah membaca informasi dari /proc/sys
direktori. /proc/sys
adalah direktori virtual yang berisi objek file yang dapat digunakan untuk melihat dan mengatur parameter kernel saat ini.
Anda juga dapat melihat nilai parameter dengan menampilkan konten file yang sesuai. Satu-satunya perbedaan adalah bagaimana file tersebut diwakili. Misalnya, keduanya sysctl vm.swappiness
dan cat /proc/sys/vm/swappiness
akan memberikan output yang sama. Saat menggunakan sysctl
garis miring direktori diganti dengan titik dan proc.sys
sebagian diasumsikan.
Menggunakan sysctl
untuk Memodifikasi Parameter Kernel #
Untuk menyetel parameter kernel saat runtime, jalankan sysctl
perintah diikuti dengan nama parameter dan nilai dalam format berikut:
sysctl -w parameter=value
Jika nilai berisi spasi kosong atau karakter khusus, sertakan nilai dalam tanda kutip ganda. Anda juga dapat melewatkan beberapa parameter=value
berpasangan dalam perintah yang sama.
Misalnya, untuk mengaktifkan penerusan paket IPv4 Anda akan menjalankan:
sysctl -w net.ipv4.ip_forward=1
Perubahan segera berlaku, tetapi tidak terus-menerus. Setelah sistem di-boot ulang, nilai default dimuat.
Untuk menyetel parameter secara permanen, Anda harus menulis setelan ke /etc/sysctl.conf
atau file konfigurasi lain di /etc/sysctl.d
direktori:
sysctl -w net.ipv4.ip_forward=1 >> /etc/sysctl.conf
Cara lain untuk mengubah parameter adalah dengan menggunakan echo
perintah untuk menulis pengaturan ke file di /proc/sys
direktori. Misalnya, alih-alih menjalankan perintah di atas, Anda dapat menggunakan:
echo 1 > /proc/sys/net/ipv4/ip_forward
-p
opsi memungkinkan Anda memuat pengaturan dari file konfigurasi:
sysctl -p /etc/sysctl.d/file_name.conf
Ketika tidak ada file yang diberikan, sysctl
membaca /etc/sysctl.conf
berkas.
Kesimpulan #
sysctl
perintah memungkinkan Anda untuk melihat dan mengubah parameter kernel Linux.
Jangan ragu untuk meninggalkan komentar jika Anda memiliki pertanyaan.