GNU/Linux >> Linux の 問題 >  >> Linux

特定のポートを使用してプロセスの PID を見つけていますか?

Linux では、必要な情報を取得するには、root またはプロセスの所有者である必要があります。そのため、別のユーザーとして実行されているプロセスの場合、先頭に sudo を追加します 必要なもののほとんどです。それに加えて、最近の Linux システムでは ss これを行うために使用するツール:

$ sudo ss -lptn 'sport = :80'
State   Local Address:Port  Peer Address:Port              
LISTEN  127.0.0.1:80        *:*                users:(("nginx",pid=125004,fd=12))
LISTEN  ::1:80              :::*               users:(("nginx",pid=125004,fd=11))

現在使用しているのと同じ呼び出しを使用することもできますが、sudo を忘れないでください。 :

$ sudo netstat -nlp | grep :80
tcp  0  0  0.0.0.0:80  0.0.0.0:*  LISTEN  125004/nginx

lsof も使用できます:

$ sudo lsof -n -i :80 | grep LISTEN
nginx   125004 nginx    3u  IPv4   6645      0t0  TCP 0.0.0.0:80 (LISTEN)

lsof も使用できます 効用。 root である必要があります。

# lsof -i :25
COMMAND  PID        USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
exim4   2799 Debian-exim    3u  IPv4   6645      0t0  TCP localhost:smtp (LISTEN)
exim4   2799 Debian-exim    4u  IPv6   6646      0t0  TCP localhost:smtp (LISTEN)

netstat も持たない「CentOS 7minimal」を使用しています lsof でもありません .しかし、多くの Linux ディストリビューションにはソケット統計コマンドがあります (例:ss ).

以下は実行例です:

# ss -tanp | grep 6379
LISTEN   0    128  127.0.0.1:6379   *:*   users:(("redis-server",pid=2531,fd=4))

Linux
  1. Linux –特定のポートを使用してプロセスのPidを見つけますか?

  2. Ubuntu でプロセス ID を見つけるにはどうすればよいですか?

  3. pidを使用してPythonからプロセスを終了するには?

  1. プロセスが死なない限り、プロセス PID は同じままであることが保証されていますか?

  2. プロセスが実行されている特定のプロセッサを特定する

  3. ポート 80 で実行中のプロセスを強制終了する

  1. 手作業でコンテナを構築する:PID名前空間

  2. 子プロセスのPgidが親のPidではないのはなぜですか?

  3. Linuxの特定のポートで実行されているプロセスを強制終了する方法は?