Cara Menggunakan lsmod di Linux

Kernel Linux adalah misteri bagi kebanyakan orang, tetapi tidak perlu begitu! Selamat datang di dunia lsmod yang menarik, alat yang memungkinkan Anda mengintip modul apa yang digunakan Kernel, dan banyak lagi!

Apa lsmod?

Untuk menjelaskan lsmod, alat yang memungkinkan seseorang untuk membuat daftar modul di Kernel Linux, seseorang harus terlebih dahulu memahami apa itu modul. Modul Linux adalah bagian kode modular (berjalan dalam format terkompilasi) yang dapat dimuat atau dibongkar dari kernel Linux sesuka hati. Keuntungan utama menggunakan modul semacam itu adalah modularitas dan granularitasnya.

Anda dapat menganggap modul Kernel sebagai plugin untuk perangkat lunak lain. Kapan pun Anda membutuhkan fungsionalitas khusus – kurang umum, atau kurang umum -, itu akan tersedia sebagai plugin, atau dalam kasus Kernel Linux sebagai modul. Ada sedikit perbedaan antara plugin di perangkat lunak lain dan modul Kernel Linux. Namun, tingkat di mana mereka beroperasi lebih dekat ke perangkat keras dan perangkat lunak operasi inti, daripada di akhir tumpukan di tingkat pengguna.

Misalnya, driver kartu grafis Anda – terutama jika Anda menggunakan driver NVidia – dimuat sebagai modul Kernel. Ketika Anda menginstal driver, modul kernel dikonfigurasi dan dimuat (mungkin pada restart berikutnya dari sistem Anda).

Akan kembali ke lsmodyang harus disertakan dalam instalasi default sistem operasi Linux Anda, alat ini akan mencantumkan ikhtisar modul kernel yang tersedia saat ini.

lsmod: Pandangan pertama

menarik, lsmod adalah alat yang menyediakan konten (virtual) /proc/modules file ke konten yang lebih dapat dibaca manusia.

Itu /proc/modules File adalah file virtual 0-byte yang, jika dilihat dengan mis cat Hai viakan berisi (atau lebih baik diberikan) daftar modul yang saat ini tersedia untuk Kernel Linux pada sistem di mana lsmod dibunuh.

Mari kita mulai dengan memeriksa isi dari /proc/modules file untuk memiliki modul Kernel Linux AHCI (Advanced Host Controller Interface):

cat /proc/modules | grep ahci

Melihat isi /proc/modules

Di sini kami menggunakan cat menampilkan (diberikan) isi dari /proc/modulesdan kemudian gunakan grep untuk mengambil modul AHCI. Perhatikan bahwa kami tidak mendefinisikan -i opsi (yang akan melakukan pencarian peka huruf besar/kecil) di grepsebagai daftar lengkap modul /proc/modules adalah huruf kecil saja.

Kita dapat melihat dari output yang diberikan modul AHCI Linux Kernel apa yang tersedia saat ini. Jika tidak, hasilnya terlihat agak samar dan tidak terlalu deskriptif. Mari mencoba lsmod sebagai gantinya sekarang.

lsmod | grep -E '^Module|ahci'

Menggunakan lsmod untuk membuat daftar isi /proc/modules dalam format yang lebih baik dan mengambil modul tertentu

Di sini kami menggunakannya lsmodalat tanpa opsi, dan digunakan grep untuk mendapatkan beberapa hasil yang menarik. Itu -E Opsi grep memungkinkan kita untuk membuat selektor/daftar pilihan (string) dari item yang ingin kita lihat, semuanya dipisahkan oleh satu atau lebih simbol pipa (|).

Di sini kami mencari apa saja ahci acara (dalam selektor/string pilihan kedua), dan apa pun ^Module kejadian (dalam selektor/string pilihan pertama), di mana ^ adalah ekspresi reguler (berlaku untuk pemilih pertama saja), memilih awal barisyang menunjukkan bahwa kami hanya ingin melihat hasil di mana awal baris segera diikuti oleh ‘Modul’ dan merupakan baris header pertama kami.

Kami melihat output sekarang yang ditampilkan dengan baik; baris pertama (yang merupakan kami grep perintah disertakan sebagai ucapan terima kasih kepada ^Module pemilih) dan baris kedua dan ketiga mencantumkan ahci modul yang kami grep dipilih karena pemilih kedua.

Keluaran kolom header memberi tahu kita apa isi setiap kolom; kolom pertama adalah nama modul (Modul), ukuran kedua adalah byte (Ukuran), dan kolom ketiga memberikan a nomor referensi (Digunakan oleh), atau dengan kata lain berapa kali modul direferensikan (yang dapat diterjemahkan secara samar ke digunakan) melalui inti.

Jika nomor referensi di kolom ketiga adalah nol, berarti modul tersedia “di”/ di Kernel, saat ini tidak digunakan.

Kiat: jika Anda pernah melihat -2 pada keluaran lsmodAnda mungkin ingin memeriksa apa yang ditampilkan lsmod -2 di kolom “Digunakan oleh” di Stackexchange.

Menyelam Lebih Dalam Dengan info mod

Selagi lsmod Alat ini tidak memiliki opsi itu sendiri, kita dapat menggunakan utilitas lain bersama dengan lsmod untuk menemukan informasi lebih lanjut: modinfo.

modinfo ahci -F 'description'
modinfo ahci -F 'author'

Menggunakan alat modinfo dengan opsi -F (bidang) untuk memilih hanya bidang tertentu

Di sini kami menggunakan modinfo perintah untuk mengetahui informasi lebih lanjut tentang ahci Modul Kernel Linux. Secara khusus, kami menggunakan -F pilihan untuk modinfo untuk memilih bidang tertentu yang isinya ingin kita ketahui. Perhatikan bahwa jika Anda menerapkan modinfo ahci tanpa opsi apa pun, Anda akan melihat daftar lengkap semua informasi yang tersedia di ahci Modul kernel. Output ini cukup verbose karena termasuk menandatangani data kunci dll.

Kita bisa menggunakannya juga grep mirip dengan apa yang kita lakukan sebelumnya untuk memilih informasi yang sama dalam perintah yang sama. Untuk melakukan ini, kami menggunakan modinfo ahci | grep -E 'description|author'yang memberikan output yang sama dengan dua baris, meskipun mereka berada langsung di bawah satu sama lain.

Menggunakan alat modinfo bersama dengan grep untuk memilih beberapa bidang sekaligus

Perhatikan juga bahwa seseorang dapat menggunakan kembali ekspresi reguler ' untuk memilih hanya string keluaran yang dimulai dari awal baris (untuk kedua bidang yang sedang dicari), yaitu modinfo ahci | grep -E '^description|^author'

Berbeda dengan lsmodmodinfo memiliki beberapa opsi tambahan yang mungkin menarik. Lihat man modinfountuk melihat semua opsi yang tersedia.

Pembungkus

Dalam artikel ini, kami menjelajahi opsi-kurang lsmod alat dan output praktis yang diberikannya kepada kita, menunjukkan kepada kita modul Kernel Linux mana yang tersedia dan berapa kali setiap Modul Kernel tersebut saat ini direferensikan (“digunakan”) melalui kernel. Kami juga melihat bagaimana mendapatkan informasi lebih lanjut tentang modul tertentu dengan menggunakan modinfo perintah di Linux. Kami juga melihat bagaimana kami dapat menggunakan grep -E untuk mendapatkan dua informasi sekaligus dengan menggunakan beberapa string pilihan untuk dipindai.

Leave a Comment

Your email address will not be published. Required fields are marked *