LINUX中如何查看某個端口是否被占用的方法
之前查詢端口是否被占用一直搞不明白,問了好多人,終于搞懂了,現(xiàn)在總結(jié)下:
1.netstat -anp |grep 端口號
如下,我以3306為例,netstat -anp |grep 3306(此處備注下,我是以普通用戶操作,故加上了sudo,如果是以root用戶操作,不用加sudo即可查看),如下圖1:
圖1中主要看監(jiān)控狀態(tài)為LISTEN表示已經(jīng)被占用,最后一列顯示被服務(wù)mysqld占用,查看具體端口號,只要有如圖這一行就表示被占用了。
2.netstat -nultp(此處不用加端口號)
該命令是查看當(dāng)前所有已經(jīng)使用的端口情況,如圖2:
圖中可以看出我的82端口沒有被占用
3.netstat -anp |grep 82查看82端口的使用情況,如圖3:
可以看出并沒有LISTEN那一行,所以就表示沒有被占用。此處注意,圖中顯示的LISTENING并不表示端口被占用,不要和LISTEN混淆哦,查看具體端口時候,必須要看到tcp,端口號,LISTEN那一行,才表示端口被占用了
在linux中查看進程占用的端口號
在Linux 上的 /etc/services 文件可以查看到更多關(guān)于保留端口的信息。
可以使用以下六種方法查看端口信息。
- ss:可以用于轉(zhuǎn)儲套接字統(tǒng)計信息。
- netstat:可以顯示打開的套接字列表。
- lsof:可以列出打開的文件。
- nmap:是網(wǎng)絡(luò)檢測工具和端口掃描程序。
- systemctl:是systemd 系統(tǒng)的控制管理器和服務(wù)管理器。
以下我們將找出sshd 守護進程所使用的端口號。
方法1:使用 ss 命令
[root@elk3 ~]# ss -tlnp | grep sshd
方法2:使用 netstat 命令
[root@elk3 ~]# netstat -tnlp | grep ssh
方法3:使用 lsof 命令
也可以使用端口號來檢查。
[root@elk3 ~]# netstat -lntp | grep 860
方法4:使用 nmap 命令
[root@elk3 ~]# nmap -sV -p 22 localhost
大部分情況下,以上的輸出不會顯示進程的實際端口號。這時更建議使用以下這個journalctl 命令檢查日志文件中的詳細信息。
[root@elk3 ~]# journalctl | grep -i ssh 12月 01 21:43:36 elk3 systemd[1]: Starting OpenSSH server daemon... 12月 01 21:43:36 elk3 sshd[860]: Server listening on 0.0.0.0 port 22. 12月 01 21:43:36 elk3 sshd[860]: Server listening on :: port 22. 12月 01 21:43:36 elk3 systemd[1]: Started OpenSSH server daemon. 12月 01 21:44:19 elk3 sshd[1106]: Accepted password for root from 192.168.122.1 port 49316 ssh2 12月 01 21:44:19 elk3 sshd[1106]: pam_unix(sshd:session): session opened for user root by (uid=0)
到此這篇關(guān)于LINUX中如何查看某個端口是否被占用的方法的文章就介紹到這了,更多相關(guān)LINUX 端口占用內(nèi)容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來源標注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。