Estoy usando ZFS desde hace un tiempo sin problemas. Todavía estoy entusiasmado y confío mucho en ello. Pero de vez en cuando, me vienen a la mente nuevas preguntas (en particular después de haber leído alguna documentación, lo que a veces aumenta el número de preguntas en lugar de reducirlo).
En este caso, he agregado un nuevo vdev (un espejo) a un grupo raíz y, por lo tanto, he leído el manual de zpool ( man zpool
). Al final de la sección zpool add
, dice:
-o propiedad = valor
Establece las propiedades del grupo dado. Consulte la sección "Propiedades" para obtener una lista de propiedades válidas que se pueden configurar. La única propiedad admitida en este momento es ashift. Tenga en cuenta que algunas propiedades (entre ellas ashift) no se heredan de un vdev anterior. Son específicos de vdev, no específicos de grupo.
Eso significa que la ashift
propiedad no es específica del grupo, sino específica de vdev. Pero no he podido encontrar ningún comando u opción que me permita ver esa propiedad (o cualquier otra propiedad específica de vdev) por vdev.
En otras palabras, por ejemplo, si tengo un grupo que contiene un vdev con ashift=12
y un vdev con ashift=10
, ¿cómo puedo verificar esto?
Lo que ya he probado:
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
Entonces, zpool list
ni zpool get
mostrar ninguna propiedad de una manera específica vdev.
¿Algunas ideas?
zdb
no parece ser mencionado en una de las páginas de Sun que generalmente aparecen si buscas en Google "ZFS <something>". Antes de cambiar a ZFS, he dedicado mucho tiempo a investigar si es lo correcto para mí y cómo podría instalarlo y configurarlo, pero nunca me he topadozdb
; además,man zpool
niman zfs
tiene ni ninguna pista, incluida la sección "VER TAMBIÉN". ¡Muchas gracias!zdb
parece algo natural. No me di cuenta de que era magia negra en este momento. :) Open-ZFS es un consorcio de IllumOS / OmniOS / OpenSolaris / FreeBSD / Linux / otros desarrolladores que intentan asegurarse de que todo el mundo ZFS no perteneciente a Oracle se mantenga estrechamente alineado. Su Wiki es bastante bueno y tiene mucha información, incluidas algunas referencias azdb
, ver: open-zfs.org/w/…man zdb
hace lo que esperarías :-) Así que está documentado de alguna manera, pero como no se menciona casi en ninguna parte, a nadie se le ocurre escribirman zdb
. De la publicación del blog que enlazaste: "[...] pero es, de manera intencional, indocumentada. Solo otros dos que conozco han tenido el coraje de hablar públicamente [...]" :-)