當前位置:首頁 » 手機資訊 » 怎樣查看linux系統埠

怎樣查看linux系統埠

發布時間: 2022-08-19 16:42:41

1. linux如何查看埠

x使用過程中,需要了解當前系統開放了哪些埠,並且要查看開放這些埠的具體進程和用戶,可以通過netstat命令進行簡單查詢
netstat命令各個參數說明如下:
-t : 指明顯示TCP埠
-u : 指明顯示UDP埠
-l : 僅顯示監聽套接字(所謂套接字就是使應用程序能夠讀寫與收發通訊協議(protocol)與資料的程序)
-p : 顯示進程標識符和程序名稱,每一個套接字/埠都屬於一個程序。
-n : 不進行DNS輪詢,顯示IP(可以加速操作)
即可顯示當前伺服器上所有埠及進程服務,於grep結合可查看某個具體埠及服務情況··
netstat -ntlp //查看當前所有tcp埠·
netstat -ntulp |grep 80 //查看所有80埠使用情況·
netstat -ntulp | grep 3306 //查看所有3306埠使用情況·

Linux查看程序埠佔用情況
使用命令:
ps -aux | grep tomcat
發現並沒有8080埠的Tomcat進程。
使用命令:netstat –apn
查看所有的進程和埠使用情況。發現下面的進程列表,其中最後一欄是PID/Program name
發現8080埠被PID為9658的Java進程佔用。
進一步使用命令:ps -aux | grep java,或者直接:ps -aux | grep pid 查看
就可以明確知道8080埠是被哪個程序佔用了!然後判斷是否使用KILL命令幹掉!
方法二:直接使用 netstat -anp | grep portno
即:netstat -anp|grep 8080

netstat -anp|grep 8080 --> tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 28500/java
ps -aux | grep 28500 --> r/local/tomcat9-jforum/tomcat

安裝lsof list open files//---也可以 netstat -tunlp|grep 埠號 netstat -anp|grep 埠號
yum install lsof
lsof -i:8080 查看8080埠佔用
lsof abc.txt 顯示開啟文件abc.txt的進程
lsof -c abc 顯示abc進程現在打開的文件
lsof -c -p 1234 列出進程號為1234的進程所打開的文件
lsof -g gid 顯示歸屬gid的進程情況
lsof +d /usr/local/ 顯示目錄下被進程開啟的文件
lsof +D /usr/local/ 同上,但是會搜索目錄下的目錄,時間較長
lsof -d 4 顯示使用fd為4的進程
lsof -i 用以顯示符合條件的進程情況
lsof -i[46] [protocol][@hostname|hostaddr][:service|port]
46 --> IPv4 or IPv6
protocol --> TCP or UDP
hostname --> Internet host name
hostaddr --> IPv4地址
service --> /etc/service中的 service name (可以不止一個)
port --> 埠號 (可以不止一個)
lsof -i //顯示所有打開的埠
lsof -i:80 //顯示所有打開80埠的進程
lsof -i -U //顯示所有打開的埠和UNIX domain文件

其實我一般這樣用:

[root@VM_39_230_centos bin]# lsof -i:3306
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 16422 mysql 19u IPv6 148794 0t0 TCP *:mysql (LISTEN)
mysqld 16422 mysql 39u IPv6 643698 0t0 TCP localhost:mysql->localhost:36582 (ESTABLISHED)
mysqld 16422 mysql 45u IPv6 643699 0t0 TCP localhost:mysql->localhost:36584 (ESTABLISHED)
mysql

2. linux如何查看埠號

1、列出所有埠 #netstat -a
2、列出所有 tcp 埠 #netstat -at
3、列出所有 udp 埠 #netstat -au
4、只顯示監聽埠 #netstat -l
5、只列出所有監聽 tcp 埠 #netstat -lt
6、只列出所有監聽 udp 埠 #netstat -lu
7、列出所有監聽 UNIX 埠 #netstat -lx
8、顯示所有埠的統計信息 #netstat -s
9、顯示 TCP 或 UDP 埠的統計信息 #netstat -st 或 -su
10、 輸出中顯示 PID 和進程名稱 #netstat -p
11、netstat 輸出中不顯示主機,埠和用戶名 (host, port or user)

3. 如何用linux查看伺服器器的埠

在Linux中查找服務的埠

方法1:使用grep命令

要使用grep命令在Linux中查找指定服務的默認埠號,只需運行:

$grep<port>/etc/services

例如,要查找SSH服務的默認埠,只需運行:

$grep ssh/etc/services

就這么簡單。此命令應該適用於大多數Linux發行版。以下是我的Arch Linux測試機中的示例輸出:

ssh 22/tcp

ssh 22/udp

ssh 22/sctp

sshell 614/tcp

sshell 614/udp

netconf-ssh 830/tcp

netconf-ssh 830/udp

sdo-ssh 3897/tcp

sdo-ssh 3897/udp

netconf-ch-ssh 4334/tcp

snmpssh 5161/tcp

snmpssh-trap 5162/tcp

tl1-ssh 6252/tcp

tl1-ssh 6252/udp

ssh-mgmt 17235/tcp

ssh-mgmt 17235/udp

正如你在上面的輸出中所看到的,SSH服務的默認埠號是22。

讓我們找到Apache Web伺服器的埠號。為此,命令是:

$grep http/etc/services

#http://www.iana.org/assignments/port-numbers

http 80/tcp www www-http#WorldWideWeb HTTP

http 80/udp www www-http#HyperText Transfer Protocol

http 80/sctp#HyperText Transfer Protocol

https 443/tcp#http protocol over TLS/SSL

https 443/udp#http protocol over TLS/SSL

https 443/sctp#http protocol over TLS/SSL

gss-http 488/tcp

gss-http 488/udp

webcache 8080/tcp http-alt#WWW caching service

webcache 8080/udp http-alt#WWW caching service

[...]

FTP埠號是什麼?這很簡單!

$grep ftp/etc/services

ftp-data 20/tcp

ftp-data 20/udp

#21 is registered to ftp,but also used by fsp

ftp 21/tcp

ftp 21/udp fsp fspd

tftp 69/tcp

[...]

方法2:使用getent命令

如你所見,上面的命令顯示指定搜索詞「ssh」、「http」和「ftp」的所有埠名稱和數字。這意味著,你將獲得與給定搜索詞匹配的所有埠名稱的相當長的輸出。

但是,你可以使用getent命令精確輸出結果,如下所示:

$getent services ssh

ssh 22/tcp

$getent services http

http 80/tcp www www-http

$getent services ftp

ftp 21/tcp

如果你不知道埠名稱,但是知道埠號,那麼你只需將埠名稱替換為數字:

$getent services 80

http 80/tcp

要顯示所有埠名稱和埠號,只需運行:

$getent services

4. linux查看埠是否開啟

Linux怎麼查看埠是否開啟?我們一起來了解一下吧。
首先我們先打開要查看埠的Linux的命令操作界面,


本文章基於ThinkpadE15品牌、centos7系統撰寫的。

5. linux查看運行的埠命令

一、使用 netstat 檢查埠
netstat 是一個命令行工具,可以提供有關網路連接的信息。
要列出正在偵聽的所有 TCP 或 UDP 埠,包括使用埠和套接字狀態的服務,請使用以下命令:
netstat -tunlp
此命令中使用的選項具有以下含義:
-t - 顯示 TCP 埠。
-u - 顯示 UDP 埠。
-n - 顯示數字地址而不是主機名。
-l - 僅顯示偵聽埠。
-p - 顯示進程的 PID 和名稱。僅當您以 root 或 sudo 用戶身份運行命令時,才會顯示此信息。
查詢指定埠通過grep過濾:
netstat -tnlp | grep :80
二、使用 ss 檢查埠
ss 是新的 netstat,命令選項大致相同。它缺少一些 netstat 功能,但暴露了更多的 TCP 狀態,而且速度稍快。《Linux就該這么學》 一起學習linux
使用示例:ss -tunlp
三、使用 lsof 檢查埠
lsof 是一個功能強大的命令行實用程序,它提供有關進程打開的文件的信息。
在 Linux 中,一切都是文件,可以將套接字視為寫入網路的文件。
要使用 lsof 獲取所有偵聽 TCP 埠的列表:
lsof -nP -iTCP -sTCP:LISTEN
使用的選項如下:
-n - 不要將埠號轉換為埠名稱。
-p - 不要解析主機名,顯示數字地址。
-iTCP -sTCP:LISTEN - 僅顯示 TCP 協議狀態為 LISTEN 的網路文件。
要查找正在偵聽特定埠(例如 3306)的進程,請使用以下命令:
sudo lsof -nP -iTCP:3306 -sTCP:LISTEN

6. linux查看埠號命令

-t : 指明顯示TCP埠
-u : 指明顯示UDP埠
-l : 僅顯示監聽套接字(所謂套接字就是使應用程序能夠讀寫與收發通訊協議(protocol)與資料的程序)
-p : 顯示進程標識符和程序名稱,每一個套接字/埠都屬於一個程序。
-n : 不進行DNS輪詢,顯示IP(可以加速操作)
即可顯示當前伺服器上所有埠及進程服務,於grep結合可查看某個具體埠及服務情況··
netstat -ntlp //查看當前所有tcp埠·
netstat -ntulp |grep 80 //查看所有80埠使用情況·
netstat -an | grep 3306 //查看所有3306埠使用情況·
查看一台伺服器上面哪些服務及埠
netstat -lanp
查看一個服務有幾個埠。比如要查看mysqld
ps -ef |grep mysqld
查看某一埠的連接數量,比如3306埠

7. linux下怎麼查看埠是否被佔用

Linux netstat命令用於顯示網路狀態。

利用netstat指令可讓你得知整個Linux系統的網路情況。

語法

netstat [-acCeFghilMnNoprstuvVwx][-A<網路類型>][--ip]

參數

-a或--all:顯示所有連線中的Socker。

-A<網路類型>或--<網路類型>:列出該網路類型連線中的相關地址。

-c或--continuous:持續列出網路狀態。

-C或--cache:顯示路由器配置的快取信息。

-e或--extend:顯示網路其他相關信息。

-F或--fib:顯示路由緩存。

-g或--groups:顯示多重廣播功能群組組員名單。

-h或--help:在線幫助。

-i或--interfaces:顯示網路界面信息表單。

-l或--listening:顯示監控中的伺服器的Socket。

-M或--masquerade:顯示偽裝的網路連線。

-n或--numeric:直接使用IP地址,而不通過域名伺服器。

-N或--netlink或--symbolic:顯示網路硬體外圍設備的符號連接名稱。

…………

參數較多,就不一一列舉了!

8. linux系統如何查看服務埠號

如果服務是java進程,那麼用ps -ef|grep java即可看到對應的服務信息,一般裡面有啟動信息,可以看到埠號