天天看點

Linux下檢視端口被哪個程式占用

Linux如何檢視端口被哪個程序占用的方法,使用工具lsof,netstat:

1.lsof -i: 端口号

lsof指令用于檢視你程序開打的檔案,打開檔案的程序,程序打開的端口(TCP、UDP)。找回/恢複删除的檔案。是十分友善的系統監視工具,因為lsof指令需要通路核心記憶體和各種檔案,是以需要root使用者執行。

如果系統沒有lsof工具,可以通過yum安裝之。

<code>yum </code><code>install</code> <code>lsof</code>

選項:

<code>-a:列出打開檔案存在的程序; </code>

<code>-c&lt;程序名&gt;:列出指定程序所打開的檔案; </code>

<code>-g:列出GID号程序詳情; </code>

<code>-d&lt;檔案号&gt;:列出占用該檔案号的程序; </code>

<code>+d&lt;目錄&gt;:列出目錄下被打開的檔案; </code>

<code>+D&lt;目錄&gt;:遞歸列出目錄下被打開的檔案; </code>

<code>-n&lt;目錄&gt;:列出使用NFS的檔案; </code>

<code>-i&lt;條件&gt;:列出符合條件的程序。(4、6、協定、:端口、 @ip ) </code>

<code>-p&lt;程序号&gt;:列出指定程序号所打開的檔案; </code>

<code>-u:列出UID号程序詳情; </code>

<code>-h:顯示幫助資訊; </code>

<code>-</code><code>v</code><code>:顯示版本資訊。</code>

<code>例:</code>

<code>VM_170_176_sles10_64:~ </code><code># lsof -i:3306 </code>

<code>COMMAND  PID USER   FD   TYPE   DEVICE SIZE NODE NAME</code>

<code>mysqld  5103 root   13u  IPv4 28776382       TCP *:mysql (LISTEN)</code>

 2. netstat -tunlp | grep 端口号

netstat指令用來列印Linux中網絡系統的狀态資訊,可讓你得知整個Linux系統的網絡情況。

<code>-a或--all:顯示所有連線中的Socket; </code>

<code>-A&lt;網絡類型&gt;或--&lt;網絡類型&gt;:列出該網絡類型連線中的相關位址; </code>

<code>-c或--continuous:持續列出網絡狀态; </code>

<code>-C或--cache:顯示路由器配置的快取資訊; </code>

<code>-e或--extend:顯示網絡其他相關資訊; </code>

<code>-F或--fib:顯示FIB; </code>

<code>-g或--</code><code>groups</code><code>:顯示多重廣播功能群組組員名單; </code>

<code>-h或--help:線上幫助; </code>

<code>-i或--interfaces:顯示網絡界面資訊表單; </code>

<code>-l或--listening:顯示監控中的伺服器的Socket; </code>

<code>-M或--masquerade:顯示僞裝的網絡連線; </code>

<code>-n或--numeric:直接使用ip位址,而不通過域名伺服器; </code>

<code>-N或--netlink或--symbolic:顯示網絡硬體外圍裝置的符号連接配接名稱; </code>

<code>-o或--timers:顯示計時器; </code>

<code>-p或--programs:顯示正在使用Socket的程式識别碼和程式名稱; </code>

<code>-r或--route:顯示Routing Table; </code>

<code>-s或--statistice:顯示網絡工作資訊統計表; </code>

<code>-t或--tcp:顯示TCP傳輸協定的連線狀況; </code>

<code>-u或--udp:顯示UDP傳輸協定的連線狀況; </code>

<code>-</code><code>v</code><code>或--verbose:顯示指令執行過程; </code>

<code>-V或--version:顯示版本資訊; </code>

<code>-w或--raw:顯示RAW傳輸協定的連線狀況; </code>

<code>-x或--unix:此參數的效果和指定</code><code>"-A unix"</code><code>參數相同; </code>

<code>--ip或--inet:此參數的效果和指定</code><code>"-A inet"</code><code>參數相同。</code>

<code>VM_170_176_sles10_64:~ </code><code># netstat -tunlp | grep 3306</code>

<code>tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      5103</code><code>/mysqld</code>

本文轉自 SoulMio 51CTO部落格,原文連結:http://blog.51cto.com/bovin/1896609,如需轉載請自行聯系原作者

繼續閱讀