Brauche Info über Socket, Pipe, File Descriptor

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
WickedImp
Beiträge: 7
Registriert: 17.08.2005 19:55:14
Wohnort: Lichtenau Westf
Kontaktdaten:

Brauche Info über Socket, Pipe, File Descriptor

Beitrag von WickedImp » 04.10.2005 15:14:34

mich würde folgendes Interessieren: wo bekomme ich Infos über offene Sockets, Pipes und FDs. Damit meine ich, welches Programm welchen Socket auf hat, und wo dieser hinzeigt. Es geht mir dabei um Rückverfolgung von Problemen mit anscheinend hängenden Programmen (Apache2, MySQL, etc...).

Folgendes Beispiel: Ein Apache2-Sub-Prozess hat eine Prozess-ID 6807. Im /proc/6807/fd findet man also grundlegende Infos was dieser Prozess offen hat. Hier findet man Hinweise auf Dateien, Sockets (socket:[<id>]) und auch Pipes (pipe:[<id>]). Bei Dateien zeigt der SymLink direkt auf die geöffnete Datei. Bei Pipes und Sockets steht nur die ID.

Der Befehl 'netstat -lan' zeigt u.U. bei den Sockets einen Eintrag mit einer passenden ID. Muss bei Apache2 aber anscheinend nicht sein. Da sind teilweise offene FDs dabei, die auf einen Socket zeigen, der anscheinend nicht mehr existiert. Ich kenne leider keinen anderen Befehl um offene Sockets auszulesen, geschweige denn eine Liste der offenen Pipes. Aber irgendwer im System (Kernel?) muss darüber Buch führen.

Frage 1: Welche Programme könnten weiterhelfen?
Frage 2: Wo hält der Kernel Daten über Pipes und Sockets (Dev-Libs?)?
Frage 3: Was habe ich für Möglichkeiten an die Daten über Pipes und Sockets zu kommen? Programme, Libs?

Dank im vorraus! :)

nil
Beiträge: 989
Registriert: 08.06.2005 13:28:36

Beitrag von nil » 04.10.2005 15:17:41

lsof

WickedImp
Beiträge: 7
Registriert: 17.08.2005 19:55:14
Wohnort: Lichtenau Westf
Kontaktdaten:

Beitrag von WickedImp » 04.10.2005 15:57:25

WOW!!! 8O

Herrzlichsten dank! Das sieht doch schonmal gut aus! Kannte ich noch nicht.. Man lernt halt nie aus!

nil
Beiträge: 989
Registriert: 08.06.2005 13:28:36

Beitrag von nil » 04.10.2005 16:03:51

Hi,

wie war das noch bei UNIX: alles ist eine Datei

Antworten