日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

fuser 用法简析

發(fā)布時(shí)間:2024/8/26 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 fuser 用法简析 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

fuser 用法簡(jiǎn)析

fuser?

[功能]?

fuser 可以顯示出當(dāng)前哪個(gè)程序在使用磁盤上的某個(gè)文件、掛載點(diǎn)、甚至網(wǎng)絡(luò)端口,并給出程序進(jìn)程的詳細(xì)信息.?


[描述]?

fuser顯示使用指定文件或者文件系統(tǒng)的進(jìn)程ID.默認(rèn)情況下每個(gè)文件名后面跟一個(gè)字母表示訪問(wèn)類型。?

訪問(wèn)類型如下:?

c 代表當(dāng)前目錄?

e 可執(zhí)行的被運(yùn)行?

f 打開(kāi)的文件。默認(rèn)不顯示。?

F 打開(kāi)的文件,用于寫操作。默認(rèn)不顯示。?

r 根目錄。?

m 映射文件或者共享庫(kù)。?

當(dāng)指定的文件沒(méi)有被訪問(wèn),或者出現(xiàn)錯(cuò)誤的時(shí)候,fuser會(huì)返回非零。?

為了查看使用tcp和udp套接字的進(jìn)程,需要-n選項(xiàng)并指定名稱空間。默認(rèn)IpV4和IpV6都會(huì)顯示。套接字可以是本地的或者是遠(yuǎn)程的端口,和遠(yuǎn)程的地址。所有的域是可選的,但是其前面的','必須存在。如下:?

[lcl_port][,[rmt_host][,[rmt_port]]]?

對(duì)于ip地址和port,名稱和數(shù)字表示都可以使用。?

fuser只把PID輸出到標(biāo)準(zhǔn)輸出,其他的都輸出到標(biāo)準(zhǔn)錯(cuò)誤輸出。?


一些常用選項(xiàng):?

-a 顯示所有命令行中指定的文件,默認(rèn)情況下被訪問(wèn)的文件才會(huì)被顯示。?

-c 和-m一樣,用于POSIX兼容。?

-k 殺掉訪問(wèn)文件的進(jìn)程。如果沒(méi)有指定-signal就會(huì)發(fā)送SIGKILL信號(hào)。?

-i 殺掉進(jìn)程之前詢問(wèn)用戶,如果沒(méi)有-k這個(gè)選項(xiàng)會(huì)被忽略。?

-l 列出所有已知的信號(hào)名稱。?

-m name 指定一個(gè)掛載文件系統(tǒng)上的文件或者被掛載的塊設(shè)備(名稱name)。這樣所有訪問(wèn)這個(gè)文件或者文件系統(tǒng)的進(jìn)程都會(huì)被列出來(lái)。如果指定的是一個(gè)目錄會(huì)自動(dòng)轉(zhuǎn)換成"name/",并使用所有掛載在那個(gè)目錄下面的文件系統(tǒng)。?

-n space 指定一個(gè)不同的命名空間(space).這里支持不同的空間文件(文件名,此處默認(rèn))、tcp(本地tcp端口)、udp(本地udp端口)。對(duì)于端口, 可以指定端口號(hào)或者名稱,如果不會(huì)引起歧義那么可以使用簡(jiǎn)單表示的形式,例如:name/space (即形如:80/tcp之類的表示)。?

-s 靜默模式,這時(shí)候-u,-v會(huì)被忽略。-a不能和-s一起使用。?

-signal 使用指定的信號(hào),而不是用SIGKILL來(lái)殺掉進(jìn)程。可以通過(guò)名稱或者號(hào)碼來(lái)表示信號(hào)(例如-HUP,-1),這個(gè)選項(xiàng)要和-k一起使用,否則會(huì)被忽略。?

-u 在每個(gè)PID后面添加進(jìn)程擁有者的用戶名稱。?

-v 詳細(xì)模式。輸出似ps命令的輸出,包含PID,USER,COMMAND等許多域,如果是內(nèi)核訪問(wèn)的那么PID為kernel.?

-V 輸出版本號(hào)。?

-4 使用IPV4套接字,不能和-6一起應(yīng)用,只在-n的tcp和udp的命名存在時(shí)不被忽略。?

-6 使用IPV6套接字,不能和-4一起應(yīng)用,只在-n的tcp和udp的命名存在時(shí)不被忽略。?

- 重置所有的選項(xiàng),把信號(hào)設(shè)置為SIGKILL.?

?

更多參見(jiàn)fuser的man手冊(cè).


[舉例]?

*顯示使用某個(gè)文件的進(jìn)程信息:?

$ fuser -um /dev/sda2?

輸入之后,輸出如下:?

/dev/sda2: ? ? ? ? ? ?6378c(quietheart) ?6534c(quietheart) ?6628(quietheart) ?6653c(quietheart) ?7429c(quietheart) ?7549c(quietheart) ?7608c(quietheart)?

這個(gè)命令在umount的時(shí)候很有用,可以找到還有哪些用到這個(gè)設(shè)備了。?


*殺掉打開(kāi)readme文件的程序,在確定之前有提示:?

$fuser -m -k -i readme?

或$fuser -kmi readme?

這里,會(huì)在kill之前詢問(wèn)是否確定。最好加上-v以便知道將要?dú)⒛莻€(gè)進(jìn)程。?


*查看那些程序使用tcp的80端口:?

$fuser -n tcp 80?

或$fuser -v -n tcp 80?

或$fuser -v 80/tcp?

這里,后兩種方式顯示的信息比較全,因?yàn)橛辛?v選項(xiàng)。?


[其他]?

*假設(shè)無(wú)法卸載的設(shè)備為/dev/sdb1?

1)運(yùn)行下面命令看一下哪個(gè)用戶哪個(gè)進(jìn)程占用著此設(shè)備?

fuser -m -v /dev/sdb1?


2)運(yùn)行下面命令殺掉占用此設(shè)備的進(jìn)程?

fuser -m -v -k /dev/sdb1?

或者fuser -m -v -k -i ?/dev/sdb1(每殺掉一下進(jìn)程會(huì)讓你確認(rèn))?

3)再umount?

4)掃描/dev/sdb1分區(qū)

[/sbin/]fsck [-ay]??/dev/sdb1


*殺掉所有以任何形式訪問(wèn)文件系統(tǒng) /home的進(jìn)程:?

$fuser -km /home

與50位技術(shù)專家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的fuser 用法简析的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。