web-dev-qa-db-ja.com

開いているソケットの数を確認するにはどうすればよいですか? VMリソースの問題

MediaTemple DVサーバーを持っています。次のように定義された "numothersock"のQOSアラートが多数表示されています。

TCP ones。以外のソケットの数。ローカル(UNIXドメイン)ソケットは、システム内の通信に使用されます。UDPソケットは、ドメインネームサービス(DNS)クエリなどに使用されます。 UDPおよびその他のソケットは、一部の非常に特殊なアプリケーション(SNMPエージェントなど)でも使用できます。

どのアプリケーション/デーモン/ etcがこれらのソケットを作成しているのかをどのように判断できますか?制限は300で、最近は1日に数回この制限に達しています。

前もって感謝します。

9
Encoderer
netstat -nap
p shows the process id 
16
silviud

netstat -an | grep ESTABLISHED | wc -l

これにより、システムで開いているすべてのソケットがカウントされ、合計だけが出力されます。もちろん、ESTABLISHEDを必要に応じて変更することもできます。たとえば、ポートや、CONNECTEDやLISTENINGなどの通信ステータスです。

8
Luis Parada

MySQLがUNIXソケットを介して開いている接続をライブで監視するには、(rootとして)実行します。

watch -n1 'netstat -np | grep -i mysqld'

3
stamster

ss

netstat非推奨 であり、その代わりはssです。

あなたの場合、ss -punは、UDP(-u)プロセス情報(-p)、ポート番号をサービス名に変換しません(-n)。

私が使う ss -ptln多くのwhichsはリスニングを示します(-l)TCPソケット(-t)。

watch を使用すると、WebアプリケーションがTCPソケットを確実にクリーンアップするようにしたい場合に便利です。

watch ss -ptln

ここssのいくつかの例です。

1
Matthias Braun

netstat -aすべてを表示します。または、そのマニュアルページを調べて、関心のある種類の接続のみを除外することもできます。

1
poige