La commande CLI renvoie un message d’erreur : Le codec utf8 ne peut pas décoder les octets en position - données non valides
Summary: Un message d’erreur s’affiche dans la CLI lors de la tentative d’obtention de la sortie pour « isi smb shares list » Le message d’erreur indique : Le codec UTF8 ne parvient pas à décoder les octets à la position [valeur1-valeur2] : données non valides. Le problème se produit car des caractères UTF8 non valides sont placés dans les noms ou les descriptions de partage. Les caractères UTF8 non valides ne sont pas autorisés dans l’interface de ligne de commande ou l’interface utilisateur Web. Les outils et scripts de génération de partage automatisés peuvent contourner cette limitation et provoquer le problème. ...
Symptoms
Un caractère utf8 non valide entraîne le retour d’un message d’erreur au lieu de la liste des partages sur le cluster. Ces partages peuvent toujours être affichés à partir de l’interface utilisateur Web ou dans les journaux.
Le message d’erreur suivant s’affiche dans la CLI lors de la tentative d’obtention de la sortie pour « isi smb shares list » :
utf8 codec can't decode bytes in position [value1-value2] - invalid data.
Confirmez ce problème en créant un nouveau partage ou en choisissant un partage qui a été confirmé avec l’interface utilisateur Web comme ne contenant pas de caractères spéciaux non pris en charge.
isi smb share view <sharename>
Avec le partage de problèmes, la sortie des éléments suivants ne peut pas être affichée :
isi smb share view <problem_share_name>
Cause
Le problème est dû au fait que des caractères UTF8 non valides sont placés dans les noms de partage ou que les descriptions ne sont pas autorisées dans l’interface de ligne de commande ou l’interface utilisateur Web. Certains outils de génération de partages automatisés, tels que les appels d’API (Application Programming Interface) VIPR, peuvent contourner cette limitation et provoquer le problème.
Resolution
Utilisez l’interface utilisateur Web, les journaux et le "isi smb shares list --limit=#" pour trouver les partages à l’origine du problème.
Étape 1 : Identifiez l’emplacement du nom du partage par ordre alphabétique à l’aide des commandes CLI.
Dans UNIX, l’ordre alphabétique commence par les caractères spéciaux tels que le signe dollar ($) ou le signe de pourcentage (%). Puis les lettres majuscules par ordre alphabétique, suivies des lettres minuscules par ordre alphabétique. Voir l’exemple ci-dessous :
ClusterName# isi smb shares list --format=table --limit=10 Share Name Path -------------------------------------------------------------------------------------- $AutoTest /ifs/data_dr/bi/std1/bi_autotest_fs1/BI_6272_$AutoTest $Booke /ifs/data_dr/shared/std1/sharedhfd_fs1/FACS_6230_$Booke $BudRef /ifs/data_dr/corp/std1/corporate_finance_fs1/FACS_6230_$BudRef $Bureau /ifs/data_dr/corp/std1/corp_6230_corporate_finance_fs2 $CLHomedirs3 /ifs/data_dr/bi/std1/upper_cl18/cl18/CLHomedirs3 $CORE14_NME /ifs/data_dr/oaisys/std1/upper_core14/core14/$CORE14_NME $CORE2_IS_START_FILES /ifs/data_dr/oaisys/std1/upper_core2/core2/$CORE2_IS_START_FILES $CORETSC_PRIM /ifs/data_dr/oaisys/std1/Data_CORETSC_PRIM $Clm_DataHFD_44 /ifs/data_dr/claim/std1/Clm_Data_Clm_DataHFD_44 $Core4_SCRATCH /ifs/data_dr/oaisys/std1/upper_core4/core4/Core4_SCRATCH -------------------------------------------------------------------------------------- Total: 10
Dans cet exemple, lorsque la même commande est répétée avec une limite de 11, l’erreur suivante s’affiche. Cela indique que l’erreur est la 11e entrée de la liste.
ClusterName# isi smb shares list --format=table --limit=11 'utf8' codec can't decode bytes in position 5-7: invalid data
Dans cet exemple, au moins l’une des entrées avec des caractères codés UTF8 non valides est trouvée, et elle est classée alphabétiquement après $Core 4_SCRATCH.
Étape 2 : utilisez l’interface utilisateur Web ou les jeux de journaux pour rechercher le partage SMB (Server Message Block) suivant $Core 4_SCRATCH par ordre alphabétique. Vérifiez que les entrées de nom de partage non valides ont été trouvées :
Name: $DTASTAGE Path: /ifs/data_dr/oaisys/std1/upper_ops2/ops2/$DTASTAGE Comment: Share Owner: Wendi Marceaü - LOB Desktop Architecture
Dans cet exemple, notez que la section « Comment » contient le caractère « ü ». Ce problème doit être corrigé. Apportez la modification et enregistrez le partage.
Étape 3 : répétez les étapes 1 et 2 jusqu’à ce que tous les partages puissent être répertoriés avec "isi smb shares list" .