Guide d'administration système : Gestion des ressources des conteneurs et des zones Oracle Solaris

Systèmes de fichiers et zones non globales

Cette section contient les informations relatives aux problèmes liés aux systèmes de fichiers des systèmes Solaris dotés de zones. Chaque zone possède sa section de l'arborescence du système de fichiers, située dans le répertoire appelé la racine de zone. Les processus de la zone peuvent accéder uniquement aux fichiers de la partie de l'arborescence située sous la racine de zone. Vous pouvez employer l'utilitaire chroot au sein d'une zone, mais uniquement à des fins de restriction du processus à un chemin racine de la zone en question. Pour plus d'informations sur chroot, reportez-vous à la page de manuel chroot(1M).

Option -o nosuid

L'option -o nosuid de l'utilitaire mount a la fonction suivante :

Cette option spécifique au système de fichiers est disponible pour tous les systèmes Solaris que vous pouvez monter à l'aide des utilitaires mount, comme le décrit la page de manuel mount(1M) Dans ce manuel, ces systèmes de fichiers sont répertoriés à la section Montage de systèmes de fichiers dans les zones. Les capacités de montage y sont également décrites. Pour plus d'informations sur l'option -o nosuid voir la section Accessing Network File Systems (Reference) du System Administration Guide: Network Services .

Montage de systèmes de fichiers dans les zones

L'option nodevices s'applique lors du montage des systèmes de fichiers au sein d'une zone. Par exemple, si une zone se voit accorder l'accès à un périphérique en mode bloc (/dev/dsk/c0t0d0s7 ) et à un périphérique brut (/dev/rdsk/c0t0d0s7) correspondant à un système de fichiers UFS, le système de fichiers est automatiquement monté avec l'option nodevices dans le cadre d'un montage au sein d'une zone. Cette règle ne s'applique pas aux montages spécifiés par le biais d'une configuration zonecfg.

Le tableau ci-dessous décrit les options de montage de systèmes de fichiers dans les zones non globales. Les procédures concernant ces options de montage sont fournies aux sections Configuration, vérification et validation d'une zone et Montage de systèmes de fichiers dans des zones non globales en cours d'exécution.

Les types de système de fichiers qui ne sont pas répertoriés dans le tableau peuvent être spécifiés dans la configuration s'ils présentent un binaire de montage dans /usr/lib/type fs/mount .

Système de fichiers 

Options de montage dans une zone non globale 

AutoFS 

Ne peut être monté à l'aide de la commande zonecfg, ne peut être monté manuellement dans une zone non globale à partir de la zone globale. Peut être monté au sein d'une zone.

CacheFS 

Ne peut être utilisé dans une zone non globale. 

FDFS 

Peut être monté à l'aide de la commande zonecfg, peut être monté manuellement dans une zone non globale à partir de la zone globale, peut être monté au sein de la zone.

HSFS 

Peut être monté à l'aide de la commande zonecfg, peut être monté manuellement dans une zone non globale à partir de la zone globale, peut être monté au sein de la zone.

LOFS 

Peut être monté à l'aide de la commande zonecfg, peut être monté manuellement dans une zone non globale à partir de la zone globale, peut être monté au sein de la zone.

MNTFS 

Ne peut être monté à l'aide de la commande zonecfg, ne peut être monté manuellement dans une zone non globale à partir de la zone globale. Peut être monté au sein d'une zone.

NFS 

Ne peut pas être monté à l'aide de la commande zonecfg. Les versions V2, V3 et V4 actuellement prises en charge dans les zones peuvent être montées au sein de la zone.

PCFS  

Peut être monté à l'aide de la commande zonecfg, peut être monté manuellement dans une zone non globale à partir de la zone globale, peut être monté au sein de la zone.

PROCFS 

Ne peut être monté à l'aide de la commande zonecfg, ne peut être monté manuellement dans une zone non globale à partir de la zone globale. Peut être monté au sein d'une zone.

TMPFS 

Peut être monté à l'aide de la commande zonecfg, peut être monté manuellement dans une zone non globale à partir de la zone globale, peut être monté au sein de la zone.

UDFS 

Peut être monté à l'aide de la commande zonecfg, peut être monté manuellement dans une zone non globale à partir de la zone globale, peut être monté au sein de la zone.

UFS 

Peut être monté à l'aide de la commande zonecfg, peut être monté manuellement dans une zone non globale à partir de la zone globale, peut être monté au sein de la zone.

XMEMFS 

Peut être monté à l'aide de la commande zonecfg, peut être monté manuellement dans une zone non globale à partir de la zone globale, peut être monté au sein de la zone.

Ce système de fichiers ne sera plus pris en charge dans les versions à venir du système Solaris. 

ZFS 

Peut être monté à l'aide des types de ressources zonecfg dataset et fs.

Pour plus d'informations, reportez-vous aux sections Configuration d'une zone et Montage de systèmes de fichiers dans des zones non globales en cours d'exécution, ainsi qu'à la page de manuel mount(1M).

Démontage des systèmes de fichiers dans les zones

La possibilité de démonter un système de fichiers dépend de l'identité de l'utilisateur ayant réalisé le montage initial. Si le système de fichiers est spécifié dans la configuration de la zone à l'aide de la commande zonecfg, le montage appartient à la zone globale. Par conséquent, l'administrateur de la zone non globale ne peut pas démonter le système de fichiers. En revanche, si le système de fichiers est monté à l'intérieur de la zone non globale, par exemple, en spécifiant le montage dans le fichier /etc/vfstab de la zone, l'administrateur de la zone non globale est autorisé à le démonter.

Restrictions de sécurité et comportement du système de fichiers

Le montage de certains systèmes de fichiers au sein d'une zone est soumis à des restrictions de sécurité. et d'autres systèmes de fichiers ont un comportement particulier lorsqu'ils sont montés dans une zone. Les systèmes de fichiers modifiés sont répertoriés ci-dessous.

AutoFS

AutoFS est un service côté client qui monte automatiquement le système de fichiers adéquat. Lorsqu'un client essaie d'accéder à un système de fichiers non monté, le système de fichiers AutoFS intercepte la requête et appelle la commande automountd pour monter le répertoire spécifié. Les montages AutoFS établis au sein d'une zone sont locaux à cette zone. Ils ne sont pas accessibles à partir d'autres zones, pas même de la zone globale. Ils sont supprimés à l'arrêt ou à la réinitialisation de la zone. Pour plus d'informations sur AutoFS, reportez-vous à la section How Autofs Works du System Administration Guide: Network Services .

Chaque zone exécute sa copie de automountd. L'administrateur de zone contrôle les délais et les cartes automatiques. Vous ne pouvez pas déclencher un montage dans une autre zone en croisant un point de montage AutoFS pour une zone non globale à partir de la zone globale.

Certains montages AutoFS sont créés dans le noyau lors du déclenchement d'un autre montage. Ces montages ne peuvent pas être supprimés à l'aide de l'interface standard umount, car ils doivent être montés ou démontés en tant que groupe. Notez que cette fonctionnalité s'applique à l'arrêt de zone.

MNTFS

MNTFS est un système de fichiers virtuel fournissant au système local l'accès en lecture seule à la table des systèmes de fichiers montés. Le groupe de systèmes de fichiers qui s'affiche lorsque vous exécutez la commande mnttab à l'intérieur d'une zone non globale correspond au groupe de systèmes de fichiers figurant dans la zone, plus une entrée racine (/) . Dans le cas des points de montage dotés d'un périphérique spécial inaccessible à l'intérieur de la zone, tel que /dev/rdsk/c0t0d0s0, la configuration du périphérique est identique à celle du point de montage. Tous les montages du système s'affichent dans la table /etc/mnttab de la zone. Pour plus d'informations sur MNTFS, reportez-vous au Chapitre 18, Mounting and Unmounting File Systems (Tasks) du System Administration Guide: Devices and File Systems.

NFS

Les montages AutoFS établis au sein d'une zone sont locaux à cette zone. Ils ne sont pas accessibles à partir d'autres zones, pas même de la zone globale. Ils sont supprimés à l'arrêt ou à la réinitialisation de la zone.

Comme indiqué dans la page de manuel mount_nfs(1M), un serveur NFS ne doit pas essayer de monter son système de fichiers. Par conséquent, une zone ne doit pas monter en mode NFS un système de fichiers exporté par la zone globale. Les zones ne peuvent pas être des serveurs NFS. Au sein d'une zone, les montages NFS se comportent comme s'ils étaient montés à l'aide de l'option nodevices.

La sortie de commande nfsstat appartient uniquement à la zone dans laquelle la commande est exécutée. Par exemple, si la commande est exécutée dans la zone globale, seules les informations concernant la zone globale sont signalées. Pour plus d'informations sur la commande nfsstat, reportez-vous à la page de manuelnfsstat(1M).

La commande zlogin échoue si l'un de ses fichiers ouverts ou l'une des régions de son espace d'adressage réside sur NFS. Pour plus d'informations, reportez-vous à la section Commande zlogin.

PROCFS

Le système de fichiers /proc ou PROCFS fournit la visibilité de processus et les restrictions d'accès, ainsi que les informations concernant l'association de processus au niveau de la zone. Seuls les processus d'une même zone sont visibles par le biais de /proc.

Les processus de la zone globale peuvent observer les processus et les autres objets des zones non globales. Ils disposent ainsi d'une capacité d'observation au niveau de l'ensemble du système.

Au sein d'une zone, les montages, procfs se comportent comme s'ils étaient montés à l'aide de l'option nodevices. Pour plus d'informations sur la commande procfs, reportez-vous à la page de manuel proc(4).

LOFS

La portée du montage par le biais de LOFS se limite à la partie du système de fichiers visible à la zone. Ainsi, aucune restriction ne s'applique aux montages LOFS dans une zone.

UFS, UDFS, PCFS et autres systèmes de fichiers basés sur le stockage

Lorsqu'il utilise la commande zonecfg pour configurer des systèmes de fichiers basés sur le stockage et dotés d'un binaire fsck, comme UFS, l'administrateur de zone doit spécifier un paramètre brut. Ce paramètre indique le périphérique brut (en mode caractère) tel que /dev/rdsk/c0t0d0s7. La commande zoneadmd exécute automatiquement la commande fsck en mode vérification uniquement non interactif (fsck -m) sur le périphérique préalablement au montage du système de fichiers. En cas d'échec de la commande fsck, la commande zoneadmd ne peut pas préparer la zone. Le chemin spécifié par le paramètre raw ne peut pas être relatif.

Indiquer un périphérique à la commande fsck pour un système de fichiers qui ne fournit pas de binaire fsck dans /usr/lib/ type fs/fsck constitue une erreur. Ne pas indiquer un périphérique à la commande fsck si un binaire fsck existe pour ce fichier constitue également une erreur.

Pour plus d'informations, reportez-vous à la section Démon zoneadmd et la page de manuel fsck(1M).

ZFS

Vous pouvez ajouter un jeu de données ZFS à une zone non globale à l'aide de la commande zonecfg et de la ressource add dataset. Le jeu de données est visible et monté dans la zone non globale et n'est plus visible dans la zone globale. L'administrateur de zone peut créer et détruire les systèmes de fichiers à l'intérieur de cet ensemble de données ou les propriétés du jeu de données.

L'attribut zoned de la commande zfs indique l'ajout d'un jeu de données à une zone non globale.


# zfs get zoned tank/sales
NAME          PROPERTY    VALUE      SOURCE
tank/sales    zoned       on         local

Si vous souhaitez partager un jeu de données de la zone globale, vous pouvez ajouter un système de fichiers ZFS monté en LOFS à l'aide de la commande zonecfg et de la sous-commande add fs. L'administrateur global est chargé de la configuration et du contrôle des propriétés du jeu de données.

Pour plus d'informations sur les systèmes de fichiers ZFS, reportez-vous au Chapitre 10, Rubriques avancées Oracle Solaris ZFS du Guide d’administration Oracle Solaris ZFS.

Zones non globales en tant que clients NFS

Les zones peuvent être des clients NFS. Les protocoles version 2, version 3 et version 4 sont pris en charge. Pour plus d'informations sur ces versions NFS, reportez-vous à la section Features of the NFS Service du System Administration Guide: Network Services

La version par défaut est NFS version 4. Vous pouvez activer d'autres versions NFS sur un client par l'une des méthodes suivantes :

Interdiction d'utiliser la commande mknod dans une zone

Vous ne pouvez pas utiliser la commande mknod décrite dans la page de manuel mknod(1M) pour créer un fichier spécial dans une zone non globale.

Parcours des systèmes de fichiers

L'espace de noms de système de fichiers d'une zone est un sous-ensemble de l'espace de noms accessible à partir de la zone globale. Pour empêcher les processus sans privilèges de la zone globale de parcourir l'arborescence de système de fichiers d'une zone non globale :

Toute tentative d'accès aux nœuds AutoFS montés pour une autre zone est vouée à l'échec. L'administrateur global ne doit pas avoir de mappages automatiques descendant dans d'autres zones.

Restriction d'accès à une zone non globale à partir de la zone globale

Pour accéder directement à partir de la zone globale à une zone non globale installée, vous devez utiliser les utilitaires de sauvegarde du système. En outre, une zone non globale n'est plus sécurisée dès qu'elle est exposée à un environnement inconnu. Imaginons une zone placée sur un réseau public et courant le risque que le contenu de ses systèmes de fichiers soit modifié. S'il existe le moindre doute que la zone ait été exposée à un tel risque, l'administrateur système doit la traiter comme non sécurisée.

Toute commande acceptant une racine alternative via l'option -R ou - b (ou l'équivalent) ne doit pas être utilisée lorsque :

Tel est le cas, par exemple, de l'option -R root_path de l'utilitaire pkgadd exécuté à partir de la zone globale avec un chemin racine de zone non globale.

Les commandes, programmes et utilitaires utilisant l'option -R avec un chemin racine alternatif sont répertoriés ci-dessous.

Les commandes et programmes utilisant l'option -b avec un chemin racine alternatif sont répertoriés ci-dessous.