MODPROBE(8)            Wsparcie dla modułów           MODPROBE(8)


NAZWA
       modprobe - wysokopoziomowa obsługa modułów

SKŁADNIA
       modprobe   [   -adnqv   ]  [  -C konfiguracja  ]  moduł  [
       symbol=wartość ... ]
       modprobe [ -adnqv ] [ -C konfiguracja ] [ -t typ ] wzorzec
       modprobe -l [ -C konfiguracja ] [ -t typ ] wzorzec
       modprobe -c [ -C konfiguracja ]
       modprobe -r [ -dnv ] [ -C konfiguracja ] [ moduł ...]
       modprobe -V

OPCJE
       -a, --all
              Ładuje  all  wszystkie  moduły  pasujące do wzorca,
              zamiast  zatrzymać  się  po   pierwszym   pomyślnym
              załadowaniu.

       -c, --showconfig
              Pokazuje akrualnie używaną konfigurację.

       -d, --debug
              Pokazuje   informacje  o  wewnęrznej  reprezentacji
              stosu modułów.

       -k, --autoclean
              Ustawia 'autoczyszczenie' dla załadowanych modułów.
              Używane  przez  jądro  podczas wywoływania modprobe
              aby zapewnić brakujące właściwości  (dostępne  jako
              moduły).   Opcja  -k  włącza  też  -q.  Opcje te są
              automatycznie przekazywane do insmoda.

       -l, --list
              Wypisuje pasujące moduły.

       -n, --show
              Pokazuje, co by się działo, nie  podejmując  żadnej
              akcji.

       -q, --quiet
              Nie  narzeka na niepomyślną instalację modułu przez
              insmoda. Kontymuuje  jak  zwykle,  lecz  po  cichu,
              umożliwiając modprobe testowanie innych możliwości.
              Opcja  ta  jest   automatycznie   przekazywana   do
              insmoda.

       -r, --remove
              Usuwa    moduł    (stos    modułów)   lub   wykonuj
              autoczyszczenie, w zależności od tego,  czy  podano
              jakieś moduły w linii poleceń, czy nie.

       -s, --syslog
              Wyprowadza    wszystko   do   syslog   zamiast   na
              standardową    diagnostykę.     Opcja    ta    jest



Linux                    15 sierpnia 2001                       1





MODPROBE(8)            Wsparcie dla modułów           MODPROBE(8)


              automatycznie przekazywana do insmoda.

       -t, --type typmodułu
              Bierze   pod  uwagę  jedynie  moduły  danego  typu.
              modprobe  będzie  szukać  jadynie  takich  modułów,
              których  katalog  w  ścieżce zawiera "/typmodułu/".
              typmodułu może  zawierać  więcej  niż  jedną  nazwę
              katalogu,  np.   -t drivers/net  wypisze  moduły  z
              xxx/drivers/net/ i jego podkatalogów.

       -v, --verbose
              Wupisuje wszystkie uruchamiane polecenia.

       -V, --version
              Wypisuje wersję modprobe.

       -C, --config plikkonf
              Korzysta z pliku plikkonf zamiast z  (opcjonalnego)
              /etc/modules.conf  dla określenia konfiguracji.  Do
              wybrania    (i     narzucenia)     innego     pliku
              konfiguracyjnego   niż  domyślny  /etc/modules.conf
              (lub   (przestarzały)   /etc/conf.modules)    można
              również użyć zmiennej środowiska MODULECONF.

       Uwaga: Zawy  modułów  nie  mogą zawierać ścieżek (bez '/')
              ani kończących nazwę '.o'.  Na przykład, slip  jest
              dla       modprobe      poprawną      nazwą,      a
              /lib/modules/2.2.19/net/slip    i     slip.o     są
              niepoprawne.   Dotyczy  to  linii  poleceń i całego
              pliku konfiguracyjnego.

OPIS
       Programy  narzędziowe   modprobe   i   depmod   służą   do
       zarządzania zmodularyzowanym jądrem Linuksa przez zwykłych
       użytkowników, administratorów i twórców dystrybucji.

       modprobe  w  celu  automatycznego  ładowania   właściwych,
       spośród   zbioru  modułów  dostępnych  w  predefiniowanych
       drzewach  katalogów,  korzysta  z   pliku   podobnego   do
       "Makefile",   tworzonego   przez  depmod.   modprobe  jest
       używany  do  załadowania:  pojedynczego   modułu,   zbioru
       powiązanych  modułów,  lub  wszystkich modułów oznaczonych
       podanym znacznikiem.

       modprobe   automatycznie   załaduje    wszystkie    moduły
       podstawowe, wymagane przez zbiór modułów, zgodnie z opisem
       w pliku powiązań modules.dep.  Jeśli ładowanie  jednego  z
       tych   modułów  się  nie  powiedzie,  cały  zbiór  modułów
       załadowanych  w  bieżącej  sesji  zostanie   automatycznie
       rozładowany.

       modprobe  może  ładować moduły na dwa różne sposoby. Jeden
       to taki, że modprobe spróbuje załadować  moduł  z  podanej
       listy  (zdefiniowany  przez  wzorzec ).  modprobe zatrzyma



Linux                    15 sierpnia 2001                       2





MODPROBE(8)            Wsparcie dla modułów           MODPROBE(8)


       się jeśli uda mu się załadować jeden  z  modułów.   W  ten
       sposób   można   automatycznie   ładować  sterownik  karty
       Ethernet jako jeden z listy.
       Inny sposób  użycia  modprobe  to  załadowanie  wszystkich
       modułów z listy.  Zobzcz PRZYKŁADY poniżej.

       Gdy poda się opcję -r, modprobe automatycznie usunie zbiór
       modułów, podobnie jak by to zostało wykonane  przez  rmmod
       -r.   Należy  zauważyć,  że  wydanie polecenia modprobe -r
       spowoduje   wyczyszczenie   nieużywanych,    automatycznie
       załadowanych  modułów  a  także  wykonanie  poleceń pre- i
       post-remove z pliku konfiguracyjnego /etc/modules.conf.

       Jeżeli opcja -l zostanie połączona z  opcją  -t,  wypisana
       zostanie  lista  wszystkich dostępnych modułów określonego
       typu.

       Opcja -c wypisuje całą  bieżącą  konfigurację  (ustawienia
       domyślne + plik konfiguracyjny).

KONFIGURACJA
       Zachowanie  się  depmod  i  modprobe  może być dostosowane
       przez (opcjonalny) plik konfiguracyjny  /etc/conf.modules.
       Po  bardziej  szczegółowy  opis  możliwej  zawartości tego
       pliku, jak i konfigurację domyślną używaną przez depmod  i
       modprobe, zajrzyj do modules.conf(5).

       Należy  zwrócić uwagę, że polecenia pre- i post-remove nie
       będą wykonywane jeśli  moduł  jest  usuwany  automatycznie
       przez  kerneld!   Zamiast  zastanawiać się, jak to obejść,
       należy poczekać, aż zostanie wprowadzona obsługa  trwałego
       przechowywania danych dla modułów.
       Jeśli  funkcjonalność  pre- i post-install jest potrzebna,
       należy  wyłączyć  automatyczne  usuwanie   modułów   przez
       kerneld i zamiast tego wpisać linię podobną do poniższej w
       crontab  (ma   to   również   zastosowanie   w   systemach
       korzystających  z kmod), aby automatyczne usuwać moduły co
       2 minuty:
        */2 * * * * test -f /proc/modules && /sbin/modprobe -r

STRATEGIA
       Idea polega na tym, by modprobe najpierw sprawdził katalog
       zawierający moduły skompilowane dla bieżącej wersji jądra.
       Jeśli właściwy moduł nie zostanie tam znaleziony, modprobe
       sprawdzi inne katalogi, wspólne dla głównego numery wersji
       jądra (np. 2.0, 2.2). Jeśli tam też nie  znajdzie  modułu,
       modprobe  będzie szukać w katalogu zawierającym moduły dla
       domyślnego jądra, itd.

       Podczas instalacji  nowego  Linuksa,  moduły  powinny  być
       przeniesione  do  katalogu nazwanego od numeru jądra które
       jest  instalowane.   Wówczas  należy   zrobić   dowiązanie
       symboliczne z tego katalogu do katalogu "default".




Linux                    15 sierpnia 2001                       3





MODPROBE(8)            Wsparcie dla modułów           MODPROBE(8)


       Podczas  każdej  kompilacji  nowego  jądra, polecenie make
       modules_install  utworzy  nowy  katalog,  ale  nie  zmieni
       dowiązania do katalogu default.

       Kiedy  otrzyma  się moduł nie związany z konkretnym jądrem
       należy go umieścić w jednym z katalogów nie  zależnych  od
       wersji jądra w katalogu /lib/modules.

       Takie   jest   standardowe   zachowanie,  które  może  być
       zmienione poprzez odpowiednie wpisy do  /etc/modules.conf.

PRZYKŁADY
       modprobe -t net
              Załaduj  jeden  z  modułów,  który  znajduje  się w
              katalogu  oznaczonym  "net".   Każdy   moduł   jest
              wyprubowywany  aż  do  momentu  kiedy któryś z nich
              zostanie          załadowany          (standardowo:
              /lib/modules/net).

       modprobe -t net
              Ładuje  jeden z modułów znajdujących się w katalogu
              "net". Próbuje wszystkich modułów po  kolei,  aż  z
              jednym się uda.

       modprobe -a -t boot
              Wszystkie   moduły   znajdujące  się  w  katalogach
              oznaczonych przez boot będą załadowane.

       modprobe slip
              Polecenie to  spowoduje  próbę  załadowania  modułu
              slhc.o  o  ile  nie  został  uprzednio  załadowany,
              ponieważ moduł slip wymaga  funkcjonalności  modułu
              slhc.    Ta   zależność   będzie  opisana  w  pliku
              "modules.dep"  utworzonym  wcześniej  automatycznie
              przez polecenie depmod.

       modprobe -r slip
              usunie  moduł  slip.  Usunie  również automatycznie
              moduł slhc, o ile nie jest on również używany przez
              jakiś inny moduł (np. ppp).

PLIKI
       /etc/modules.conf (alternatywnie, przestarzały /etc/conf.modules)
       /lib/modules/*/modules.dep,
       /lib/modules/*

ZOBACZ TAKŻE
       depmod(8), lsmod(8), kerneld(8), ksyms(8), rmmod(8)

TRYB BEZPIECZNY
       Jeśli  efektywny  uid  jest  różny  od  rzeczywistego uid,
       modprobe   analizuje    podane    parametry    szczególnie
       podejrzliwie.  Ostatni parametr jest zawsze traktowany jak
       nazwa modułu, nawet gdy  zaczyna  się  od  '-'.  Może  być



Linux                    15 sierpnia 2001                       4





MODPROBE(8)            Wsparcie dla modułów           MODPROBE(8)


       podana   nazwa   tylko  jednego  modułu  a  opcje  postaci
       "zmienna=wartość" są zabronione.  Nazwa modułu jest zawsze
       traktowana  jak  łańcuch znakowy, w trybie bezpiecznym nie
       są przeprowadzane rozwinięcia. Jednakże, rozwinięcia nadal
       są   wykonywane   odnośnie   danych   zawartych   w  pliku
       konfiguracyjnym.

       euid może być różny od uid  podczas  wywoływania  modprobe
       przez  jądro;  dzieje się tak dla jąder >= 2.4.0-test11. W
       świecie idealnym modprobe mógłby ufać jądru, że przekazuje
       tylko  prawidłowe  parametry.  Jednakże,  pojawiła  się co
       najmniej jedna  metoda  wykorzystania  tego  lokalnie  dla
       uzyskania   uprawnień   roota,  gdyż  wysokopoziomowy  kod
       kernela przekazywał bezpośrednio parametry od  użytkownika
       do modprobe, bez kontroli.

       modprobe   automatycznie   ustawia  tryb  bezpieczny,  gdy
       środowisko składa się jedynie z następujących zmiennych:
        HOME=/
        TERM=linux
        PATH=/sbin:/usr/sbin:/bin:/usr/bin
       Jest to wykrywanie uruchamiania modprobe przez  jądro  dla
       jąder  2.2 do 2.4.0-test11, nawet gdy uid == euid, jak się
       dzieje dla wcześniejszych jąder.

LOGOWANIE POLECEŃ
       Jeśli  istnieje  katalog  /var/log/ksymoops,  a   modprobe
       zostanie  uruchomiany  z  opcją powodującą załadowanie lub
       usunięcie modułu, modprobe zaloguje swoje polecenie i  kod
       powrotu  w  /var/log/ksymoops/`date +%Y%m%d.log`.   Nie ma
       przełącznika wyłączającego automatyczne  logowanie.  Jeśli
       nie   ma  ono  występować,  nie  należy  tworzyć  katalogu
       /var/log/ksymoops. Jeśli ten  katalog  istnieje,  powinien
       być  on  własnością roota i mieć prawa dostępu 644 lub 600
       oraz  należy  uruchamiać  codziennie,  lub   w   podobnych
       odstępach czasu, skrypt insmod_ksymoops_clean.

NIEZBĘDNE NARZĘDZIA
       depmod(8), insmod(8)

UWAGI
       Wzorce   podane   programowi   modprobe   często  wymagają
       cytowania, aby  mieć  pewność,  że  są  interpretowany  we
       właściwy sposób.

AUTOR
       Jacques Gelinas (jack@solucorp.qc.ca)
       Bjorn Ekwall (bj0rn@blox.se)









Linux                    15 sierpnia 2001                       5