Linux中進行模組操作的命令

來源:互聯網
上載者:User

Linux是基於模組的,所有的驅動都是模組化的:管理模組的命令:1、列出系統中所有已經載入的模組的大小與名稱等:lsmod或者cat/proc /modules

ty@tonylinux:~$lsmodModuleSizeUsedbyrfcomm402160l2cap262445rfcommbluetooth500204rfcomm,l2capppdev92200radeon1160001........ty@tonylinux:~$cat/proc/modulesrfcomm402160-Live0xf8dee000l2cap262445rfcomm,Live0xf8DB2000bluetooth500204rfcomm,l2cap,Live0xf8dc2000ppdev92200-Live0xf8d88000.........

2、modinfo查看模組資訊:modinfo可以查看模組的資訊,通過查看模組資訊來判定這個模組的用途。

ty@tonylinux:~$modinfobluetoothfilename:/lib/modules/2.6.15-27-386/kernel/net/bluetooth/bluetooth.koauthor:MaximKrasnyansky<maxk@qualcomm.com>,MarcelHoltmann<marcel@holtmann.org>description:BluetoothCorever2.8version:2.8license:GPLalias:net-pf-31vermagic:2.6.15-27-386preempt486gcc-4.0depends:srcversion:7EE5558C84FD3DB2B68971C http://www.mscto.com

3、modprobe掛載新模組以及新模組相依賴的模組modprobe我們常用的功能就是掛載模組,在掛載某個核心模組的同時,這個模組所依賴的模組也被同時掛載;這是於insmod掛載模組有區別的地方。當然modprobe也有列出核心所有模組,還有移除模組的功能;下在我們舉個例子說一說咱們常用的功能和參數;

modprobe-codprobe-c可以查看modules的設定檔,比如模組的別名是什麼等;

modprobe -l 是列出核心中所有的模組,包括已掛載和未掛載的;通過modprobe-l,我們能查看到我們所需要的模組,然後根據我們的需要來掛載;

[root@localhostbeinan]#modprobe 模組名 註:掛載一個模組;
[root@localhostbeinan]#modprobe-r 模組名 註:移除已載入的模組,和rmmod功能相同;

4、rmmod移除已掛載模組rmmod模組名

5、depmod建立模組依賴關係的列表這個模組管理工具是建立模組依賴關係的列表,有幾個參數我們注意一下就行了,目前的的Linux發行版所用的核心是2.6x版本,是自動解決依賴關係,所以這個命令知道就行了;

模組之前也有依賴關係,比如我們想驅動USB移動硬碟,目前有兩種驅動,一種是udev,在核心中有,但目前不太穩定;另一種辦法是用usb- storage驅動,而usb-storage依賴的模組是scsi模組,所以我們要用usb-storage的模組,也得把scsi安裝該命令為 modules.dep檔案或對應檔建立依賴關係,modules.dep檔案位於/lib/modules/2.6.15-27-i386;這是我的電腦的目錄檔案。

6、insmod掛載模組insmod 這個工具,和modprobe有點類似,但功能上沒有modprobe強,modprobe在掛載模組是不用指定模組檔案的路徑,也不用帶檔案的尾碼.o 或.ko;而insmod需要的是模組的所在目錄的絕對路徑,並且一定要帶有模組檔案名稱尾碼的(modulefile.o或 modulesfile.ko);

[root@localhostbeinan]#insmod/lib/modules/2.6.11-1.1369_FC4/kernel/drivers/net/tg3.ko

模組的設定檔modules.conf或modprobe.conf 核心模組的開機自動掛載模組一般是位於一個設定檔,一般的Linux發行版本都有/etc/modules.conf或/etc /modprobe.conf。

(Ubuntu下的模組設定檔是/etc/modules,其內容是:

# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.

lp

比如FedoraCore4.0核心模組開機自動負載檔案是/etc/modprobe.conf;在這個檔案中,一般是寫入模組的載入命令或模組的別名的定義等;

比如我們在modules.conf中可能會發行類似的一行;通過源碼編譯驅動一般是./configure;make;makeinstall,有時程式不提供./configure,我們可以make或 makeinstall,或者執行make;makeinstall;如果不能make install,則需要我們自己複製.o或者.ko檔案到/lib /modules/核心版本/kernel/目錄或/lib/modules/核心版本/kernel/drivers目錄中相應的驅動目錄;

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.