查看是哪个软件占用了指定的端口

2023-12-04 13:47:39 浏览数 (3)

背景

有时候某个端口被占用,导致我们想要的软件运行不了。这时候就要找出是什么软件占用,及如何杀死后台对应程序。

列出所有正在监听的端口,并筛选出80端口的相关信息查看端口是否被监听

代码语言:javascript复制
id_seq@linux:/www/server/mysql/bin$ sudo ss -tuln | grep :3306
tcp6       0      0 :::33060                :::*                    LISTEN     
tcp6       0      0 :::3306                 :::*                    LISTEN     

显示所有使用80端口的进程。它会列出包括进程名称、进程ID(PID)以及使用80端口的详细信息。

代码语言:javascript复制
id_seq@linux:/www/server/mysql/bin$ sudo lsof -i :3306
COMMAND  PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mysqld  3762 mysql   44u  IPv6  40222      0t0  TCP *:mysql (LISTEN)

使用 ps aux | grep httpd 命令来查看所有正在运行的 httpd 进程的详细信息,包括进程ID(PID)、父进程ID(PPID)、CPU利用率、内存使用情况等。

代码语言:javascript复制
id_seq@linux:/www/server/mysql/bin$ ps aux | grep mysqld
root        2541  0.0  0.0  11348  1764 ?        S    Feb13   0:00 /bin/sh /www/server/mysql/bin/mysqld_safe --datadir=/www/server/data --pid-file=/www/server/data/linux.pid
mysql       3762  0.6  0.0 16712152 39312 ?      Sl   Feb13 2038:16 /www/server/mysql/bin/mysqld --basedir=/www/server/mysql --datadir=/www/server/data --plugin-dir=/www/server/mysql/lib/plugin --user=mysql --log-error=linux.err --open-files-limit=65535 --pid-file=/www/server/data/linux.pid --socket=/tmp/mysql.sock --port=3306
systemd   744972  0.5  0.2 3169292 656128 ?      Ssl  Aug23 184:19 mysqld
systemd   845669  1.8  0.3 3505280 952932 ?      Ssl  Aug23 583:47 mysqld
systemd  1786041  0.5  0.1 2642544 488548 ?      Ssl  Aug25 169:57 mysqld
id_seq   2682844  0.0  0.0  10540  2428 pts/4    S    15:40   0:00 grep --color=auto mysqld

使用kill命令关闭MySQL进程

代码语言:javascript复制
kill <PID>

我有个大胆的想法

小伙伴在平常有没有遇到以下这种情况:遇到技术难题时,网上教程一堆堆,优秀的很多,但也有很多是过时的,或者是copy来copy去,甚至错别字都没改。

我公众号的技术文章,都是亲自校验过的。至少可以保证在发文的一段时间,不会过时。如果你在实操过程中,有遇到问题,可以在同名公众号留言,免费解答,相互学习,相互成长^v^

0 人点赞