Linux'ta Çekirdek Modülleri Nasıl Yüklenir ve Kaldırılır


Çekirdek modülü, isteğe bağlı olarak çekirdeğe (çekirdeği) yeniden derlemeye veya sistemi yeniden başlatmaya gerek kalmadan çekirdeğe yüklenebilen veya çekirdeğe kaldırılabilen bir programdır ve çekirdeğin işlevselliğini artırmayı amaçlamaktadır.

Genel yazılım açısından modüller, WordPress gibi bir yazılımın eklentilerine az çok benzer. Eklentiler, yazılım işlevselliğini genişletmek için araçlar sağlar; onlar olmadan geliştiricilerin, tüm işlevlerin bir pakete entegre edildiği tek bir devasa yazılım oluşturması gerekir. Yeni işlevselliklere ihtiyaç duyulursa, bunların yazılımın yeni sürümlerine eklenmesi gerekir.

Benzer şekilde, modüller olmadan, çekirdeğin, tüm işlevler doğrudan çekirdek görüntüsüne entegre edilecek şekilde oluşturulması gerekir. Bu, daha büyük çekirdeklere sahip olmak anlamına gelir ve sistem yöneticilerinin, her yeni işlevselliğe ihtiyaç duyulduğunda çekirdeği yeniden derlemesi gerekir.

Modülün basit bir örneği, çekirdeğin sisteme bağlı bir donanım bileşenine/aygıta erişmesini sağlayan bir aygıt sürücüsüdür.

Önerilen Okuma: Hangi Linux Sürümünü Çalıştırdığınızı Nasıl Öğrenebilirsiniz?

Linux'ta Yüklü Tüm Çekirdek Modüllerini Listele

Linux'ta tüm modüller .ko uzantısıyla biter ve normalde sistem önyüklemesinde donanım algılandığında otomatik olarak yüklenirler. Ancak bir sistem yöneticisi belirli komutları kullanarak modülleri yönetebilir.

Linux'ta şu anda yüklü olan tüm modülleri listelemek için /proc/modules'un içeriğini bu şekilde okuyan lsmod (modülleri listele) komutunu kullanabiliriz.

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
....

Linux'ta Çekirdek Modülleri Nasıl Yüklenir ve Kaldırılır (Kaldırılır)

Bir çekirdek modülü yüklemek için insmod (modül ekle) komutunu kullanabiliriz. Burada modülün tam yolunu belirtmemiz gerekiyor. Aşağıdaki komut speedstep-lib.ko modülünü ekleyecektir.

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

Bir çekirdek modülünü kaldırmak için rmmod (modülü kaldır) komutunu kullanırız. Aşağıdaki örnek speedstep-lib.ko modülünü kaldıracak veya kaldıracaktır.

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

Modprobe Komutunu Kullanarak Çekirdek Modüllerini Yönetme

modprobe, çekirdekteki modülleri listelemek, eklemek ve kaldırmak için kullanılan akıllı bir komuttur. Tüm modülleri ve ilgili dosyaları /lib/modules/$ (uname -r) modül dizininde arar, ancak /etc/modprobe.d dosyasındaki alternatif yapılandırma dosyalarını hariç tutar. dizini.

Burada bir modülün mutlak yoluna ihtiyacınız yoktur; bu, önceki komutlara göre modprobe kullanmanın avantajıdır.

Bir modül eklemek için aşağıdaki gibi adını vermeniz yeterlidir.

modprobe speedstep-lib

Bir modülü kaldırmak için -r işaretini şu şekilde kullanın.

modprobe -r speedstep-lib

Not: Modprobe altında otomatik alt çizgi dönüşümü gerçekleştirilir, dolayısıyla _ ile arasında hiçbir fark yoktur. modül adlarını girme.

Daha fazla kullanım bilgisi ve seçeneği için modprobe kılavuz sayfasını okuyun.

man modprobe

Kontrol etmeyi unutmayın:

  1. Çekirdek Çalışma Zamanı Parametrelerini Kalıcı ve Kalıcı Olmayan Bir Şekilde Değiştirme
  2. CentOS 7'de En Son Çekirdek Sürümü Nasıl Kurulur veya Yükseltilir
  3. Ubuntu'da Çekirdek En Son Sürüme Nasıl Yükseltilir

Şimdilik bu kadar! Bu kılavuza veya sorularınıza eklememizi istediğiniz yararlı fikirleriniz varsa, bunları bize iletmek için aşağıdaki geri bildirim formunu kullanın.