我有权通过 ssh 连接到特定的基于 unix 的机器(使用/proc 文件系统)。但是,当我尝试 ssh 并远程运行 netstat -taupen 时。我没有看到进程的 PID。例如 -
Proto Recv-Q Send-Q Local Address Foreign Address State User Inode PID/Program name
tcp 0 0 10.10.27.42:80 :::* LISTEN 1000 16082 -
tcp 0 0 127.0.0.1:7474 :::* LISTEN 110 16568 -
PID 如上所示。 我的问题是我需要什么权限才能使用 netstat 命令查看进程的 PID
最佳答案
您只能查看 EUID(有效用户 ID)与 netstat
的调用用户相同的进程的 PID(以及进程名称)即调用用户是所有者。
要获取已登记套接字的所有进程的 PID/进程名称,您需要运行 netstat
作为 super 用户 (UID 0) 命令,或使用 sudo
模拟 super 用户(首选)或寻找提供该功能的任何内核功能单元(如果有)。
关于linux - 使用 netstat 远程获取基于 unix 的操作系统上的所有进程连接需要什么权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43598026/