Erzwingen Sie die Verwendung von Bash als Shell für die Anmeldung an der seriellen Konsole

Erzwingen Sie die Verwendung von Bash als Shell für die Anmeldung an der seriellen Konsole

Ich verwende Ubuntu Server 20.04 ohne Monitor und greife normalerweise per SSH remote darauf zu. Es ist jedoch auch über serielle RS232 mit einem Terminalserver (einem Digi CM 16) für die Kernel-Konsolenprotokollierung und als Backup-Verwaltungsmethode verbunden.

Das ist der Punkt: Ich verwende ZSH mit einigen ultra-schicken Add-Ons. Funktioniert super über SSH. Seriell nicht so sehr. Die Logdateien vom Terminalserver sind aufgrund der vielen Steuerzeichen, die ZSH um sich wirft, normalerweise nicht sehr kohärent.

Wie erzwinge ich die Verwendung von BASH bei der seriellen Konsolenanmeldung, obwohl die Standard-Shell meines Benutzers ZSH ist?

Das möchte ich:

Vorgehensweise beim Einloggen Shell, die ich erhalten möchte
SSH ZSH (Benutzerstandard)
Anmeldung bei der seriellen Konsole BASH
Schließen Sie Monitor und Tastatur an und melden Sie sich physisch an ist mir egal

Ich habe versucht, die gettyEinstellungen für zu ändern ttyS0, und es scheint, dass die einzige Möglichkeit darin besteht, die standardmäßige ausführbare Anmeldedatei von zu ändern /bin/login, aber ich glaube nicht, dass ich das tun möchte? Ich möchte mich immer noch mit einem Passwort anmelden, möchte nur die Shell ändern, die nach der Anmeldung gestartet wirdNurbei der Anmeldung vonttyS0

Antwort1

Der einfachste Weg besteht wahrscheinlich darin, Code in ~/.zprofile hinzuzufügen, um festzustellen, ob Sie sich auf der seriellen Leitung befinden, und dann Maßnahmen zu ergreifen.

Sie könnten von dort aus Bash ausführen, aber alternativ könnten Sie störende ZSH-Erweiterungen deaktivieren, die Eingabeaufforderung auf etwas Einfacheres zurücksetzen und trotzdem ZSH verwenden.

Beachten Sie jedoch, dass Sie, während Sie damit spielen, eine zweite Shell geöffnet halten sollten (oder über ein Hintertürkonto verfügen), für den Fall, dass Sie etwas beschädigen, das verhindert, dass Ihr Konto auf eine Shell zugreifen kann.

verwandte Informationen