Linux_常用命令總結(jié)

命令:pwd

  • 查看當(dāng)前目錄

命令:cd

- 定位當(dāng)前目錄為weblogic目錄下
cd /home/weblogic
-將目錄返回至上一級(jí)
cd ..
--將目錄返回至上二級(jí)
cd ../..

用戶(hù)相關(guān)

  • 用戶(hù)列表文件:/etc/passwd
  • 用戶(hù)組列表文件:/etc/group
  • 查看系統(tǒng)中有哪些用戶(hù):cut -d : -f 1 /etc/passwd
  • 查看可以登錄系統(tǒng)的用戶(hù):cat /etc/passwd | grep -v /sbin/nologin | cut -d : -f
  • 查看用戶(hù)操作:w命令(需要root權(quán)限)
  • 查看某一用戶(hù):w 用戶(hù)名
  • 查看登錄用戶(hù):who
  • 查看用戶(hù)登錄歷史記錄:last

命令:man

  • 功能:man 對(duì)你熟悉或不熟悉的命令提供幫助解釋
  • 格式:man [命令]
# eg:
man ls 
#就可以查看ls相關(guān)的用法

注:按q鍵或者ctrl+c退出,在linux下可以使用ctrl+c終止當(dāng)前程序運(yùn)行。

命令:ls

  • ls 查看目錄或者文件的屬*,列舉出任一目錄下面的文件
eg: ls /usr/man
  • 命令:ls -l 相當(dāng)于ll

命令:cp

  • 功能:用于拷貝文件
    格式: CP [選項(xiàng)] 源文件或目錄 目的文件或目錄
  • 選項(xiàng)說(shuō)明:
  • -b 同名,備分原來(lái)的文件
  • -f 強(qiáng)制覆蓋同名文件
  • -r 按遞歸方式保留原目錄結(jié)構(gòu)復(fù)制文件
#eg:
cp -r /tmp/a /root/a
# 記得有空格
cp filename1 filename2
# 把filename1拷貝成filename2
cp 1.c netseek/2.c 
# 將1.c拷到netseek目錄下命名為2.c

命令:mv

  • 功能:移動(dòng)文件或者文件夾
  • 格式:mv [選項(xiàng)] 源文件或目錄 目標(biāo)文件或目錄
-b :若需覆蓋文件,則覆蓋前先行備份。 
-f :force 強(qiáng)制的意思,如果目標(biāo)文件已經(jīng)存在,不會(huì)詢(xún)問(wèn)而直接覆蓋;
-i :若目標(biāo)文件 (destination) 已經(jīng)存在時(shí),就會(huì)詢(xún)問(wèn)是否覆蓋!
-u :若目標(biāo)文件已經(jīng)存在,且 source 比較新,才會(huì)更新(update)
-t  : --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY,即指定mv的目標(biāo)目錄,該選項(xiàng)適用于移動(dòng)多個(gè)源文件到一個(gè)目錄的情況,此時(shí)目標(biāo)目錄在前,源文件在后。
# eg:
mv -f 1.txt /home/path/

命令:rm

  • 功能: rm 刪除文件和目錄
  • 格式:rm [選項(xiàng)] path to <文件>
-d      --directory    刪除可能仍有數(shù)據(jù)的目錄 (只限超級(jí)用戶(hù))
-f      --force          略過(guò)不存在的文件,不顯示任何信息
-i      --interactive 進(jìn)行任何刪除操作前必須先確認(rèn)
-r/R --recursive    同時(shí)刪除該目錄下的所有目錄層
-v      --verbose     詳細(xì)顯示進(jìn)行的步驟
          --help            顯示此幫助信息并離開(kāi)
         --version      顯示版本信息并離開(kāi)
# eg:
 rm 1.c //將1.c這個(gè)文件刪除
#刪除所有rb語(yǔ)言程序檔;刪除前逐一詢(xún)問(wèn)確認(rèn) :
rm -i *.rb
#將 Finished 子目錄及子目錄中所有檔案刪除 :
rm -r Finished
#將 Finished 子目錄及子目錄中所有檔案刪除,并且不用一一確認(rèn) :
rm -rf Finished

命令:cd

  • 功能:改變當(dāng)前目錄

命令:pwd

  • 功能:查看當(dāng)前所在目錄完整路徑
eg: pwd //查看當(dāng)前所在目錄路徑
cd netseek //進(jìn)入netseek這個(gè)目錄
cd //退出當(dāng)前目錄

命令:cat

  • 功能:將某個(gè)文件的內(nèi)容全部顯示出來(lái)。
  • 格式:cat [filename]
 cat>1.c //就可以把代碼粘帖到1.c文件里。

命令:more

  • 功能:將文件一部分打印出來(lái),知道填滿(mǎn)當(dāng)前屏幕,按j繼續(xù)顯示,q退出

命令:chmod

命令:touch

  • 功能:一般用作新建文件
  • 格式:touch [文件名]
touch test.txt

命令:clear

  • 功能:清空當(dāng)前屏幕

命令:date

  • 功能:顯示系統(tǒng)時(shí)間

命令:su

  • 功能: 在不退出登陸的情況下,切換到另外一個(gè)人的身份,需要輸入身份密碼
  • 格式:su [用戶(hù)名] 其中su - [用戶(hù)名] 是完全切換為用戶(hù)環(huán)境
su root
用法: su -l 用戶(hù)名(如果用戶(hù)名缺省,則切換到root狀態(tài))
eg:su -l netseek (切換到netseek這個(gè)用戶(hù),將提示輸入密碼)

命令:whoami,whereiswhich,id

  • 功能:
    //whoami:確認(rèn)自己身份
    //whereis:查詢(xún)命令所在目錄以及幫助文檔所在目錄
    //which:查詢(xún)?cè)撁钏谀夸?類(lèi)似whereis)
    //id:打印出自己的UID以及GID。(UID:用戶(hù)身份唯一標(biāo)識(shí)。GID:用戶(hù)組身份唯一標(biāo)識(shí)。每一個(gè)用戶(hù)只能有一個(gè)唯一的UID和 GID)
eg: whoami //顯示你自已登陸的用戶(hù)名
whereis bin 顯示bin所在的目錄,將顯示為:/usr/local/bin
which bin

命令:grep,find

  • grep:文本內(nèi)容搜索;find:文件或者目錄名以及權(quán)限屬主等匹配搜索
eg: grep success *    /*查找當(dāng)前目錄下面所有文件里面含有success字符的文件

命令:kill

  • 可以殺死某個(gè)正在進(jìn)行或者已經(jīng)是dest狀態(tài)的進(jìn)程
    eg; ps ax

命令:history

  • 用戶(hù)用過(guò)的命令
    eg: history //可以顯示用戶(hù)過(guò)去使用的命令

命令: !!

  • 執(zhí)行最近一次的命令

命令:mkdir

eg: mkdir netseek //創(chuàng)建netseek這個(gè)目錄

命令:tar

  • 解壓命令
eg: tar -zxvf nmap-3.45.tgz //將這個(gè)解壓到nmap-3.45這個(gè)目錄里

命令:vi 或者 vim

vi filename.txt(文件)
esc :wq --保存退出
esc :q! --不保存退出

命令:df

  • 查看服務(wù)器磁盤(pán)空間使用情況
    df -hl

  • 估算目錄dir已經(jīng)使用的磁盤(pán)空間
    du -sh dir

  • 查看當(dāng)前正在運(yùn)行的程序進(jìn)程
    ps -ef|grep java/weblogic/tomcat(程序名稱(chēng))

  • 查看該進(jìn)程號(hào)所屬目錄
    pwdx 1158(進(jìn)程號(hào))

  • 強(qiáng)制殺死該進(jìn)程
    kill -9 1158(進(jìn)程號(hào))

  • 將文件夾打成壓縮包
    tar -zcvf /root/filename_$(date +%Y-%m-%d).tar.gz /home/weblogic/files

  • 解壓壓縮包到當(dāng)前目錄
    tar -zxvf filename.tar.gz

  • 查看當(dāng)前目錄下的nohup.out動(dòng)態(tài)輸出(如查看weblogic后臺(tái)日志)
    tail -f nohup.out

  • 將系統(tǒng)日期修改為:2011年5月27日(需要用root用戶(hù)修改,其它用戶(hù)默認(rèn)只能查看日期,沒(méi)修改權(quán)限)
    date -s 05/27/2011

  • 將系統(tǒng)時(shí)間修改為:10點(diǎn)24(需要用root用戶(hù)修改,其它用戶(hù)默認(rèn)只能查看日期,沒(méi)修改權(quán)限)
    date -s 10:24:00

  • 將系統(tǒng)時(shí)間修改為:2月5日9點(diǎn)30(年份保持修改前的年份)
    date 02050930

  • 查看系統(tǒng)CPU運(yùn)行情況
    top

  • 查看服務(wù)器內(nèi)存使用情況
    free -g

  • 查看端口占用情況
    netstat -anp

  • 給文件所有(a)用戶(hù)分配所有權(quán)限
    chmod a+x filename(文件或者文件夾)

  • 把home目錄下的weblogic目錄的擁有者改為weblogic用戶(hù)
    chown weblogic /home/weblogic

  • 把home目錄下的weblogic目錄的所屬組改為weblogic組
    chgrp weblogic /home/weblogic

  • 兩個(gè)linux互傳輸文件

scp /root/test/filename.zip[weblogic@221.123.191.158:/home/weblogic/test/](mailto:weblogic@221.123.191.158:/home/weblogic/test/)
  • 重啟服務(wù)器(用root用戶(hù)登錄)
    reboot
  • 檢測(cè)端口是否開(kāi)放(在windows cmd中執(zhí)行)
    telnet 192.168.1.128 1521
  • 添加定時(shí)任務(wù)命令(-l是查看)
    crontab -e
  • 添加定時(shí)任務(wù)(每天晚上11執(zhí)行)
    00 23 * * * /root/backup_nohup.sh
  • pkill:踢出已經(jīng)登錄的用戶(hù)
    • Usage:pkill -kill -t [ttyname]

notes:一般地,先使用“who”查看在線(xiàn)用戶(hù)有哪些,緊接著使用“who am i”確認(rèn)自己的身份,最后使用“pkill”踢出用戶(hù);

關(guān)于日志分析:

dmesg:輸出內(nèi)核環(huán)緩沖區(qū)內(nèi)容;其中的內(nèi)容存放在日志文件“/var/log/dmesg”中;保存了內(nèi)核初始化硬件、模塊的信息;內(nèi)核將各種消息存放在此;

-c:顯示完Ring Buffer中的內(nèi)容后,清空Ring Buffer;
-r:顯示原生的消息,不要去掉日志級(jí)別;
-s:指定Ring Buffer的大小,默認(rèn)值根據(jù)內(nèi)核版本而不同;
-n:指定顯示到Console的日志的級(jí)別,共有8種,在“kernel.h”中做了宏對(duì)應(yīng);
Usage:dmesg [-c] [-r] [-n level] [-s bufsize]
notes:一般地,我們是直接使用“dmesg”命令,不加參數(shù),之后使用“grep”進(jìn)行篩選;常用來(lái)診斷某個(gè)服務(wù)配置錯(cuò)誤,某個(gè)硬件工作不正常等問(wèn)題;當(dāng)然,開(kāi)機(jī)過(guò)程中的信息也在里面包含著;
/var/log/secure:只要牽涉到“需要輸入賬號(hào)口令”的軟件,登錄時(shí)(不管登錄成功與否)的信息都會(huì)記錄在此;包括系統(tǒng)的login、gdm、su、sudo、ssh、telnet等;
/var/log/mesages:幾乎系統(tǒng)發(fā)生的錯(cuò)誤信息(或者是重要的資訊)都會(huì)記錄在此;如果系統(tǒng)發(fā)生莫名其妙的錯(cuò)誤時(shí),這個(gè)文件時(shí)一定要查閱的日志文件之一;

Troubleshooting流程:
根據(jù)經(jīng)驗(yàn)處理:一些常見(jiàn)問(wèn)題的處理,要么在頭腦里知道處理方法;要么有個(gè)印象,去查詢(xún)以往的筆記;
閱讀提示信息:發(fā)現(xiàn)一個(gè)問(wèn)題時(shí),最有效的分析入手點(diǎn)是閱讀屏幕上的提示信息,根據(jù)提示信息分析問(wèn)題產(chǎn)生的可能原因;
查閱日志:當(dāng)屏幕上的信息不夠充足的時(shí)候,可以關(guān)注日志信息,使用“tail”確定出發(fā)生問(wèn)題時(shí)以及之后的日志;日志的格式一般是一條條記錄,里面包含了“發(fā)生時(shí)間、日志級(jí)別、產(chǎn)生程序、簡(jiǎn)要說(shuō)明”,據(jù)此,可以使用grep結(jié)合時(shí)間、產(chǎn)生程序的名字進(jìn)行篩選;
上網(wǎng)搜尋:以日志中的“簡(jiǎn)要說(shuō)明”為關(guān)鍵字進(jìn)行搜索,找到相應(yīng)處理方法后,記錄到筆記中;
尋求身邊的人:網(wǎng)上也找不到時(shí),可以詢(xún)問(wèn)這一方面的專(zhuān)家,并做好記錄;
尋求開(kāi)發(fā)團(tuán)隊(duì):一些時(shí)候,當(dāng)對(duì)系統(tǒng)一點(diǎn)都不熟悉時(shí),產(chǎn)生了問(wèn)題可以直接聯(lián)系開(kāi)發(fā)團(tuán)隊(duì);在郵件中描述清楚“需求,操作過(guò)程,產(chǎn)生的問(wèn)題”;
官方手冊(cè):最權(quán)威的系統(tǒng)說(shuō)明書(shū);對(duì)于一些軟件來(lái)說(shuō),是個(gè)最好的選擇;
README和DOC:安裝前、安裝后都可以查詢(xún)軟件自帶的README和DOC套件;尤其是README中經(jīng)常包含一些URL,可以訪(fǎng)問(wèn)這些URL以獲取更多的信息;

關(guān)于/proc目錄分析:

/proc目錄:內(nèi)核提供的一個(gè)虛擬文件系統(tǒng),位于內(nèi)存中,保存著系統(tǒng)運(yùn)行時(shí)的很多參數(shù);用來(lái)進(jìn)行內(nèi)核(內(nèi)核模塊)和進(jìn)程的溝通;在系統(tǒng)運(yùn)行時(shí),可以通過(guò)這個(gè)接入點(diǎn)向內(nèi)核傳遞參數(shù),改變內(nèi)核的一些設(shè)置,人為干涉內(nèi)核的運(yùn)作;
加載proc文件系統(tǒng):mount -t proc proc /proc;
編輯器處理:雖然是虛擬文件系統(tǒng),但是,可以使用編輯器例如”cat、nl、vi“等對(duì)其中的文件進(jìn)行編輯,進(jìn)行編輯時(shí),這些文件才會(huì)被”憑空“地創(chuàng)建出來(lái);這也是為什么使用”ls -l“看到此目錄下存在許多文件大小為0的文件的原因;
目錄結(jié)構(gòu):包含有文件和目錄

/proc/cpuinfo:包含有CPU的信息
/proc/meminfo:系統(tǒng)運(yùn)行時(shí)內(nèi)存信息
/proc/mounts:顯示已經(jīng)掛載的文件系統(tǒng)的信息
/proc/devices:顯示系統(tǒng)中可以使用的設(shè)備
/proc/filesystems:顯示系統(tǒng)所支持的文件系統(tǒng)類(lèi)型
/proc/diskstats:系統(tǒng)磁盤(pán)的相關(guān)信息
/proc/modules:顯示出系統(tǒng)已經(jīng)加載的內(nèi)核模塊
/proc/version:顯示系統(tǒng)版本信息
/proc/cmdline:顯示系統(tǒng)啟動(dòng)時(shí)追加給系統(tǒng)的命令行參數(shù)
/proc/sys/:與內(nèi)核交流的接入點(diǎn)
/proc/net/:網(wǎng)卡設(shè)備信息
/proc/fs/:文件系統(tǒng)信息
/proc/driver/:設(shè)備驅(qū)動(dòng)信息
/proc/bus/:系統(tǒng)總線(xiàn)信息
/proc/irq/:系統(tǒng)中斷資源信息
/proc/ipmi/:ipmi設(shè)備信息
/proc/scsi/:SCSI設(shè)備信息

數(shù)字目錄:系統(tǒng)運(yùn)行中的每一個(gè)進(jìn)程的pid編號(hào),目錄內(nèi)包含了關(guān)于對(duì)應(yīng)進(jìn)程的一些非常有用的信息,如進(jìn)程使用的工作目錄等;

查看系統(tǒng)資源占用:

lsof:列出系統(tǒng)當(dāng)前打開(kāi)的資源;Linux系統(tǒng)中一切均為文件,故而全是文件之間的交互,使用lsof可以觀察某個(gè)進(jìn)程使用的文件有哪些;

-c:列出具有指定名稱(chēng)的進(jìn)程所打開(kāi)的系統(tǒng)資源,如,“-c init”;
-p:列出具有指定進(jìn)程號(hào)的進(jìn)程鎖打開(kāi)的系統(tǒng)資源,如,“-p 1”;
+d:顯示某個(gè)目錄下被進(jìn)程打開(kāi)的文件,如,“+d /usr/bin/”;
+D:級(jí)聯(lián)顯示某個(gè)目錄下被進(jìn)程打開(kāi)的文件,如,“+D /usr/bin/”;
-d:顯示使用著指定fd的進(jìn)程,如,“-d 4”;
-i:用以顯示符合條件的的進(jìn)程的情況,如,“-i  :80”;

notes:一般地,當(dāng)我們?cè)谑褂谩皍mount”卸載文件系統(tǒng)時(shí),系統(tǒng)提示busy,那么,極有可能是文件系統(tǒng)被某些進(jìn)程在使用著,這時(shí),可以使用“l(fā)sof +D /media/”等命令查看占用進(jìn)程,待關(guān)閉那些進(jìn)程后,然后繼續(xù)卸載工作;另外,對(duì)于一些日志文件,一不小心刪除了的話(huà),可以及時(shí)通過(guò)lsof查閱后進(jìn)行恢復(fù),這個(gè)原理是利用內(nèi)存中的fd信息進(jìn)行重定向;
COMMAND:表示進(jìn)程的名字;
PID:對(duì)應(yīng)進(jìn)程的進(jìn)程號(hào);
USER:進(jìn)程的所有者;
FD:文件描述符,APP通過(guò)FD來(lái)識(shí)別文件,和文件打交道;cwdAPP啟動(dòng)的目錄,當(dāng)前工作的目錄,除非APP對(duì)其進(jìn)行更改,txt程序代碼,數(shù)值后的W~寫(xiě)鎖;
TYPE:REG文件,DIR目錄;CHR字符設(shè)備,BLK塊設(shè)備;UNIX套接字,F(xiàn)IFO先進(jìn)先出隊(duì)列,IPv4~網(wǎng)際協(xié)議;
DEVICE:指定磁盤(pán)的名稱(chēng);
SIZE:文件大??;
NODE:索引節(jié)點(diǎn),也就是文件在磁盤(pán)上的標(biāo)識(shí);
NAME:文件的具體名稱(chēng);
strace:用戶(hù)態(tài)的進(jìn)程不能直接訪(fǎng)問(wèn)系統(tǒng)硬件,必須先由用戶(hù)態(tài)轉(zhuǎn)為內(nèi)核態(tài),然后進(jìn)行系統(tǒng)調(diào)用,最后才能訪(fǎng)問(wèn)系統(tǒng)硬件資源;而這個(gè)strace則可以追蹤這種來(lái)自于用戶(hù)態(tài)進(jìn)程在使用系統(tǒng)硬件時(shí)的系統(tǒng)調(diào)用,并且包含有參數(shù),返回值,執(zhí)行消耗的時(shí)間等;
Usage:strace [-dDffhiqrtttTvVxx] [-a column] [-e expr] ... [-o file] [-p pid] ... [-s strsize] [-u username] [-E var=val] [command [arg ...]]-
notes:一般地,可以使用它來(lái)觀察程序工作時(shí)都處理了哪些文件,這個(gè)功能最為常用;
p:后接進(jìn)程號(hào),跟蹤具有指定進(jìn)程號(hào)的進(jìn)程的系統(tǒng)調(diào)用;
-c:統(tǒng)計(jì)出每一系統(tǒng)調(diào)用的執(zhí)行時(shí)間、次數(shù)、出錯(cuò)的次數(shù)等;
-d:輸出strace關(guān)于標(biāo)準(zhǔn)錯(cuò)誤的調(diào)試信息;
-f:跟蹤由fork調(diào)用所產(chǎn)生的子進(jìn)程;
-ff:如果提供”-o filename“,則所有進(jìn)程的跟蹤結(jié)果輸出到相應(yīng)的filename.pid中,pid是各進(jìn)程的進(jìn)程號(hào);
-F:嘗試跟蹤vfork調(diào)用,在-f時(shí),vfork調(diào)用不被跟蹤;
-i:輸出系統(tǒng)調(diào)用的入口指針;
-q:禁止輸出關(guān)于脫離的消息;
-r:打印出關(guān)于每一個(gè)系統(tǒng)調(diào)用的相對(duì)時(shí)間;
-t:在輸出中的每一行前加上時(shí)間信息;
-tt:同上,只不過(guò)是微秒級(jí)時(shí)間;
-T:顯示每一調(diào)用所耗的時(shí)間;
-v:輸出所有的系統(tǒng)調(diào)用,像一些關(guān)于環(huán)境變量、狀態(tài)等調(diào)用由于使用頻繁,默認(rèn)不輸出;
-X:以十六進(jìn)制形式輸出非標(biāo)準(zhǔn)字符串;
-XX:所有字符串以十六進(jìn)制形式輸出;
-a:設(shè)置返回值的輸出位置,默認(rèn)為40,如,”-a 50“;
-e:指定一個(gè)表達(dá)式,用來(lái)控制如何跟蹤,如,”-e trace=open,close“;
-e trace=$set,只跟蹤指定的系統(tǒng)調(diào)用,默認(rèn)為all;
-e trace=file,只跟蹤有關(guān)文件操作的系統(tǒng)調(diào)用;
-e trace=process,只跟蹤有關(guān)進(jìn)程控制的系統(tǒng)調(diào)用;
-e trace=network,只跟蹤與網(wǎng)絡(luò)有關(guān)的所有系統(tǒng)調(diào)用;
-e trace=signal,只跟蹤所有與系統(tǒng)信號(hào)有關(guān)的系統(tǒng)調(diào)用;
-e trace=ipc,只跟蹤所有與進(jìn)程通訊有關(guān)的系統(tǒng)調(diào)用;
-e raw=set,將指定的系統(tǒng)調(diào)用參數(shù)以十六進(jìn)制顯示;

關(guān)于內(nèi)核:

內(nèi)核模塊:Linux系統(tǒng)的內(nèi)核鏡像是盡可能小的,但是為了擴(kuò)展功能,內(nèi)核允許在運(yùn)行時(shí)直接向內(nèi)核地址空間內(nèi)插入代碼運(yùn)行,這些代碼(數(shù)據(jù)、函數(shù)入口、函數(shù)出口等)被組合成一個(gè)二進(jìn)制的鏡像,即所謂的的Linux系統(tǒng)模塊;這些模塊一般被插入,是會(huì)實(shí)時(shí)生效的;內(nèi)核模塊的位置一般均位于”/lib/modules/uname -r/kernel“目錄下,且以*.ko的方式存在;
modinfo:顯示指定模塊的具體信息

-a:顯示模塊的開(kāi)發(fā)作者;
-d:顯示模塊的描述信息;
-l:顯示模塊的傳播授權(quán)信息;
-p:顯示模塊所支持的所有的類(lèi)型的參數(shù);
-f:后接一個(gè)用戶(hù)自己定義的字符串,可以通過(guò)此字符串獲取內(nèi)核中指定模塊ELF段中的值,其中,包含模塊的信息;
Usage:modinfo [-0][-F field][-k kernelversion][-b basedir]  module...

notes:一般地,我們直接使用”modinfo module_name“的格式,并且不加任何關(guān)于modinfo的參數(shù),以獲取關(guān)于模塊的所有信息;
lsmod:友好化地顯示內(nèi)核中已經(jīng)加載的內(nèi)核模塊,讀取了”/proc/modules“文件中的信息;
Usage:lsmod
notes:一般地,內(nèi)核中加載的模塊并不是很多, 所以我們直接使用”lsmod“列出所有在內(nèi)核中已經(jīng)加載的模塊;當(dāng)然,在寫(xiě)腳本時(shí),一般地,我們是結(jié)合grep進(jìn)行篩選的;
insmod:最簡(jiǎn)單的一個(gè)裝載內(nèi)核模塊的工具;
-f:不檢查目前kernel版本與編譯模塊時(shí)的kernel版本是否一致,進(jìn)行強(qiáng)制插入;
-k:將模塊設(shè)置為自動(dòng)卸載;
-m:輸出模塊的裝載信息;
-o:指定模塊的名稱(chēng),也可以使用模塊文件的文件名,如,”insmod -o ext4.ko“;
-p:測(cè)試模塊是否能夠正確地載入到kernel中;
-s:將所有信息記錄在系統(tǒng)記錄文件中;
-v:執(zhí)行時(shí)顯示詳細(xì)的信息;
-x:不要匯出模塊的外部符號(hào);
-X:匯出模塊的所有外部符號(hào),此為預(yù)設(shè)值;
Usage:insmod [ options ] [ filename ] [ module options... ]
notes:一般地,我們直接使用”insmod ext4.ko“的形式裝載模塊;但是,insmod不能解決依賴(lài)性問(wèn)題;
rmmod:移除內(nèi)核中的指定模塊;
-f:強(qiáng)制卸載內(nèi)核模塊,這樣做可能引起系統(tǒng)崩潰,一般地,不建議使用這個(gè)選項(xiàng);另外,這個(gè)選項(xiàng)的支持需要在編譯內(nèi)核時(shí)開(kāi)啟”Forced Module Removal“選項(xiàng);
-v:卸載內(nèi)核模塊時(shí)打印出詳細(xì)信息;
-s:將錯(cuò)誤信息輸入到syslog服務(wù),而非打印到stderr;
-w:通常,系統(tǒng)不允許移除正在使用的模塊,使用參數(shù)將會(huì)將該模塊迅速孤立起來(lái),直到其不再被訪(fǎng)問(wèn)和使用;
Usage: rmmod [-fhswvV] modulename ...
notes:一般地,我們先使用lsmod和grep檢索出待卸載的模塊,然后直接使用”rmmod modulename“移除模塊即可,如果提示正在被使用,則加上f參數(shù) 處理即可;
depmod:分析可加載模塊的依賴(lài)性,生成依賴(lài)關(guān)系文件”modules.dep“和映射文件;此命令會(huì)讀取”/lib/modules/”version“/“目錄下的所有模塊信息,并檢查每個(gè)模塊導(dǎo)出的symbol和需要的symbol,然后據(jù)此生成一個(gè)依賴(lài)關(guān)系列表,默認(rèn)地,該列表寫(xiě)入到”/lib/modules/”version“/modules.dep“中;如果,命令中的filename有指定的話(huà),則會(huì)僅檢查這些指定的模塊(并不常用);如果命令中提供了version參數(shù),則會(huì)使用version所指定的目錄生成依賴(lài),而不是當(dāng)前內(nèi)核的版本(uname -r);
-b:如果你的模塊不在”/lib/modules/version“目錄下,可以指定目錄,然后生成依賴(lài);
-e:和-F選項(xiàng)一起使用,當(dāng)一個(gè)模塊需要的symbol在其他模塊里面沒(méi)有提供時(shí),做出報(bào)告,正常情況下,模塊沒(méi)有提供的symbol都在內(nèi)核中有提供;
-F:提供一個(gè)System.map文件(在編譯內(nèi)核時(shí)生成),允許-e選項(xiàng)報(bào)告出”unresolved symbol“;
-n:將結(jié)果”modules.dep“和各種映射文件輸出到stdout,而不是寫(xiě)到模塊目錄下;
-a:探測(cè)所有模塊,這個(gè)選項(xiàng)是默認(rèn)的,如果直接使用”depmod“這種形式;
-A:檢查是否有模塊比modules.dep中的模塊新,若沒(méi)有,則退出不重新生成文件;
Usage:depmod [-n -e -v -q -r -u -w] [-F kernelsyms] module1.ko module2.ko ...
notes:一般地,我們直接使用”depmod“這種形式即可,先進(jìn)行依賴(lài)關(guān)系的處理,然后使用”modprobe“進(jìn)行加載;
modprobe:加載或者移除內(nèi)核模塊;可以智能地處理依賴(lài)性問(wèn)題;使用”modprobe“時(shí),需要一個(gè)最新的”modules.dep“文件,可以用”depmod“生成;模塊自動(dòng)加載啊打發(fā)愛(ài)的色放啊
-v:輸出詳細(xì)信息;
-C:重載默認(rèn)配置文件(/etc/modprobe.conf~RHEL6.x之前,或者/etc/modprobe.d/*);
-c:輸出配置文件并退出;
-n:可以和-v一起使用,調(diào)試時(shí)非常有用;
-q:靜默模式,一般modprobe裝載或者移除一個(gè)模塊時(shí),若沒(méi)有找到則會(huì)提示錯(cuò)誤,使用了該選項(xiàng)后,會(huì)忽略指定的模塊,并不提示任何錯(cuò)誤信息;
-f:強(qiáng)制操作,常和”--force-vermagic、--force-modversion“一起使用;
-l:列出所有模塊;
-a:插入命令行中的所有模塊;
-r:移除模塊;有時(shí)需要強(qiáng)制性操作,這時(shí),多加上”--force“參數(shù);
-s:將錯(cuò)誤信息寫(xiě)入syslog中;
Usage:modprobe [ -v ] [ -V ] [ -C config-file ] [ -n ] [ -i ] [ -q ] [ -b ] [ -o modulename ] [ modulename ] [ module parameters... ]
notes:一般地,我們先使用”depmod“生成最新的依賴(lài)關(guān)系,然后使用”modprobe ext4(.ko)“的形式插入模塊,有時(shí)由于版本問(wèn)題,還會(huì)使用”--force-modversion“參數(shù);

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • linux資料總章2.1 1.0寫(xiě)的不好抱歉 但是2.0已經(jīng)改了很多 但是錯(cuò)誤還是無(wú)法避免 以后資料會(huì)慢慢更新 大...
    數(shù)據(jù)革命閱讀 13,242評(píng)論 2 33
  • 查詢(xún)命令 find * find [指定查找目錄](méi) [查找規(guī)則] [查找完后執(zhí)行的action]* find ~/...
    chapa閱讀 796評(píng)論 0 5
  • Ubuntu的發(fā)音 Ubuntu,源于非洲祖魯人和科薩人的語(yǔ)言,發(fā)作 oo-boon-too 的音。了解發(fā)音是有意...
    螢火蟲(chóng)de夢(mèng)閱讀 100,675評(píng)論 9 468
  • 最近在學(xué)習(xí)linux,寫(xiě)個(gè)文章記錄和鞏固一下學(xué)習(xí)歷程吧 Linux里命令很多,現(xiàn)在只總結(jié)一些常用的。 文件目錄類(lèi) ...
    l友人B閱讀 1,077評(píng)論 0 1
  • 1. 常用命令 ls-l 列出文件的詳細(xì)信息。-a 列出當(dāng)前目錄下所有文件以及目錄,包括隱藏的文件。 fi...
    zhangxu0636閱讀 243評(píng)論 0 0

友情鏈接更多精彩內(nèi)容