Linux對模塊操作有哪些命令詳細(xì)教程
Linux對模塊操作是很重要的部分,包括加載,更新查看模塊等,具體有哪些命令呢。下面由學(xué)習(xí)啦小編為大家整理了linux的模塊操作命令的相關(guān)知識,希望對大家有幫助!
linux的模塊操作命令詳解
linux模塊操作命令1、列出系統(tǒng)中所有已經(jīng)加載的模塊的大小與名稱等
lsmod或者cat/proc /modules
ty@tonylinux:~$lsmodModuleSizeUsedbyrfcomm402160l2cap262445rfcommbluetooth500204rfcomm,l2capppdev92200radeon1160001........ty@tonylinux:~$cat/proc/modulesrfcomm402160-ive0xf8dee000l2cap262445rfcomm,Live0xf8DB2000bluetooth500204rfcomm,l2cap,Live0xf8dc2000ppdev92200-Live0xf8d88000.........
linux模塊操作命令2、modprobe掛載新模塊以及新模塊相依賴的模塊
modprobe我們常用的功能就是掛載模塊,在掛載某個(gè)內(nèi)核模塊的同時(shí),這個(gè)模塊所依賴的模塊也被同時(shí)掛載;這是于insmod掛載模塊有區(qū)別的地方。當(dāng)然modprobe也有列出內(nèi)核所有模塊,還有移除模塊的功能;下在我們舉個(gè)例子說一說咱們常用的功能和參數(shù);
modprobe-codprobe-c可以查看modules的配置文件,比如模塊的別名是什么等;
modprobe -l 是列出內(nèi)核中所有的模塊,包括已掛載和未掛載的;通過modprobe-l,我們能查看到我們所需要的模塊,然后根據(jù)我們的需要來掛載;
[root@localhostbeinan]#modprobe 模塊名 注:掛載一個(gè)模塊;
[root@localhostbeinan]#modprobe-r 模塊名 注:移除已加載的模塊,和rmmod功能相同;
linux模塊操作命令3、modinfo查看模塊信息
modinfo可以查看模塊的信息,通過查看模塊信息來判定這個(gè)模塊的用途。
ty@tonylinux:~$modinfobluetoothfilename:/lib/modules/2.6.15-27-386/kernel/net/bluetooth/bluetooth.koauthor:MaximKrasnyansky,MarcelHoltmanndescription:BluetoothCorever2.8version:2.8license:GPLalias:net-pf-31vermagic:2.6.15-27-386preempt486gcc-4.0depends:srcversion:7EE5558C84FD3DB2B68971C http://www.mscto.com
linux模塊操作命令4、rmmod移除已掛載模塊rmmod模塊名
linux模塊操作命令5、depmod創(chuàng)建模塊依賴關(guān)系的列表
這個(gè)模塊管理工具是創(chuàng)建模塊依賴關(guān)系的列表,有幾個(gè)參數(shù)我們注意一下就行了,目前的的Linux發(fā)行版所用的內(nèi)核是2.6x版本,是自動解決依賴關(guān)系,所以這個(gè)命令知道就行了;
模塊之前也有依賴關(guān)系,比如我們想驅(qū)動USB移動硬盤,目前有兩種驅(qū)動,一種是udev,在內(nèi)核中有,但目前不太穩(wěn)定;另一種辦法是用usb- storage驅(qū)動,而usb-storage依賴的模塊是scsi模塊,所以我們要用usb-storage的模塊,也得把scsi安裝該命令為 modules.dep文件或映射文件創(chuàng)建依賴關(guān)系,modules.dep文件位于/lib/modules/2.6.15-27-i386;這是我的電腦的目錄文件。
linux模塊操作命令6、insmod掛載模塊
insmod 這個(gè)工具,和modprobe有點(diǎn)類似,但功能上沒有modprobe強(qiáng),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 內(nèi)核模塊的開機(jī)自動掛載模塊一般是位于一個(gè)配置文件,一般的Linux發(fā)行版本都有/etc/modules.conf或/etc /modprobe.conf。
(Ubuntu下的模塊配置文件是/etc/modules,其內(nèi)容是:
# /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內(nèi)核模塊開機(jī)自動加載文件是/etc/modprobe.conf;在這個(gè)文件中,一般是寫入模塊的加載命令或模塊的別名的定義等;
比如我們在modules.conf中可能會發(fā)行類似的一行;通過源碼編譯驅(qū)動一般是./configure;make;makeinstall,有時(shí)程序不提供./configure,我們可以make或 makeinstall,或者執(zhí)行make;makeinstall;如果不能make install,則需要我們自己復(fù)制.o或者.ko文件到/lib /modules/內(nèi)核版本/kernel/目錄或/lib/modules/內(nèi)核版本/kernel/drivers目錄中相應(yīng)的驅(qū)動目錄.
相關(guān)閱讀:Linux系統(tǒng)常見故障現(xiàn)象
1. MBR中g(shù)rub損壞,1_5階段的數(shù)據(jù)損壞,2階段的grub損壞
2. initramfs*.img文件損壞,內(nèi)核文件損壞
3. /boot/grub/grub.conf文件丟失
4. /etc/fstab丟失,無法掛載根等文件系統(tǒng)
5. /boot 目錄全部的文件丟失
6. root密碼忘記
7. 為grub設(shè)置密碼,開機(jī)時(shí)生效,保護(hù)root密碼被惡意修改等
二、常見故障的分析解決:
1. 1階段和1_5階段出問題時(shí)會開機(jī)執(zhí)行完BIOS自檢后直接報(bào)錯
2. 前面兩個(gè)階段順利通過,到了執(zhí)行/boot/ 下面的第二個(gè)階段時(shí)的程序調(diào)用/boot/grub/grub.conf 時(shí)文件丟失或者/boot/下內(nèi)核文件和initramfs*.img 文件丟失都會造成卡在第二個(gè)階段:丟失initramfs文件時(shí)會在過了開機(jī)選擇內(nèi)核啟動之后卡住不動,沒有任何提示(在/boot/grub /grub.conf 配置文件中定義了timeout時(shí)間,會過了倒計(jì)時(shí),然后沒有任何提示)如果是丟失grub.conf 是會進(jìn)入grub>提示符由管理員指定內(nèi)核文件和initramfs文件位置
3. /etc/fstab丟失:
系統(tǒng)可以開機(jī),但是開機(jī)時(shí)會卡好長時(shí)間,因?yàn)樵S多服務(wù)等待超時(shí)無法啟動,此時(shí)磁盤按照默認(rèn)以只讀掛載根,這個(gè)掛載是在開機(jī)時(shí)掛載的,因?yàn)闆]有fstab文件所以無法重新掛載根文件系統(tǒng)以及其他的系統(tǒng),沒有運(yùn)行級別
4. 為grub設(shè)置了密碼會在開機(jī)進(jìn)入內(nèi)核啟動時(shí),想要修改grub和內(nèi)核的參數(shù)或者進(jìn)入系統(tǒng)時(shí)需要輸入密碼,當(dāng)然忘記這樣的密碼也只能使用光盤引導(dǎo)進(jìn)入救援模式修改配置文件/etc/grub/grub.conf 把相應(yīng)的密碼行刪除即可。