GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Serielle Kommunikation unter modernem Linux

Als Systemingenieur verbringe ich viel Zeit in Rechenzentren und konfiguriere Server und andere Computergeräte. Zwei der Artikel, die ich in meinem Toolkit bewahre, sind ein RS-232-Seriell-zu-USB-Konverter und ein standardmäßiges serielles DB-9-Kabel. Diese können unverzichtbar sein, wenn Sie keine andere Möglichkeit haben, auf ein Gerät zuzugreifen. Möglicherweise müssen Sie einen neuen Router bereitstellen, der noch nicht für Ihr Netzwerk konfiguriert wurde. Möglicherweise müssen Sie eine Fehlerbehebung für eine Firewall-Appliance durchführen, auf die über SSH nicht mehr zugegriffen werden kann. Insbesondere in einer „Lights-out“-Umgebung können neue Server über eine Verwaltungskarte verfügen, die initialisiert werden muss. Eine serielle Verbindung bietet einen direkten Pfad zu einer Konsole, um diese Aufgaben auszuführen.

Ich werde in diesem Beispiel eine Netgate-Appliance verwenden. Dies sind Firewalls, die keine Maus, Tastatur, Monitor oder andere GUI-Funktionen haben. Sie werden im Allgemeinen als „kopflos“ bezeichnet.

Serielle Kommunikation

Um eine serielle Verbindung mit einem Gerät herzustellen, benötigen Sie Hardware, die das RS-232-Protokoll unterstützt. Dies ist normalerweise ein neunpoliger serieller DB-9-Anschluss, der oft als seriell, comm oder Konsole bezeichnet wird. Die meisten älteren Computer haben mindestens einen. Die meisten Server haben sie noch, aber die meisten Laptops und Desktops nicht mehr.

Suchen Sie den seriellen Anschluss

Wenn Ihr System nicht bereits über eine serielle Schnittstelle verfügt, müssen Sie einen Konverter wie den von mir erwähnten verwenden. Wenn Sie den PL2303-Konverter an einen USB-Port Ihres Computers anschließen, registriert ihn der Linux-Kernel als USB-TTY-Gerät.

Es gibt mehrere Befehle, die Sie verwenden können, um Ihr System nach seiner Konfiguration des seriellen Anschlusses abzufragen. Hier sind ein paar Beispiele:

# dmesg |grep tty
[252464.891372] usb 6-1: pl2303 converter now attached to ttyUSB0

# setserial -g /dev/ttyUSB[0123]
/dev/ttyUSB0, UART: 16654, Port: 0x0000, IRQ: 0

# ls /dev/serial/by-id/
usb-Prolific_Technology_Inc._USB-Serial_Controller_D-if00-port0

In meinem Fall erkennt es den Konverter als einen pl2303-Konverter (oder einen seriellen USB-Controller von Prolific Technology).

Schließen Sie ein serielles Kabel an

Schließen Sie Ihr serielles Kabel zwischen dem Konverter und dem seriellen Anschluss am Gerät an.

Mit Tio anmelden

Im Laufe der Jahre habe ich verschiedene Tools wie Minicom und Screen verwendet. Tio ist ein neueres und einfacheres Tool, das als „einfache TTY-Terminal-E/A-Anwendung“ beschrieben wird. Es ist in den meisten Linux-Distributionen, FreeBSD und OpenWRT sowie in einem Snap-Paket verfügbar. Ich habe das Standardpaket-Tool verwendet, um Version 1.32 auf meinem Red Hat Enterprise Linux 8.1-Server zu installieren:

# dnf info tio
# dnf install tio

Initialisieren Sie die Verbindung mit tio Befehl. Meiner Erfahrung nach brauchte Tio keine vorherige Konfiguration; es funktionierte out-of-the-box. Stellen Sie sicher, dass Sie den richtigen Gerätepfad haben, wie oben gezeigt:

# tio /dev/ttyUSB0

# tio /dev/serial/by-id/usb-Prolific_Technology_Inc._USB-Serial_Controller_D-if00-port0

Mehr über Systemadministratoren

  • Sysadmin-Blog aktivieren
  • Das automatisierte Unternehmen:ein Leitfaden zur IT-Verwaltung mit Automatisierung
  • eBook:Ansible-Automatisierung für SysAdmins
  • Geschichten aus der Praxis:Ein Leitfaden für Systemadministratoren zur IT-Automatisierung
  • eBook:Ein Leitfaden zu Kubernetes für SREs und Systemadministratoren
  • Neueste Sysadmin-Artikel

Sie können Strg+t verwenden Befehlssequenz zur Interaktion mit Tio. Beispiel:Strg+t+? listet die verfügbaren Befehle auf und Strg+t+q beendet Tio und bringt Sie zurück zu Ihrer Linux-Eingabeaufforderung.

Schlussfolgerung

Wir denken heutzutage selten über serielle Kommunikation nach oder verwenden sie sogar, aber sie ist immer noch nützlich. Die Mitarbeiter im Rechenzentrum müssen noch damit vertraut sein.

Rechenzentren können abgelegen sein, und sobald Sie sich darin befinden, sollten Sie sicherstellen, dass Sie über alle geeigneten Tools verfügen. Neben einem guten Linux-Laptop empfehle ich natürlich die oben genannten Dinge, um diese seriell aktivierten Geräte bei Bedarf zu verwalten.


Linux
  1. Kommunikation zwischen Prozessen in Linux:Sockets und Signale

  2. Kommunikation zwischen Prozessen in Linux:Shared Storage

  3. Linux – Raspberrypi Serielle Schnittstelle?

  4. Linux – So finden Sie Prozesse über die serielle Schnittstelle?

  5. Typora – Ein moderner Minimal-Markdown-Editor für Linux

5 moderne Alternativen zu wichtigen Linux-Befehlszeilentools

Verwalten von Swap im modernen Linux-System

Sysadmin-Tools:exa, eine moderne Alternative zu ls in Linux

TrueCrypt auf modernen Linux-Distributionen

40 nützliche Linux-Netzwerkbefehle für moderne SysAdmins

Slackware 15 ist ein Rückblick auf Old-School-Linux mit einem modernen Kick