fuser命令小結,fuser小結

來源:互聯網
上載者:User

fuser命令小結,fuser小結
前提

linux環境下,當使用umount命令卸載掛載點時,會遇到“device is busy”提示,這時fuser就能查出誰在使用這個資源;當然umount –lf  [掛載點] 也可以強制卸載

功能

fuser 可以顯示出當前哪個程式在使用磁碟上的某個檔案、掛載點、甚至網路連接埠,並給出程式進程的詳細資料.

fuser只把PID輸出到標準輸出,其他的都輸出到標準錯誤輸出。

常用選項

-a 顯示所有命令列中指定的檔案,預設情況下被訪問的檔案才會被顯示。
-c 和-m一樣,用於POSIX相容。
-k 殺掉訪問檔案的進程。如果沒有指定-signal就會發送SIGKILL訊號。結合 –signal

-signal 使用指定的訊號,而不是用SIGKILL來殺掉進程。可以通過名稱或者號碼來表示訊號(例如-HUP,-1),這個選項要和-k一起使用,否則會被忽略。

-l 列出所有已知的訊號名稱。
-i 殺掉進程之前詢問使用者,如果沒有-k這個選項會被忽略。
-m name 指定一個掛載檔案系統上的檔案或者被掛載的塊裝置(名稱name)。這樣所有訪問這個檔案或者檔案系統的進程都會被列出來。如果指定的是一個目錄會自動轉換成"name/",並使用所有掛載在那個目錄下面的檔案系統。
-n space 指定一個不同的命名空間(space).這裡支援不同的空間檔案(檔案名稱,此處預設)、tcp(本地tcp連接埠)、udp(本地udp連接埠)。對於連接埠,可以指定連接埠號碼或者名稱,如果不會引起歧義那麼可以使用簡單表示的形式,例如:name/space (即形如:80/tcp之類的表示)。
-s 靜默模式,這時候-u,-v會被忽略。-a不能和-s一起使用。 
-u 在每個PID後面添加進程擁有者的使用者名稱稱。
-v 詳細模式。輸出似ps命令的輸出,包含PID,USER,COMMAND等許多域,如果是核心訪問的那麼PID為kernel.

 

案例

假設無法卸載的裝置為/dev/sdb1
1)運行下面命令看一下哪個使用者哪個進程佔用著此裝置
fuser -m -v /dev/sdb1

2)運行下面命令殺掉佔用此裝置的進程
fuser -m -v -k /dev/sdb1
或者fuser -m -v -k -i  /dev/sdb1(每殺掉一下進程會讓你確認)
3)再umount

 

查看那些程式使用tcp的80連接埠:
$fuser -n tcp 80
或$fuser -v -n tcp 80
或$fuser -v 80/tcp
這裡,後兩種方式顯示的資訊比較全,因為有了-v選項

# fuser -v 111/udp 111/tcp                      使用者     進程號 許可權   命令111/udp:             rpc         968 F.... rpcbind111/tcp:             rpc         968 F.... rpcbind

如上例子中第4列的許可權也成訪問類型,如下:

c 代表目前的目錄                              F 開啟的檔案,用於寫操作。預設不顯示。

e 可執行檔被運行                          m 對應檔或者共用庫。

f 開啟的檔案。預設不顯示。         r 根目錄。    

其它相同命令:

# netstat -lntup|grep 111tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      968/rpcbind         tcp        0      0 :::111                      :::*                        LISTEN      968/rpcbind         udp        0      0 0.0.0.0:111                 0.0.0.0:*                               968/rpcbind         udp        0      0 :::111                      :::*                                    968/rpcbind
# ss  -lntup|grep 111       udp    UNCONN     0      0                      *:111                   *:*      users:(("rpcbind",968,6))udp    UNCONN     0      0                     :::111                  :::*      users:(("rpcbind",968,9))tcp    LISTEN     0      128                   :::111                  :::*      users:(("rpcbind",968,11))tcp    LISTEN     0      128                    *:111                   *:*      users:(("rpcbind",968,8))
# lsof -i :111COMMAND PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAMErpcbind 968  rpc    6u  IPv4  11275      0t0  UDP *:sunrpc rpcbind 968  rpc    8u  IPv4  11278      0t0  TCP *:sunrpc (LISTEN)rpcbind 968  rpc    9u  IPv6  11280      0t0  UDP *:sunrpc rpcbind 968  rpc   11u  IPv6  11283      0t0  TCP *:sunrpc (LISTEN)

 

signal列表
# fuser -lHUP INT QUIT ILL TRAP ABRT IOT BUS FPE KILL USR1 SEGV USR2 PIPE ALRM TERMSTKFLT CHLD CONT STOP TSTP TTIN TTOU URG XCPU XFSZ VTALRM PROF WINCH IO PWR SYSUNUSED# kill -l 1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL       5) SIGTRAP 6) SIGABRT      7) SIGBUS       8) SIGFPE       9) SIGKILL     10) SIGUSR111) SIGSEGV     12) SIGUSR2     13) SIGPIPE     14) SIGALRM     15) SIGTERM16) SIGSTKFLT   17) SIGCHLD     18) SIGCONT     19) SIGSTOP     20) SIGTSTP21) SIGTTIN     22) SIGTTOU     23) SIGURG      24) SIGXCPU     25) SIGXFSZ26) SIGVTALRM   27) SIGPROF     28) SIGWINCH    29) SIGIO       30) SIGPWR31) SIGSYS      34) SIGRTMIN    35) SIGRTMIN+1  36) SIGRTMIN+2  37) SIGRTMIN+338) SIGRTMIN+4  39) SIGRTMIN+5  40) SIGRTMIN+6  41) SIGRTMIN+7  42) SIGRTMIN+843) SIGRTMIN+9  44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+1348) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-1253) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9  56) SIGRTMAX-8  57) SIGRTMAX-758) SIGRTMAX-6  59) SIGRTMAX-5  60) SIGRTMAX-4  61) SIGRTMAX-3  62) SIGRTMAX-263) SIGRTMAX-1  64) SIGRTMAX
詳細使用命令 man 7signal

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.