Les bogues de systèmes de fichiers suivants s'appliquent à la version Solaris10.
À partir des versions 0.20.46.00-IR, le microprogramme Dell SAS 6 HBA (LSI 1068) présente une incompatibilité qui peut empêcher les commandes lsiutil et raidctl(1M) de configurer correctement les disques virtuels. Après l'échec, les disques physiques passent à l'état hors ligne et ne sont plus accessibles. La commande raidctl(1M) incluse dans la version Solaris 10 5/08 est affectée, de même que la commande lsiutil de la version 5.07.04 du package ITImpt.
Le message d'erreur suivant s'affiche :
# /usr/sbin/raidctl -C "0.3.0 0.4.0" -s 64k 0 Creating RAID volume will destroy all data on spare space of member disks, proceed (yes/no)? Operation failed |
Solution : configurez les disques virtuels à l'aide de l'utilitaire de configuration SAS. Pour y accéder, entrez Ctrl+C à l'invite lors de la séquence d'initialisation du BIOS.
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 : choisissez l'un des palliatifs suivants :
Pour éviter d'affecter les performances, n'appliquez les solutions 3 et 4 que de manière temporaire, jusqu'à ce que la solution 5 soit envisageable.
Solution 1 : activez l'interface AHCI dans le BIOS si elle est disponible sur le système. L'activation de ce paramètre requiert la réinstallation du SE Solaris.
Solution 2 : installez Solaris sur un disque d'un contrôleur n'utilisant pas le pilote ata.
Solution 3 : désactivez MP dans la configuration du BIOS afin qu'un seul processeur soit actif.
Solution 4 : désactivez MP dans Solaris afin qu'un seul processeur soit actif. Réalisez les opérations suivantes à partir du menu GRUB (Grand Unified Bootloader, grand chargeur de démarrage unifié) :
Tapez e pour modifier l'entrée Solaris sélectionnée.
Accédez à la ligne commençant par kernel.
Tapez e pour passer au mode d'édition GRUB.
Ajoutez -kd à cette ligne.
Appuyez sur Entrée pour accepter les modifications.
Tapez b pour initialiser l'entrée Solaris sélectionnée.
À l'invite kbmd, tapez la commande ci-dessous :
use_mp/W 0 :c |
Si vous initialisez le système, passez à l'étape 10. Dans le cas contraire, installez le logiciel Solaris 10 5/08.
À la fin de l'installation, réinitialisez le système. Répétez les étapes 1 à 7.
Pour rendre cette modification permanente et éviter d'avoir à répéter les étapes ci-dessus lors des initialisations suivantes, procédez comme suit :
Une fois l'initialisation du système terminée, devenez superutilisateur.
Ouvrez le fichier /etc/system.
Ajoutez la ligne suivante :
set use_mp = 0 |
Solution 5 : désactivez la mise à jour du microcode. Tapez la commande suivante :
# mv /platform/i86pc/ucode /platform/i86pc/ucode.disabled |
Une fois le système actif, vous pouvez appeler manuellement la commande de mise à jour du microcode :
# ucodeadm -u /platform/i86pc/ucode.disabled/intel-ucode.txt |
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 : après avoir installé la zone non globale, ajoutez l'accès à un système de fichiers ZFS.
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 :
Mise à jour des statistiques de capacité du système de fichiers ZFS.
Modification des données existantes dans un système de fichiers saturé.
CR connexes :
6362314
6362156
6361650
6343113
6343039
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 :
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.
Les problèmes suivants concernent les produits Veritas NetBackup et Brightstor ARCserve Backup.
Veritas NetBackup peut être utilisé pour sauvegarder des fichiers ZFS et cette configuration est prise en charge. Ce produit ne prend cependant pas actuellement en charge la sauvegarde ou la restauration des données ACL de type NFSv4 des fichiers ZFS. Les bits d'autorisations classiques et d'autres attributs de fichier sont correctement sauvegardés et restaurés.
Si un utilisateur tente de sauvegarder ou de restaurer des fichiers ZFS, les données ACL de type NFSv4 des fichiers ZFS sont perdues. Aucun message d'erreur indiquant que les données ACL des fichiers ZFS sont perdues n'est affiché.
La prise en charge des ACL ZFS/NFSv4 est en cours de développement et est prévue dans la prochaine version de Veritas NetBackup.
Solution 1 :
À partir de la version Solaris 10 8/07, les commandes tar et cpio gèrent les fichiers ZFS avec les ACL de style NFSv4.
Utilisez la commande tar avec l'option -p ou la commande cpio avec l'option -P pour écrire les fichiers ZFS dans un fichier. Utilisez alors Veritas NetBackup pour sauvegarder l'archive tar ou cpio.
Solution 2 :
Outre Veritas NetBackup, vous pouvez également utiliser les commandes send et receive de ZFS pour sauvegarder des fichiers ZFS. Ces commandes gèrent correctement tous les attributs des fichiers 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 : 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.
Lorsque vous ajoutez le package SUNWzfsg à partir d'une version Solaris 10 8/07 ou Solaris 10 5/08 à 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 :
Ajoutez le patch embedded_su (119574-02) au système exécutant une version antérieure à Solaris 10 6/06.
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 :
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.
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 (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 :
acl() ;
facl() ;
getfacl ;
setfacl.
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 :
un client fonctionnant avec le logiciel Solaris10 bêta ;
un serveur fonctionnant avec le logiciel Solaris10.
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 : pour que la fonctionnalité ACL NFSv4 fonctionne correctement, effectuez une installation complète du SE Solaris 10 sur le serveur et le client.
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 : aucune.
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 : 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.
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 :
le système n'enregistre pas le vidage de la mémoire ;
Le message suivant s'affiche :
0% done: 0 pages dumped, compression ratio 0.00, dump failed: error 6 |
Solution : configurez la taille du périphérique de vidage de votre système de sorte qu'elle soit inférieure à 1 To.
Si vous utilisez la commande smosservice pour ajouter des services du système d'exploitation à un système de fichiers UFS, un message indiquant que l'espace disque disponible est insuffisant s'affiche. Cette erreur est propre aux systèmes de fichiers UFS sur des disques portant l'étiquette EFI.
Solution : recourez à la solution suivante :
Appliquez l'étiquette de disque SMI VTOC.
Recréez le système de fichiers.
Réexécutez la commande smosservice.