Ignorer les liens de navigation | |
Quitter l'aperu | |
Guide d'administration Oracle Solaris ZFS Oracle Solaris 10 1/13 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. Installation et initialisation d'un système de fichiers root ZFS Oracle Solaris
Installation et initialisation d'un système de fichiers root Oracle Solaris ZFS (présentation)
Fonctions d'installation de ZFS
Version Oracle Solaris requise
Configuration requise générale relative au pool root ZFS
Espace disque requis pour les pools root ZFS
Configuration requise pour le pool root ZFS
Installation d'un système de fichiers root ZFS (installation initiale d'Oracle Solaris)
Création d'un pool root ZFS mis en miroir (post-installation)
Installation d'un système de fichiers root ZFS (installation d'archive Flash Oracle Solaris)
Installation d'un système de fichiers root ZFS (installation JumpStart)
Exemples de profils JumpStart pour ZFS
Problèmes de migration ZFS avec Live Upgrade
Utilisation de Live Upgrade pour migrer ou mettre à niveau un système avec zones (Solaris 10 10/08)
Configuration d'un système de fichiers root ZFS avec roots de zone sur ZFS (Solaris 10 10/08)
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
Personnalisation des volumes 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
SPARC : initialisation à partir d'un système de fichiers root ZFS
x86 : initialisation à partir d'un système de fichiers root ZFS
Résolution de problèmes de point de montage empêchant l'initialisation (Solaris 10 10/08)
Résolution des problèmes de point de montage ZFS
Initialisation à des fins de récupération dans un environnement root ZFS
Initialisation d'un système de fichiers ZFS en mode de secours
Initialisation d'un système de fichiers ZFS à partir d'un autre média
Restauration du pool root ZFS ou des instantanés du pool root
Remplacement d'un disque dans le pool root ZFS
Création d'instantanés de pool root
Recréation d'un pool root ZFS et restauration d'instantanés de pool root
Restauration des instantanés d'un pool root à partir d'une initialisation de secours
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. Pratiques recommandées pour Oracle Solaris ZFS
Les sections suivantes décrivent comment effectuer les tâches ci-dessous :
Recréation d'un pool root ZFS et restauration d'instantanés de pool root
Restauration des instantanés d'un pool root à partir d'une initialisation de secours
Vous pouvez être amené à remplacer un disque dans le pool root pour les raisons suivantes :
Le pool root est trop petit et vous souhaitez remplacer un disque plus petit par un disque plus grand.
Un disque de pool root est défectueux. Dans un pool non redondant, si le disque est défectueux et empêche l'initialisation du système, vous devrez initialiser votre système à partir d'un autre média, par exemple un DVD ou le réseau, avant de remplacer le disque du pool root.
Dans le cadre d'une configuration de pool root mise en miroir, vous pouvez tenter de remplacer le disque sans effectuer une initialisation à partir d'un autre média. Vous pouvez remplacer un disque défaillant en utilisant la commande zpool replace. Si vous disposez d'un autre disque, vous pouvez également utiliser la commande zpool attach. Pour savoir comment connecter un autre disque et déconnecter un disque de pool root, reportez-vous à la procédure de cette section.
Avec certains composants matériels, vous devez déconnecter le disque et en supprimer la configuration avant de tenter d'utiliser la commande zpool replace pour remplacer le disque défectueux. Par exemple :
# zpool offline rpool c1t0d0s0 # cfgadm -c unconfigure c1::dsk/c1t0d0 <Physically remove failed disk c1t0d0> <Physically insert replacement disk c1t0d0> # cfgadm -c configure c1::dsk/c1t0d0 # zpool replace rpool c1t0d0s0 # zpool online rpool c1t0d0s0 # zpool status rpool <Let disk resilver before installing the boot blocks> SPARC# installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk /dev/rdsk/c1t0d0s0 x86# installgrub /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c1t9d0s0
Avec certains composants matériels, il n'est pas nécessaire de connecter le disque de remplacement, ni de le reconfigurer après son insertion.
Vous devez identifier les noms du chemin d'accès au périphérique d'initialisation du disque actuel et du nouveau disque afin de tester l'initialisation à partir du disque de remplacement et de pouvoir initialiser le système manuellement à partir du disque existant, en cas de dysfonctionnement du disque de remplacement. Dans l'exemple de la procédure suivante, le nom du chemin du disque de pool root actuel (c1t10d0s0) est le suivant :
/pci@8,700000/pci@3/scsi@5/sd@a,0
Le nom du chemin du disque d'initialisation de remplacement (c1t9d0s0) est le suivant :
/pci@8,700000/pci@3/scsi@5/sd@9,0
Pour plus d'informations sur le nouvel étiquetage d'un disque destiné au pool root, reportez-vous aux références suivantes :
Par exemple :
# zpool attach rpool c1t10d0s0 c1t9d0s0
Par exemple :
# zpool status rpool pool: rpool state: ONLINE status: One or more devices is currently being resilvered. The pool will continue to function, possibly in a degraded state. action: Wait for the resilver to complete. scrub: resilver in progress, 25.47% done, 0h4m to go config: NAME STATE READ WRITE CKSUM rpool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c1t10d0s0 ONLINE 0 0 0 c1t9d0s0 ONLINE 0 0 0 errors: No known data errors
Déterminez la taille du pool rpool existant :
# zpool list rpool NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT rpool 29.8G 152K 29.7G 0% 1.00x ONLINE -
# zpool set autoexpand=on rpool
Vérifiez la taille du pool rpool étendu :
# zpool list rpool NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT rpool 279G 146K 279G 0% 1.00x ONLINE -
Pour les systèmes SPARC, vous devez par exemple respecter une syntaxe semblable à la suivante :
ok boot /pci@8,700000/pci@3/scsi@5/sd@9,0
Par exemple :
# zpool detach rpool c1t10d0s0
SPARC : utilisez la commande eeprom ou setenv à partir de la PROM d'initialisation SPARC.
x86 : reconfigurez le BIOS du système.
Vous pouvez créer des instantanés de pool root à des fins de récupération. La meilleure façon de créer des instantanés de pool root consiste à effectuer un instantané récursif du pool root.
La procédure suivante crée un instantané de pool root récursif et le stocke en tant que fichier et en tant qu'instantanés dans un pool sur un système distant. En cas de défaillance du pool root, le jeu de données distant peut être monté à l'aide de NFS et le fichier d'instantané peut être reçu dans le pool recréé. Vous pouvez également stocker les instantanés de pool root en tant qu'instantanés réels dans un pool d'un système distant. L'envoi et la réception des instantanés à partir d'un système distant est un peu plus complexe, car vous devez configurer ssh ou utiliser rsh pendant que le système à réparer est initialisé à partir du miniroot du système d'exploitation Oracle Solaris.
La validation des instantanés stockés à distance en tant que fichiers ou instantanés est une étape importante dans la récupération du pool root. En appliquant l'une des deux méthodes, les instantanés doivent être recréés régulièrement, par exemple, lorsque la configuration du pool est modifiée ou lorsque le SE Solaris est mis à niveau.
Dans la procédure suivante, le système est initialisé à partir de l'environnement d'initialisation zfsBE.
Par exemple :
remote# zfs create rpool/snaps
Par exemple :
remote# zfs set sharenfs='rw=local-system,root=local-system' rpool/snaps # share -@rpool/snaps /rpool/snaps sec=sys,rw=local-system,root=local-system ""
local# zfs snapshot -r rpool@snap1 local# zfs list -r rpool # NAME USED AVAIL REFER MOUNTPOINT rpool 15.1G 119G 106K /rpool rpool@snap1 0 - 106K - rpool/ROOT 5.00G 119G 31K legacy rpool/ROOT@snap1 0 - 31K - rpool/ROOT/zfsBE 5.00G 119G 5.00G / rpool/ROOT/zfsBE@snap1 0 - 5.00G - rpool/dump 2.00G 120G 1.00G - rpool/dump@snap1 0 - 1.00G - rpool/export 63K 119G 32K /export rpool/export@snap1 0 - 32K - rpool/export/home 31K 119G 31K /export/home rpool/export/home@snap1 0 - 31K - rpool/swap 8.13G 123G 4.00G - rpool/swap@snap1 0 - 4.00G -
Par exemple, pour envoyer les instantanés de pool root à un pool distant sous forme de fichier, utilisez une syntaxe semblable à la suivante :
local# zfs send -Rv rpool@snap1 > /net/remote-system/rpool/snaps/rpool.snap1 sending from @ to rpool@snap1 sending from @ to rpool/ROOT@snap1 sending from @ to rpool/ROOT/s10zfsBE@snap1 sending from @ to rpool/dump@snap1 sending from @ to rpool/export@snap1 sending from @ to rpool/export/home@snap1 sending from @ to rpool/swap@snap1
local# zfs send -Rv rpool@snap1 > /net/remote-system/rpool/snaps/rpool.snap1 sending from @ to rpool@snap1 sending from @ to rpool/export@snap1 sending from @ to rpool/export/home@snap1 sending from @ to rpool/ROOT@snap1 sending from @ to rpool/ROOT/zfsBE@snap1 sending from @ to rpool/dump@snap1 sending from @ to rpool/swap@snap1
Pour envoyer les instantanés de pool root à un pool distant sous la forme d'instantanés, utilisez une syntaxe semblable à la suivante :
local# zfs send -Rv rpool@snap1 | ssh remote-system zfs receive -Fd -o canmount=off tank/snaps sending from @ to rpool@snap1 sending from @ to rpool/export@snap1 sending from @ to rpool/export/home@snap1 sending from @ to rpool/ROOT@snap1 sending from @ to rpool/ROOT/zfsBE@snap1 sending from @ to rpool/dump@snap1 sending from @ to rpool/swap@snap1
Dans cette procédure, on suppose les conditions suivantes :
Le pool root ZFS ne peut pas être récupéré.
Les instantanés du pool root ZFS sont stockés sur un système distant et sont partagés sur NFS.
Toutes les étapes sont effectuées sur le système local.
SPARC : sélectionnez l'une des méthodes d'initialisation suivantes :
ok boot net -s ok boot cdrom -s
Si vous n'utilisez pas l'option -s, vous devrez quitter le programme d'installation.
x86 : initialisez le système à partir du DVD ou du réseau. Quittez ensuite le programme d'installation.
Par exemple :
# mount -F nfs remote-system:/rpool/snaps /mnt
Si vos services réseau ne sont pas configurés, il peut être nécessaire de spécifier l'adresse IP du système distant.
Pour plus d'informations sur le nouvel étiquetage du disque, reportez-vous aux références suivantes :
Par exemple :
# zpool create -f -o failmode=continue -R /a -m legacy -o cachefile= /etc/zfs/zpool.cache rpool c1t1d0s0
Cette étape peut prendre un certain temps. Par exemple :
# cat /mnt/rpool.snap1 | zfs receive -Fdu rpool
L'utilisation de l'option -u implique que l'archive restaurée n'est pas montée à la fin de l'opération zfs receive.
Pour restaurer les instantanés d'un pool root stockés dans un pool sur un système distant, utilisez une syntaxe semblable à la suivante :
# ssh remote-system zfs send -Rb tank/snaps/rpool@snap1 | zfs receive -F rpool
Par exemple :
# zfs list
Par exemple :
# zpool set bootfs=rpool/ROOT/zfsBE rpool
SPARC :
# installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk /dev/rdsk/c1t1d0s0
x86 :
# installgrub /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c1t1d0s0
# init 6
Cette procédure part du principe que les instantanés du pool root existant sont disponibles. Dans l'exemple suivant, ils se trouvent sur le système local.
# zfs snapshot -r rpool@snap1 # zfs list -r rpool NAME USED AVAIL REFER MOUNTPOINT rpool 7.84G 59.1G 109K /rpool rpool@snap1 21K - 106K - rpool/ROOT 4.78G 59.1G 31K legacy rpool/ROOT@snap1 0 - 31K - rpool/ROOT/s10zfsBE 4.78G 59.1G 4.76G / rpool/ROOT/s10zfsBE@snap1 15.6M - 4.75G - rpool/dump 1.00G 59.1G 1.00G - rpool/dump@snap1 16K - 1.00G - rpool/export 99K 59.1G 32K /export rpool/export@snap1 18K - 32K - rpool/export/home 49K 59.1G 31K /export/home rpool/export/home@snap1 18K - 31K - rpool/swap 2.06G 61.2G 16K - rpool/swap@snap1 0 - 16K -
ok boot -F failsafe ROOT/zfsBE was found on rpool. Do you wish to have it mounted read-write on /a? [y,n,?] y mounting rpool on /a Starting shell.
# zfs rollback rpool@snap1 # zfs rollback rpool/ROOT@snap1 # zfs rollback rpool/ROOT/s10zfsBE@snap1
# init 6