« ZFS zpool.cache » : différence entre les versions
m Révocation des modifications de 88.191.17.209 (Discussion) vers la dernière version de 2001:41D0:2:2D29:1:2:0: |
|||
| Ligne 1 : | Ligne 1 : | ||
== Le fichier /boot/zfs/zpool.cache == | |||
Le fichier ''/boot/zfs/zpool.cache'' contient en permanence la description des ''pools'' actifs du système. Ce fichier est | |||
creé et mis à jour par la commande <tt>zpool</tt>: | |||
* <tt>zpool import</tt> ajoute la description d'un ''pool'', | |||
* <tt>zpool export</tt> supprime la description d'un ''pool''. | |||
{| style="background-color:#ffc0c0;" cellpadding="10" cellspacing="0" border="1" | |||
|'''Attention''': la commande <tt>zpool import</tt> avec l'option '''<tt>-R</tt>''' ne met '''pas''' à jour le fichier | |||
''/boot/zfs/zpool.cache''! | |||
|} | |||
Lors du démarrage du système, le fichier ''/boot/zfs/zpool.cache'' décrit les seuls ''pools'' qui peuvent être utilisés: | |||
* pour monter la racine du système de fichiers si celle-ci est gérée sous ''ZFS'', | |||
* pour monter automatiquement, lors de l'exécution du script ''/etc/rc.d/zfs'', les différents autres systèmes de fichiers gérés sous ''ZFS''. | |||
Ce fichier revêt donc une importance capitale si la racine du système de fichier est sous ''ZFS''. En effet, dans ce cas, | |||
il est le seul élément qui décrit le ''pool'' contenant la racine du système de fichier. Si ce ''pool'' n'est pas référencé | |||
dans ''/boot/zfs/zpool.cache'', la racine n'est pas accessible par le noyau. Le démarrage du système ne peut pas être complété. | |||
Une erreur à ce niveau se caractérise par un message à la console: | |||
Trying to mount root from zfs:rpool/root | |||
Manual root filesystem specification: | |||
<fstype>:<device> Mount <device> using filesystem <fstype> | |||
eg. ufs:da0s1a | |||
? List valid disk boot devices | |||
<empty line> Abort manual input | |||
mountroot> | |||
Lors de la création des fichiers d'amorçage ou lors du diagnostic d'un problème de démarrage, ll peut donc être utile de pouvoir visualiser | |||
le contenu du fichier ''/boot/zfs/zpool.cache''. La commande <tt>zdb</tt> peut être utilisée à cet effet: | |||
<pre> | |||
[root@morzine ~]# zdb -C | |||
rpool | |||
version=13 | |||
name='rpool' | |||
state=0 | |||
txg=882905 | |||
pool_guid=17669857244588609348 | |||
hostid=4156526014 | |||
hostname='unset' | |||
vdev_tree | |||
type='root' | |||
id=0 | |||
guid=17669857244588609348 | |||
children[0] | |||
type='mirror' | |||
id=0 | |||
guid=3225603179255348056 | |||
metaslab_array=23 | |||
metaslab_shift=28 | |||
ashift=9 | |||
asize=51534888960 | |||
is_log=0 | |||
children[0] | |||
type='disk' | |||
id=0 | |||
guid=17573085726489368265 | |||
path='/dev/da0p2' | |||
whole_disk=0 | |||
children[1] | |||
type='disk' | |||
id=1 | |||
guid=2736169600077218893 | |||
path='/dev/da1p2' | |||
whole_disk=0 | |||
[root@morzine ~]# | |||
</pre> | |||
Vu l'importance de ce fichier dans l'utilisation de ''ZFS'', il est vivement conseiller d'en garder une copie de sécurité: | |||
<pre> | |||
[root@morzine ~]# cp /boot/zfs/zpool.cache /boot/zfs/zpool.cache.backup | |||
[root@morzine ~]# chflags schg /boot/zfs/zpool.cache.backup | |||
[root@morzine ~]# | |||
</pre> | |||
Le contenu d'un fichier ''zpool.cache'' ne se trouvant pas à son emplacement par défaut peut aussi être visualisé par | |||
la commande <tt>zdb</tt>: | |||
<pre> | |||
[root@morzine ~]# zdb -C -U /boot/zfs/zpool.cache.backup | |||
rpool | |||
version=13 | |||
name='rpool' | |||
state=0 | |||
txg=51623 | |||
pool_guid=17669857244588609348 | |||
hostname='unset' | |||
vdev_tree | |||
type='root' | |||
id=0 | |||
guid=17669857244588609348 | |||
children[0] | |||
type='mirror' | |||
id=0 | |||
guid=3225603179255348056 | |||
metaslab_array=23 | |||
metaslab_shift=28 | |||
ashift=9 | |||
asize=51534888960 | |||
is_log=0 | |||
children[0] | |||
type='disk' | |||
id=0 | |||
guid=17573085726489368265 | |||
path='/dev/da0p2' | |||
whole_disk=0 | |||
children[1] | |||
type='disk' | |||
id=1 | |||
guid=2736169600077218893 | |||
path='/dev/da1p2' | |||
whole_disk=0 | |||
[root@morzine ~]# | |||
</pre> | |||
== Bibliographie == | == Bibliographie == | ||
Version du 18 juillet 2009 à 11:31
Le fichier /boot/zfs/zpool.cache
Le fichier /boot/zfs/zpool.cache contient en permanence la description des pools actifs du système. Ce fichier est creé et mis à jour par la commande zpool:
- zpool import ajoute la description d'un pool,
- zpool export supprime la description d'un pool.
| Attention: la commande zpool import avec l'option -R ne met pas à jour le fichier
/boot/zfs/zpool.cache! |
Lors du démarrage du système, le fichier /boot/zfs/zpool.cache décrit les seuls pools qui peuvent être utilisés:
- pour monter la racine du système de fichiers si celle-ci est gérée sous ZFS,
- pour monter automatiquement, lors de l'exécution du script /etc/rc.d/zfs, les différents autres systèmes de fichiers gérés sous ZFS.
Ce fichier revêt donc une importance capitale si la racine du système de fichier est sous ZFS. En effet, dans ce cas, il est le seul élément qui décrit le pool contenant la racine du système de fichier. Si ce pool n'est pas référencé dans /boot/zfs/zpool.cache, la racine n'est pas accessible par le noyau. Le démarrage du système ne peut pas être complété. Une erreur à ce niveau se caractérise par un message à la console:
Trying to mount root from zfs:rpool/root
Manual root filesystem specification:
<fstype>:<device> Mount <device> using filesystem <fstype>
eg. ufs:da0s1a
? List valid disk boot devices
<empty line> Abort manual input
mountroot>
Lors de la création des fichiers d'amorçage ou lors du diagnostic d'un problème de démarrage, ll peut donc être utile de pouvoir visualiser le contenu du fichier /boot/zfs/zpool.cache. La commande zdb peut être utilisée à cet effet:
[root@morzine ~]# zdb -C
rpool
version=13
name='rpool'
state=0
txg=882905
pool_guid=17669857244588609348
hostid=4156526014
hostname='unset'
vdev_tree
type='root'
id=0
guid=17669857244588609348
children[0]
type='mirror'
id=0
guid=3225603179255348056
metaslab_array=23
metaslab_shift=28
ashift=9
asize=51534888960
is_log=0
children[0]
type='disk'
id=0
guid=17573085726489368265
path='/dev/da0p2'
whole_disk=0
children[1]
type='disk'
id=1
guid=2736169600077218893
path='/dev/da1p2'
whole_disk=0
[root@morzine ~]#
Vu l'importance de ce fichier dans l'utilisation de ZFS, il est vivement conseiller d'en garder une copie de sécurité:
[root@morzine ~]# cp /boot/zfs/zpool.cache /boot/zfs/zpool.cache.backup [root@morzine ~]# chflags schg /boot/zfs/zpool.cache.backup [root@morzine ~]#
Le contenu d'un fichier zpool.cache ne se trouvant pas à son emplacement par défaut peut aussi être visualisé par la commande zdb:
[root@morzine ~]# zdb -C -U /boot/zfs/zpool.cache.backup
rpool
version=13
name='rpool'
state=0
txg=51623
pool_guid=17669857244588609348
hostname='unset'
vdev_tree
type='root'
id=0
guid=17669857244588609348
children[0]
type='mirror'
id=0
guid=3225603179255348056
metaslab_array=23
metaslab_shift=28
ashift=9
asize=51534888960
is_log=0
children[0]
type='disk'
id=0
guid=17573085726489368265
path='/dev/da0p2'
whole_disk=0
children[1]
type='disk'
id=1
guid=2736169600077218893
path='/dev/da1p2'
whole_disk=0
[root@morzine ~]#