Gestion des systèmes de fichiers ZFS dans Oracle®Solaris 11.2

Quitter la vue de l'impression

Mis à jour : Décembre 2014
 
 

Initialisation à des fins de récupération dans un environnement root ZFS

Suivez la procédure suivante si vous devez initialiser le système pour pouvoir récupérer un mot de passe root perdu ou tout problème similaire.

Initialisation d'un système à des fins de récupération

La procédure ci-dessous vous permet de résoudre un problème lié à un problème de déclencher d'initialisation corrompu ou à un mot de passe root. Si vous devez remplacer un disque dans un pool root, reportez-vous à la section Remplacement d'un disque dans un pool root ZFS (SPARC ou x86/VTOC). Si vous avez besoin d'effectuer une récupération complète du système (à chaud), reportez-vous Utilisation de Unified Archives pour la récupération du système et le clonage dans Oracle Solaris 11.2 .

  1. Sélectionnez la méthode d'initialisation appropriée :
    • x86 - Live Media : initialisez le système à partir du média d'installation et utilisez un terminal GNOME pour la procédure de récupération.

    • SPARC - Installation en mode texte : initialisez le système à partir du média d'installation ou du réseau, puis sélectionnez l'option 3 Shell dans l'écran d'installation en mode texte.

    • x86 - Installation en mode texte : dans le menu GRUB, sélectionnez l'entrée Text Installer and command line, puis l'option 3 Shell dans l'écran d'installation en mode texte.

    • SPARC - Programme d'installation automatisée : exécutez la commande suivante pour initialiser le système directement à partir d'un menu d'installation qui vous permet de quitter et d'accéder à un shell.

      ok boot net:dhcp
    • x86 - Installation automatisée : l'initialisation à partir d'un serveur d'installation sur le réseau requiert une initialisation PXE. Sélectionnez l'entrée Text Installer and command line du menu GRUB. Sélectionnez ensuite l'option 3 Shell à partir de l'écran d'installation en mode texte.

    Par exemple, une fois que le système est initialisé, sélectionnez l'option 3 Shell.

            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. Déterminez le problème impliquant une récupération par le biais d'une initialisation :
    • Résolution d'un problème lié à une erreur de shell root en initialisant le système en mode monoutilisateur et correction de l'entrée shell dans le fichier /etc/passwd

      Sur un système x86, modifiez l'entrée d'initialisation sélectionnée et ajoutez l'option –s.

      Par exemple, sur un système SPARC, éteignez le système et initialisez en mode monoutilisateur. Une fois connecté en tant qu'utilisateur root, modifiez le fichier /etc/passwd et réparez l'entrée de shell root.

      # 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: tardis.central
      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): xxxx
      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@tardis.central:~# TERM =vt100; export TERM
      root@tardis.central:~# vi /etc/passwd
      root@tardis.central:~# <Press control-d>
      logout
      svc.startd: Returning to milestone all.
    • Endommagé du chargeur de démarrage résoudre un problème.

      Tout d'abord, vous devez initialiser le système à partir d'un média ou du réseau à l'aide de l'une des méthodes d'initialisation répertoriées à l'étape 1. Ensuite, importez le pool root et corrigez une entrée GRUB, par exemple.

      x86# zpool import -f rpool

      Qu'ils soient réinstallés lors de l'aide du programme d'amorçage.

      x86# bootadm install-bootloader -f -P rpool

      où l'option –f force l'installation du programme d'amorçage et ignore les contrôles de version pour ne pas revenir à la version antérieure du programme d'amorçage sur le système. L'option –p permet d'indiquer le pool root.

      Vous pouvez utiliser la commande bootadm list-menu pour répertorier et modifier les entrées GRUB2. Pour plus d'informations, reportez-vous à bootadm(1M).

      Quitter et réinitialisez le système.

      x86# 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

      Confirmez la réussite de l'initialisation du système.

    • Résolvez un mot de passe root inconnu qui vous empêche de vous connecter au système.

      Tout d'abord, vous devez initialiser le système à partir d'un média ou du réseau à l'aide de l'une des méthodes d'initialisation répertoriées à l'étape 1. Ensuite, importez le pool root (rpool) et montez l'environnement d'initialisation afin de supprimer l'entrée de mot de passe root. Cette procédure est identique sur les plates-formes SPARC et x86.

      # 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   -      -          46.95M static 2012-07-20 10:25
      solaris-2 R      -          3.81G  static 2012-07-19 13:44
      # 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

      Accédez à l'étape suivante pour définir le mot de passe root.

  3. Définissez le mot de passe root en initialisant le système en mode monoutilisateur et en définissant le mot de passe.

    Cette étape suppose que vous avez supprimé un mot de passe root inconnu à l'étape précédente.

    Sur un système x86, modifiez l'entrée d'initialisation sélectionnée et ajoutez l'option –s.

    Sur une plate-forme SPARC, initialisez le système en mode monoutilisateur, connectez-vous en tant qu'utilisateur root, puis définissez le mot de passe root. Par exemple :

    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".
    
    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
    
    Jul 20 14:09:59 su: 'su root' succeeded for root on /dev/console
    Oracle Corporation      SunOS 5.11      11.2    July 2013
    root@tardis.central:~# passwd -r files root
    New Password: xxxxxx
    Re-enter new Password: xxxxxx
    passwd: password successfully changed for root
    root@tardis.central:~# <Press control-d>
    logout
    svc.startd: Returning to milestone all.