Notes de version de Solaris 10 5/09

Systèmes de fichiers

Les bogues de systèmes de fichiers suivants s'appliquent à la version Solaris10.

La commande zoneadm attach échoue et l'opération de montage n'est pas valide pour les zones marquées (6800618)

L'opération de rattachement échoue sur les zones marquées, bien qu'elle fonctionne sur les zones (Solaris 10) natives. Le message d'erreur suivant s'affiche :


zone mount operation is invalid for branded zones.
Cannot generate the information needed to attach this zone.

Solution de contournement : utilisez la commande attach - F pour les zones marquées non natives. Pour plus d'informations sur cette procédure, reportez-vous au document System Administration Guide: Solaris Containers-Resource Management and Solaris Zones.

Mise hors ligne du disque principal d'un pool racine ZFS mis en miroir

Ne mettez pas le disque principal d'une configuration racine ZFS mise en miroir hors ligne. Le système ne s'exécute pas à partir d'un disque hors ligne dans une configuration de pool racine.

Solution de contournement : si la mise hors ligne ou la déconnexion d'un disque racine mis en miroir est nécessaire pour le remplacer, effectuez l'initialisation à partir d'un autre disque mis en miroir du pool. Choisissez une des méthodes ci-dessous :

lucreate échoue lorsque le système de fichiers de destination est ZFS et que l'environnement linguistique est en japonais EUC (6750725)

Si vous utilisez la commande lucreate pour créer un système de fichiers racine ZFS et que l'environnement linguistique n'est pas en anglais, la création du volume de vidage ZFS échoue. Le message d'erreur suivant s'affiche :


ERROR: Unable to determine dump device for boot environment <{c1t1d0s0}>.
ERROR: Unable to create all required file systems for boot environment <zfsUp6>.
ERROR: Cannot make file systems for boot environment <zfsUp6>.

Solution de contournement : choisissez l'un des palliatifs suivants :

La commandeboot -L ne fonctionne pas après conversion du système UFS en système ZFS (6741743)

Lorsque Solaris Live Upgrade sert à convertir un système de fichiers racine UFS en ZFS, la commande bootlst n'est pas copiée vers l'emplacement qui convient. Cette erreur empêche la commande boot -L de fonctionner. Le message d'erreur suivant s'affiche :


Evaluating: boot -L
The file just loaded does not appear to be executable.
Boot device: /pci@1f,0/pci@1/scsi@8/disk@1,0:a  File and args: 

Can't mount root

Error in Fcode execution !!!
Evaluating: boot
The file just loaded does not appear to be executable.

Solution de contournement : copiez la commande bootlst de /platform/`uname -m`/bootlst vers / pool racine/platform/`uname -m`/bootlst. Si, par exemple, votre pool racine se nomme rpool, entrez la commande suivante :


# cp -p /platform/`uname -m`/bootlst /rpool/platform/`uname -m`/bootlst

x86 : Impossible d'utiliser la commande reboot pour initialiser le noyau 32 bits (6741682)

La commande bootadm n'a pas réussi à créer une entrée de menu GRUB au format qui convient à l'initialisation du système en mode 32 bits à l'aide des commandes suivantes :

En conséquence, le système a démarré en mode 64 bits. Le fichier menu.lst défectueux peut apparaître de la manière suivante :


findroot rootfs0
kernel /platform/i86pc/kernel/unix
module /platform/i86pc/boot_archive

Dans l'exemple précédent, la ligne du noyau ne contient pas les informations multiboot et est donc incorrecte. Aucun message d'erreur n'est affiché.

Solution de contournement : modifiez manuellement le fichier /boot/grub/menu.lst et ajoutez les informations suivantes :


title Solaris 10 10/08
findroot rootfs0
kernel /platform/i86pc/multiboot kernel/unix
module /platform/i86pc/boot_archive

Après avoir apporté ces modifications, le système démarre en mode 32 bits.


Remarque –

Les changements modifiant le fichier menu.lst sont conservés après la réinitialisation du système.


Vous pouvez modifier le menu GRUB à l'amorçage en ajoutant l'argument kernel/unix comme indiqué dans l'exemple suivant :


grub edit> kernel /platform/i86pc/multiboot kernel/unix

Remarque –

Le menu GRUB est alors modifié de façon temporaire ; les changements ne sont pas conservés après la réinitialisation du système.


Pour plus d'informations, reportez-vous à la section Modifying Boot Behavior on x86 Based Systems du System Administration Guide: Basic Administration .

zpool attach peut créer un pool racine illégal (6740164)

Lorsque vous reliez un lecteur à un pool racine afin de créer un pool racine en miroir, il est possible que zpool attach crée un pool racine illégal si un disque entier est ajouté au pool. Un pool racine ZFS doit être créé avec des tranches de disque, non pas avec des disques entiers. Si vous essayez d'amorcer le système depuis le disque entier ajouté au pool racine copié en miroir, le système ne démarre pas.

Solution de contournement : Procédez comme suit :

  1. Dissociez le disque du pool. Par exemple


    # zpool detach rpool c0t2d0
  2. Remplacez l'étiquette du disque par une étiquette VTOC (SMI). Exemple :


    # format -e
    .
    .
    .
    Select disk c0t2d0
    format> label
    [0] SMI Label
    [1] EFI Label
    Specify Label type[0]:0
    Ready to label disk, continue? yes
    format> quit
  3. Ajoutez une tranche de disque dans le pool pour créer un pool racine en miroir. Exemple :


    # zpool attach rpool c0t2d0s0

Voir également La commande zpool attach ne copie pas les informations bootblock (6668666).

SPARC : Solaris Live Upgrade ne crée pas le fichier menu.lst (6696226)

Sur une plate-forme SPARC, un fichier menu.lst doit être créé dans les jeux de données du pool racine. Aucun message d'erreur n'est affiché.

Solution de contournement : créez manuellement le fichier menu.lst. Si, par exemple, vous possédez deux environnements d'amorçage ZFS, zfs1008BE et zfs10082BE, dans le pool racine ZFS, rpool, tapez les commandes suivantes :


# mkdir -p /rpool/boot
# cd /rpool/boot
# vi menu.lst

Ajoutez les entrées suivantes au fichier menu.lst :


title zfs1008BE
bootfs rpool/ROOT/zfs1008BE
title zfs10082BE
bootfs rpool/ROOT/zfs10082BE

La commande zpool attach ne copie pas les informations bootblock (6668666)

Si vous utilisez la commande zpool attach pour ajouter un disque vers un pool racine ZFS, les informations bootblock ne sont pas copiées vers le disque récemment ajouté. Ce problème n'affecte pas les pools racine ZFS copiés en miroir générés par une installation initiale. Le système ne s'amorce pas depuis l'autre disque du pool racine en miroir.

Solution de contournement : choisissez l'un des palliatifs suivants :

x86 : Expirations du pilote ata à l'initialisation (6586621)

Des expirations du pilote ata peuvent se produire à l'initialisation du système sur les systèmes multiprocesseur Intel. Ces expirations se produisent lorsque le périphérique racine se trouve sur un disque avec le contrôleur HBA lié au pilote ata existant. Elles entraînent un blocage momentané, un blocage permanent ou une panique du système à l'initialisation du système et des messages similaires aux suivants s'affichent sur la console :


scsi: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0 (ata0):
        timeout: reset bus, target=0 lun=0
scsi: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0 (ata0):
        timeout: early timeout, target=0 lun=0
gda: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0/cmdk@0,0 (Disk0):
        Error for command 'read sector'   Error Level: Informational
gda: [ID 107833 kern.notice]           Sense Key: aborted command
gda: [ID 107833 kern.notice]           Vendor 'Gen-ATA ' error code: 0x3
gda: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0/cmdk@0,0 (Disk0):
        Error for command 'read sector'   Error Level: Informational
gda: [ID 107833 kern.notice]           Sense Key: aborted command
gda: [ID 107833 kern.notice]           Vendor 'Gen-ATA ' error code: 0x3
scsi: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0 (ata0):
        timeout: abort request, target=0 lun=0
scsi: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0 (ata0):
        timeout: abort device, target=0 lun=0
scsi: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0 (ata0):
        timeout: reset target, target=0 lun=0
scsi: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0 (ata0):
        timeout: reset bus, target=0 lun=0
scsi: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0 (ata0):
        timeout: early timeout, target=0 lun=0
gda: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0/cmdk@0,0 (Disk0):
        Error for command 'read sector'   Error Level: Informational
gda: [ID 107833 kern.notice]           Sense Key: aborted command
gda: [ID 107833 kern.notice]           Vendor 'Gen-ATA ' error code: 0x3
gda: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0/cmdk@0,0 (Disk0):

Solution de contournement : choisissez l'un des palliatifs suivants :


Remarque –

Pour éviter d'affecter les performances, n'appliquez les solutions de contournement 3 et 4 que de manière temporaire, jusqu'à ce que la solution 5 soit envisageable.


Instantané ZFS -r échoue lorsque le fichier système est occupé (6462803)

Ce problème est causé en raison d'un problème avec le mode E/S synchrone est gérée lorsqu'un système de fichiers n'est pas monté. Lorsque plusieurs ZFS doit être existe dans un pool racine ZFS, un récursif instantané risque d'échouer.


cannot create snapshot 'rpool@today': dataset is busy

Solution de contournement : choisissez l'un des palliatifs suivants :

Échec de zoneadm install avec un montage ZFS existant (6449301)

Si une zone non globale est initialement configurée avec un système de fichiers ZFS à monter avec la sous-commande `add fs et avec la spécification mountpoint=legacy, la tentative d'installation de zone suivante échoue. Le message d'erreur suivant s'affiche :


ERROR: No such file or directory:
cannot mount </zones/path/root/usr/local> in non-global zone to install:
the source block device or directory </path/local> cannot be accessed

Solution de contournement : après avoir installé la zone non globale, ajoutez l'accès à un système de fichiers ZFS.

Problèmes de compatibilité ZFS et UNIX/POSIX

ZFS est conçu pour être un système de fichiers compatible POSIX et il l'est dans la plupart des cas. Il existe cependant deux exceptions où ZFS ne satisfait pas les tests de compatibilité POSIX :

  1. Mise à jour des statistiques de capacité du système de fichiers ZFS.

  2. Modification des données existantes dans un système de fichiers saturé.

CR connexes :

fdisk -E peut analyser le disque analysé par ZFS sans avertissement (6412771)

Si vous exécutez la commande fdisk -E pour modifier un disque utilisé par un pool de stockage ZFS, le pool devient inutilisable et peut entraîner une erreur d'E/S ou une erreur système grave.

Solution de contournement :

N'utilisez pas la commande fdisk pour modifier un disque utilisé par un pool de stockage ZFS. Pour accéder à un disque utilisé par un pool de stockage, utilisez plutôt l'utilitaire format. Les disques utilisés par des systèmes de fichiers ne doivent généralement pas être modifiés.

ZFS et problèmes de produits de sauvegarde tiers

Les problèmes suivants concernent les produits Brightstor ARCserve Backup.

Agent client BrightStor ARCserve Backup pour UNIX (Solaris) et prise en charge de ZFS

L'agent client BrightStor ARCserve Backup (BAB) pour UNIX (Solaris) permet de sauvegarder et de restaurer les fichiers ZFS.

Cependant, les ACL ZFS de type NFSv4 ne sont pas conservées. Les attributs et droits d'accès aux fichiers UNIX habituels sont conservés.

Solution de contournement : pour conserver les fichiers ZFS avec les ACL NFSv4, exécutez la commande tar avec l'option -p ou la commande cpio avec l'option -P pour intégrer les fichiers ZFS à un fichier. Ensuite, utilisez BAB pour sauvegarder l'archive tar ou cpio.

L'interface utilisateur ZFS doit vérifier /usr/lib/embedded_su au début de chaque assistant (6326334)

Lorsque vous ajoutez le package SUNWzfsg à partir d'une version Solaris 10 5/09 à un système exécutant une version antérieure à Solaris 10 6/06 et sur lequel le patch embedded_su n'est pas installé, les assistants de l'application ZFS Administration ne fonctionnent pas parfaitement.

Si vous tentez d'exécuter l'application ZFS Administration sur un système sur lequel le patch embedded_su n'est pas installé, vous ne pourrez pas consulter la configuration de votre ZFS. Le message d'erreur suivant s'affiche :


/usr/lib/embedded_su: not found

Solution de contournement :

Ajoutez le patch embedded_su (119574-02) au système exécutant une version antérieure à Solaris 10 6/06.

Échec de synchronisation du système de fichiers en cas de panique (6250422)

Si un hôte panique avec l'E/S d'un système de fichiers sur une cible qui est connectée à l'aide de l'initiateur Solaris iSCSI, l'E/S risque de ne pas pouvoir vider ou synchroniser sur le périphérique cible. Cette incapacité à vider ou à synchroniser peut entraîner une corruption du système de fichiers. Aucun message d'erreur n'est affiché.

Solution de contournement :

Utilisez un système de fichier journalisé comme UFS. Dans Solaris 10, la journalisation UFS est activée par défaut. Pour plus d'informations sur UFS, reportez-vous à What’s New in File Systems? du System Administration Guide: Devices and File Systems .

Le remontage des systèmes de fichiers est nécessaire pour procéder à la mise à niveau à partir de certaines versions de Solaris Express ou de Solaris10

Après la mise à niveau d'un serveur NFSv4 de Solaris Express 6/05 vers Solaris Express 7/05 ou version ultérieure (y compris toutes les versions Solaris 10), des erreurs EACCES peuvent se produire dans les programmes. En outre, des répertoires sont anormalement vides.

Pour ces erreurs, démontez et remontez les systèmes de fichiers clients. Si le démontage échoue, il peut être nécessaire de démonter le système de fichiers concerné à l'aide de la commande umount -f. Vous pouvez également réinitialiser le client.

Les fonctions de la liste de contrôle d'accès NFSv4 peuvent ne pas fonctionner correctement

Les fonctions de la liste de contrôle d'accès NFSv4 (ACL, Access Control List) peuvent ne pas fonctionner correctement si des versions antérieures de Solaris10 sont installées sur les clients et les serveurs du réseau. Les fonctions ACL concernées et les utilitaires de ligne de commande qui ont recours à ces fonctions sont :

Pour plus d'informations concernant ces fonctions et ces utilitaires, reportez-vous à leurs pages man respectives.

Des erreurs peuvent par exemple être observées sur un réseau avec la configuration suivante :

Le tableau suivant indique les résultats des fonctions ACL dans des configurations client-serveur avec différentes versions de Solaris10.

Opération 

Système d'exploitation client S10 

Système d'exploitation serveur S10 

Résultat 

obtenir ACL 

S10 bêta 

Système d'exploitation S10 

ACL * fabriquée 

obtenir ACL 

Système d'exploitation S10 

S10 bêta 

fonctionne correctement 

définir ACL 

S10 bêta 

Système d'exploitation S10 

fonctionne correctement 

définir ACL 

Système d'exploitation S10 

S10 bêta 

Erreur : EOPNOTSUP 

Solution de contournement : pour que la fonctionnalité ACL NFSv4 fonctionne correctement, effectuez une installation complète du SE Solaris 10 sur le serveur et le client.

Problèmes d'accès entre les clients et les serveurs NFSv4 Solaris

Dans la version Solaris10 actuelle, l'implémentation de l'ACL NFSv4 est désormais conforme aux spécifications RFC 3530. Cependant, des erreurs se produisent pour les clients NFSv4 qui fonctionnent avec les versions Solaris10 bêta 2 ou bêta 1. Ces clients ne peuvent pas créer de fichiers sur les serveurs NFSv4 qui fonctionnent avec la version Solaris10 actuelle. Le message d'erreur suivant s'affiche :


NFS getacl failed for server_name: error 9 (RPC: Program/version mismatch)

Solution de contournement : aucune.

L'utilisation de la commande mkfs pour créer un système de fichiers risque d'échouer sur les disques de très grande capacité (6352813)

La commande mkfs risque de ne pas réussir à créer un système de fichiers sur les disques présentant une certaine géométrie et une capacité supérieure à 8 Go. La capacité du groupe de cylindres dérivé est trop importante pour le fragment de 1 ko. La grande capacité du groupe de cylindres implique un volume de métadonnées qu'un bloc ne suffit pas à contenir.

Le message d'erreur suivant s'affiche :


With 15625 sectors per cylinder, minimum cylinders
per group is 16. This requires the fragment size to be
changed from 1024 to 4096.
Please re-run mkfs with corrected parameters.

Solution de contournement : utilisez plutôt la commande newfs. Vous pouvez également attribuer une plus grande taille de fragment, telle que 4096, lorsque vous utilisez la commande mkfs.

Échec du vidage mémoire sur incident du système sur les périphériques supérieurs à 1 To (6214480)

Le système ne peut pas générer le vidage de la mémoire sur une partition dont la taille est supérieure ou égale à 1 To. Si un périphérique de cette taille se trouve sur un système, la réinitialisation du système à la suite d'une panique peut entraîner ce qui suit :

Solution de contournement : configurez la taille du périphérique de vidage de votre système de sorte qu'elle soit inférieure à 1 To.