linux查看服务端口命令大全

这篇文章介绍了在Linux系统中如何查看所有服务端口,包括使用`cat/etc/services`命令,以及需要root权限的`lsof-i`和`netstat`命令。此外,还提供了多个lsof和netstat的命令示例,用于查看特定端口的占用情况和进程信息,以及如何关闭相应端口的进程。

零、 linux怎么查看所有服务端口

  • 1、打开linux系统,在linux的桌面的空白处右击。

  • 2、在d出的下拉选项里,点击打开终端。

  • 3、在终端窗口中输入cat/etc/services命令,回车后即可查看到服务器端口。

    也可以直接登录xshell来执行命令。

一、常用命令

1,lsof -i端口号

2,netstat -tunlp|grep 端口号

这两个命令都可以查看端口被什么进程占用。

二、lsof -i 需要 root 用户的权限来执行

在这里插入图片描述

登录进来就是root权限。

三、netstat命令

netstat -tunlp 用于显示 tcp,udp 的端口和进程等相关情况。

netstat 查看端口占用语法格式:

netstat -tunlp | grep 端口号

四、测试磁盘读写的指令

dd if=/dev/zero of=./a bs=8k count=5000 oflag=direct

测试效果如下:

在这里插入图片描述

00、扩展资料

一、更多 lsof 的命令扩展

1、lsof -i:8080:查看8080端口占用

2、lsof abc.txt:显示开启文件abc.txt的进程

3、lsof -c abc:显示abc进程现在打开的文件

4、lsof -c -p 1234:列出进程号为1234的进程所打开的文件

5、lsof -g gid:显示归属gid的进程情况

6、lsof +d /usr/local/:显示目录下被进程开启的文件

7、lsof +D /usr/local/:同上,但是会搜索目录下的目录,时间较长

8、lsof -d 4:显示使用fd为4的进程

9、lsof -i -U:显示所有打开的端口和UNIX domain文件

二、更多netstat命令

1、netstat -ntlp   //查看当前所有tcp端口

2、netstat -ntulp | grep 80   //查看所有80端口使用情况

3、netstat -ntulp | grep 3306   //查看所有3306端口使用情况

三、关闭端口

1、在查到端口占用的进程后,如果你要杀掉对应的进程可以使用 kill 命令:

kill -9 PID

2、如上实例,我们看到 8000 端口对应的 PID 为 26993,使用以下命令杀死进程:

kill -9 26993

四、监听本地端口和被占用情况
ss -tnulp | grep 9000
  • 命令:ss -tnulp | grep 9000

作用:

  1. ss 是用于查看网络连接/端口状态的工具(类似 netstat);
  2. 选项 -tnulp 表示:t(TCP协议)、n(显示IP/端口数字,不解析名称)、u(UDP协议)、l(监听状态)、p(显示进程信息);
  3. grep 9000 过滤出包含端口 9000 的记录。

结果: 显示 tcp LISTEN 0 128 0.0.0.0:9000 : users:(“openresty”,pid=87699,…) → 关键信息:

  1. 本地服务器的 9000 端口处于 TCP监听状态(LISTEN),绑定地址 0.0.0.0:9000(表示监听所有网卡的 9000
    端口);

  2. 占用端口的进程是 openresty(Nginx的增强版,常用于Web服务),多个 pid
    表示有多个工作进程(正常现象,Nginx/OpenResty通常会启动多个子进程处理请求)。

### 如何在 Linux 中列出所有开放和监听的端口Linux 系统中,`netstat` 和 `ss` 是两个常用的命令行工具,用于查看网络连接状态以及开放和监听的端口。 #### 使用 `netstat` 命令 可以通过以下命令来显示所有处于监听状态的 TCP 和 UDP 端口: ```bash netstat -tuln ``` 此命令的具体参数含义如下: - `-t`: 显示 TCP 连接。 - `-u`: 显示 UDP 连接。 - `-l`: 仅显示监听中的套接字。 - `-n`: 不解析主机名和服务名称,直接以数字形式显示地址和端口号[^1]。 如果需要进一步过滤出具体的监听端口信息,可以结合 `grep` 工具使用。例如: ```bash netstat -tuln | grep LISTEN ``` 这会筛选出所有处于监听状态的 TCP 或者其他协议类型的端口[^3]。 #### 使用 `ss` 命令 `ss` (Socket Statistics) 是一个更现代、性能更高的替代品,功能类似于 `netstat`。以下是其基本用法: ```bash ss -tuln ``` 该命令同样支持上述提到的功能选项,并能快速获取当前系统的监听端口情况。相比 `netstat`,`ss` 的执行速度更快,在处理大量数据时表现尤为突出[^2]。 对于想要了解哪些进程占用了特定端口的情况,则可扩展命令为: ```bash ss -tulnp ``` 这里的 `-p` 参数表示打印出与每个 socket 关联的程序名称及其 PID(进程 ID),这对于排查问题或者安全管理非常有用[^4]。 综上所述,无论是传统方法还是现代化手段都可以有效地帮助管理员监控 Linux 主机上的活动端口状况。 ### 注意事项 尽管以上两种方式都能很好地完成任务,但在某些较新的发行版里可能默认不再安装 `netstat` 而推荐使用更为高效的 `ss` 来代替它进行日常运维工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

bst@微胖子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值