由于没有正常退出程序,导致一些端口占用未被释放,可以通过 lsof
查看端口是被那个程序占用。如果需要可以关闭程序,释放端口:
lsof -i:[port]
kill -9 [PID]
lsof(list open files)
在 linux 环境下,任何事物都以文件的形式存在,系统在后台都为应用程序分配了一个文件描述符,该文件描述符提供了大量关于这个应用程序本身的信息。 lsof
(list open files)是一个查看当前系统文件的工具。
命令参数
命令参数 | 解释 |
---|---|
-a | 列出打开文件存在的进程 |
-c<进程名> | 列出指定进程所打开的文件 |
-g | 列出 GID 号进程详情 |
-d<文件号> | 列出占用该文件号的进程 |
+d<目录> | 列出目录下被打开的文件 |
+D<目录> | 递归列出目录下被打开的文件 |
-n<目录> | 列出使用 NFS 的文件 |
-i<条件> | 列出符合条件的进程。(4、6、协议、:端口、 @ip ) |
-p<进程号> | 列出指定进程号所打开的文件 |
-u | 列出 UID 号进程详情 |
-h | 显示帮助信息 |
-v | 显示版本信息 |
使用案例
-
由于没有正常退出程序,导致一些端口占用未被释放,可以通过
lsof
查看端口是被那个程序占用。如果需要可以关闭程序,释放端口:1
2lsof -i:[port]
kill -9 [PID]