Ignorer les liens de navigation | |
Quitter l'aperu | |
![]() |
Administration d'Oracle Solaris 11.1 : Systèmes de fichiers ZFS Oracle Solaris 11.1 Information Library (Français) |
1. Système de fichiers Oracle Solaris ZFS (introduction)
2. Mise en route d'Oracle Solaris ZFS
3. Gestion des pools de stockage Oracle Solaris ZFS
4. Gestion des composants du pool root ZFS
Gestion des composants du pool root ZFS (présentation)
Configuration requise pour le pool root ZFS
Espace de pool root ZFS requis
Configuration requise pour le pool root ZFS
Gestion de votre pool root ZFS
Installation d'un pool root ZFS
Mise à jour de l'environnement d'initialisation ZFS
Montage d'un environnement d'initialisation alternatif
Configuration d'un pool root mis en miroir (SPARC ou x86/VTOC)
Configuration d'un pool root mis en miroir (x86/EFI (GPT))
Remplacement d'un disque dans un pool root ZFS (SPARC ou x86/VTOC)
Remplacement d'un disque dans un pool root ZFS (SPARC ou x86/EFI (GPT))
Création d'un environnement d'initialisation dans un pool root différent (SPARC ou x86/VTOC)
Création d'un environnement d'initialisation dans un pool root différent (SPARC ou x86/EFI (GPT))
Gestion de vos périphériques de swap et de vidage ZFS
Ajustement de la taille de vos périphériques de swap et de vidage ZFS
Dépannage du périphérique de vidage ZFS
Initialisation à partir d'un système de fichiers root ZFS
Initialisation à partir d'un disque alternatif d'un pool root ZFS mis en miroir
Initialisation à partir d'un système de fichiers root ZFS sur un système SPARC
Initialisation à partir d'un système de fichiers root ZFS sur un système x86
Initialisation à des fins de récupération dans un environnement root ZFS
5. Gestion des systèmes de fichiers Oracle Solaris ZFS
6. Utilisation des instantanés et des clones ZFS Oracle Solaris
7. Utilisation des ACL et des attributs pour protéger les fichiers Oracle Solaris ZFS
8. Administration déléguée de ZFS dans Oracle Solaris
9. Rubriques avancées Oracle Solaris ZFS
10. Dépannage d'Oracle Solaris ZFS et récupération de pool
11. Archivage des instantanés et récupération du pool root
12. Pratiques recommandées pour Oracle Solaris ZFS
Les systèmes SPARC et les systèmes x86 s'initialisent à l'aide d'une archive d'initialisation, qui est une image de système de fichiers contenant les fichiers requis pour l'initialisation. Lorsque vous initialisez un système à partir d'un système de fichiers root ZFS, les noms de chemin de l'archive d'initialisation et du fichier noyau sont résolus dans le système de fichiers root sélectionné pour l'initialisation.
L'initialisation à partir d'un système de fichiers ZFS diffère de celle effectuée à partir d'un système de fichiers UFS car avec ZFS, un spécificateur de périphérique identifie un pool de stockage par opposition à un seul système de fichiers root. Un pool de stockage peut contenir plusieurs systèmes de fichiers root ZFS amorçables. Lorsque vous initialisez un système à partir de ZFS, vous devez spécifier un périphérique d'initialisation et un système de fichiers root contenu dans le pool qui a été identifié par le périphérique d'initialisation.
Par défaut, le système de fichiers sélectionné pour l'initialisation est celui qui est identifié par la propriété bootfs du pool. Il est possible de passer outre à cette sélection par défaut en spécifiant un autre système de fichiers amorçable inclus dans la commande boot -Z sur un système SPARC ou en sélectionnant un autre périphérique d'initialisation à partir du BIOS sur un système x86.
Vous pouvez connecter un disque pour créer un pool root ZFS en miroir après l'installation. Pour plus d'informations sur la création d'un pool root mis en miroir, reportez-vous à la section Configuration d'un pool root mis en miroir (SPARC ou x86/VTOC).
Consultez les problèmes connus suivants relatifs aux pools root ZFS mis en miroir :
Vous pouvez effectuer l'initialisation à partir de divers périphériques d'un pool root ZFS mis en miroir. Selon la configuration matérielle, la mise à jour de la PROM ou du BIOS peut s'avérer nécessaire pour spécifier un périphérique d'initialisation différent.
Vous pouvez par exemple effectuer l'initialisation à partir de l'un des deux disques (c1t0d0s0 ou c1t1d0s0) de ce pool.
# zpool status pool: rpool state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM rpool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c1t0d0s0 ONLINE 0 0 0 c1t1d0s0 ONLINE 0 0 0
Sur un système SPARC, saisissez le disque alternatif à l'invite ok.
ok boot /pci@7c0/pci@0/pci@1/pci@0,2/LSILogic,sas@2/disk@1
Une fois le système réinitialisé, confirmez le périphérique d'initialisation actif. Par exemple :
SPARC# prtconf -vp | grep bootpath bootpath: '/pci@7c0/pci@0/pci@1/pci@0,2/LSILogic,sas@2/disk@1,0:a'
Sur un système x86, utilisez une syntaxe semblable à ce qui suit :
x86# prtconf -v|sed -n '/bootpath/,/value/p' name='bootpath' type=string items=1 value='/pci@0,0/pci8086,25f8@4/pci108e,286@0/disk@0,0:a'
Sur un système x86, sélectionnez un disque alternatif dans le pool root ZFS mis en miroir dans le menu approprié du BIOS.
SPARC ou x86 : si vous remplacez un disque de pool root en utilisant la commande zpool replace, vous devez installer les informations d'initialisation sur le nouveau disque à l'aide de la commande bootadm. Si vous créez un pool root ZFS mis en miroir à l'aide de la méthode d'installation initiale ou si vous utilisez la commande zpool attach pour connecter un disque au pool root, cette étape n'est pas nécessaire. La syntaxe de bootadm est la suivante :
# bootadm install-bootloader
Si vous voulez installer le programme d'amorçage sur un autre pool root, utilisez l'option -P (pool).
# bootadm install-bootloader -P rpool2
Si vous voulez installer le programme d'amorçage hérité GRUB, utilisez la commande héritée installgrub.
x86# installgrub /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c0t1d0s0
Vous pouvez effectuer l'initialisation à partir de divers périphériques d'un pool root ZFS mis en miroir. Selon la configuration matérielle, la mise à jour de la PROM ou du BIOS peut s'avérer nécessaire pour spécifier un périphérique d'initialisation différent.
Vous pouvez par exemple effectuer l'initialisation à partir de l'un des deux disques (c1t0d0s0 ou c1t1d0s0) de ce pool.
# zpool status pool: rpool state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM rpool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c1t0d0s0 ONLINE 0 0 0 c1t1d0s0 ONLINE 0 0 0
Sur un système SPARC, saisissez le disque alternatif à l'invite ok.
ok boot /pci@7c0/pci@0/pci@1/pci@0,2/LSILogic,sas@2/disk@1
Une fois le système réinitialisé, confirmez le périphérique d'initialisation actif. Par exemple :
SPARC# prtconf -vp | grep bootpath bootpath: '/pci@7c0/pci@0/pci@1/pci@0,2/LSILogic,sas@2/disk@1,0:a'
Sur un système x86, utilisez une syntaxe semblable à ce qui suit :
x86# prtconf -v|sed -n '/bootpath/,/value/p' name='bootpath' type=string items=1 value='/pci@0,0/pci8086,25f8@4/pci108e,286@0/disk@0,0:a'
Sur un système x86, sélectionnez un disque alternatif dans le pool root ZFS mis en miroir dans le menu approprié du BIOS.
Sur un système SPARC avec environnements d'initialisation ZFS multiples, vous pouvez initialiser à partir de tout environnement d'initialisation en utilisant la commande beadm activate.
Au cours de l'installation et de la procédure d'activation beadm, le système de fichiers root ZFS est automatiquement désigné avec la propriété bootfs.
Un pool peut contenir plusieurs systèmes de fichiers amorçables. Par défaut, l'entrée du système de fichiers amorçable dans le fichier /pool-name/boot/menu.lst est identifiée par la propriété bootfs du pool. Cependant, une entrée menu.lst peut contenir une commande bootfs spécifiant un autre système de fichiers du pool. Le fichier menu.lst peut ainsi contenir les entrées de plusieurs systèmes de fichiers root du pool.
Lorsqu'un système est installé à l'aide d'un système de fichiers root ZFS, une entrée similaire à l'entrée suivante est ajoutée au fichier menu.lst :
title Oracle Solaris 11.1 SPARC bootfs rpool/ROOT/solaris
Lorsqu'un nouvel environnement d'initialisation est créé, le fichier menu.lst est mis à jour automatiquement.
title Oracle Solaris 11.1 SPARC bootfs rpool/ROOT/solaris title solaris bootfs rpool/ROOT/solaris2
Sur les systèmes SPARC, vous pouvez sélectionner l'environnement d'initialisation comme suit :
Une fois qu'un environnement d'initialisation ZFS a été activé, vous pouvez utiliser la commande d'initialisation -L pour afficher la liste des systèmes de fichiers amorçables contenus dans un pool ZFS. Vous pouvez ensuite sélectionner l'un des systèmes de fichiers amorçables de la liste. Des instructions détaillées concernant l'initialisation de ce système de fichiers s'affichent. Vous pouvez initialiser le système de fichiers sélectionné en suivant ces instructions.
Utilisez la commande -Z file system pour initialiser un système de fichiers ZFS spécifique.
Cette méthode d'initialisation n'active pas l'environnement d'initialisation automatiquement. Une fois l'environnement d'initialisation initialisé avec la syntaxe -L et -Z, vous devez l'activer pour continuer à initialiser automatiquement depuis ce dernier.
Exemple 4-1 Initialisation à partir d'un environnement d'initialisation ZFS spécifique
Si vous disposez de plusieurs environnements d'initialisation ZFS dans un pool de stockage ZFS situé sur le périphérique d'initialisation de votre système, vous pouvez utiliser la commande beadm activate pour spécifier un environnement d'initialisation par défaut.
Par exemple, les environnements d'initialisation ZFS suivants sont disponibles comme décrit par la sortie de beadm :
# beadm list BE Active Mountpoint Space Policy Created -- ------ ---------- ----- ------ ------- solaris NR / 3.80G static 2012-07-20 10:25 solaris-2 - - 7.68M static 2012-07-19 13:44
Si vous disposez de plusieurs environnements d'initialisation ZFS sur votre système SPARC, vous pouvez utiliser la commande boot -L. Par exemple :
ok boot -L 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.1 SPARC 2 solaris Select environment to boot: [ 1 - 2 ]: 1 To boot the selected entry, invoke: boot [<root-device>] -Z rpool/ROOT/solaris-2 Program terminated ok boot -Z rpool/ROOT/solaris-2
Gardez à l'esprit que l'environnement d'initialisation initialisé à l'aide de la commande ci-dessus n'est pas activé lors de la prochaine réinitialisation. Si vous souhaitez initialiser automatiquement à partir de l'environnement d'initialisation sélectionné lors de l'opération boot -Z, vous devez l'activer.
Dans Oracle Solaris 11, un système x86 est installé avec le GRUB hérité, les entrées suivantes sont ajoutées au fichier /pool-name /boot/grub/menu.lst pendant le processus d'installation ou l'opération beadm activate pour initialiser ZFS automatiquement :
title solaris bootfs rpool/ROOT/solaris kernel$ /platform/i86pc/kernel/amd64/unix -B $ZFS-BOOTFS module$ /platform/i86pc/amd64/boot_archive title solaris-1 bootfs rpool/ROOT/solaris-1 kernel$ /platform/i86pc/kernel/amd64/unix -B $ZFS-BOOTFS module$ /platform/i86pc/amd64/boot_archive
Si le périphérique identifié par GRUB comme périphérique d'initialisation contient un pool de stockage ZFS, le fichier menu.lst est utilisé pour créer le menu GRUB.
Sur un système x86 contenant plusieurs environnements d'initialisation ZFS, vous pouvez sélectionner un environnement d'initialisation à partir du menu GRUB. Si le système de fichiers root correspondant à cette entrée de menu est un système de fichiers ZFS, l'option suivante est ajoutée.
-B $ZFS-BOOTFS
Dans Oracle Solaris 11.1, un système x86 est installé avec GRUB2. Le fichier menu.lst est remplacé par le fichier /rpool/boot/grub/grub.cfg , mais ce fichier ne doit pas être modifié manuellement. Utilisez la sous-commande bootadm pour ajouter, modifier et supprimer des entrées de menu.
Pour plus d'informations sur la modification des éléments du menu GRUB, reportez-vous au manuel Initialisation et arrêt des systèmes Oracle Solaris 11.1.
Exemple 4-2 x86 : Initialisation d'un système de fichiers ZFS
Lors de l'initialisation à partir d'un système de fichiers root ZFS sur un système GRUB2, le périphérique root est spécifié comme suit :
# bootadm list-menu the location of the boot loader configuration files is: /rpool/boot/grub default 0 console text timeout 30 0 Oracle Solaris 11.1
Lors de l'initialisation à partir d'un système de fichiers root ZFS sur un système GRUB hérité, le périphérique root est spécifié par le paramètre d'initialisation -B $ZFS-BOOTFS. Par exemple :
title solaris bootfs rpool/ROOT/solaris kernel$ /platform/i86pc/kernel/amd64/unix -B $ZFS-BOOTFS module$ /platform/i86pc/amd64/boot_archive title solaris-1 bootfs rpool/ROOT/solaris-1 kernel$ /platform/i86pc/kernel/amd64/unix -B $ZFS-BOOTFS module$ /platform/i86pc/amd64/boot_archive
Exemple 4-3 x86 : réinitialisation rapide d'un système de fichiers root ZFS
La fonctionnalité de réinitialisation rapide offre la possibilité de réinitialiser en quelques secondes sur les systèmes x86. La fonctionnalité de réinitialisation rapide vous permet de réinitialiser vers un nouveau noyau sans subir les longs délais imposés par le BIOS et le programme d'amorçage. La possibilité de réinitialiser rapidement un système réduit considérablement les indisponibilités, tout en améliorant l'efficacité.
Vous devez continuer à utiliser la commande init 6 lors du passage d'un environnement d'initialisation à un autre à l'aide de la commande beadm activate. Pour d'autres opérations système où la commande reboot est nécessaire, vous pouvez utiliser la commande reboot -f. Par exemple :
# reboot -f
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.
La procédure ci-dessous vous permet de résoudre un problème lié à menu.lst 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 devez effectuer une récupération complète du système (à chaud), reportez-vous à la section Chapitre 11, Archivage des instantanés et récupération du pool root.
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 #
Résolvez un shell root incorrect en initialisant le système en mode monoutilisateur et en corrigeant l'entrée de 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.1 64-bit Copyright (c) 1983, 2012, 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.1 October 2012 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.
Résolvez un problème qui empêche l'initialisation d'un système x86.
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.
Vous pouvez utiliser la commande bootadm list-menu pour répertorier et modifier les entrées GRUB2. Vous pouvez aussi utiliser la sous-commande set-menu pour modifier une entrée d'initialisation. Pour plus d'informations, reportez-vous à la page de manuel bootadm(1M).
x86# zpool import -f rpool x86# bootadm list-menu x86# bootadm set-menu default=1 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. Ce processus 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.
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.1 64-bit Copyright (c) 1983, 2012, 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.1 October 2012 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.