Introduction
En mai 2005, la documentation Partitions sur disque Solaris
(format, prtvtoc, newfs) présentait la création de partitions sur un disque
et le montage de systèmes de fichiers ufs sous Solaris 8. Avec Solaris 10, la
nouveauté des ZFS (Zone File Systems) simplifie énormément la configuration des
volumes et systèmes de fichiers avec des éléments de configuration évolués
(compression, checksum
, recordsize
, casesensitivity
, utf8only
, etc.). Des
fonctionnalités encore plus puissantes sont disponibles avec ZFS comme les
snapshots mais ne sont pas abordées ici. Il s’agit uniquement d’une prise en
main rapide de ZFS.
Dans ce guide pratique, sans rentrer dans les détails très techniques systèmes de l’OS, des systèmes de fichiers ZFS sont créés pour monter une instance Oracle 10gR2 sur une plateforme Solaris X86 64bits. Quelques paragraphes abordent également le cache ARC de ZFS pour configurer et récupérer les statistiques mémoire pour ZFS.
L’article n’aborde pas la mise en place de RAIDs ou de miroirs disques dans les zones de stockage ZFS.
Les systèmes de fichiers ZFS ci-dessous sont créés pour une nouvelle instance Oracle :
Point de montage ZFS | Taille (Gb) | Taille de bloc |
---|---|---|
/sop/oracle/SOPT1ORA |
40 |
8k |
/sop/oracle/SOPT1ORA/redolog |
2 |
128k |
/sop/oracle/SOPT1ORA/archivelog |
10 |
128k |
Dans les préconisations Oracle autour de ZFS, il est conseillé de définir la
taille du bloc ZFS égale à la taille de bloc définie dans l’instance Oracle
pour les données: la taille de bloc du système ZFS /sop/oracle/SOPT1ORA
supportant les fichiers de données de l’instance Oracle est donc définie à 8k,
la taille de bloc définie au niveau de l’instance Oracle étant à 8k
(db_block_size=8192
).
Pour les fichiers de redo log et archivelog, avec leur caractère circulaire,
il est conseillé d’utiliser la taille de bloc ZFS système, soit 128k : les
systèmes de fichiers ZFS /sop/oracle/SOPT1ORA/redolog
et
/sop/oracle/SOPT1ORA/archivelog
supportant respectivement les fichiers de redo
log et archivelog sont ainsi définis avec une taille de bloc à 128k.
Préparation de l’environnement Oracle (compte, mémoire partagée, sémaphores)
Création du compte unix oracle (groupadd et useradd)
Le compte Unix oracle est créé avec la commande useradd
avec le super
utilisateur root
. Dans la norme de cet article, le compte oracle a pour userid
1001 et il est affecté dans le groupe dba (id : 101).
Pour vérifier que le groupe dba existe effectivement avec le groupe id 101,
consulter le fichier /etc/group
:
cat /etc/group | grep 'dba'
dba::101:
Si ce groupe n’existe pas, la commande Unix groupadd
avec le compte root
peut être utilisée :
groupadd [ -g gid [-o]] group
groupadd -g 101 dba
Le compte Unix oracle est alors créé avec la commande useradd
:
useradd [-c comment] [-d dir] [-e expire] [-f inactive]
[-g group] [-G group [, group...]] [-m [-k skel_dir]]
[-u uid [-o]] [-s shell] [-A authorization [,authorization...]]
[-P profile [,profile...]] [-R role [,role...]]
[-p projname] [-K key=value] login
Dans ce cas pratique, pour le compte Unix Oracle, le shell par défaut est
Korn Shell ( -s /bin/ksh
), son groupe est dba ( -g101
ou -Gdba
), son id
est
1001 (-u1001
) et son répertoire par défaut est /Software/oracle
(-d
/Software/oracle
).
useradd -d /Software/oracle -g101 -u1001 -s/bin/ksh oracle
Pour vérifier la bonne création du compte Unix oracle, consulter le fichier
/etc/passwd
:
cat /etc/passwd | grep 'oracle'
oracle:x:1001:101::/Software/oracle:/bin/ksh
À l’issue de la création du compte unix Oracle, son répertoire par défaut
/Software/oracle
est créé avec la commande mkdir
et oracle devient le
propriétaire du répertoire /Software/oracle
avec la commande chown
:
mkdir /Software/oracle
chown oracle:dba /Software/oracle
Le mot de passe du compte Unix oracle est ensuite initialisé avec le binaire
passwd
:
passwd oracle
New Password: ******* Re-enter new Password: ******* passwd: password successfully changed for oracle
Création du projet user.oracle dans le contrôleur de ressources Solaris 10 (projadd, newtask)
Avec Solaris 10, un nouveau service de contrôle de ressources (resource
control facility) fait son entrée. Ce contrôleur de ressources permet de
définir des paramètres systèmes spécifiques (comme la mémoire partagée, les
sémaphores, etc.) à un compte Unix ou un groupe de comptes Unix. Les
paramètres systèmes ne sont donc plus définis globalement pour tous les comptes
dans le fichier /etc/system
, ils peuvent être définis au cas par cas, ce qui se
révèle être particulièrement pratique pour des comptes Unix comme oracle, mq, etc.
qui ont des besoins très particuliers sur la mémoire partagée, les
sémaphores, etc. paramètres que l’on ne souhaite pas forcément appliquer en
environnement mutualisé pour d’autres comptes applicatifs Unix présents sur la
machine.
Pour définir ces contrôles de ressources, un projet est créé pour un compte Unix ou un groupe Unix, projet qui est ensuite activé.
Ainsi dans un premier temps, le projet user.oracle
est ajouté avec la
commande projadd
pour le compte Unix oracle :
projadd -U <user> <project_name>
projadd -U oracle user.oracle
Le projet user.oracle
est alors automatiquement démarré lors de la première
connexion avec le compte oracle sur la machine. Lorsqu’il n’y a pas de projet
user.oracle
démarré (0 connexion avec le compte oracle), ce projet peut être
démarré manuellement avec la commande newtask
en tant que super utilisateur
(root) :
newtask -p <project_name>
newtask -p user.oracle
La commande prstat -J
indique effectivement la mise en route du projet
user.oracle
:
prstat -J
PROJID NPROC SWAP RSS MEMORY TIME CPU PROJECT 0 42 700M 799M 2.4% 58:55:02 0.3% system 100 2 2156K 5276K 0.0% 0:00:00 0.0% user.oracle 3 4 1596K 3500K 0.0% 0:03:54 0.0% default 1 8 3456K 6136K 0.0% 0:00:06 0.0% user.root
Dans les opérations qui suivent le projet user.oracle doit être démarré pour pouvoir modifier les paramètres systèmes et le contrôle des ressources pour ce projet.
En se connectant avec le compte oracle, la commande id -p
donne le projet
associé :
id -p
uid=1001(oracle) gid=101(dba) projid=100(user.oracle)
Configuration système de la mémoire partagée et des sémaphores pour Oracle
Le nouveau contrôleur de ressources Solaris 10
Depuis la version 10 de Solaris, la configuration système de la mémoire
partagée, des sémaphores et des "message queues" autorisée pour un compte Unix
n’est plus définie dans le fichier /etc/system
mais dans le nouveau fichier des
projets /etc/project
, fichier mis à jour avec les binaires projmod
ou prctl
.
Beaucoup de paramètres systèmes pour la mémoire partagée et les sémaphores ont désormais des valeurs par défaut qui ont été augmentées avec Solaris 10 ou bien sont devenus obsolètes. D’une façon générale, les valeurs par défaut des paramètres systèmes Solaris étant supérieures aux préconisations Oracle, seule la mémoire partagée maximale doit être généralement définie pour le compte oracle.
Le tableau ci-dessous récapitule les paramètres Solaris modifiés ou devenus obsolètes entre la version 9 et la version 10. Les valeurs par défaut pour Solaris 10 sont données pour comparaison avec les préconisations des valeurs minimales Oracle.
Solaris 9
/etc/system |
Préco Oracle | Solaris 10
/etc/project |
Valeur par défaut Solaris 10 | |
---|---|---|---|---|
noexec_user_stack |
1 |
Obsolète | ||
semsys:seminfo_semmni |
100 |
project.max-sem-ids |
128 |
|
semsys:seminfo_semmns |
1024 |
Obsolète | ||
semsys:seminfo_semmsl |
256 |
project.max-sem-nsems |
512 |
|
semsys:seminfo_semvmx |
32767 |
Obsolète | ||
shmsys:shminfo_shmmax |
4 Gb |
project.max-shm-memory |
2 Gb |
|
shmsys:shminfo_shmmin |
1 |
Obsolète | ||
shmsys:shminfo_shmmni |
100 |
project.max-shm-ids |
128 |
|
shmsys:shminfo_shmseg |
10 |
Obsolète |
Le tableau montre clairement que bien souvent la mémoire partagée doit être définie pour Oracle avec Solaris 10.
Valeur maximale de la mémoire partagée (max-shm-memory)
Le paramètre shmsys.shminfo_shmmax
pour la valeur maximale de la mémoire
partagée anciennement défini dans le fichier /etc/system
est remplacé par
project.max-sh-memory
avec le contrôleur de ressources Solaris 10.
Une mémoire partagée maximale de 8 Gb (max-sh-memory
, max value of shared
memory segment) est définie pour le projet user.oracle
avec la commande projmod
:
projmod -sK "project.max-shm-memory=(priv,8G,deny)" user.oracle
Elle peut être également définie avec le binaire prctl
:
prctl -n project.max-shm-memory -v 8gb -r -i project user.oracle
Le fichier /etc/project
donne alors les entrées ci-dessous :
cat /etc/project
system:0::::
user.root:1::::
noproject:2::::
default:3::::
group.staff:10::::
user.oracle:100::oracle::project.max-shm-memory=(priv,8589934592,deny)
Autres paramètres systèmes mémoire partagée et sémaphores
Pour tous les autres paramètres systèmes (max-sem-ids
, etc.), il suffit
juste de vérifier que les valeurs par défaut de la machine Solaris 10 sont
supérieures aux préconisations Oracle avec la commande prctl
pour le projet
user.oracle
.
Exemple pour le paramètre max-sem-ids
recommandé à 100 par oracle
prctl -n project.max-sem-ids -i project user.oracle
project: 100: user.oracle NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT project.max-sem-ids privileged 128 - deny - system 16.8M max deny -
Si ce n’est pas le cas, la valeur est modifiée également pour le projet
user.oracle
avec le binaire prctl
.
Exemple :
prctl -n project.max-sem-ids -v 100 -r -i project user.oracle
Préparation des systèmes de fichiers ZFS
Lister les zones de stockage ZFS disponbiles (zfs list)
La commande zfs list
répertorie les zones de stockage ZFS
disponibles avec leurs éventuels points de montage déjà associés (mountpoint
).
zfs list
NAME USED AVAIL REFER MOUNTPOINT DEVICES1 117K 535G 18K none DEVICES2 117K 402G 18K none rpool 67.0G 66.9G 35.5K /rpool rpool/ROOT 3.89G 20.1G 18K legacy rpool/ROOT/s10x_u6wos_07b 3.89G 20.1G 3.89G / rpool/SOFTWARE 21.5K 8.00G 21.5K /Software rpool/UNIXADM 61.5M 962M 61.5M /unixadm rpool/dump 1.00G 66.9G 1.00G - rpool/export 199M 825M 19K /export rpool/export/home 199M 825M 199M /export/home rpool/swap 32G 98.9G 16K -
Dans la configuration initiale, 2 ZFS DEVICES1
(535 Gb) et DEVICES2
(402 Gb)
sont disponibles.
La zone de stockage ZFS DEVICES1
va être utilisée pour créer les points de
montage pour l’instance Oracle, à savoir :
/sop/oracle/SOPT1ORA
/sop/oracle/SOPT1ORA/redolog
/sop/oracle/SOPT1ORA/archivelog
Lister et configurer les réservoirs ZFS (zpool status)
La commande zpool
et ses paramètres multiples permet de créer, lister,
configurer les propriétés et supprimer des réservoirs (pools) de stockage ZFS
depuis les disques. zpool status
est utilisé pour visualiser le statut des
pools de stockage ZFS et notamment le(s) disques associé(s), le(s) miroir(s),
le(s) RAID(s). La création et la suppression de ces pools ZFS depuis les
disques ne sont pas couvertes dans cet article.
zpool status <device>
zpool status DEVICES1
state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM DEVICES1 ONLINE 0 0 0 c4t0d0 ONLINE 0 0 0 errors: No known data errors
L’exemple ci-dessus permet de voir rapidement que la zone de stockage ZFS
DEVICES1
est associé au disque c4t0d0.
Lorsque du miroir est mis en place ou du RAID, les informations renvoyées
par la commande zpool status
sont plus complexes mais bien plus lisibles que
dans les versions précédentes de Solaris. Voici un exemple de miroir :
zpool status rpool
pool: rpool state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM rpool ONLINE 0 0 0 mirror ONLINE 0 0 0 c3t2d0s0 ONLINE 0 0 0 c3t0d0s0 ONLINE 0 0 0 errors: No known data errors
Création des zones ZFS (zfs create)
3 zones ZFS pour l’instance Oracle vont être créées dans le device DEVICES1
avec la commande zfs
create
:
Zone ZFS | Point de montage futur | Description | Taille de blocs |
---|---|---|---|
DEVICES1/SOPT1ORA_DATA |
/sop/oracle/SOPT1ORA |
Fichier de données | 8K |
DEVICES1/SOPT1ORA_RLOG |
/sop/oracle/SOPT1ORA/redolog |
Fichiers de redo log | 128K |
DEVICES1/SOPT1ORA_ALOG |
/sop/oracle/SOPT1ORA/archivelog |
Fichiers archive log | 128K |
Voici l’enchaînement de la création de ces 3 zones :
zfs create DEVICES1/SOPT1ORA_DATA
zfs create DEVICES1/SOPT1ORA_RLOG
zfs create DEVICES1/SOPT1ORA_ALOG
Application des quota et de la taille des blocs (zfs set quota, zfs set recsize, zfs create -o)
Pour appliquer les quota nécessaires (40 Gb pour le futur système de
fichiers /sop/oracle/SOPT1ORA
par exemple) et la taille des blocs, la commande zfs set
est utilisée avec la propriété adéquate :
zfs set property=value filesystem|volume
Pour les quotas :
zfs set quota=<n>K|M|G filesystem|volume
zfs set quota=40G DEVICES1/SOPT1ORA_DATA
zfs set quota=2G DEVICES1/SOPT1ORA_RLOG
zfs set quota=10G DEVICES1/SOPT1ORA_ALOG
Pour les tailles de blocs lorsqu’il ne s’agit pas de volumes, c’est la
propriété recsize
ou recordsize
(les deux syntaxes sont acceptées) : la taille
des blocs est forcément une puissance de deux supérieure ou égale à 512 octets
et inférieure ou égale à 128Ko.
zfs set recsize=[512b ... 128k] filesystem|volume
Cette propriété peut être modifiée à chaud, mais il faut garder à l’esprit que seuls les nouveaux fichiers créés auront la taille des blocs nouvellement appliquée dans la zone.
zfs set recsize=8k DEVICES1/SOPT1ORA_DATA
zfs set recsize=128k DEVICES1/SOPT1ORA_RLOG
zfs set recsize=128k DEVICES1/SOPT1ORA_ALOG
À noter que l’application des propriétés quota
et recsize
est également
possible depuis la commande zfs create
avec l’option -o
:
zfs create -orecsize=8k -oquota=40g DEVICES1/SOPT1ORA_DATA
zfs create -orecsize=128k -oquota=2g DEVICES1/SOPT1ORA_RLOG
zfs create -orecsize=128k -oquota=10g DEVICES1/SOPT1ORA_ALOG
Lister les propriétés d’une zone ZFS (zfs get)
La commande zfs get
retourne les propriétés appliquées à une zone
ZFS.
zfs get "all"|property[,...] [filesystem|volume|snapshot]
Lorsque le système de fichiers, le volume ou le snapshot n’est pas spécifié, les propriétés de toutes les zones ZFS sont affichées en sortie.
Exemple :
zfs get recsize,quota DEVICES1/SOPT1ORA_ALOG
NAME PROPERTY VALUE SOURCE DEVICES1/SOPT1ORA_ALOG recordsize 128K local DEVICES1/SOPT1ORA_ALOG quota 10G local
Création des points de montage
Définition des points de montage (zfs set mountpoint)
La définition des points de montage pour les systèmes de fichiers ZFS créés
précédemment peut alors être réalisée avec la commande zfs set mountpoint
.
zfs set mountpoint=<répertoire de point de montage> filesystem|volume
Les points de montage qui vont être créés sont les suivants
/sop/oracle/SOT1ORA
/sop/oracle/SOT1ORA/redolog
/sop/oracle/SOT1ORA/archivelog
Les 2 propriétés canmount
et mountpoint
des ZFS sont très importantes :
zfs get mountpoint,canmount DEVICES1/SOPT1ORA_DATA
NAME PROPERTY VALUE SOURCE DEVICES1/SOPT1ORA_DATA mountpoint none local DEVICES1/SOPT1ORA_DATA canmount on default
Si la propriété mountpoint
est à legacy
ou none
et qu’elle est remplacée, le
système de fichiers ZFS est automatiquement monté. La propriété canmount
précise si les systèmes de fichiers peuvent être montés.
Le fichier /etc/vfstab
n’est plus nécessaire.
Le répertoire /sop/oracle/SOPT1ORA
est donc créé dans un premier temps, sans
créér les sous répertoires /sop/oracle/SOPT1ORA/archivelog
et
/sop/oracle/SOPT1ORA/redolog
, en effet si les répertoires archivelog
et redolog
sont créés, l’avertissement suivant est donné au moment de la définition de la
propriété mountpoint :
zfs set mountpoint=/sop/oracle/SOPT1ORA DEVICES1/SOPT1ORA_DATA
cannot mount '/sop/oracle/SOPT1ORA': directory is not empty property may be set but unable to remount filesystem
De même, il ne faut pas se positionner dans le répertoire
/sop/oracle/SOPT1ORA
lors la définition de la propriété mounpoint
. Dans ce cas
là, l’avertissement suivant est donné :
zfs set mountpoint=/sop/oracle/SOPT1ORA DEVICES1/SOPT1ORA_DATA
cannot mount 'DEVICES1/SOPT1ORA_DATA': mountpoint or dataset is busy property may be set but unable to remount filesystem
La cinématique suivante de définition des propriétés mountpoint
est donc la
suivante :
cd /
mkdir /sop
mkdir /sop/oracle
mkdir /sop/oracle/SOPT1ORA
zfs set mountpoint=/sop/oracle/SOPT1ORA DEVICES1/SOPT1ORA_DATA
mkdir /sop/oracle/SOPT1ORA/archivelog
zfs set mountpoint=/sop/oracle/SOPT1ORA/archivelog DEVICES1/SOPT1ORA_ALOG
mkdir /sop/oracle/SOPT1ORA/redolog
zfs set mountpoint=/sop/oracle/SOPT1ORA/redolog DEVICES1/SOPT1ORA_RLOG
La propriété canmount
étant définie à on, dès l’application de la propriété
mountpoint
, la commande df -k
montre immédiatement l’apparition des systèmes de
fichiers zfs
df -k
DEVICES1/SOPT1ORA_DATA 41943040 20 41943020 1% /sop/oracle/SOPT1ORA DEVICES1/SOPT1ORA_ALOG 10485760 18 10485742 1% /sop/oracle/SOPT1ORA/archivelog DEVICES1/SOPT1ORA_RLOG 2097152 18 2097134 1% /sop/oracle/SOPT1ORA/redolog
Montage automatique et manuel (zfs mount)
Par défaut tous les systèmes de fichiers ZFS sont montés lors de l’initialisation à l’aide du service SMF (Service Management Facility).
Lorsque le montage doit être réalisé manuellement et non en automatique, la
commande zfs mount
est utilisé :
zfs mount -a|filesystem
Le cache ARC ZFS
Mémoire disponible mdb -k et le cache I/O ZFS ARC
La commande mdb -k
avec l’option ::memstat
donne une vision globale
de la mémoire disponible sur une machine Solaris
echo ::memstat | mdb -k
Page Summary Pages MB %Tot ------------ ---------------- ---------------- ---- Kernel 587481 2294 7% Anon 180366 704 2% Exec and libs 6684 26 0% Page cache 7006 27 0% Free (cachelist) 13192 51 0% Free (freelist) 7591653 29654 91% Total 8386382 32759 Physical 8177488 31943
Dans l’exemple ci-dessus, il s’agit d’une machine disposant de 32 Gb de mémoire physique.
ZFS utilise un cache noyau (cache kernel
) appelé ARC
pour les I/Os. Pour
connaître la taille du cache I/O à un instant t utilisée par ZFS, utiliser
l’option kmastat
avec la commande mdb -k
et repérer la statistique Total
[zio_buf]
:
echo ::kmastat | mdb -k
cache buf buf buf memory alloc alloc name size in use total in use succeed fail ------------------------- ------ ------ ------ --------- --------- ----- ... Total [zio_buf] 1157632000 1000937 0 ...
Dans l’exemple ci-dessus, le cache I/O ZFS utilise 1,1 G en mémoire
Limitation du cache ARC zfs (zfs_arc_max et zfs_arc_min)
Pour les machines disposant d’une quantité de mémoire très importante, il
est préférable de limiter le cache I/O ZFS pour éviter tout débordement de
mémoire sur les autres applications. Dans la pratique ce cache augmente et
diminue dynamiquement en fonction des besoins des applications installées sur
la machine, mais il est préférable de le limiter pour prévenir tout risque. Le
paramètre zfs_arc_max
(en bytes) dans le fichier /etc/system
limite
la quantité de mémoire au cache I/O ZFS. Ci-dessous un exemple ou le cache I/O
ZFS est limité à 4Gb
/etc/system
...
set zfs:zfs_arc_max = 4294967296
...
De même il est possible de spécifier la quantité de mémoire minimale à
allouer au cache I/O ZFS avec le paramètre zfs_arc_min
dans le fichier
/etc/system
.
Statistiques sur le cache ARC ZFS (kstat zfs)
La commande kstat
avec l’option zfs
retourne des statistiques détaillées sur le
cache ZFS ARC (hits, misses, taille, etc.) à un instant t : on retrouve la
valeur maximale possible (c_max
) pour ce cache, la taille courante (size
) dans
la sortie de cette commande. Dans l’exemple ci-dessous, le paramètre
zfs_arc_max
n’a pas encore été appliqué, ce qui explique que la taille maximale
possible correspond à la mémoire physique de la machine.
kstat zfs
module: zfs instance: 0 name: arcstats class: misc c 33276878848 c_max 33276878848 c_min 4159609856 crtime 121.419237623 deleted 497690 demand_data_hits 14319099 demand_data_misses 6491 demand_metadata_hits 45356553 demand_metadata_misses 33470 evict_skip 2004 hash_chain_max 4 hash_chains 1447 hash_collisions 1807933 hash_elements 40267 hash_elements_max 41535 hdr_size 6992496 hits 60821130 l2_abort_lowmem 0 l2_cksum_bad 0 l2_evict_lock_retry 0 l2_evict_reading 0 l2_evict_reading 0 l2_feeds 0 l2_free_on_write 0 l2_hdr_size 0 l2_hits 0 l2_io_error 0 l2_misses 0 l2_rw_clash 0 l2_size 0 l2_writes_done 0 l2_writes_error 0 l2_writes_hdr_miss 0 l2_writes_sent 0 memory_throttle_count 0 mfu_ghost_hits 3387 mfu_hits 53995731 misses 48704 mru_ghost_hits 1180 mru_hits 5891117 mutex_miss 0 p 21221559296 prefetch_data_hits 237031 prefetch_data_misses 3520 prefetch_metadata_hits 908447 prefetch_metadata_misses 5223 recycle_miss 0 size 1362924368 snaptime 14013729.1668961 module: zfs instance: 0 name: vdev_cache_stats class: misc crtime 121.419271852 delegations 4453 hits 27353 misses 9753 snaptime 14013729.1677954
Un mot sur le démontage et la destruction des zones ZFS (zfs unmount et zfs destroy)
Démonter un système de fichiers ZFS (zfs unmount)
La commande zfs unmount
démonte un système de fichiers pour une
zone ZFS. L’option -f
est indispensable si des applications sont encore actives
sur cette zone ZFS (à utiliser avec prudence).
zfs unmount [-f] -a|filesystem|mountpoint
zfs unmount /sop/oracle/SOPT1ORA/redolog
Tous les fichiers présents sur ce point de montage ne sont pas détruits avec
la commande zfs unmount
, ils sont là au remontage.
Détruire une zone ZFS (zfs destroy)
La commande zfs destroy
comme son nom l’indique bien détruit une zone ZFS. Comme pour la
commande zfs unmount
, l’option -f
est indispensable si des applications sont
encore actives sur cette zone ZFS (à utiliser avec prudence une fois de plus). La commande zfs
destroy
détruit tous les fichiers éventuellement présents sur cette zone
ZFS.
zfs destroy [-rRf] filesystem|volume|snapshot
zfs destroy DEVICES1/SOPT1ORA_RLOG