Verwenden der seriellen Konsole für den Zugriff auf GRUB und den Einzelbenutzermodus

GRand Unified Bootloader (GRUB) ist wahrscheinlich das erste, was Beim Starten eines virtuellen Computers (VM) angezeigt wird. Da sie angezeigt wird, bevor das Betriebssystem gestartet wurde, kann nicht über SSH auf GRUB zugegriffen werden. In GRUB können Sie ihre Startkonfiguration unter anderem so ändern, dass sie im Einzelbenutzermodus gestartet wird.

Der Einzelbenutzermodus ist eine minimale Umgebung mit minimaler Funktionalität. Sie kann hilfreich sein, um Startprobleme, Dateisystemprobleme oder Netzwerkprobleme zu untersuchen. Im Hintergrund können weniger Dienste ausgeführt werden, und je nach Ausführungslevel wird ein Dateisystem möglicherweise nicht einmal automatisch bereitgestellt.

Der Einzelbenutzermodus ist auch in Situationen hilfreich, in denen Ihr virtueller Computer möglicherweise so konfiguriert ist, dass er nur die SSH-Schlüssel für die Anmeldung akzeptiert. In diesem Fall können Sie möglicherweise den Einzelbenutzermodus verwenden, um ein Konto mit Kennwortauthentifizierung zu erstellen.

Hinweis

Der Dienst "Serielle Konsole" ermöglicht nur Benutzern mit Mitwirkenden oder höheren Berechtigungen den Zugriff auf die serielle Konsole eines virtuellen Computers.

Um in den Einzelbenutzermodus zu wechseln, geben Sie BEIM Starten des virtuellen Computers GRUB ein, und ändern Sie die Startkonfiguration in GRUB. Ausführliche Anweisungen zur Eingabe von GRUB finden Sie im nächsten Abschnitt. Wenn Ihr virtueller Computer für die Anzeige von GRUB konfiguriert wurde, können Sie im Allgemeinen die Schaltfläche "Neustart" in der seriellen Konsole des virtuellen Computers verwenden, um den virtuellen Computer neu zu starten und GRUB anzeigen.

Die Schaltfläche "Neustart der seriellen Linux-Konsole"

Allgemeiner ZUGRIFF auf GRUB

Starten Sie den virtuellen Computer neu, während der Bereich "Serielle Konsole" geöffnet ist, um auf GRUB zu zugreifen. Bei einigen Verteilungen ist eine Tastatureingabe erforderlich, um GRUB anzeigen zu können, während andere AUTOMATISCH FÜR einige Sekunden ANGEZEIGT werden, damit die Benutzertastatureingabe das Timeout abbricht.

Um auf den Einzelbenutzermodus zugreifen zu können, müssen Sie sicherstellen, dass GRUB auf Ihrem virtuellen Computer aktiviert ist. Je nach Verteilung sind möglicherweise einige Setuparbeiten erforderlich, um sicherzustellen, dass GRUB aktiviert ist. Verteilungsspezifische Informationen finden Sie im nächsten Abschnitt.

Neustarten des virtuellen Computers für den Zugriff auf GRUB in der seriellen Konsole

Sie können den virtuellen Computer in der seriellen Konsole neu starten, indem Sie mit der Maus auf die Schaltfläche "Neustart" zeigen und dann "VM neu starten" auswählen. Am unteren Rand des Bereichs wird eine Benachrichtigung über den Neustart angezeigt.

Sie können den virtuellen Computer auch neu starten, indem Sie einen SysRq"b"-Befehl ausführen, wenn SysRq aktiviert ist. Informationen dazu, was Sie bei einem Neustart von GRUB erwarten können, finden Sie in den verteilungsspezifischen Anweisungen in den nächsten Abschnitten.

Neustart der seriellen Linux-Konsole

Allgemeiner Zugriff auf den Einzelbenutzermodus

Möglicherweise benötigen Sie manuellen Zugriff auf den Einzelbenutzermodus, wenn Sie kein Konto mit Kennwortauthentifizierung konfiguriert haben. Ändern Sie die KONFIGURATION von GRUB so, dass sie manuell in den Einzelbenutzermodus wechselt. Weitere Anweisungen finden Sie im Abschnitt "Zurücksetzen oder Hinzufügen eines Kennworts mithilfe des Einzelbenutzermodus".

Wenn der virtuelle Computer nicht gestartet werden kann, werden Sie bei Verteilungen häufig automatisch in den Einzelbenutzer- oder Notfallmodus versetzt. Andere Verteilungen erfordern jedoch eine zusätzliche Einrichtung, z. B. das Einrichten eines Stammkennworts, bevor Sie automatisch in den Einzelbenutzer- oder Notmodus versetzt werden können.

Verwenden des Einzelbenutzermodus zum Zurücksetzen oder Hinzufügen eines Kennworts

Nachdem Sie sich im Einzelbenutzermodus befinden, fügen Sie wie folgt einen neuen Benutzer mit Sudoberechtigungen hinzu:

  1. Ausführen, useradd <username> um einen Benutzer hinzuzufügen.
  2. Führen Sie sudo usermod -a -G sudo <username> diese Aus, um dem neuen Benutzer Stammberechtigungen zu erteilen.
  3. Wird passwd <username> zum Festlegen des Kennworts für den neuen Benutzer verwendet. Sie können sich dann als der neue Benutzer anmelden.

Zugriff für Red Hat Enterprise Linux (RHEL)

Wenn RHEL nicht normal gestartet werden kann, werden Sie automatisch in den Einzelbenutzermodus versetzt. Wenn Sie jedoch keinen Stammzugriff für den Einzelbenutzermodus eingerichtet haben, verfügen Sie nicht über ein Stammkennwort und können sich nicht anmelden. Es gibt eine Problemumgehung (siehe Abschnitt "Manuelles Wechseln in den Einzelbenutzermodus in RHEL"), wir empfehlen jedoch, dass Sie den Stammzugriff zunächst einrichten.

AUFHH-Zugriff in RHEL

RHEL ist im box-out-Box-fähigen BOX-fähigen RHEL-Gerät. Starten Sie zum Eingeben von GRUB ihren virtuellen Computer neu, indem Sie es ausführen, und drücken Sie sudo reboot dann eine beliebige Taste. Der BEREICH "GRUB" sollte angezeigt werden. Ist dies nicht der Fall, stellen Sie sicher, dass die folgenden Zeilen in der DATEI GRUB vorhanden sind ( /etc/default/grub ):

Für RHEL 8

Hinweis

Red Hat empfiehlt die Verwendung von Grubby zum Konfigurieren von Kernelbefehlszeilenparametern in RHEL 8+. Es ist derzeit nicht möglich, die Timeout- und Terminalparameter mit "grubby" zu aktualisieren. Führen Sie zum Ändern des GRUB_CMDLINE_LINUX argument für alle Starteinträge grubby --update-kernel=ALL --args="console=ttyS0,115200 console=tty1 console=ttyS0 earlyprintk=ttyS0 rootdelay=300" aus. Weitere Details finden Sie hier.

GRUB_TIMEOUT=5
GRUB_TERMINAL="serial console"
GRUB_CMDLINE_LINUX="console=tty1 console=ttyS0 earlyprintk=ttyS0 rootdelay=300"

Für RHEL 7

GRUB_TIMEOUT=5
GRUB_TERMINAL_OUTPUT="serial console"
GRUB_CMDLINE_LINUX="console=tty1 console=ttyS0,115200n8 earlyprintk=ttyS0,115200 rootdelay=300 net.ifnames=0"

Hinweis

Red Hat bietet außerdem Dokumentation zum Starten in den Modus "Im Abgesicherten Modus", "Notrufmodus" oder "Debugmodus" und zum Zurücksetzen des Stammkennworts. Anweisungen finden Sie unter "Terminalmenübearbeitung beim Start".

Einrichten des Stammzugriffs für den Einzelbenutzermodus in RHEL

Der Stammbenutzer ist standardmäßig deaktiviert. Für den Einzelbenutzermodus in RHEL muss der Stammbenutzer aktiviert sein. Wenn Sie den Einzelbenutzermodus aktivieren müssen, befolgen Sie die folgenden Anweisungen:

  1. Melden Sie sich über SSH beim Red Hat System an.
  2. Wechseln Sie zum Stammverzeichnis.
  3. Aktivieren Sie das Kennwort für den Stammbenutzer wie folgt:
    • Ausführen passwd root (Festlegen eines starken Stammkennworts).
  4. Stellen Sie sicher, dass sich der Stammbenutzer nur über ttyS0 anmelden kann, indem Sie folgendes tun: a. Führen edit /etc/ssh/sshd_config Sie aus, und stellen Sie sicher, dass PermitRootLogIn auf festgelegt no ist. b. Wird edit /etc/securetty file ausgeführt, um die Anmeldung nur über ttyS0 zu erlauben.

Wenn das System nun im Einzelbenutzermodus gestartet wird, können Sie sich mit dem Stammkennwort anmelden.

Alternativ können Sie für RHEL 7.4+ oder 6.9+, um den Einzelbenutzermodus in den ANWEISUNGEN-Eingabeaufforderungen zu aktivieren, siehe "Starten im Einzelbenutzermodus".

Manuelles Wechseln in den Einzelbenutzermodus in RHEL

Wenn Sie MITHILFE der vorstehenden Anweisungen DIE GRUB und den Stammzugriff eingerichtet haben, können Sie wie folgt in den Einzelbenutzermodus wechseln:

  1. Drücken Sie esc, wenn Sie den virtuellen Computer neu starten, um GRUB ein eingaben.

  2. Drücken Sie in GRUB E, um das Betriebssystem zu bearbeiten, in dem Sie starten möchten. Das Betriebssystem wird in der Regel in der ersten Zeile aufgeführt.

  3. Suchen Sie die Kernelzeile. In Azure beginnt es mit linux16.

  4. Drücken Sie STRG+E, um zum Ende der Zeile zu wechseln.

  5. Fügen Sie am Ende der Zeile "systemd.unit=en.target" hinzu.

    Mit dieser Aktion werden Sie in den Einzelbenutzermodus gestartet. Wenn Sie den Notrufmodus verwenden möchten, fügen Sie "systemd.unit=emergency.target" am Ende der Zeile hinzu (anstelle von "systemd.unit=emergency.target").

  6. Drücken Sie STRG+X, um mit den angewendeten Einstellungen zu beenden und neu zu starten.

    Sie werden aufgefordert, das Administratorkennwort einzugeben, bevor Sie in den Einzelbenutzermodus wechseln können. Dieses Kennwort haben Sie in den vorherigen Anweisungen erstellt.

    Animiertes Bild mit einer Befehlszeilenschnittstelle. Der Benutzer wählt einen Server aus, sucht das Ende der Kernelzeile und gibt dann den angegebenen Text ein.

In den Einzelbenutzermodus wechseln, ohne dass das Stammkonto in RHEL aktiviert ist

Wenn Sie den Stammbenutzer nicht durch Befolgen der früheren Anweisungen aktiviert haben, können Sie Ihr Stammkennwort weiterhin zurücksetzen, indem Sie die folgenden Schritte durchführen:

Hinweis

Wenn Sie SELinux verwenden, müssen Sie beim Zurücksetzen des Stammkennworts die zusätzlichen Schritte ausführen, die in der Red Hat -Dokumentation beschrieben sind.

  1. Drücken Sie die ESC-Taste, wenn Sie den virtuellen Computer neu starten, um GRUB ein- oder aus.

  2. Drücken Sie in GRUB E, um das Betriebssystem zu bearbeiten, in dem Sie starten möchten. Das Betriebssystem wird in der Regel in der ersten Zeile aufgeführt.

  3. Suchen Sie die Kernelzeile. In Azure beginnt es mit linux16.

  4. Fügen Sie am Ende der Zeile "rd.break" am Ende der Zeile hinzu. Lassen Sie einen Abstand zwischen der Kernelzeile und rd.break.

    Diese Aktion unterbricht den Startvorgang, bevor die Steuerung an übergeben wird, wie in der initramfs systemd Dokumentation "Red Hat" beschrieben.

  5. Drücken Sie STRG+X, um mit den angewendeten Einstellungen zu beenden und neu zu starten.

    Nach dem Neustart werden Sie mit einem schreibgeschützten Dateisystem in den Notfallmodus versetzt.

  6. Geben Sie in der Shell ein, mount -o remount,rw /sysroot um das Stammdateisystem mit Lese-/Schreibberechtigungen erneut zumounten.

  7. Nachdem Sie in den Einzelbenutzermodus gestartet haben, wechseln Sie chroot /sysroot in den sysroot Jail.

  8. Sie sind jetzt im Stammverzeichnis. Sie können Ihr Stammkennwort zurücksetzen, indem Sie die vorherigen Anweisungen eingeben und dann in passwd den Einzelbenutzermodus wechseln.

  9. Nachdem Sie fertig sind, starten Sie reboot -f den Computer neu.

Animiertes Bild mit einer Befehlszeilenschnittstelle. Der Benutzer wählt einen Server aus, sucht das Ende der Kernelzeile und gibt die angegebenen Befehle ein.

Hinweis

Wenn Sie die vorstehenden Anweisungen ausführen, werden Sie in die Notfallshell eingeseniert, sodass Sie auch Aufgaben wie die Bearbeitung ausführen fstab können. Es wird jedoch normalerweise vorschlagen, das Stammkennwort zurückzusetzen und es für den Einzelbenutzermodus zu verwenden.

Zugriff für CentOS

Ähnlich wie Red Hat Enterprise Linux erfordert der Einzelbenutzermodus in CentOS, dass GRUB und der Stammbenutzer aktiviert sind.

ZUGRIFF AUF DEM in CentOS

CentOS ist im box-out-fähigen BOX-fähigen BOX-Gerät verfügbar. Starten Sie zum Eingeben von GRUB ihren virtuellen Computer neu, indem Sie sie eingeben, und drücken Sie sudo reboot dann eine beliebige Taste. Mit dieser Aktion wird der BEREICH "GRUB" angezeigt.

Einzelbenutzermodus in CentOS

Um den Einzelbenutzermodus in CentOS zu aktivieren, befolgen Sie die früheren Anweisungen für RHEL.

Zugriff für Ubuntu

Für Ubuntu-Images ist kein Stammkennwort erforderlich. Wenn das System in den Einzelbenutzermodus startet, können Sie es ohne zusätzliche Anmeldeinformationen verwenden.

AUFL nkungszugriff in Ubuntu

Drücken und halten Sie esc, während der virtuelle Computer gestartet wird, um auf GRUB zu zugreifen.

Standardmäßig wird in Ubuntu-Bildern möglicherweise nicht automatisch der BEREICH "GRUB" angezeigt. Sie können die Einstellung wie folgt ändern:

  1. Öffnen Sie in einem Texteditor die Datei /etc/default/grub.d/50-cloudimg-settings.cfg.

  2. Ändern Sie GRUB_TIMEOUT den Wert in einen Wert, der nicht null ist.

  3. Öffnen Sie in einem Texteditor /etc/default/grub.

  4. Kommentieren Sie die Zeile GRUB_HIDDEN_TIMEOUT=1 aus.

  5. Stellen Sie sicher, dass eine Zeile GRUB_TIMEOUT_STYLE=menu vor ist.

  6. Führen Sie sudo update-grub .

Einzelbenutzermodus in Ubuntu

Wenn Ubuntu nicht normal gestartet werden kann, werden Sie automatisch in den Einzelbenutzermodus versetzt. Gehen Sie wie folgt vor, um manuell in den Einzelbenutzermodus zu wechseln:

  1. Drücken Sie in GRUB E, um ihren Starteintrag (den Ubuntu-Eintrag) zu bearbeiten.
  2. Suchen Sie nach der Zeile, die mit Linux beginnt, und suchen Sie dann nach Ro.
  3. Add single after ro, ensuring there is a space before and after single.
  4. Drücken Sie STRG+X, um mit diesen Einstellungen neu zu starten und in den Einzelbenutzermodus zu wechseln.

Verwenden von GRUB zum Aufrufen von Bash in Ubuntu

Nachdem Sie die vorstehenden Anweisungen ausprobiert haben, kann es eine Situation (z. B. ein vergessenes Stammkennwort) geben, in der Sie weiterhin nicht auf den Einzelbenutzermodus in Ihrer Ubuntu-VM zugreifen können. Sie können dem Kernel auch mitteilen, dass er als "init" und nicht als /bin/bash "systeminit" ausgeführt werden soll. Mit dieser Aktion erhalten Sie eine Bash-Shell und ermöglichen die Systemwartung. Befolgen Sie die folgenden Anweisungen:

  1. Drücken Sie in GRUB E, um ihren Starteintrag (den Ubuntu-Eintrag) zu bearbeiten.

  2. Suchen Sie nach der Zeile, die mit Linux beginnt, und suchen Sie dann nach Ro.

  3. Ersetzen Sie ro durch rw init=/bin/bash.

    Mit dieser Aktion wird Ihr Dateisystem mit Lese-/Schreibzugriff und als /bin/bash Initprozess verwendet.

  4. Drücken Sie STRG+X, um mit diesen Einstellungen neu zu starten.

Zugriff für CoreOS

Der Einzelbenutzermodus in CoreOS erfordert die Aktivierung von GRUB.

ZUGRIFF AUF DEM in CoreOS

Drücken Sie eine beliebige Taste, während der virtuelle Computer gestartet wird, um auf GRUB zu zugreifen.

Einzelbenutzermodus in CoreOS

Wenn CoreOS nicht normal gestartet werden kann, werden Sie automatisch in den Einzelbenutzermodus versetzt. Gehen Sie wie folgt vor, um manuell in den Einzelbenutzermodus zu wechseln:

  1. Drücken Sie in GRUB die E-Taste, um den Starteintrag zu bearbeiten.

  2. Suchen Sie nach der Zeile, die mit linux$ beginnt. Es sollten zwei Instanzen der Zeile vorkommen, die jeweils in einer anderen gekapselten, wenn... else-Klausel.

  3. Fügen Sie "coreos.autologin=ttyS0" am Ende jeder Linux$-Zeile an.

  4. Drücken Sie STRG+X, um mit diesen Einstellungen neu zu starten und in den Einzelbenutzermodus zu wechseln.

Zugriff auf SUSE SLES

Neuere Images von SLES 12 SP3+ ermöglichen den Zugriff über die serielle Konsole, wenn das System in den Notfallmodus startet.

AUF -Zugriff in SUSE SLES

Für den ZUGRIFF auf DEN GRUB in SLES ist eine Bootloaderkonfiguration über YaST erforderlich. Gehen Sie wie folgt vor, um die Konfiguration zu erstellen:

  1. Verwenden Sie SSH, um sich bei Ihrem SLES-VM-Computer an- und dann sudo yast bootloader ausführen. Drücken Sie die TAB-TASTE, drücken Sie die EINGABETASTE, und navigieren Sie dann mit den Pfeiltasten durch das Menü.

  2. Wechseln Sie zu Kernelparameter, und aktivieren Sie dann das Kontrollkästchen serielle Konsole verwenden.

  3. Hinzufügen serial --unit=0 --speed=9600 --parity=no zu den Konsolenargumenten.

  4. Drücken Sie F10, um Ihre Einstellungen zu speichern und zu beenden.

  5. Starten Sie zum Eingeben von GRUB Ihren virtuellen Computer neu, und drücken Sie während der Startsequenz eine beliebige Taste, damit der BEREICH "GRUB" angezeigt wird.

    Das Standardtimeout für GRUB ist 1s. Sie können diese Einstellung ändern, indem Sie die Variable GRUB_TIMEOUT in der Datei /etc/default/grub ändern.

Initialisieren der Konfiguration des Startladefelds

Einzelbenutzermodus in SUSE SLES

Wenn SLES nicht normal gestartet werden kann, werden Sie automatisch in die Notfallshell gelöscht. Gehen Sie wie folgt vor, um die Notfallshell manuell ein- und ein- oder aus der Notrufshell zu entfernen:

  1. Drücken Sie in GRUB E, um den Starteintrag (den SLES-Eintrag) zu bearbeiten.

  2. Suchen Sie nach der Kernelzeile, die mit Linux beginnt.

  3. Fügen Sie "systemd.unit=emergency.target" am Ende der Kernelzeile an.

  4. Drücken Sie STRG+X, um mit diesen Einstellungen neu zu starten, und geben Sie die Notfallshell ein.

    Hinweis

    Diese Aktion stürzt Sie in die Notfallshell mit einem schreibgeschützten Dateisystem. Um Dateien zu bearbeiten, müssen Sie das Dateisystem erneut mit Lese-/Schreibberechtigungen wiederherstellen. Geben Sie dazu mount -o remount,rw / die Shell ein.

Zugriff für Oracle Linux

Ähnlich wie Red Hat Enterprise Linux erfordert der Einzelbenutzermodus in Oracle Linux, dass GRUB und der Stammbenutzer aktiviert sind.

ZUGREIFEN AUF DEN ZUGRIFF in Oracle Linux

Oracle Linux ist im Box-Out-Box-System mit BOX-aktivierter INSTALLATION erhältlich. Starten Sie zum Eingeben von GRUB Ihren virtuellen Computer neu, indem Sie es ausführen, und drücken Sie sudo reboot dann esc. Mit dieser Aktion wird der BEREICH "GRUB" angezeigt. Wenn der BEREICH "GRUB" nicht angezeigt wird, stellen Sie sicher, dass der Wert der Zeile eine serielle Konsole (d. h. GRUB_TERMINAL ) enthält. GRUB_TERMINAL="serial console" Neuerstellen von GRUB mit grub2-mkconfig -o /boot/grub/grub.cfg .

Einzelbenutzermodus in Oracle Linux

Um den Einzelbenutzermodus in Oracle Linux zu aktivieren, befolgen Sie die früheren Anweisungen für RHEL.

Nächste Schritte

Weitere Informationen zu Serial Console finden Sie unter: