Ignorer les liens de navigation | |
Quitter l'aperu | |
Administration d'Oracle Solaris : Systèmes de fichiers ZFS Oracle Solaris 11 Information Library (Français) |
1. Système de fichiers Oracle Solaris ZFS (introduction)
2. Mise en route d'Oracle Solaris ZFS
3. Différences entre les systèmes de fichiers Oracle Solaris ZFS et classiques
4. Gestion des pools de stockage Oracle Solaris ZFS
5. Gestion des composants du pool racine ZFS
6. Gestion des systèmes de fichiers Oracle Solaris ZFS
Gestion des systèmes de fichiers ZFS (présentation)
Création, destruction et renommage de systèmes de fichiers ZFS
Création d'un système de fichiers ZFS
Destruction d'un système de fichiers ZFS
Modification du nom d'un système de fichiers ZFS
Présentation des propriétés ZFS
Propriétés ZFS natives en lecture seule
Propriétés ZFS natives définies
Propriétés ZFS définies par l'utilisateur
Envoi de requêtes sur les informations des systèmes de fichiers ZFS
Affichage des informations de base des systèmes ZFS
Création de requêtes ZFS complexes
Envoi de requêtes sur les propriétés ZFS
Envoi de requête sur les propriétés ZFS pour l'exécution de scripts
Montage de système de fichiers ZFS
Gestion des points de montage ZFS
Points de montage automatiques
Montage de système de fichiers ZFS
Utilisation de propriétés de montage temporaires
Démontage des systèmes de fichiers ZFS
Activation et annulation du partage des systèmes de fichiers ZFS
Syntaxe de partage ZFS héritée
Nouvelle syntaxe de partage ZFS
Affichage ZFS partager des informations
Partage de fichiers ZFS au sein d'une zone non globale
Récapitulatif des commandes de partage ZFS nouvelles et héritées
Définition des quotas et réservations ZFS
Définitions de quotas sur les systèmes de fichiers ZFS
Définition de quotas d'utilisateurs et de groupes sur un système de fichiers ZFS
Définition de réservations sur les systèmes de fichiers ZFS
Chiffrement des systèmes de fichiers ZFS
Modification des clés d'un système de fichiers ZFS chiffré
Autorisations de délégation d'opérations sur les clés ZFS
Montage d'un système de fichiers ZFS chiffré
Interactions entre les propriétés de compression, de suppression des doublons et de chiffrement ZFS
Exemples de chiffrement de systèmes de fichiers ZFS
Migration de systèmes de fichiers ZFS
Migration d'un système de fichiers vers un système de fichiers ZFS
Dépannage des migrations de systèmes de fichiers ZFS
Mise à niveau des systèmes de fichiers ZFS
7. Utilisation des instantanés et des clones ZFS Oracle Solaris
8. Utilisation des ACL et des attributs pour protéger les fichiers Oracle Solaris ZFS
9. Administration déléguée de ZFS dans Oracle Solaris
10. Rubriques avancées Oracle Solaris ZFS
11. Dépannage d'Oracle Solaris ZFS et récupération de pool
12. Archivage des instantanés et récupération du pool racine
13. Pratiques recommandées pour Oracle Solaris ZFS
Dans cette version de Solaris, procédez comme suit pour partager un système de fichiers ZFS et publier le partage :
Créez le partage du système de fichiers et définissez les propriétés SMB ou NFS du partage à l'aide de la commande zfs share.
L'utilisation d'une commande distincte pour la création d'un partage donne accès aux fonctionnalités suivantes :
Définition des options utilisées pour partager un chemin donné dans un système de fichiers.
Possibilité de définir plusieurs partages par système de fichiers, mais un nom de partage est utilisé pour identifier de façon univoque chaque partage.
Un partage peut définir des options pour le partage NFS et SMB.
Plusieurs chemins d'accès SMB peuvent être définis pour un même chemin d'accès de répertoire.
Le partage est stocké dans un fichier dans le répertoire .zfs/share portant le nom du partage.
L'interaction entre les partages définis et les propriétés sharenfs et sharesmb est la suivante :
La propriété sharenfs existante contrôle si le système de fichiers est publié sur NFS. La valeur est activée ou désactivée. Cette propriété peut être héritée par les systèmes de fichiers descendants.
La propriété sharesmb existante contrôle si le système de fichiers est publié sur SMB. La valeur est activée ou désactivée. Cette propriété peut être héritée par les systèmes de fichiers descendants.
Lorsque la propriété sharenfs ou la propriété sharesmb est activée, tous les partages définis pour le système de fichiers (et tous les systèmes de fichiers descendants héritant de la propriété) sont publiés pour le protocole approprié. Tous les partages définis sont également publiés lorsque la commande zfs share est émise.
Si aucun partage n'est défini, le système de fichiers n'est pas partagé.
Si des partages sont définis pour le système de fichiers, seuls ces partages sont publiés. Le point de montage du système de fichiers n'est partagé que s'il existe un partage qui le partage explicitement.
Lorsque la propriété sharenfs ou la propriété sharesmb est désactivée, la publication de tous les partages publiés du système de fichiers (et de tous les systèmes de fichiers descendants qui héritent de la propriété) est annulée pour le protocole approprié. Ces partages ne sont partagés qu'à partir du moment où la propriété sharenfs ou sharesmb est activée.
Aucun des partages définis n'est supprimé lorsque la propriété est désactivée et ils sont à nouveau partagés lorsque la propriété sharenfs ou la propriété sharesmb est réactivée.
Lorsque la commande zfs unshare est émise, la publication de tous les partages publiés du système de fichiers est annulée. Ces partages ne sont pas publiés tant que la commande zfs share n'est pas émise pour le système de fichiers.
Aucun des partages définis n'est supprimé lorsque la commande zfs unshare est émise et ils sont à nouveau partagés à l'exécution suivante de la commande zfs share.
Cette section détaille quelques différences entre la nouvelle syntaxe de partage et la syntaxe de partage héritée.
Les principales différences sont les suivantes :
La commande zfs set share remplace l'interface sharemgr pour le partage des systèmes de fichiers ZFS.
L'interface sharemgr n'est plus disponible. La commande share héritée et la propriété sharenfs sont toujours disponibles. Voir les exemples ci-dessous.
Le fichier /etc/dfs/dfstab existe toujours mais les modifications sont ignorées. SMF gère les informations de partage ZFS ou UFS de manière à ce que les systèmes de fichiers soient automatiquement partagés lorsque le système est réinitialisé ; ces informations sont donc gérées de façon similaire aux informations de montage et de partage ZFS.
La commande share -a est semblable à la commande share -ap et permet un partage persistent du système de fichiers.
Les systèmes de fichiers descendants n'héritent pas des propriétés de partage. Si un système de fichiers descendant est créé avec une propriété sharenfs héritée activée, un partage est créé pour ce nouveau système de fichiers descendant.
L'ancienne syntaxe de partage est toujours prise en charge.
Utilisez la commande share pour partager un système de fichiers.
Par exemple, pour partager un système de fichiers ZFS :
# share -F nfs /tank/zfsfs # cat /etc/dfs/sharetab /tank/zfsfs - nfs rw
La syntaxe ci-dessus équivaut à partager un système de fichiers UFS :
# share -F nfs /ufsfs # cat /etc/dfs/sharetab /ufsfs - nfs rw /tank/zfsfs - nfs rw
La commande zfs share ne peut pas être utilisée pour partager un système de fichiers tant que la propriété sharenfs n'est pas définie.
# zfs share rpool/data cannot share 'rpool/data': legacy share use share(1M) to share this filesystem, or set the 'share' property and set [sharenfs|sharesmb] property on # zfs set sharenfs=on rpool/data # cat /etc/dfs/sharetab /rpool/data - nfs rw
Toutes les méthodes publient immédiatement les partages de systèmes de fichiers.
La nouvelle commande zfs set share permet de partager un système de fichiers ZFS via les protocoles NFS ou SMB. Le partage n'est pas publié tant que la propriété sharenfs n'est pas également définie sur le système de fichiers.
A l'aide de la commande zfs set share, créez un partage NFS ou SMB de système de fichiers ZFS, puis définissez la propriété sharenfs.
# zfs create rpool/fs1 # zfs set share=name=fs1,path=/rpool/fs1,prot=nfs rpool/fs1 name=fs1,path=/rpool/fs1,prot=nfs
Le partage n'est pas publié tant que la propriété sharenfs ou la propriété sharesmb n'est pas activée. Par exemple :
# zfs set sharenfs=on rpool/fs1 # cat /etc/dfs/sharetab /rpool/fs1 fs1 nfs sec=sys,rw
Un partage NFS public peut être créé comme suit :
# zfs set share=name=pp,path=/pub,prot=nfs,sec=sys,rw=*,public rpool/public name=pp,path=/pub,prot=nfs,public=true,sec=sys,rw=* # zfs set sharenfs=on rpool/public # cat /etc/dfs/sharetab /pub pp nfs public,sec=sys,rw
Vous pouvez également créer un partage d'un système de fichiers ZFS récemment créé à l'aide d'une syntaxe semblable à la suivante :
# zfs create -o mountpoint=/ds -o sharenfs=on rpool/ds
Lorsque vous créez un partage NFS d'un système de fichiers ZFS, vous devez fournir les composants de partage suivants :
Indiquez un nom pour le partage. Le nom du partage ne peut pas excéder 80 caractères.
Indiquez un chemin d'accès pour votre partage NFS qui doit exister au sein du système de fichiers ou du répertoire à partager.
Indiquez le protocole (NFS ou SMB).
Représente le système de fichiers ZFS à partager.
Options de partage supplémentaires :
Fournit un texte pouvant aider à identifier le partage. Les espaces ou les virgules doivent être placés entre guillemets (" ") dans la description.
Indique si le partage est disponible en lecture/écriture ou en lecture seule pour tous les clients. Vous pouvez également spécifier une liste séparée par des deux-points comprenant des noms d'hôte, des adresses IP ou un groupe réseau.
Identifie un utilisateur root à partir d'un hôte spécifié ou d'une liste d'hôtes disposant d'un accès root. Par défaut, aucun hôte ne dispose d'un accès root.
Identifie un mode de sécurité pour le serveur NFS, tel que sys, dh, krb5, etc. Pour plus d'informations sur les modes de sécurité pris en charge, reportez-vous à nfssec(5).
Les propriétés NFS suivantes doivent être spécifiées après prot=nfs, mais avant toute propriété sec=.
anon=user-name| uid
nosub=true|false
nosuid=true|false
aclok=true|false
public=true|false
index=filename
log=TYPE_LOGTAG
cksum=TYPE_STRINGSET
Les propriétés SMB facultatives suivantes doivent être spécifiées après la propriété prot=smb :
ad-container=string
abe=[true|false]
csc=[disabled|manual|auto|vdo]
catia=[true|false]
guestok=[true|false]
ro=access-list
rw=access-list
none=liste d'accès
Reportez-vous aux pages de manuel share_nfs(1M) et share_smb(1M) pour une description détaillée des propriétés de partages NFS et SMB.
Comme dans les versions précédentes, vous pouvez afficher la valeur de la propriété sharenfs à l'aide de la propriété zfs get sharenfs ou de la syntaxe de commande zfs get all.
# zfs get sharenfs rpool/fs1 NAME PROPERTY VALUE SOURCE rpool/fs1 sharenfs on local
Les nouvelles informations de partage sont disponibles à l'aide de la commande zfs get share.
# zfs get share rpool/fs1 NAME PROPERTY VALUE SOURCE rpool/fs1 share name=rpool_fs1,path=/rpool/fs1,prot=nfs local
Les nouvelles informations de partage ne sont pas disponibles dans la syntaxe de commande zfs get all.
Si vous créez un partage pour un système de fichiers ZFS récemment créé, utilisez la commande zfs get share pour identifier le nom share-name ou le nom share-path. Par exemple :
# zfs create -o mountpoint=/data -o sharenfs=on rpool/data # zfs get share rpool/data NAME PROPERTY VALUE SOURCE rpool/data share name=data,path=/data,prot=nfs local
L'héritage des propriétés zfs share, sharenfs ou sharesmb fonctionne de la manière suivante :
La propriété zfs share n'est pas transmise d'un système de fichiers parent à un système de fichiers enfant. En outre, la commande zfs set share ne prend pas en charge l'option -r permettant de définir une propriété ZFS sur les systèmes de fichiers descendants.
Si les propriétés sharenfs ou sharesmb sont définies sur un système de fichiers parent, les propriétés sharenfs ou sharesmb sont également définies sur les systèmes de fichiers descendants. Par exemple :
# zfs create -o mountpoint=/ds rpool/ds # zfs set share=name=ds,path=/ds,prot=nfs rpool/ds name=ds,path=/ds,prot=nfs # zfs set sharenfs=on rpool/ds # cat /etc/dfs/sharetab /ds rpool_ds nfs sec=sys,rw # zfs create rpool/ds/ds1 # zfs get sharenfs rpool/ds/ds1 NAME PROPERTY VALUE SOURCE rpool/ds/ds1 sharenfs on inherited from rpool/ds
Tout système de fichiers enfant existant hérite également de la valeur des propriétés sharenfs ou sharesmb.
Si les propriétés sharenfs ou sharesmb sont désactivées sur le système de fichiers parent, les propriétés sharenfs ou sharesmb sont désactivées sur les systèmes de fichiers descendants. Par exemple :
# zfs set sharenfs=off rpool/ds $ zfs get -r sharenfs rpool/ds NAME PROPERTY VALUE SOURCE rpool/ds sharenfs off local rpool/ds/ds1 sharenfs off inherited from rpool/ds rpool/ds/ds2 sharenfs off inherited from rpool/ds rpool/ds/ds3 sharenfs off inherited from rpool/ds
Les propriétés de nom et de protocole doivent être spécifiées lorsque vous modifiez les valeurs de propriétés d'un partage.
Par exemple, créez un partage NFS comme suit :
# zfs create -o mountpoint=/ds -o sharenfs=on rpool/ds # zfs set share=name=ds,path=/ds,prot=nfs rpool/ds name=ds,path=/ds,prot=nfs
Ajoutez ensuite le protocole SMB :
# zfs set share=name=ds,prot=nfs,prot=smb rpool/ds name=ds,path=/ds,prot=nfs,prot=smb
Supprimez le protocole SMB :
# zfs set -c share=name=ds,prot=smb rpool/ds name=ds,path=/ds,prot=nfs
Vous pouvez supprimer un partage existant à l'aide de la commande zfs set - c. Par exemple, identifiez le nom du partage.
# zfs get share NAME PROPERTY VALUE SOURCE rpool/ds share name=ds,path=/ds,prot=nfs local
Supprimez ensuite le partage en identifiant le nom share-name. Par exemple :
# zfs set -c share=name=ds rpool/ds share 'ds' was removed.
Lorsqu'un partage a été établi au moyen de la création d'un partage par défaut au moment de la création du système de fichiers, le partage peut être supprimé par le biais du nom share-name ou du nom share-path. Par exemple, un nom share-name par défaut, data et un nom share-path par défaut, /data sont attribués au partage suivant.
# zfs create -o mountpoint=/data -o sharenfs=on rpool/data # zfs get share rpool/data NAME PROPERTY VALUE SOURCE rpool/data share name=data,path=/data,prot=nfs local
Supprimez le partage en identifiant le nom share-name. Par exemple :
# zfs set -c share=name=data rpool/data share 'data' was removed.
Supprimez le partage en identifiant le nom share-path. Par exemple :
# zfs set -c share=path=/data rpool/data share 'data' was removed.
Dans les versions précédentes de Solaris, la création ou la publication de partages NFS ou SMB dans une zone non globale Oracle Solaris n'était pas prise en charge. Dans cette version de Solaris, vous pouvez créer et publier des partages NFS à l'aide de la commande zfs set share et de la commande héritée share utilisée avec une zone non globale.
Lorsqu'un système de fichiers ZFS est monté et disponible dans une zone non globale, il peut être partagé dans cette zone.
Un système de fichiers peut être partagé dans la zone globale à condition de ne pas être monté dans une zone non globale et de ne pas être partagé dans une zone non globale.
Si la propriété mountpoint d'un système de fichiers ZFS est définie sur legacy, ce système de fichiers peut être partagé à l'aide de la commande héritée share.
Par exemple, les systèmes de fichiers /export/home/data et export/home/data1 sont disponibles dans zfszone.
zfszone# share -F nfs /export/home/data zfszone# cat /etc/dfs/sharetab /export/home/data export_home_data nfs sec=sys,rw
zfszone# zfs set share=name=data1,path=/export/home/data1,prot=nfs tank/zones/export/home/data1 zfszone# zfs set sharenfs=on tank/zones/export/home/data1 zfszone# cat /etc/dfs/sharetab /export/home/data1 data1 nfs sec=sys,rw
Le tableau ci-dessous décrit la nouvelle syntaxe de partage de systèmes de fichiers ZFS et la syntaxe de partage héritée.
Tableau 6-5 Récapitulatif des commandes de partage ZFS nouvelles et héritées
|
Vous ne pouvez pas partager un système de fichiers parent si un sous-répertoire ou un système de fichiers descendant est déjà partagé.
# share -F nfs /rpool/fs2/dir1 # share -F nfs /rpool/fs2/dir2 # share -F nfs /rpool/fs2 share: NFS: descendant of path is shared: /rpool/fs2/dir1 in rpool_fs2_dir2
L'attribution d'un nouveau nom à un partage créé à l'aide de la commande zfs set share n'est pas pris en charge.
Vous pouvez créer un partage de système de fichiers avec les protocoles NFS et SMB en utilisant la commande zfs set share. Par exemple :
# zfs set share=name=ds,path=/ds,prot=nfs,prot=smb rpool/ds name=ds,path=/ds,prot=nfs,prot=smb
Si vous souhaitez créer un partage de système de fichiers avec les protocoles NFS et SMB en utilisant la commande héritée share, vous devez spécifier la commande à deux reprises. Par exemple :
# share -F nfs /rpool/ds # share -F smb /rpool/ds # zfs get share rpool/df name=rpool_ds,path=/rpool/ds,prot=nfs,prot=smb
Un chemin d'accès ou une description de partage comprenant une virgule (,) doit être placé entre guillemets.
Cette section présente tous les problèmes de transition.
Mise à niveau de votre système : les partages ZFS seront incorrects si revenez à un environnement d'initialisation antérieur en raison de modifications apportées aux propriétés dans cette version. Les partages non ZFS ne sont pas concernés. Si vous avez l'intention de revenir à un environnement d'initialisation antérieur, enregistrez tout d'abord une copie de la configuration du partage existante avant l'opération pkg update afin de pouvoir restaurer la configuration du partage sur les systèmes de fichiers ZFS.
Dans l'environnement d'initialisation antérieur, utilisez la commande sharemgr show -vp pour répertorier tous les partages et leur configuration.
Servez-vous des commandes zfs get sharenfs filesystem et zfs sharesmb filesystem pour obtenir les valeurs des propriétés de partage.
Si vous revenez à un environnement d'initialisation antérieur, restaurez les valeurs d'origine des propriétés sharenfs et sharesmb.
Comportement hérité d'annulation de partage : les commandes unshare -a ou unshareall permettent d'annuler la publication d'un partage, mais ne mettent pas à jour le référentiel de partages SMF. Si vous tentez de republier le partage existant, les conflits sont recherchés dans le référentiel de partages et un message d'erreur s'affiche.