J'utilise ZFS depuis un moment maintenant sans problème. Je suis toujours excité à ce sujet et je lui fais confiance. Mais de temps en temps, de nouvelles questions me viennent à l'esprit (notamment après avoir lu de la documentation, ce qui augmente parfois le nombre de questions au lieu de le réduire).
Dans ce cas, j'ai ajouté un nouveau vdev (un miroir) à un pool racine, et j'ai donc lu le manuel zpool ( man zpool
). À la fin de la section zpool add
, il indique:
-o propriété = valeur
Définit les propriétés de pool données. Voir la section "Propriétés" pour une liste des propriétés valides qui peuvent être définies. La seule propriété prise en charge pour le moment est ashift. Notez que certaines propriétés (parmi lesquelles ashift) ne sont pas héritées d'un vdev précédent. Ils sont spécifiques à vdev et non spécifiques au pool.
Cela signifie que la ashift
propriété n'est pas spécifique au pool, mais spécifique à vdev. Mais je n'ai pu trouver aucune commande ou option qui me permettrait de visualiser cette propriété (ou toute autre propriété spécifique à vdev) par vdev.
En d'autres termes, par exemple, si j'ai un pool qui contient un vdev avec ashift=12
et un vdev avec ashift=10
, comment puis-je le vérifier?
Ce que j'ai déjà essayé:
root@cerberus:~# zpool list -v -o ashift rpool
ASHIFT
12
mirror 928G 583G 345G - 27% 62%
ata-ST31000524NS_9WK21HDM - - - - - -
ata-ST31000524NS_9WK21L15 - - - - - -
mirror 928G 74.4M 928G - 0% 0%
ata-ST31000524NS_9WK21FXE - - - - - -
ata-ST31000524NS_9WK21KC1 - - - - - -
root@cerberus:~# zpool get all rpool
NAME PROPERTY VALUE SOURCE
rpool size 1.81T -
rpool capacity 31% -
rpool altroot - default
rpool health ONLINE -
rpool guid 3899811533678330272 default
rpool version - default
rpool bootfs rpool/stretch local
rpool delegation on default
rpool autoreplace off default
rpool cachefile - default
rpool failmode wait default
rpool listsnapshots off default
rpool autoexpand off default
rpool dedupditto 0 default
rpool dedupratio 1.00x -
rpool free 1.24T -
rpool allocated 583G -
rpool readonly off -
rpool ashift 12 local
rpool comment - default
rpool expandsize - -
rpool freeing 0 default
rpool fragmentation 13% -
rpool leaked 0 default
rpool feature@async_destroy enabled local
rpool feature@empty_bpobj active local
rpool feature@lz4_compress active local
rpool feature@spacemap_histogram active local
rpool feature@enabled_txg active local
rpool feature@hole_birth active local
rpool feature@extensible_dataset enabled local
rpool feature@embedded_data active local
rpool feature@bookmarks enabled local
rpool feature@filesystem_limits enabled local
rpool feature@large_blocks enabled local
Donc, zpool list
ni zpool get
montrer aucune propriété d'une manière spécifique à vdev.
Des idées?
zdb
zdb
man zpool
man zfs
zdb
me semble donc assez naturel. Je ne savais pas que c'était de la magie noire à ce stade. :) Open-ZFS est un consortium de développeurs IllumOS / OmniOS / OpenSolaris / FreeBSD / Linux / an qui essaient de s'assurer que le monde ZFS non-Oracle reste étroitement aligné. Leur Wiki est assez bon et contient beaucoup d'informations, y compris quelques références àzdb
, Voir: open-zfs.org/w/…man zdb
fait ce que vous attendez :-) Donc, c'est documenté d'une manière ou d'une autre, mais comme il n'est mentionné presque nulle part, personne ne vient à l'idée de taperman zdb
. Du billet de blog que vous avez lié: "[...] mais il est, quelque peu intentionnellement je pense, sans papiers. Seuls deux autres que je connais ont eu le courage d'en parler publiquement [...]" :-)