Übergang von Oracle® Solaris 10 zu Oracle Solaris 11.2

Druckansicht beenden

Aktualisiert: Dezember 2014
 
 

Booten eines Systems zum Recovery

Wenn ein Oracle Solaris 11-System nicht mehr gebootet werden kann, müssen Sie wahrscheinlich einen Recovery-Bootvorgang durchführen. Sie können von dem Installationsdatenträger booten oder können eine Backup-BU booten.

Wenn Sie ein vollständiges System-Recovery (Bare Metal Recovery) durchführen müssen, lesen Sie How to Create a Recovery Archive in Using Unified Archives for System Recovery and Cloning in Oracle Solaris 11.2 .

    Die folgenden Fehler- und Recovery-Szenarios sind ähnlich wie in früheren Releases:

  • Mit dem Befehl boot –a können Sie ein Problem in der Datei /etc/system umgehen. Bei der entsprechenden Aufforderung verwenden Sie eine Syntax wie die Folgende:

    Name of system file [/etc/system]:  /dev/null

    Drücken Sie bei den anderen Eingabeaufforderungen die Eingabetaste nach Bedarf.

  • Eine Backup-BU wird automatisch bei den meisten pkg update-Vorgängen erstellt. Mit dieser Funktion können Sie wieder mit einer früheren BU booten, falls es während des Imageupdateprozesses zu Fehlern kommt. Sie sollten eine Backup-BU erstellen, bevor Sie eine Änderung an der Systemkonfiguration vornehmen.

    # beadm create solaris-backup
    # beadm list
    BE             Active Mountpoint Space  Policy Created
    --             ------ ---------- -----  ------ -------
    solaris        R      -          4.01G  static 2013-02-08 16:53
    solaris-backup N      /          47.95M static 2013-02-11 10:48 

    In So wird von einer Backup-BU für ein Recovery gebootet werden die einzelnen Schritte beim Booten aus einer Backup-BU beschrieben.

  • Booten Sie von dem Installationsdatenträger oder von einem Installationsserver über das Netzwerk für ein Recovery nach einem Problem, das das Booten des Systems verhindert, oder für ein Recovery bei einem verlorenen root-Passwort.


    Hinweis -  Bei SPARC-basierten Systemen ersetzt der Befehl boot net:dhcp den Befehl boot net, der in Oracle Solaris 10-Releases verwendet wird.
  • Booten Sie ein System im Einzelbenutzermodus, um ein geringfügiges Problem zu lösen, wie die Korrektur des Root-Shelleintrags in der Datei /etc/passwd oder den Wechsel eines NIS-Servers.

  • Wenn ein Bootkonfigurationsproblem gelöst werden muss, umfasst dies im Allgemeinen das Importieren des Root-Pools, das Mounten der BU und die Behebung des Problems, wie die Neuinstallation eines beschädigten x86-Bootladeprogramms.

So wird von einer Backup-BU für ein Recovery gebootet

Das Booten des Failsafe-Archivs wird bei SPARC- und x86-Plattformen nicht mehr unterstützt. Wenn möglich verwenden Sie aktuelle Backup-BUs zum Recovery. BUs sind bootfähige Instanzen des Oracle Solaris-Images, plus eventuellen anderen Anwendungssoftwarepackages, die in diesem Image installiert sind. Mehrere BUs reduzieren das Risiko, wenn Software aktualisiert wird, weil die Backup-BU die ursprüngliche BU erhält.

Sie können eine neue BU basierend auf einer aktiven oder inaktiven Bootumgebung erstellen. Sie können eine neue BU auch basierend auf einem Klon der ursprünglichen BU erstellen. Ein Klon kopiert das Root-Dataset und alle Daten hierarchisch unter dem Haupt-Root-Dataset der ursprünglichen BU. Siehe Creating and Administering Oracle Solaris 11.2 Boot Environments .

Wenn das System nicht von der aktiven BU bootet, wählen Sie eine Backup-BU, von der gebootet werden soll.

  • Booten Sie wie folgt von einer Backup-BU:
    • SPARC: Booten Sie das System so, dass Sie eine alternative oder Backup-BU wählen können.
      1. Booten Sie mit dem Befehl boot –L.
        ok boot -L
      2. Wählen Sie eine alternative oder Backup-BU.
        Boot device: /pci@7c0/pci@0/pci@1/pci@0,2/LSILogic,sas@2/disk@0,0:a
        File and args: -L
        1 Oracle Solaris 11.2 SPARC
        2 solaris-backup
        Select environment to boot: [ 1 - 2 ]: 2

        In der obigen Ausgabe ist die aktive BU Oracle Solaris 11.2 SPARC, die wahrscheinlich nicht mit dem tatsächlichen BU-Namen übereinstimmt, jedoch die aktuelle BU darstellt.

      3. Booten Sie die Backup-BU.

        Nachdem Sie die BU gewählt haben, von der gebootet werden soll, identifizieren Sie den Bootpfad auf dem Bildschirm, und geben Sie diese Informationen bei der Eingabeaufforderung ein.

        To boot the selected entry, invoke:
        boot [<root-device>] -Z rpool/ROOT/solaris-backup
        
        Program terminated
        {0} ok boot -Z rpool/ROOT/solaris-backup

        Wenn das System nicht bootet, prüfen Sie die zusätzlichen Boot-Recovery-Schritte in So booten Sie ein System zum Recovery.

    • x86: Booten Sie das System, um eine alternative oder Backup-BU aus dem GRUB-Menü zu ermitteln.
      1. Wenn das GRUB-Menü angezeigt wird, identifizieren Sie die Backup-BU.
      2. Wählen Sie die Backup-BU, und drücken Sie die Eingabetaste, um diesen Eintrag zu booten.

        Wenn das System nicht von der Backup-BU bootet, prüfen Sie die zusätzlichen Boot-Recovery-Schritte in So booten Sie ein System zum Recovery.

So booten Sie ein System zum Recovery

  1. Wählen Sie die entsprechende Boot-Methode:
    • x86: Live Media – Booten Sie von dem Installationsdatenträger, und verwenden Sie ein GNOME-Terminal für die Wiederherstellungsprozedur.

    • SPARC: Textbasierte Installation – Booten Sie von dem Installationsdatenträger oder aus dem Netzwerk, und wählen Sie die Option 3 Shell aus dem Bildschirm der textbasierten Installation.

    • x86: Textbasierte Installation – Wählen Sie im GRUB-Menü den Booteintrag Textbasiertes Installationsprogramm und Befehlszeile, und wählen Sie dann die Option 3 Shell aus dem Bildschirm des textbasierten Installationsprogramms.

    • SPARC: Automatische Installation – Verwenden Sie den folgenden Befehl, um direkt aus einem Installationsmenü zu booten, mit dem Sie eine Shell beenden können.

      ok boot net:dhcp
    • x86: Automatische Installation – Das Booten aus einem Installationsserver in dem Netzwerk erfordert einen PXE-Boot. Wählen Sie den Eintrag Textbasiertes Installationsprogramm und Befehlszeile aus dem GRUB-Menü. Danach wählen Sie die Option 3 Shell aus dem Bildschirm der textbasierten Installation.

    Beispiel: Wählen Sie die Option 3 Shell nach dem Booten des Systems.

    1  Install Oracle Solaris
    2  Install Additional Drivers
    3  Shell
    4  Terminal type (currently xterm)
    5  Reboot
    
    Please enter a number [1]: 3
    To return to the main menu, exit the shell
    #
  2. Wählen Sie unter den folgenden Boot-Recovery-Problemen:
    • Lösen Sie das Problem einer ungültigen Root-Shell, indem Sie das System im Einzelbenutzermodus booten und den Shell-Eintrag in der Datei /etc/passwd korrigieren.

      Bearbeiten Sie bei einem x86-basierten System den gewählten Booteintrag in dem GRUB-Menü, und fügen Sie dann das –s-Kernel-Argument am Ende der Zeile $kernel hinzu.

      Bei einem SPARC-basierten System fahren Sie das System herunter und booten im Einzelbenutzermodus. Nachdem Sie sich als Root-Benutzer angemeldet haben, bearbeiten Sie die Datei /etc/passwd und korrigieren den Root-Shelleintrag.

      # init 0
      ok boot -s
      Boot device: /pci@7c0/pci@0/pci@1/pci@0,2/LSILogic,sas@2/disk@0,0:a ...
      SunOS Release 5.11 Version 11.2 64-bit
      Copyright (c) 1983, 2013, Oracle and/or its affiliates. All rights reserved.
      Booting to milestone "milestone/single-user:default".
      Hostname: systema.domain
      Requesting System Maintenance Mode
      SINGLE USER MODE
      
      Enter user name for system maintenance (control-d to bypass): root
      Enter root password (control-d to bypass): xxxxxxx
      single-user privilege assigned to root on /dev/console.
      Entering System Maintenance Mode
      
      Aug  3 15:46:21 su: 'su root' succeeded for root on /dev/console
      Oracle Corporation      SunOS 5.11      11.2    July 2013
      su: No shell /usr/bin/mybash.  Trying fallback shell /sbin/sh.
      root@systema.domain:~# TERM =vt100; export TERM
      root@systema.domain:~# vi /etc/passwd
      root@systema.domian:~# <Press control-d>
      logout
      svc.startd: Returning to milestone all.
    • Lösen Sie das Problem eines beschädigten Bootladeprogramms.

      Als Erstes booten Sie von dem Datenträger oder aus dem Netzwerk mit einer der in Schritt 1 aufgeführten Bootmethoden. Danach importieren Sie den Root-Pool.

      # zpool import -f rpool

      Hinweis -  Verwenden Sie die Option –f nur, wenn Sie sicher sind, dass Sie das Bootladeprogramm mit der Version auf dem Datenträger überschreiben möchten. Siehe Installing GRUB 2 by Using the bootadm install-bootloader Command in Booting and Shutting Down Oracle Solaris 11.2 Systems .

      Danach installieren Sie das Bootladeprogramm wie folgt neu:

      # bootadm install-bootloader -f  -P rpool

      wobei –f die Installation des Bootladeprogramms erzwingt und Prüfungen im Zusammenhang mit einem nicht erfolgten Downgrade der Version des Bootladeprogramms im System umgeht. Die Option –P gibt den Root-Pool an.

      Beenden Sie den Vorgang, und rebooten Sie das System.

      # exit
      1  Install Oracle Solaris
      2  Install Additional Drivers
      3  Shell
      4  Terminal type (currently sun-color)
      5  Reboot
      
      Please enter a number [1]: 5

      Vergewissern Sie sich, dass das System ordnungsgemäß bootet.

    • Auflösen eines unbekannten Root-Kennwortes, das Sie an der Anmeldung bei dem System hindert.

      Als Erstes müssen Sie von dem Datenträger oder aus dem Netzwerk booten, indem Sie eine der in Schritt 1 aufgeführten Bootmethoden verwenden. Danach importieren Sie den Root-Pool (rpool) und hängen die BU ein, um den Root-Kennworteintrag zu entfernen. Dieser Prozess ist bei SPARC- und x86-Plattformen identisch.

      # zpool import -f rpool
      # beadm list
      be_find_current_be: failed to find current BE name
      be_find_current_be: failed to find current BE name
      BE                 Active Mountpoint Space  Policy Created
      --                 ------ ---------- -----  ------ -------
      solaris            -      -          11.45M static 2011-10-22 00:30
      solaris-2          R      -          12.69G static 2011-10-21 21:04
      # mkdir /a
      # beadm mount solaris-2 /a
      # TERM=vt100
      # export TERM
      # cd /a/etc
      # vi shadow
      <Carefully remove the unknown password>
      # cd /
      # beadm umount solaris-2
      # halt
  3. Legen Sie das Root-Kennwort fest, indem Sie im Einzelbenutzermodus booten und das Kennwort festlegen.

    In diesem Schritt wird davon ausgegangen, dass Sie ein unbekanntes Root-Kennwort im vorherigen Schritt entfernt haben.

    • Bearbeiten Sie bei einem x86-basierten System den gewählten Booteintrag in dem GRUB-Menü, und fügen Sie dann die Option –s der Zeile $kernel hinzu.
    • Booten Sie bei einem SPARC-basierten System das System im Einzelbenutzermodus, melden Sie sich als Root an, und legen Sie das Root-Kennwort fest. Beispiel:
      ok boot -s
      
      Boot device: /pci@780/pci@0/pci@9/scsi@0/disk@0,0:a File and args: -s
      SunOS Release 5.11 Version 11.2 64-bit
      Copyright (c) 1983, 2012, Oracle and/or its affiliates. All rights
      reserved.
      Booting to milestone "milestone/single-user:default".
      Hostname: systema.domain
      Requesting System Maintenance Mode
      SINGLE USER MODE
      
      Enter user name for system maintenance (control-d to bypass): root
      Enter root password (control-d to bypass): <Press return>
      single-user privilege assigned to root on /dev/console.
      Entering System Maintenance Mode
      .
      .
      .
      root@sysadma.domain:~# passwd -r files root
      New Password: xxxxxx
      Re-enter new Password: xxxxxx
      passwd: password successfully changed for root
      root@systema.central:~# <Press control-d>
      logout
      svc.startd: Returning to milestone all.