Debian Modprobe Tutorial

Debian Modprobe Tutorial
Moduler er et stykke kode som utvider funksjonaliteten til Linux -kjernen. En modul på Linux er også kjent som Linux Kernel -modul. Det beste med moduler i Linux er at de kan legges til eller fjernes på flua. Det betyr at du kan legge til eller fjerne moduler i Linux uten behov for å starte datamaskinen på nytt.

Det er moduler for grafisk maskinvare (GPU), forskjellige filsystemer (for eksempel ext4, ZFS, BTRFS), nettverkshardwares, display, tastatur og forskjellige inngangsenheter og mange flere.

I denne artikkelen skal jeg vise deg hvordan du bruker Modprobe For å administrere kjernemoduler på Debian GNU/Linux -distribusjon. Jeg skal bruke Debian 9 -strekk til demonstrasjonen. Men det skal fungere på enhver versjon av Debian Gnu/Linux. Så la oss komme i gang.

Standard modulskatalog:

Alle modulene i Debian er lagret er /lib/modules/$ (uname -r) katalog.

Kjernemodulene lagres i en underkatalogkjerne/. Kjernemodulene lagres i en modulær hierarkisk rekkefølge som du kan se på skjermdumpen nedenfor.

$ ls/lib/modules/$ (uname -r)/kjerne

Liste over alle tilgjengelige kjernemoduler:

Du kan liste opp alle kjernemodulene i en pent formatert trestruktur med følgende kommando:

$ tre/lib/modules/$ (uname -r)/kjerne

MERK: Trekommandoen er ikke installert som standard. Du må installere det manuelt med sudo apt installer tre

Som du ser er katalogene og kjernemodulene oppført som et tre.

Det er en veldig lang liste. Du kan også gi den til en personsøker som mindre som følger for å gjøre navigasjon gjennom listen enklere:

$ tre/lib/moduler/$ (uname -r)/kjerne | mindre

Nå kan du trykke på og Piltøkler for å navigere gjennom listen.

Du kan søke etter moduler i den mindre personsøkeren. Bare trykk / og skriv inn søkeordet ditt.

Trykk nå og søkeresultatet ditt skal vises som du kan se i den markerte delen av skjermdumpen nedenfor.

Du kan også trykke på n og p å gå til neste resultat eller tidligere resultat.

For å gå ut av personsøkeren, trykk q.

Liste over alle de lastede kjernemodulene:

Du kan liste opp alle kjernemodulene som brukes av ditt Debian -operativsystem med følgende kommando:

$ lsmod

Det er en lang liste. På Modul Kolonne (1), kan du se kjernemodulenavnet, på Størrelse Kolonne (2), kan du se kjernemodulstørrelsen i byte.

De Brukt av kolonne (3) er interessant. Denne kolonnen starter med et tall og eventuelt en komma -separert liste over modulnavn.

Antallet bestemmer hvor mange moduler som avhenger av denne modulen. Hvis det er 0, betyr det, ingen andre moduler avhenger av denne modulen. For eksempel PPPDEV Modul brukes ikke av noen annen modul. Slik at du trygt kan fjerne eller legge til PPPDEV Kernelmodul når som helst.

Hvis det er noe annet enn 0, er mange andre moduler avhenger av denne modulen. For eksempel er 2 andre moduler avhenger av snd_pcm Modul som du kan se i den markerte delen av skjermdumpen nedenfor. Så du kan ikke fjerne snd_pcm modul med mindre du fjerner modulene som er avhengig av denne modulen. I dette tilfellet snd_ac97_codec og SND_ens1371 Moduler må fjernes for å fjerne snd_pcm modul.

Få informasjon om spesifikk kjernemodul:

Nå som du vet hvordan du skal liste opp alle tilgjengelige kjernemoduler og de lastede kjernemodulene. I denne delen skal jeg vise deg hvordan du får informasjon om enhver kjernemodul.

På Debian kan du bruke Modinfo Kommando for å få informasjon om enhver modul.

For eksempel for å få informasjon om snd_pcm Modul vi så tidligere, kjør følgende kommando:

$ sudo modinfo snd_pcm

Som du ser, modulfilbanen, lisensen, en kort beskrivelse av modulen snd_pcm, modulene snd_pcm avhenger av og noe annen informasjon er oppført.

Dette er viktige informasjonsbiter du trenger å vite for å jobbe med moduler på DeBan. For eksempel, hvis du vil aktivere snd_pcm modul, da må du også aktivere snd og SND-TIMER moduler før du gjør det. Som snd_pcm kommer an på snd og SND-TIMER. Ellers vil det ikke fungere.

Laster inn ny kjernemodul ved hjelp av modprobe:

Du kan laste inn nye kjernemoduler ved hjelp av Modprobe kommando. La oss for eksempel si, du vil aktivere btrfs Filesystem Kernel -modul.

Sjekk først hvilke moduler btrfs Kernelmoduler avhenger av med Modinfo følgende:

$ sudo modinfo btrfs

Som du kan se, btrfs Kernelmodul avhenger av RAID6_PG og xor kjernemoduler.

La oss sjekke om de er aktivert som følger:

$ lsmod | grep raid6
$ lsmod | grep xor

Som du ser er ingen av modulene lastet.

Kjør nå følgende kommandoer for å laste inn RAID6_PQ og xor Kernelmoduler:

$ sudo modprobe raid6_pq
$ sudo modprobe xor

La oss nå sjekke om Dependency -kjernemodulene er lastet igjen:

$ lsmod | grep raid6
$ lsmod | grep xor

Som du kan se, lastes kjernemodulene.

Nå kan du laste inn btrfs Kernelmodul med følgende kommando:

$ sudo modprobe btrfs

La oss nå bekrefte om btrfs Kernelmodul lastes med følgende kommando:

$ lsmod | grep btrfs

Som du kan se, btrfs kjernemodulen er lastet, og den avhenger av RAID6_PQ og xor kjernemoduler.

Meste parten av tiden Modprobe Kommandoen vil løse avhengigheter for deg automatisk. Men jeg viste deg hvordan du gjør det manuelt fordi du til tider kanskje må gjøre det på denne måten. Det er best å vite hvordan du kan løse et problem, da du kanskje må takle det en dag.

Fjerning av moduler med modprobe:

Du kan også fjerne moduler med Modprobe kommando. Hvis ingen andre moduler er avhengige av modulen du vil fjerne, er prosessen enkel.

For eksempel for å fjerne btrfs Modul jeg lastet tidligere, kjører følgende kommando:

$ sudo modprobe -r btrfs

Modulen skal fjernes.

Hvis andre moduler er avhengige av modulen du vil fjerne, må du fjerne disse modulene først før du kan fjerne ønsket modul.

Det er i utgangspunktet alt du trenger å vite om å administrere kjernemoduler på Debian. Takk for at du leste denne artikkelen.