Lsmod: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Mmegeril (talk | contribs)
No edit summary
Mmegeril (talk | contribs)
No edit summary
 
(21 intermediate revisions by the same user not shown)
Line 6: Line 6:
Täiendab: Marko Megerild AK-21
Täiendab: Marko Megerild AK-21


= Lsmod =   


'''lsmod''' on käsk Linux süsteemis mis prindib /proc/modules faili sisu. lsmod näitab millised laaditavad kerneli moodulid on hetkel laaditud.
= Sissejuhatus =
 
Käsud lsmod, rmmod, insmod  on kernelis jooksvate moodulite lisamiseks, eemaldamiseks ja nende kohta informatsiooni saamiseks.
Kõik käsud on mõeldud root kasutaja all jooksutamiseks.
 
= Lsmod = 
 
[http://ccrma.stanford.edu/planetccrma/man/man8/lsmod.8.html] [http://linux.die.net/man/8/lsmod]
 
'''lsmod''' on käsk Linux süsteemis mis prindib /proc/modules faili sisu. lsmod näitab millised laaditavad kerneli moodulid on hetkel laaditud. Lsmod käsklust tuleb jooksutada root õigustes.


Näide:  
Näide:  
Line 31: Line 39:
"Size" näitab mooduli suurust (mitte mälu kasutust).  
"Size" näitab mooduli suurust (mitte mälu kasutust).  
"Used by" tähistab iga mooduli kasutamise arvu ja nimekirja viidates moodulile.
"Used by" tähistab iga mooduli kasutamise arvu ja nimekirja viidates moodulile.
Kui moodul kontrollib ise enda mahalaadimist, läbi "can_unload" rutiini, kuvatakse "Used By" tulbas -1.
Kui moodul kontrollib ise enda mahalaadimist, läbi "can_unload" rutiini, kuvatakse "Used By" tulbas -1.


Moodulite tugi lisati esmalt Bas Laarhoveni poolt.
Moodulite tugi lisati esmalt Bas Laarhoveni poolt.
Laiendati versioonis 0.99.14 Jon Tombs.
Laiendati versioonis 0.99.14 Jon Tombs.
On peale seda korduvalt laiendatud erinevate developeride poolt (Bjorn Ekwall, Richard Henderson).
On peale seda korduvalt laiendatud erinevate developeride poolt (Bjorn Ekwall, Richard Henderson).




Line 41: Line 54:
== Rmmod ==
== Rmmod ==


'''Rmmod''' — lihtne programm millega eemaldada mooduleid Linuxi kernelist.
[http://www.linuxcommand.org/man_pages/rmmod8.html] [http://ccrma.stanford.edu/planetccrma/man/man8/rmmod.8.html]
 
 
'''Rmmod''' — lihtne programm millega eemaldada mooduleid Linuxi kernelist. Piiranguteks on, et need moodulid ei ole hetkel kasutuses ja ükski teine moodul ei viita sellele moodulile. Rmmod käsklust tuleb jooksutada root õigustes.
 
Kui käsureal on nimetautd rohkem kui üks moodul, siis need eemaldatakse nimetatud järjekorras. Tänu sellele on võimalik eemaldada kuhjatud mooduleid.
 
-r võtmega proovitakse rekursiivset eemaldus meetodit. See tähendab, et juhul, kui käsureal nimetatud moodul on kuhjatud, eemaldatakse kõik alus moodulid kui võimalik.
 


*''Enamik kasutajad eelistavad sama tegevuse jaoks '''modprobe''', kuna see programm on nutikam.''




Line 51: Line 71:
|}
|}


-v --verbose
      -a, --all
                Teeb automaatse puhastuse, kõik mitte kasutusel olevad moodulid
                märgitakse kustutamiseks, eemaldab ka kõik moodulid millel vastav
                märge küljes. Moodulitele jääb märge külge kui neid ei kasutata
                kordagi eelmisest automaatsest puhastusest.
 
             
      -e, --persist
                Salvestab püsivad andmed nimetautd moodulitele.
                Kui mooduli nime ei ole spetsifitseeritud, salvestatakse andmed
                kõikide moodulite kohta. Andmed salvestatakse ainult, kui nii
                kernel ja modutils toetavad püsiandmeid ja /proc/ksyms sisaldab
                kirjet __insmod_modulename_Ppersistent_filename.
 
                             
      -h, --help
                Näitab võtmete kokkuvõtet.
 
 
      -v --verbose
                 Prindib teateid, mida programm teeb.
                 Prindib teateid, mida programm teeb.
                 Tavaliselt rmmod ainult prindib sõnumeid, kui midagi läheb valesti.
                 Tavaliselt rmmod ainult prindib sõnumeid, kui midagi läheb valesti.
Line 75: Line 114:
== Insmod ==
== Insmod ==


'''insmod''' Paigaldab laaditava mooduli töötasse Linuxi kerneli.
[http://linux.about.com/od/commands/l/blcmdl8_insmod.htm]
 
'''insmod''' Paigaldab laaditava mooduli töötavasse Linuxi kerneli. Insmod käsklust tuleb jooksutada root õigustes.
 
'''insmod''' proovib linkida mooduli jooksvasse kernelisse lahendaded kõik sümbolid
kernelist eksporditud sümboli tabelis.
 
insmod otsib moodulit üldistest vaike kaustadest kui mooduli faili nimi on antud ilma kataloogi või faili laiendita.
 
Keskonnamuutuja MODPATH on siin kasutatav vaikeväärtuse ülekirjutamiseks, kui moodulite konfiguratsiooni fail,
näiteks /etc/modules.conf, eksisteerib kirjutab see MODPATH vaikeväärtused üle.
 
Keskonnamuutuja MODULECONF saab kasutada mitte vaikeväärtus konfiguratsiooni faili (/etc/modules.conf) kasutamiseks.


*Kui mooduli faili nimi on antud ilma kataloogi või laiendita, siis insmod otsib mooduli mõnest vaikimisi kataloogist.''(Väljaarvatud kui kasutada keskonnamuutujat '''MODPATH ''')''
See keskonnamuutuja kirjutab üle kõik eelnevalt määratud vaikeväärtused.


Näiteks kui mooduli konfiguratsioonifaili nagu /etc/modules.conf on olemas, siis kirjutatakse üle path mille määras '''MODPATH'''.
Kui keskonnamuutuja UNAME_MACHINE on kasutusel, siis modutils kasutab selle väärtust mitte uname() süsteemikutsest saadud väärtust.


See on peamiselt kasulik kui näiteks kompileerida 64bitiseid mooduleid 32bitises keskonnas või vastupidi.


*''Enamik kasutajad eelistavad sama tegevuse jaoks '''modprobe''', kuna see programm on kavalam.''
Hetkel modutils ei toeta täieliku täisrist režiimi moodulite kompileerimisel vaid on limiteeritud 32 ja 64bitise host arhitektuuri
valiku vahel.




Line 115: Line 168:


== Modprobe ==
== Modprobe ==
[http://linux.die.net/man/8/modprobe]


'''modprobe''' on programm millega lisada/eemaldada mooduleid Linuxi Kerneli süsteemist.
'''modprobe''' on programm millega lisada/eemaldada mooduleid Linuxi Kerneli süsteemist.
Line 133: Line 188:


  modprobe [ --dump-modversions ]
  modprobe [ --dump-modversions ]
=Kokkuvõte=
Lsmod, rmmod ja insmod on väga limiteeritud aplikatsioonid linuxi maailmas. Nüüdseks on olemas tunduvalt mugavamaid vahendeid sama töö tegemiseks, näiteks lõpus välja toodud modprobe.


=Kasutatud kirjandus=
=Kasutatud kirjandus=


http://linux.die.net/man/8/lsmod
1 http://ccrma.stanford.edu/planetccrma/man/man8/lsmod.8.html
 
2 http://linux.die.net/man/8/lsmod
 
 
3 http://www.linuxcommand.org/man_pages/rmmod8.html
 
4 http://ccrma.stanford.edu/planetccrma/man/man8/rmmod.8.html
 
 
5 http://linux.about.com/od/commands/l/blcmdl8_insmod.htm
 
6 http://linux.die.net/man/8/modprobe


http://www.linuxcommand.org/man_pages/rmmod8.html
7 http://linux.die.net/man/5/modprobe.conf


http://linux.about.com/od/commands/l/blcmdl8_insmod.htm


http://linux.die.net/man/8/modprobe


http://linux.die.net/man/5/modprobe.conf


http://ccrma.stanford.edu/planetccrma/man/man8/lsmod.8.html


[[Category:Operatsioonisüsteemide administreerimine ja sidumine]] [[Category:Linuxi administreerimine]]
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]] [[Category:Linuxi administreerimine]]

Latest revision as of 09:24, 10 January 2016

Autor

Kaupo Saar Ak41 2014/2015

Esitatud: 06.1.2015

Täiendab: Marko Megerild AK-21


Sissejuhatus

Käsud lsmod, rmmod, insmod on kernelis jooksvate moodulite lisamiseks, eemaldamiseks ja nende kohta informatsiooni saamiseks. Kõik käsud on mõeldud root kasutaja all jooksutamiseks.

Lsmod

[1] [2]

lsmod on käsk Linux süsteemis mis prindib /proc/modules faili sisu. lsmod näitab millised laaditavad kerneli moodulid on hetkel laaditud. Lsmod käsklust tuleb jooksutada root õigustes.

Näide:

# lsmod
Module                  Size  Used by
af_packet              27392  2 
Realtek|8139too        30592  0 
snd_cs46xx             96872  3 
snd_pcm_oss            55808  1 
snd_mixer_oss          21760  2 snd_pcm_oss
iptables|ip6table       7424  1 
iptables|ip6_tables    19728  1 ip6table_filter
IPv6|ipv6             290404  22 
XFS|xfs               568384  4 
sis900                 18052  5 
Parallel ATA|libata   169920  1 pata_sis
SCSI|scsi_mod         158316  3 usb_storage,sd_mod,libata
USB|usbcore           155312  6 


"Module" näitab mooduli nimetust. "Size" näitab mooduli suurust (mitte mälu kasutust). "Used by" tähistab iga mooduli kasutamise arvu ja nimekirja viidates moodulile.

Kui moodul kontrollib ise enda mahalaadimist, läbi "can_unload" rutiini, kuvatakse "Used By" tulbas -1.


Moodulite tugi lisati esmalt Bas Laarhoveni poolt.

Laiendati versioonis 0.99.14 Jon Tombs.

On peale seda korduvalt laiendatud erinevate developeride poolt (Bjorn Ekwall, Richard Henderson).



Rmmod

[3] [4]


Rmmod — lihtne programm millega eemaldada mooduleid Linuxi kernelist. Piiranguteks on, et need moodulid ei ole hetkel kasutuses ja ükski teine moodul ei viita sellele moodulile. Rmmod käsklust tuleb jooksutada root õigustes.

Kui käsureal on nimetautd rohkem kui üks moodul, siis need eemaldatakse nimetatud järjekorras. Tänu sellele on võimalik eemaldada kuhjatud mooduleid.

-r võtmega proovitakse rekursiivset eemaldus meetodit. See tähendab, et juhul, kui käsureal nimetatud moodul on kuhjatud, eemaldatakse kõik alus moodulid kui võimalik.



rmmod[-f] [-w] [-s] [-v] [modulename]
      -a, --all
                Teeb automaatse puhastuse, kõik mitte kasutusel olevad moodulid
                märgitakse kustutamiseks, eemaldab ka kõik moodulid millel vastav
                märge küljes. Moodulitele jääb märge külge kui neid ei kasutata
                kordagi eelmisest automaatsest puhastusest.


      -e, --persist
                Salvestab püsivad andmed nimetautd moodulitele.
                Kui mooduli nime ei ole spetsifitseeritud, salvestatakse andmed
                kõikide moodulite kohta. Andmed salvestatakse ainult, kui nii 
                kernel ja modutils toetavad püsiandmeid ja /proc/ksyms sisaldab
                kirjet __insmod_modulename_Ppersistent_filename.


      -h, --help
                Näitab võtmete kokkuvõtet.


      -v --verbose
                Prindib teateid, mida programm teeb.
                Tavaliselt rmmod ainult prindib sõnumeid, kui midagi läheb valesti.


      -f --force
                Eemaldab mooduli ilma tingimusteta, isegi kui moodul on kasutuses.


      -w --wait Tavaliselt rmmod keelab moodulite mahalaadimist, mis on kasutuses. 
                Selle variandi puhul rmmod isoleerib mooduli ja paneb selle ootele, kuni moodulit enam ei kasutata.
                Uuel kasutajal pole võimalik kasutada moodulit, kuid moodul jääb niikaua saadavale aktiivsele kasutajale kuniks seda enam ei kasutata.


      -s --syslog
                Saadab veateate syslogi, standard errori asemel.


      -V --version
                Näitab programmi versiooni.

---

Insmod

[5]

insmod Paigaldab laaditava mooduli töötavasse Linuxi kerneli. Insmod käsklust tuleb jooksutada root õigustes.

insmod proovib linkida mooduli jooksvasse kernelisse lahendaded kõik sümbolid kernelist eksporditud sümboli tabelis.

insmod otsib moodulit üldistest vaike kaustadest kui mooduli faili nimi on antud ilma kataloogi või faili laiendita.

Keskonnamuutuja MODPATH on siin kasutatav vaikeväärtuse ülekirjutamiseks, kui moodulite konfiguratsiooni fail, näiteks /etc/modules.conf, eksisteerib kirjutab see MODPATH vaikeväärtused üle.

Keskonnamuutuja MODULECONF saab kasutada mitte vaikeväärtus konfiguratsiooni faili (/etc/modules.conf) kasutamiseks.

See keskonnamuutuja kirjutab üle kõik eelnevalt määratud vaikeväärtused.

Kui keskonnamuutuja UNAME_MACHINE on kasutusel, siis modutils kasutab selle väärtust mitte uname() süsteemikutsest saadud väärtust.

See on peamiselt kasulik kui näiteks kompileerida 64bitiseid mooduleid 32bitises keskonnas või vastupidi.

Hetkel modutils ei toeta täieliku täisrist režiimi moodulite kompileerimisel vaid on limiteeritud 32 ja 64bitise host arhitektuuri valiku vahel.


insmod [ filename ] [ module options... ]


-e persist_name, --persist=persist_name
-f, --force 
-h, --help
-k, --autoclean
-L, --lock
-m, --map
-n, --noload
-o module_name, --name=module_name
-O blob_name, --blob=blob_name 
-p, --probe 
-P prefix, --prefix=prefix 
-q, --quiet 
-r, --root 
-s, --syslog 
-S, --kallsyms 
-v, --verbose 
-V, --version 
-X, --export; 
-x, --noexport 
-Y, --ksymoops; 
-y, --noksymoops 
-N, --numeric-only

Modprobe

[6]

modprobe on programm millega lisada/eemaldada mooduleid Linuxi Kerneli süsteemist.

  • modprobe arukalt lisab või eemaldab mooduli Linux kernelist. modprobe otsib mooduli kataloogist / lib / modules / "uname -r", välja arvatud /etc/modprobe.conf konfiguratsioonifaili ja /etc/modprobe.d kataloogist (vt lisa modprobe.conf [7] ).
  • modprobe saab kasutada ka käsurea kujul <moodul> <option>.


modprobe [ -v ] [ -V ] [ -C config-file ] [ -n ] [ -i ] [ -q ] [ -b ] [ -o modulename ] [ modulename ] [ module parameters... ]
modprobe [ -r ] [ -v ] [ -n ] [ -i ] [ modulename... ]
modprobe [ -l ] [ -t dirname ] [ wildcard ]
modprobe [ -c ]
modprobe [ --dump-modversions ]

Kokkuvõte

Lsmod, rmmod ja insmod on väga limiteeritud aplikatsioonid linuxi maailmas. Nüüdseks on olemas tunduvalt mugavamaid vahendeid sama töö tegemiseks, näiteks lõpus välja toodud modprobe.

Kasutatud kirjandus

1 http://ccrma.stanford.edu/planetccrma/man/man8/lsmod.8.html

2 http://linux.die.net/man/8/lsmod


3 http://www.linuxcommand.org/man_pages/rmmod8.html

4 http://ccrma.stanford.edu/planetccrma/man/man8/rmmod.8.html


5 http://linux.about.com/od/commands/l/blcmdl8_insmod.htm

6 http://linux.die.net/man/8/modprobe

7 http://linux.die.net/man/5/modprobe.conf