LINUX中如何查看某个端口是否被占用的方法

之前查询端口是否被占用一直搞不明白,问了好多人,终于搞懂了,现在总结下:

1.netstat -anp |grep 端口号

如下,我以3306为例,netstat -anp |grep 3306(此处备注下,我是以普通用户操作,故加上了sudo,如果是以root用户操作,不用加sudo即可查看),如下图1:

图1中主要看监控状态为LISTEN表示已经被占用,最后一列显示被服务mysqld占用,查看具体端口号,只要有如图这一行就表示被占用了。

2.netstat -nultp(此处不用加端口号)

该命令是查看当前所有已经使用的端口情况,如图2:

图中可以看出我的82端口没有被占用

3.netstat -anp |grep 82查看82端口的使用情况,如图3:

可以看出并没有LISTEN那一行,所以就表示没有被占用。此处注意,图中显示的LISTENING并不表示端口被占用,不要和LISTEN混淆哦,查看具体端口时候,必须要看到tcp,端口号,LISTEN那一行,才表示端口被占用了

在linux中查看进程占用的端口号

在Linux 上的 /etc/services 文件可以查看到更多关于保留端口的信息。

可以使用以下六种方法查看端口信息。

  • ss:可以用于转储套接字统计信息。
  • netstat:可以显示打开的套接字列表。
  • lsof:可以列出打开的文件。
  • nmap:是网络检测工具和端口扫描程序。
  • systemctl:是systemd 系统的控制管理器和服务管理器。

以下我们将找出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)

到此这篇关于LINUX中如何查看某个端口是否被占用的方法的文章就介绍到这了,更多相关LINUX 端口占用内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 查看linux中某个端口(port)是否被占用的方法

    1.使用lsof lsof -i:端口号查看某个端口是否被占用   2.使用netstat 使用netstat -anp|grep 80 以上这篇查看linux中某个端口(port)是否被占用的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • 详解Linux查看程序端口占用情况

    今天发现服务器上Tomcat 8080端口起不来,老提示端口已经被占用. 使用命令: ps -aux | grep tomcat 发现并没有8080端口的Tomcat进程. 使用命令: netstat –apn 查看所有的进程和端口使用情况.发现下面的进程列表,其中最后一栏是PID/Program name 发现8080端口被PID为9658的Java进程占用. 进一步使用命令: ps -aux | grep java 或者直接: ps -aux | grep pid 查看 就可以明确知道808

  • 6种查看Linux进程占用端口号的方法详解

    对于 Linux 系统管理员来说,清楚某个服务是否正确地绑定或监听某个端口,是至关重要的.如果你需要处理端口相关的问题,这篇文章可能会对你有用. 端口是 Linux 系统上特定进程之间逻辑连接的标识,包括物理端口和软件端口.由于 Linux 操作系统是一个软件,因此本文只讨论软件端口.软件端口始终与主机的 IP 地址和相关的通信协议相关联,因此端口常用于区分应用程序.大部分涉及到网络的服务都必须打开一个套接字来监听传入的网络请求,而每个服务都使用一个独立的套接字. 套接字是和 IP 地址.软件端

  • Linux下查看端口占用进程号,程序名的方法

    linux下查看端口占用情况: 1. 查看哪个进程占用了819端口: case9-sghfofo:/usr/local/cnbj/tomcat-bj/bin # lsof -i:859 运行后的结果: COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME java 24907 root 31u IPv4 248905027 TCP *:859 (LISTEN) 由以上我们知道了859端口被进程号为24907的进程占用了, 是个java进程. 2. 查看进程

  • Linux查找占用的端口,并杀死进程的方法

    我要使用4040端口,但是被其他的程序占用了 1. 查找占用的程序 netstat -apn | grep 4040 最后一项显示的是pid和对应的名称 2. 杀掉对应的进程,彻底杀死进程 kill -9 26105 以上这篇Linux查找占用的端口,并杀死进程的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • linux 查看端口占用命令实例详解

     linux 查看端口占用命令实例详解 端口是系统非常重要的一个东东,我们经常需要查看哪个进程占用了哪个端口,或者哪个端口被哪个进程占用.废话不多说,直接上干货,教大家怎样查看系统端口占用情况. 方法一: 1.先用ps -ef | grep xxx(某个进程),可以查看某个进程的pid. 2.再用netstat -anp | grep pid号,可以查看到该进程占用的端口号! 方法二: 直接用lsof命令可以查看端口使用情况! 以上就是对linux 查看端口占用命令的讲解,如有疑问请留言,或者到

  • 在Linux中查看进程占用的端口号

    对于 Linux 系统管理员来说,清楚某个服务是否正确地绑定或监听某个端口,是至关重要的.如果你需要处理端口相关的问题,这篇文章可能会对你有用. 端口是 Linux 系统上特定进程之间逻辑连接的标识,包括物理端口和软件端口.由于 Linux 操作系统是一个软件,因此本文只讨论软件端口.软件端口始终与主机的 IP 地址和相关的通信协议相关联,因此端口常用于区分应用程序.大部分涉及到网络的服务都必须打开一个套接字来监听传入的网络请求,而每个服务都使用一个独立的套接字. 套接字是和 IP 地址.软件端

  • Linux中解除端口占用的方法

    在本例中,假设8080端口被占用. 1.查看8080端口是否被占用 netstat -anp | grep 8080 输出结果:tcp 0 0 :::8080 :::* LISTEN 3000/java 由上可知8080端口已经被开启. 2.查看占用8080端口的进程: fuser -v -n tcp 8080 输出结果: USER        PID   ACCESS COMMAND   8080/tcp:         zhu        1154    F.... java 3.杀死

  • LINUX中如何查看某个端口是否被占用的方法

    之前查询端口是否被占用一直搞不明白,问了好多人,终于搞懂了,现在总结下: 1.netstat -anp |grep 端口号 如下,我以3306为例,netstat -anp |grep 3306(此处备注下,我是以普通用户操作,故加上了sudo,如果是以root用户操作,不用加sudo即可查看),如下图1: 图1中主要看监控状态为LISTEN表示已经被占用,最后一列显示被服务mysqld占用,查看具体端口号,只要有如图这一行就表示被占用了. 2.netstat -nultp(此处不用加端口号)

  • 在Linux中如何查看可用的网络接口详解

    前言 在我们安装完一个 Linux 系统后最为常见的任务便是网络配置了.当然,你可以在安装系统时进行网络接口的配置.但是,对于某些人来说,他们更偏爱在安装完系统后再进行网络的配置或者更改现存的设置. 众所周知,为了在命令行中进行网络设定的配置,我们首先必须知道系统中有多少个可用的网络接口.本次这个简单的指南将列出所有可能的方式来在 Linux 和 Unix 操作系统中找到可用的网络接口. 在 Linux 中找到可用的网络接口 我们可以使用下面的这些方法来找到可用的网络接口. 方法 1 使用 if

  • Linux中不同用户之间复制文件的两个方法

    前言 考虑如下情景:foo用户home目录下有一文件file.txt,要将其copy至bar用户的home目录.Linux对用户home目录有严格的权限限制,非owner用户或者同group用户无权限读写,除非是root(至高无上的root).如果没有root权限,有什么办法把file.txt 复制到bar用户的home目录下呢? 想到两个办法. 第一个办法,先用foo用户登录,把文件copy到系统临时目录/tmp,然后切换到bar用户,再从系统临时目录/tmp把文件copy到自己的home目录

  • Linux 中shell脚本设置开头固定格式的实现方法

    Linux 之shell脚本设置开头固定格式 每次进入shell都要设置开头,很麻烦,现修改vim配置文件即可. [root@node01 ~]vim .vimrc 将下列内容复制进文件 set ignorecase set cursorline set autoindent autocmd BufNewFile *.sh exec ":call SetTitle()" func SetTitle() if expand("%:e") == 'sh' call se

  • linux中如何查看Raid磁盘阵列信息

    Linux下查看Raid磁盘阵列信息的方法 以下是组建服务器raid时查到的资料,做下笔记,没兴趣的朋友请无视. Linux下查看软.硬raid信息的方法. 软件raid:只能通过Linux系统本身来查看 cat /proc/mdstat 可以看到raid级别,状态等信息. 硬件raid: 最佳的办法是通过已安装的raid厂商的管理工具来查看,有cmdline,也有图形界面.如Adaptec公司的硬件卡就可以通过下面的命令进行查看: # /usr/dpt/raidutil -L all 可以看到

  • Linux中如何查看已挂载的文件系统类型详解

    前言 如你所知,Linux 支持非常多的文件系统,例如 ext4.ext3.ext2.sysfs.securityfs.FAT16.FAT32.NTFS 等等,当前被使用最多的文件系统是 ext4.你曾经疑惑过你的 Linux 系统使用的是什么类型的文件系统吗?没有疑惑过?不用担心!我们将帮助你.本指南将解释如何在类 Unix 的操作系统中查看已挂载的文件系统类型. 在 Linux 中查看已挂载的文件系统类型 有很多种方法可以在 Linux 中查看已挂载的文件系统类型,下面我将给出 8 种不同的

  • Linux中如何查询运行文件的全路径的方法

    在linux中,有些地方需要使用绝对路径,对于一些命令,如java.mysql等,需要使用到运行文件所在的路径,给大家介绍一个命令,来查询这个路径. which 可以通过which查询运行文件的所在路径,具体如下: 命令详解 以mysql为例,命令如下: [work(zhaoweinan)@tjtxvm-144-80 soft]$ which mysql /opt/soft/percona-mysql55/bin/mysql 命令输出了运行文件mysql所在的路径 当没有该文件时,输出如下: [

  • Linux中把用户添加到组的4个方法总结

    前言 Linux 组是用于管理 Linux 中用户帐户的组织单位.对于 Linux 系统中的每一个用户和组,它都有惟一的数字标识号.它被称为 用户 ID(UID)和组 ID(GID).组的主要目的是为组的成员定义一组特权.它们都可以执行特定的操作,但不能执行其他操作. Linux 中有两种类型的默认组.每个用户应该只有一个 主要组 primary group  和任意数量的 次要组 secondary group  . • 主要组: 创建用户帐户时,已将主要组添加到用户.它通常是用户的名称.在执

  • Linux中crontab输出重定向不生效问题的解决方法

    问题 在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间. cron的配置文件称为"crontab",是"cron table"的简写. 近期在crontab中添加了一个定时任务,该任务执行之后默认会有正常输出.为了确保在任务执行过程中的异常信息也可以捕获,方便问题定位,因此在crontab中我写了这么一条命令: 01 09 * * * cd /o

  • 利用Node.js检测端口是否被占用的方法

    前言 在学习tcp/ip的时候,经常遇到一些关于跟端口有关的东西,在写网络上的一些东西,有时用的一些端口被提示:端口已被占用,啊啊啊,挺郁闷的,然后就想着将它搞明白,下面话不多说了,来一起看看详细的介绍吧. Nodejs检测端口是否被占用 开启本地服务时,有这么一种情况:当前端口已经被另一个项目使用了,导致服务开启失败. 那么接下来,我们通过简简单单的十行代码来检测端口是否已经被占用. 思路 想要知道端口是否被占用,我们可以开启一个新的服务并监听该端口,若开启成功则说明端口未被占用,反之该端口已

随机推荐