Czy istnieje standardowy sposób wyświetlania wartości parametrów załadowanego modułu Linux? Zasadniczo szukam innej odpowiedzi na to pytanie dotyczące parametrów modułu jądra Linux , ponieważ moduł, który mnie interesuje, nie ma /sys/modules/<module_name>/parameters
interfejsu.
76
Odpowiedzi:
Możesz to zrobić za pomocą tego prostego polecenia jednokierunkowego, które korzysta z wirtualnych systemów plików / proc / modules i / sys:
Otrzymasz takie wyjście:
Mam nadzieję że to pomoże.
źródło
alias ls='ls -lah'
. Usunięcie aliasu lub uruchomienie rozwiązania jako skryptu działało jednak świetnie.Możesz użyć polecenia
systool -vm <Module name>
. Jest dostarczany zsysfsutils
pakietem w większości systemów.Tak będzie wyglądać wyjście, jest sekcja
Parameters
:źródło
systool
jest częścią pakietusysfsutils
. I myślę, że to odpowiedź (ale może mieć przykładowy wynik)Parameters:
sekcja jest obecna tylko w danych wyjściowych dla modułów, które ujawniają/sys/modules/<module_name>/parameters
interfejs. Niestety nie spełnia to założenia pytania.źródło
Możesz użyć polecenia „ modinfo (8) ”, aby uzyskać dostępne parametry czasu ładowania modułu. Na przykład:
Aby uzyskać parametry załadowanych modułów, spróbuj połączyć komendę modinfo z prostym „lsmod | awk '{print $ 1}'”
Jak w:
źródło
Wyszłoby brzydko jako komentarz, ale zrobiłem to sprawdzenie w moim systemie ..
Aby sprawdzić, czy moduły bez parametrów w / sys pokazują się jako posiadające parametry w modinfo, ale nie mogłem ich znaleźć.
Nie jestem ekspertem, ale różnica polega na tym, że modinfo odczytuje sam plik modułu dla parametrów, patrząc na nagłówki elfów .modinfo, podczas gdy sys odczytuje je ze swojego środowiska wykonawczego.
To może być możliwe, aby mieć parametry, które można modyfikować w czasie wykonywania których dont pojawiają się jako wartość parametru modinfo, ale ponieważ format moduł powinien być dość stałe dont wyobrazić sobie jego możliwe, aby przekazać parametr opcji do modułu podczas ładowania bez istnienia połączona w nim struktura .modinfo.
Jestem ciekawy, czy twój moduł sugeruje, że istnieją parametry, które można przekazać za pomocą modinfo, gdy sprawdzasz go w ten sposób, ale nie ma dla niego żadnych parametrów w / sys? Z pewnością w moim systemie nie mogłem znaleźć żadnych przykładów tego przy użyciu polecenia podanego powyżej.
źródło
W przypadku iwlwifi i innych modułów użyłem tego:
i otrzymuję ten wynik:
Myślę, że możesz spróbować czegoś takiego:
Daj mi znać, jeśli to Ci odpowiada.
źródło
grep .
prawdopodobnie równie dobrze działałby przy mniejszym pisaniu. :)grep . /sys/module/<module_name>/parameters/*
grep -R
i pozostawisz symbol wieloznaczny poza katalogiem parametrów, zawsze wyświetla nazwę pliku. Punkty bonusowe: dodaj również--color
do grep i uzyskaj nazwę pliku + wartość zróżnicowaną kolorystycznie. ;) Na przykładgrep -R --color '.' /sys/module/block/parameters/
Pracując z pracą Katriel, możesz uzyskać (co prawda brzydkie) jedno-liniowe połączenie ich dwóch w pętli bash:
źródło
print
jest dość obrzydliwe -while read
zamiast tego użyj składni:lsmod | while read a b; do echo $a:; modinfo $a | grep parm | sed -e 's/parm://'; done
- nie zmienia to faktu, że modinfo nie zwraca wartości parametrów, chociaż ...