[汇总] CentOS中查询端口&终止进程的指令


👉原文阅读


💡章前导言

由于搭建服务器过程中,经常需要查询端口占用进程,并将进程终止以释放端口,所以将CentOS中相关的操作在这里进行一下汇总,方便以后查询使用,下文端口有关的操作皆以8080为例



端口查看

查看监听的端口

netstat -lntp 

TCP

netstat -antp
netstat -ntlp

UDP

netstat -nulp

查看端口是否被占用

netstat -tunpl | grep "8080"

查看端口是否打开

firewall-cmd --zone= public --query-port=80/tcp

进程操作

终止进程

强制中止进程,即发送SIGKILL信号

kill -9 pid

默认选项,发送SIGTERM信号,让进程优雅地终止

kill -15 pid

如何查找java -jar中的进程

根据进程名java查看进程id

ps -ef | grep java

或者使用以下指令查看占用内存等信息

ps -aux | grep java

根据进程id查看占用端口

如果没有netstat命令,使用 yum -y install net-tools安装

netstat -nap | grep 18381

根据端口查看对应进程id

netstat -tunlp | grep 8080

根据进程id查看进程信息

ps -ef | grep 18381

端口操作

开放单个端口

开放后需要重启防火墙才生效 –permanent 为永久生效,不加为单次有效(重启失效)

开放tcp8080端口

firewall-cmd --zone=public --add-port=8080/tcp --permanent

开放udp8080端口

firewall-cmd --zone=public --add-port=8080/udp --permanent

开放多个端口

开放后需要要重启防火墙才生效

firewall-cmd --zone=public --add-port=20000-29999/tcp --permanent

–permanent 为永久生效,不加为单次有效(重启失效)

关闭端口

关闭后需要要重启防火墙才生效

关闭tcp8080端口

firewall-cmd --zone=public --remove-port=8080/tcp --permanent

关闭udp8080端口

firewall-cmd --zone=public --remove-port=8080/udp --permanent

配置生效

配置立即生效

firewall-cmd --reload

防火墙操作

查看防火墙所有开放的端口

firewall-cmd --list-ports
firewall-cmd --zone=public --list-ports

查看防火墙状态

systemctl status firewalld
firewall-cmd --state

开启防火墙

systemctl start firewalld

关闭防火墙

如果需要开放的端口太多,嫌麻烦,可以关闭防火墙

systemctl stop firewalld
systemctl stop firewalld.service

重启防火墙

systemctl restart firewalld

设置开机启动防火墙

systemctl enable firewalld

查看防火墙开机自启是否成功

systemctl is-enabled firewalld;echo $?

禁止防火墙开机启动

systemctl disable firewalld

其他

查看Linux系统主机名

hostname

查看服务器IP地址

ifconfig|grep 'inet addr:'|grep -v '127.0.0.1'|cut -d: -f2|awk '{ print $1}'

查看Linux网关

route |grep default

查看Linux打开服务

chkconfig --list|grep

查看服务器DNS配置

cat /etc/resolv.conf

其他网络信息

查看防火墙规则

iptables -L 

查看路由表

route -n

查看网络统计信息

netstat -s
### CentOS 查看端口占用及状态命令 在 CentOS 系统中,可以通过多种工具来查看端口的占用情况以及其状态。以下是几种常用的方法: #### 使用 `netstat` 命令 `netstat` 是一个传统的网络统计工具,能够显示网络连接、路由表、接口统计、伪装连接和多播成员。通过以下命令可以查看 TCP 和 UDP 的端口及其对应的进程信息。 - 显示所有监听中的 TCP 端口及相关进程: ```bash netstat -ntlp ``` - 显示所有监听中的 UDP 端口及相关进程: ```bash netstat -nulp ``` 如果需要针对某个特定端口进行查询,可以结合 `grep` 工具实现过滤功能。例如,要查找 80 端口的信息: ```bash netstat -ntlp | grep 80 ``` 上述命令会返回与 80 端口相关的服务名称、PID 及其他细节[^3]。 #### 使用 `ss` 命令 作为更现代化的替代方案,`ss` 提供了比 `netstat` 更高效的数据处理能力,并且支持更多的选项。它同样能用来监控套接字的状态。 - 列出所有的监听端口连同它们所属的应用程序 ID: ```bash ss -tuln ``` 此命令将展示当前服务器上开放的所有传输层协议(TCP 或者 UDP)端口列表[^2]。 对于具体某端口如需进一步确认,则可执行如下操作: ```bash ss -tnlp | grep ":<port>" ``` 这里 `<port>` 应替换为你想要检测的实际数值[^4]。 #### 使用 `lsof` 命令 另一种方法就是利用文件描述符管理器——`lsof` 来定位哪个应用程序正在使用指定端口。 - 查询某个特殊端口比如 3306 是否正被某些软件所占据: ```bash lsof -i :3306 ``` 这条语句将会给出关于 MySQL 数据库或者其他任何绑定到该端口的服务详情[^1]^。 综上所述,在 CentOS 中有多个途径可供选择去了解系统的端口状况;无论是传统还是新型的技术手段都能满足日常运维需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值