Cara Memuat dan Membongkar Modul Kernel di Linux


Modul kernel adalah program yang dapat dimuat ke dalam atau dikeluarkan dari kernel sesuai permintaan, tanpa harus mengkompilasi ulang (kernel) atau me-reboot sistem, dan dimaksudkan untuk meningkatkan fungsionalitas kernel.

Dalam istilah perangkat lunak secara umum, modul kurang lebih seperti plugin untuk perangkat lunak seperti WordPress. Plugin menyediakan sarana untuk memperluas fungsionalitas perangkat lunak, tanpa plugin, pengembang harus membangun satu perangkat lunak besar dengan semua fungsi terintegrasi dalam satu paket. Jika fungsi baru diperlukan, fungsi tersebut harus ditambahkan dalam versi perangkat lunak baru.

Demikian pula tanpa modul, kernel harus dibangun dengan semua fungsi terintegrasi langsung ke dalam image kernel. Ini berarti memiliki kernel yang lebih besar, dan administrator sistem perlu mengkompilasi ulang kernel setiap kali diperlukan fungsionalitas baru.

Contoh sederhana dari sebuah modul adalah driver perangkat – yang memungkinkan kernel mengakses komponen/perangkat perangkat keras yang terhubung ke sistem.

Saran Baca: Cara Mengetahui Versi Linux yang Anda Jalankan

Daftar Semua Modul Kernel yang Dimuat di Linux

Di Linux, semua modul diakhiri dengan ekstensi .ko, dan biasanya dimuat secara otomatis saat perangkat keras terdeteksi saat boot sistem. Namun administrator sistem dapat mengelola modul menggunakan perintah tertentu.

Untuk membuat daftar semua modul yang sedang dimuat di Linux, kita dapat menggunakan perintah lsmod (daftar modul) yang membaca isi /proc/modules seperti ini.

lsmod
Module                  Size  Used by
rfcomm                 69632  2
pci_stub               16384  1
vboxpci                24576  0
vboxnetadp             28672  0
vboxnetflt             28672  0
vboxdrv               454656  3 vboxnetadp,vboxnetflt,vboxpci
bnep                   20480  2
rtsx_usb_ms            20480  0
memstick               20480  1 rtsx_usb_ms
btusb                  45056  0
uvcvideo               90112  0
btrtl                  16384  1 btusb
btbcm                  16384  1 btusb
videobuf2_vmalloc      16384  1 uvcvideo
btintel                16384  1 btusb
videobuf2_memops       16384  1 videobuf2_vmalloc
bluetooth             520192  29 bnep,btbcm,btrtl,btusb,rfcomm,btintel
videobuf2_v4l2         28672  1 uvcvideo
videobuf2_core         36864  2 uvcvideo,videobuf2_v4l2
v4l2_common            16384  1 videobuf2_v4l2
videodev              176128  4 uvcvideo,v4l2_common,videobuf2_core,videobuf2_v4l2
intel_rapl             20480  0
x86_pkg_temp_thermal    16384  0
media                  24576  2 uvcvideo,videodev
....

Cara Memuat dan Membongkar (Menghapus) Modul Kernel di Linux

Untuk memuat modul kernel, kita dapat menggunakan perintah insmod (masukkan modul). Di sini, kita harus menentukan jalur lengkap modul. Perintah di bawah ini akan menyisipkan modul speedstep-lib.ko.

insmod /lib/modules/4.4.0-21-generic/kernel/drivers/cpufreq/speedstep-lib.ko 

Untuk membongkar modul kernel, kita menggunakan perintah rmmod (hapus modul). Contoh berikut akan membongkar atau menghapus modul speedstep-lib.ko.

rmmod /lib/modules/4.4.0-21-generic/kernel/drivers/cpufreq/speedstep-lib.ko 

Cara Mengelola Modul Kernel Menggunakan Perintah modprobe

modprobe adalah perintah cerdas untuk membuat daftar, memasukkan serta menghapus modul dari kernel. Ia mencari di direktori modul /lib/modules/$ (uname -r) untuk semua modul dan file terkait, tetapi tidak termasuk file konfigurasi alternatif di /etc/modprobe.d direktori .

Di sini, Anda tidak memerlukan jalur absolut suatu modul; inilah keuntungan menggunakan modprobe dibandingkan perintah sebelumnya.

Untuk menyisipkan modul, cukup berikan namanya sebagai berikut.

modprobe speedstep-lib

Untuk menghapus modul, gunakan flag -r seperti ini.

modprobe -r speedstep-lib

Catatan: Di bawah modprobe, konversi garis bawah otomatis dilakukan, sehingga tidak ada perbedaan antara _ dan saat memasukkan nama modul.

Untuk info dan opsi penggunaan lebih lanjut, baca halaman manual modprobe.

man modprobe

Jangan lupa untuk memeriksa:

  1. Cara Mengubah Parameter Runtime Kernel Secara Persisten dan Non-Persisten
  2. Cara Install atau Upgrade ke Versi Kernel Terbaru di CentOS 7
  3. Cara Upgrade Kernel ke Versi Terbaru di Ubuntu

Itu saja untuk saat ini! Apakah Anda memiliki ide berguna yang ingin kami tambahkan ke panduan atau pertanyaan ini, gunakan formulir masukan di bawah untuk menyampaikannya kepada kami.