So verwenden Sie procfs, um systembezogene Informationen in Linux zu erhalten
Wenn Sie sich das Linux-Dateisystem ansehen, haben Sie vielleicht ein /proc- Verzeichnis mit vielen seltsamen Zahlen und anderen Dateien darin bemerkt. Was macht dieses Verzeichnis? Es enthält tatsächlich viele nützliche Informationen zu Ihrem Linux-System und den laufenden Prozessen.
In diesem Artikel wird das proc-Dateisystem im Detail erläutert, zusammen mit einer kurzen Anleitung zum Abrufen systembezogener Informationen mithilfe von procfs.
Was ist das proc-Dateisystem?
Das proc-Dateisystem (procfs) ist eine Idee, die dem Plan 9-Forschungssystem von Bell Labs entlehnt ist, einem Forschungsnachfolger des dort entwickelten ursprünglichen Unix-Systems.
Das Dateisystem erweitert das ursprüngliche Konzept, "alles als Datei" zu haben, einschließlich der Hardwaregeräte, bis zu seinem logischen Abschluss, indem es jeden laufenden Prozess auf dem System als Hierarchie von Dateien darstellt, die Sie mit Standardwerkzeugen untersuchen können.
Die nützlichste Datei in der proc-Hierarchie für Systeminformationen ist die Datei cpuinfo . Geben Sie Folgendes ein, um es anzuzeigen:
cat /proc/cpuinfo
Je nachdem, wie viele CPU-Kerne Ihr Computer hat, kann diese Datei viele Informationen enthalten. Daher sollten Sie Most, einen Linux-Pager, durch cat ersetzen.
Andere nützliche Dateien im Verzeichnis /proc sind meminfo , die Details zu Ihrem Systemspeicher anzeigt , und die Datei mounts , die Informationen über das eingehängte Dateisystem bereitstellt. Sie können diese Dateien problemlos mit Standard-Linux-Textverarbeitungstools untersuchen.
Erhalten Sie prozessbezogene Informationen mit procfs
Im proc-Dateisystem haben alle laufenden Prozesse ihr eigenes Verzeichnis, das ihre Prozess-ID-Nummer oder PID ist. Zum Beispiel hat Prozess 1, der init-Prozess, der alle anderen Prozesse auf dem Linux-System beim Booten startet, ein eigenes Verzeichnis mit derselben Nummer, /proc/1 .
Während Sie den Prozess finden, den Sie untersuchen möchten, verwenden Sie den Befehl ps , top, htop oder andere Linux-Befehle, um die PID dieses bestimmten Prozesses aufzulisten. Wenn Sie die Prozess-ID gefunden haben, navigieren Sie zu diesem Verzeichnis unter /proc .
Im Prozessverzeichnis finden Sie mehrere Dateien, die Informationen zu verschiedenen Aspekten des Prozesses enthalten. exe ist beispielsweise ein symbolischer Link zu der ausführbaren Datei, die den Prozess gestartet hat, environ listet Umgebungsvariablen auf und cmdline zeigt alle Befehlszeilenargumente an, mit denen der Prozess gestartet wurde. Die Statusdatei listet viele dieser Informationen in einem „menschenlesbaren“ -Format.
Abrufen von Systeminformationen mithilfe von procfs
Das proc-Dateisystem zeigt, dass unter Linux so ziemlich alles eine Datei ist, sogar Dinge, die Sie nicht erwarten würden. Sogar im Stammordner finden Sie viele Dateien, von denen jede Informationen zu verschiedenen Komponenten des Systems enthält.
Linux mit seinen einzigartigen Befehlen und unzähligen Distributionen mag Anfängern zunächst wie ein mysteriöses Betriebssystem erscheinen, aber alles ist an seinem richtigen Platz.