2 votes

les locales ne fonctionnent pas sur le Beaglebone Black sous Debian

Tout a donc commencé lorsque j'ai voulu installer mon démon personnalisé sur mon Beaglebone Black fonctionnant sous Debian en utilisant update-rc.d mydaemon defaults 97 comme je l'ai fait plusieurs fois pendant son développement sur mon hôte Mint. Et je suis accueilli avec :

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
   LANGUAGE = (unset),
   LC_ALL = (unset),
   LC_PAPER = "es_CL.UTF-8",
   LC_ADDRESS = "es_CL.UTF-8",
   LC_MONETARY = "es_CL.UTF-8",
   LC_NUMERIC = "es_CL.UTF-8",
   LC_TELEPHONE = "es_CL.UTF-8",
   LC_IDENTIFICATION = "es_CL.UTF-8",
   LC_MEASUREMENT = "es_CL.UTF-8",
   LC_NAME = "es_CL.UTF-8",
   LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
update-rc.d: using dependency based boot sequencing

Que j'ai ensuite essayé de corriger avec dpkg-reconfigure locales à laquelle elle répond

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LC_PAPER = "es_CL.UTF-8",
    LC_ADDRESS = "es_CL.UTF-8",
    LC_MONETARY = "es_CL.UTF-8",
    LC_NUMERIC = "es_CL.UTF-8",
    LC_TELEPHONE = "es_CL.UTF-8",
    LC_IDENTIFICATION = "es_CL.UTF-8",
    LC_MEASUREMENT = "es_CL.UTF-8",
    LC_NAME = "es_CL.UTF-8",
    LANG = "en_US.UTF-8"
     are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
/usr/bin/locale: Cannot set LC_CTYPE to default locale: No such file or directory
/usr/bin/locale: Cannot set LC_MESSAGES to default locale: No such file or directory
/usr/bin/locale: Cannot set LC_ALL to default locale: No such file or directory
Generating locales (this might take a while)...
  en_US.ISO-8859-1...locale alias file `/usr/share/locale/locale.alias' not found: No such file or directory
 done
Generation complete.
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LC_MONETARY = "es_CL.UTF-8",
    LC_ADDRESS = "es_CL.UTF-8",
    LC_TELEPHONE = "es_CL.UTF-8",
    LC_NAME = "es_CL.UTF-8",
    LC_MEASUREMENT = "es_CL.UTF-8",
    LC_IDENTIFICATION = "es_CL.UTF-8",
    LC_NUMERIC = "es_CL.UTF-8",
    LC_PAPER = "es_CL.UTF-8",
    LANG = "C"
     are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LC_MONETARY = "es_CL.UTF-8",
    LC_ADDRESS = "es_CL.UTF-8",
    LC_TELEPHONE = "es_CL.UTF-8",
    LC_NAME = "es_CL.UTF-8",
    LC_MEASUREMENT = "es_CL.UTF-8",
    LC_IDENTIFICATION = "es_CL.UTF-8",
    LC_NUMERIC = "es_CL.UTF-8",
    LC_PAPER = "es_CL.UTF-8",
    LANG = "C"
     are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").

Je n'ai aucune idée de la façon de résoudre ce problème car il refuse de me laisser installer des paquets ou mettre à jour quoi que ce soit... Quelqu'un a-t-il une idée ? Je suis désemparé...

p.s. J'ai vu Configurer les locales sur Debian et cela ne fonctionne pas pour moi (à savoir source /etc/default/locale )

p.p.s J'ai aussi vérifié /etc/locales.gen Shell et en_US.UTF-8 UTF-8 est décommenté comme il est supposé l'être et le Shell Shell propose d'exécuter locale-gen et j'obtiens

Generating locales (this might take a while)...
en_US.UTF-8...locale alias file `/usr/share/locale/locale.alias' not found: No such file or directory

4voto

Bottacco Points 13

AprÃ?s avoir parcouru tous les manuels de Debian et la construction du BeagleBone, j'ai finalement trouvé ce qui s'est passé ! J'ai pensé que je mettrais cela en ligne au cas où quelqu'un rencontrerait ce problÃ?me. Afin de corriger les locales, j'ai dû réécrire manuellement le fichier /etc/default/locale avec : (si vous êtes en Amérique du Nord par exemple, vous utiliserez "en_US.UTF-8" pour tous).

LANG="en_US.UTF-8"
LC_NUMERIC="es_CL.UTF-8"
LC_MONETARY="es_CL.UTF-8"
LC_PAPER="es_CL.UTF-8"
LC_NAME="es_CL.UTF-8"
LC_ADDRESS="es_CL.UTF-8"
LC_TELEPHONE="es_CL.UTF-8"
LC_MEASUREMENT="es_CL.UTF-8"
LC_IDENTIFICATION="es_CL.UTF-8"

Vous devez ensuite vous assurer que le Shell Shell /etc/locale.gen a toutes les locales que vous avez l'intention d'utiliser sans les compléter, c'est à dire sudo nano /etc/locale.gen .

Vous devez ensuite fixer le lien symbolique que locales attend, que le noyau aurait dû faire à l'installation, ceci est fait par : sudo ln -s /etc/locale.alias /usr/share/locale/locale.alias

Enfin exécuter dpkg-reconfigure locales pour corriger la liaison, et tout devrait fonctionner correctement maintenant.

(En passant, je me suis rendu compte plus tard que les update-rc.d est un outil hérité sur les dernières versions de Debian, comme celle du BeagleBone black, le démon Shell doit être installé en utilisant insserv mydaemon à la place)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X