Saya memiliki modul pihak ketiga untuk digunakan dengan frame grabber. Saya telah mengunduh sumber kernel, mengikuti instruksi vendor untuk mengompilasinya, dan memiliki modul yang dihasilkan, arvdrv.ko, duduk di folder.
Vendor telah menyediakan skrip yang memuat modul ke dalam kernel dan berfungsi saat saya menjalankannya; modul dimuat tetapi hanya sampai boot berikutnya. Script tidak menggunakan modprobe. Saya dapat mengakses frame grabber ketika modul diinstal.
Tampak bagi saya bahwa modprobe memelihara daftar banyak modul. Seseorang dapat mengedit / etc / modules untuk menambahkan nama modul dan itu akan dimuat saat boot tetapi modul arvdrv tidak ada dalam daftar modprobe.
Pertanyaan saya adalah bagaimana cara memberi tahu modprobe tentang modul? Apakah perlu disalin ke lokasi baru dan jika demikian di mana?
Jawaban:
Menggunakan
sudo
:Edit
/etc/modules
file dan tambahkan nama modul (tanpa.ko
ekstensi) pada barisnya sendiri. Saat boot, kernel akan mencoba memuat semua modul yang disebutkan dalam file ini.Salin modul ke folder yang sesuai di
/lib/modules/`uname -r`/kernel/drivers
. Dalam kasus saya ini/lib/modules/`uname -r`/kernel/drivers/pci
. Ini akan menempatkan modul dalam basis data modprobe. Saya tidak tahu apakah ini bisa menjadi tautan.Lari
depmod
. Ini akan menemukan semua dependensi modul Anda.Pada titik ini, saya reboot dan jalankan
lsmod | grep module-name
untuk mengkonfirmasi bahwa modul telah dimuat saat boot.Lihat halaman manual untuk modprobe , lsmod , dan depmod untuk informasi lebih lanjut.
sumber