在本文中,了解 Linux modprobe 命令。 Linux 內核本質上是模塊化的。這意味著最終用戶可以通過刪除或添加模塊來刪除或添加內核功能。此處的 modprobe 命令使添加或刪除內核模塊變得容易。

在 Ubuntu 20.04LTS 上安裝英特爾顯卡驅動程序的步驟

什麼是內核模塊?

內核模塊是一個目標文件,其中包含可以按需加載和卸載到內核中的代碼。加載後,它會擴展內核功能,而無需重新啟動內核本身。

這樣,開發人員不必為所有服務和功能編寫一段代碼。 將 Linux 內核想像成一個巨大的樂高結構,您可以輕鬆地向其中添加其他樂高積木(模塊)。

設備驅動程序是內核模塊的一個很好的例子。

設備上的所有內核模塊都存儲在 /lib/modules 您可以使用以下命令列出它們:

find /lib/modules/$(uname -r)/kernel/ | grep ".ko" | more 

要查看當前加載了哪些模塊,您可以使用 lsmod

modprobe 命令的用途是什麼?

這個 模塊探頭 這些命令用於加載(添加)和卸載(刪除)內核模塊。那是 /lib/module/$(uname -r)

如何使用 modprobe 加載模塊?

您可以使用以下命令加載內核模塊:

sudo modprobe <kernel module name>hideep.ko

運行此命令後,您可以驗證模塊是否已加載

lsmod | grep <kernel module name>

如果此命令返回任何內容,則加載模塊。

加載內核模塊

這裡我們加載 hideep 模塊,它是觸摸屏的設備驅動程序。

如何卸載模塊?

可以使用內核模塊 -r modprobe 標誌。

sudo modprobe -r <kernel module name>

仔細檢查內核模塊是否已卸載並且可以運行。

lsmod | grep <kernel module name>

不要退回任何東西。

卸載內核模塊

modprobe 的有用標誌

當我們使用 -r 刪除模塊標誌。 modprobe 有許多其他標誌用於其他目的。以下是一些重要的:

-a : This flag allows you to add multiple modules at once 
一次加載多個模塊
--show-depends : This lists all the dependencies of a module 
顯示內核模塊依賴項
-v : If you want to know about what the program is doing in every single step, you can use this command. 
Mod探針詳細信息
--first-time : Usually if you try to add a module which is already loaded or remove a module which is already unloaded, modprobe will do nothing. However when we use this flag, modprobe will fail. This is good for debugging purposes and to verify wheather a module has already been loaded/unloaded.  
第一個 Modprobe

結論是

如果您在整個互聯網上搜索試圖修復驅動程序問題或聲音問題,您可能會發現許多教程要求您在 Linux 中加載/卸載驅動程序模塊。好的,現在您知道如何使用 modprobe 輕鬆完成此操作了。 關於 modprobe 和內核模塊的更多信息可以在這裡找到。謝謝你,繼續探索。