在Linux系统中,我们经常需要查看某个端口是否被占用,以便排查网络连接或进程相关的问题。在Kubernetes(K8S)集群中,也经常需要进行端口占用的检查。下面是一个简单的教程,来教会大家如何查看端口是否被占用。

整个流程可以简单地总结为以下几个步骤:

| 步骤 | 操作 |
| ---- | ---- |
| 1 | 连接到Linux服务器 |
| 2 | 查看所有正在监听的端口 |
| 3 | 查看指定端口是否被占用 |

接下来我们将逐步讲解如何操作。

### 步骤1:连接到Linux服务器

首先,我们需要连接到目标Linux服务器,可以使用SSH连接。打开终端,输入以下命令:

```bash
ssh username@server_address
```

### 步骤2:查看所有正在监听的端口

在Linux系统中,我们可以使用`netstat`命令来查看所有正在监听的端口。输入以下命令:

```bash
netstat -tuln
```

- `netstat`:用于显示网络连接、路由表和网络接口信息。
- `-t`:显示TCP端口。
- `-u`:显示UDP端口。
- `-l`:只显示监听端口。
- `-n`:显示数字形式的地址和端口号。

运行以上命令后,会列出所有正在监听的端口及其对应的程序和PID。

### 步骤3:查看指定端口是否被占用

如果我们想要查看特定端口是否被占用,可以使用`lsof`命令。输入以下命令:

```bash
lsof -i:{port}
```

- `lsof`:列出打开文件,包括网络连接。
- `-i`:指定要查询的端口。
- `{port}`:你想要查询的端口号。

例如,如果要查看端口8080是否被占用,可以输入以下命令:

```bash
lsof -i:8080
```

运行以上命令后,会显示占用该端口的进程信息。

通过上述步骤,我们可以很容易地在Linux系统中查看端口是否被占用。这对于排查网络连接问题或进程占用端口的情况非常有用。

希望这篇文章对你有所帮助,如果有任何疑问或更多关于Kubernetes的问题,欢迎继续提问。祝学习进步!