设为首页收藏本站
天天打卡

 找回密码
 立即注册
搜索
查看: 94|回复: 11

Linux下如何查看端口以及释放端口

[复制链接]

1

主题

55

回帖

133

积分

注册会员

积分
133
发表于 2024-4-20 08:15:18 | 显示全部楼层 |阅读模式
目录


一、查看端口是否被占用

在 Linux 系统上,你可以使用 `netstat` 或 `lsof` 命令来查看端口是否被占用。
以下是两种方法:
1、使用 `netstat` 命令
  1. netstat -tulpn | grep <端口号>
复制代码
这将显示占用指定端口的进程信息。
如果端口被占用,你将看到以下的输出项目:
  1. tcp        0      0 0.0.0.0:<端口号>         0.0.0.0:*               LISTEN      <进程ID>/<进程名称>
复制代码
实例:

2、使用 `lsof` 命令
  1. sudo lsof -i :<端口号>
复制代码
这也会显示占用指定端口的进程信息。
  1. COMMAND  PID   USER   FD          TYPE   DEVICE SIZE/OFF  NODE   NAME
  2. <进程名> <PID> <用户> <文件描述符> <类型> <设备> <大小/偏移> <节点> <地址>
复制代码
实例:

如果端口没有被占用,这两个命令将没有输出。
另外,以上命令可能需要使用 `sudo` 或具有足够权限的用户才能运行。

二、释放端口

如果通过上面的操作发现某个端口被占用,决定释放该端口。
通常,端口的释放是通过终止占用该端口的进程来实现的。
1、使用kill命令
使用 `kill` 命令结束占用端口的进程,其中 `<ID>` 是进程的标识符:
  1. sudo kill <PID>
复制代码
2、使用 fuser 命令
另一种找到并杀死占用端口的进程的方法是使用 `fuser` 命令:
  1. sudo fuser -k <端口号>/tcp
复制代码
三、netstat
  1. netstat
复制代码
是一个用于显示网络相关信息的命令行工具,通常用于检查网络连接、路由表、接口统计等。
上述
  1. netstat
复制代码
命令中,选项
  1. -tulpn
复制代码
是一组选项的缩写,每个字母表示特定的信息:

    1. -t
    复制代码
    : 显示 TCP 连接信息。
    1. -u
    复制代码
    : 显示 UDP 连接信息。
    1. -l
    复制代码
    : 显示监听状态的连接。
    1. -p
    复制代码
    : 显示正在使用套接字的进程。
    1. -n
    复制代码
    : 以数字形式显示地址和端口,而不进行名称解析。

四、lsof

`lsof`(List Open Files)是一个用于列出在Unix和类Unix系统上打开文件的工具。
它还可以用于显示进程打开的网络连接、Unix域套接字等。
以下是一些常见的用法示例:
1. 列出所有打开的文件
  1. lsof
复制代码
这将列出所有打开的文件,包括普通文件、目录、设备文件和网络套接字等。
2. 列出特定进程打开的文件
  1. lsof -p <PID>
复制代码
将 `<ID>` 替换为要查看的进程的进程ID,这样你就可以查看特定进程打开的文件。
3. 列出特定端口被哪个进程占用
  1. lsof -i :<端口号>
复制代码
替换 `<端口号>` 为要查看的端口号,这将显示占用该端口的进程信息。
4. 列出某个目录下被哪个进程占用的文件
  1. lsof /path/to/directory
复制代码
这将显示在指定目录下被打开的文件。
5. 列出网络连接信息
  1. lsof -i
复制代码
这将显示系统上的所有网络连接,包括打开的套接字、端口和连接状态。
6. 列出Unix域套接字信息:
  1. lsof -U
复制代码
这将显示系统上的所有Unix域套接字信息。

五、fuser

这个命令用于显示使用特定文件、套接字或文件系统的进程信息。
以下是一些常见选项的解释:

    1. -a
    复制代码
    ,
    1. --all
    复制代码
    :显示所有进程的信息,包括没有访问任何文件的进程。
    1. -i
    复制代码
    ,
    1. --interactive
    复制代码
    :在终止进程之前请求确认。与 -k 选项一起使用时生效。
    1. -I
    复制代码
    ,
    1. --inode
    复制代码
    :使用 inode 号码而不是文件名进行比较。
    1. -k
    复制代码
    ,
    1. --kill
    复制代码
    :终止访问指定文件的进程。
    1. -l
    复制代码
    ,
    1. --list-signals
    复制代码
    :列出可用的信号名称。
    1. -m
    复制代码
    ,
    1. --mount
    复制代码
    :显示使用指定文件系统或块设备的所有进程。
    1. -M
    复制代码
    ,
    1. --ismountpoint
    复制代码
    :只在指定名称是挂载点时执行。
    1. -n
    复制代码
    ,
    1. --namespace SPACE
    复制代码
    :在指定的命名空间中搜索(file、udp 或 tcp)。
    1. -s
    复制代码
    ,
    1. --silent
    复制代码
    :静默执行操作,不显示消息。
    1. -SIGNAL
    复制代码
    :在终止进程时发送指定的信号,而不是默认的 SIGKILL。
    1. -u
    复制代码
    ,
    1. --user
    复制代码
    :显示用户 ID 以及进程信息。
    1. -v
    复制代码
    ,
    1. --verbose
    复制代码
    :提供详细输出。
    1. -w
    复制代码
    ,
    1. --writeonly
    复制代码
    :仅终止具有写访问权限的进程。
    1. -V
    复制代码
    ,
    1. --version
    复制代码
    :显示版本信息。
    1. -4
    复制代码
    ,
    1. --ipv4
    复制代码
    :仅搜索 IPv4 套接字。
    1. -6
    复制代码
    ,
    1. --ipv6
    复制代码
    :仅搜索 IPv6 套接字。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

1

主题

61

回帖

144

积分

注册会员

积分
144
发表于 2024-5-11 20:02:14 | 显示全部楼层
666666666666

0

主题

41

回帖

80

积分

注册会员

积分
80
发表于 2024-5-17 16:27:19 | 显示全部楼层
看了LZ的帖子,我只想说一句很好很强大!

1

主题

42

回帖

108

积分

注册会员

积分
108
发表于 2024-6-19 19:23:07 | 显示全部楼层
看了LZ的帖子,我只想说一句很好很强大!

3

主题

54

回帖

176

积分

注册会员

积分
176
发表于 2024-7-1 05:31:11 | 显示全部楼层
同意你的观点,我们有共鸣。

4

主题

44

回帖

178

积分

注册会员

积分
178
发表于 2024-7-23 04:28:30 | 显示全部楼层
这个话题很有趣,我想多了解一些

0

主题

61

回帖

123

积分

注册会员

积分
123
发表于 2024-7-28 18:36:53 | 显示全部楼层
嘎嘎嘎嘎嘎嘎嘎

0

主题

55

回帖

107

积分

注册会员

积分
107
发表于 2024-8-25 19:20:32 | 显示全部楼层
同意!
发表于 2024-9-17 23:07:02 | 显示全部楼层
同意!

0

主题

57

回帖

115

积分

注册会员

积分
115
发表于 2024-9-28 15:36:32 | 显示全部楼层
你的信息来源是?我想了解更多。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|爱云论坛 - d.taiji888.cn - 技术学习 免费资源分享 ( 蜀ICP备2022010826号 )|天天打卡

GMT+8, 2024-11-15 05:34 , Processed in 0.095554 second(s), 28 queries .

Powered by i云网络 Licensed

© 2023-2028 正版授权

快速回复 返回顶部 返回列表