Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 20/05/2011, à 18:37

Fanascom

Problème de la langue de la console (LC n'accepte pas les accents)

Bonjour,

Mon serveur  n’accepte pas les accents. J’ai essayé de lui changer la langue par les commandes adéquate mais sans succès.

Apparemment il est configuré en Anglais et n’accepte pas d’autres langues ?!

Prière de m’aider à résoudre ce problème

Hors ligne

#2 Le 20/05/2011, à 20:01

pode

Re : Problème de la langue de la console (LC n'accepte pas les accents)

Que donne le résultat de la commande suivante ?

$ locale -a

A priori, tu ne devrais pas avoir de ligne commençant par fr

Que donne le résultat de la commande suivante ?

$ ls /usr/share/i18n/locales/

Si tu as fr_FR, tu dois pouvoir installer la locale fr_FR.UTF8 :

$ sudo localedef  -i fr_FR  -f  UTF8  fr_FR.UTF8

Et la commande suivante ?

$ cat /etc/environment 

Hors ligne

#3 Le 20/05/2011, à 21:55

Fanascom

Re : Problème de la langue de la console (LC n'accepte pas les accents)

Voici les réponse que j'ai reçu:

root@30351hd39054:~# locale -a
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_COLLATE to default locale: No such file or directory
C
POSIX
fr_FR.iso885915@euro
fr_FR@euro

root@30351hd39054:~#cat /etc/environment
LANGUAGE=fr

root@30351hd39054:~# ls /usr/share/i18n/locales/
POSIX           en_GB           hu_HU               sa_IN
aa_DJ           en_HK           hy_AM               sc_IT
aa_ER           en_IE           i18n                sd_IN
aa_ER@saaho     en_IE@euro      ia                  sd_IN@devanagari
aa_ET           en_IN           id_ID               se_NO
af_ZA           en_NG           ig_NG               shs_CA
am_ET           en_NZ           ik_CA               si_LK
an_ES           en_PH           is_IS               sid_ET
ar_AE           en_SG           iso14651_t1         sk_SK
ar_BH           en_US           iso14651_t1_common  sl_SI
ar_DZ           en_ZA           iso14651_t1_pinyin  so_DJ
ar_EG           en_ZW           it_CH               so_ET
ar_IN           eo              it_IT               so_KE
ar_IQ           es_AR           it_IT@euro          so_SO
ar_JO           es_BO           iu_CA               sq_AL
ar_KW           es_CL           iw_IL               sr_ME
ar_LB           es_CO           ja_JP               sr_RS
ar_LY           es_CR           ka_GE               sr_RS@latin
ar_MA           es_DO           kk_KZ               ss_ZA
ar_OM           es_EC           kl_GL               st_ZA
ar_QA           es_ES           km_KH               sv_FI
ar_SA           es_ES@euro      kn_IN               sv_FI@euro
ar_SD           es_GT           ko_KR               sv_SE
ar_SY           es_HN           ks_IN               ta_IN
ar_TN           es_MX           ks_IN@devanagari    te_IN
ar_YE           es_NI           ku_TR               tg_TJ
as_IN           es_PA           kw_GB               th_TH
ast_ES          es_PE           ky_KG               ti_ER
az_AZ           es_PR           lg_UG               ti_ET
be_BY           es_PY           li_BE               tig_ER
be_BY@latin     es_SV           li_NL               tk_TM
ber_DZ          es_US           lo_LA               tl_PH
ber_MA          es_UY           lt_LT               tn_ZA
bg_BG           es_VE           lv_LV               tr_CY
bn_BD           et_EE           mai_IN              tr_TR
bn_IN           eu_ES           mg_MG               translit_circle
bo_CN           eu_ES@euro      mi_NZ               translit_cjk_compat
bo_IN           eu_FR           mk_MK               translit_cjk_variants
br_FR           eu_FR@euro      ml_IN               translit_combining
br_FR@euro      fa_IR           mn_MN               translit_compat
bs_BA           fi_FI           mr_IN               translit_font
byn_ER          fi_FI@euro      ms_MY               translit_fraction
ca_AD           fil_PH          mt_MT               translit_hangul
ca_ES           fo_FO           my_MM               translit_narrow
ca_ES@euro      fr_BE           nan_TW@latin        translit_neutral
ca_ES@valencia  fr_BE@euro      nb_NO               translit_small
ca_FR           fr_CA           nds_DE              translit_wide
ca_IT           fr_CH           nds_NL              ts_ZA
crh_UA          fr_FR           ne_NP               tt_RU
cs_CZ           fr_FR@euro      nl_AW               tt_RU@iqtelif
csb_PL          fr_LU           nl_BE               ug_CN
cy_GB           fr_LU@euro      nl_BE@euro          uk_UA
da_DK           fur_IT          nl_NL               ur_IN
de_AT           fy_DE           nl_NL@euro          ur_PK
de_AT@euro      fy_NL           nn_NO               uz_UZ
de_BE           ga_IE           nr_ZA               uz_UZ@cyrillic
de_BE@euro      ga_IE@euro      nso_ZA              ve_ZA
de_CH           gd_GB           oc_FR               vi_VN
de_DE           gez_ER          om_ET               wa_BE
de_DE@euro      gez_ER@abegede  om_KE               wa_BE@euro
de_LI           gez_ET          or_IN               wal_ET
de_LU           gez_ET@abegede  pa_IN               wo_SN
de_LU@euro      gl_ES           pa_PK               xh_ZA
dv_MV           gl_ES@euro      pap_AN              yi_US
dz_BT           gu_IN           pl_PL               yo_NG
el_CY           gv_GB           ps_AF               zh_CN
el_GR           ha_NG           pt_BR               zh_HK
el_GR@euro      he_IL           pt_PT               zh_SG
en_AG           hi_IN           pt_PT@euro          zh_TW
en_AU           hne_IN          ro_RO               zu_ZA
en_BW           hr_HR           ru_RU
en_CA           hsb_DE          ru_UA
en_DK           ht_HT           rw_RW

Hors ligne

#4 Le 21/05/2011, à 07:18

pode

Re : Problème de la langue de la console (LC n'accepte pas les accents)

Et dans le répertoire /usr/share/i18n/charmaps ?

$ ls /usr/share/i18n/charmaps

Si tu as le fichier UTF-8.gz, tu dois pouvoir appliquer la commande localedef qui installera la locale fr_FR.UTF8, puis relancer la commande locale -a, pour vérifier que la locale a bien été installée (ligne fr_FR.utf8 supplémentaire)

Hors ligne

#5 Le 21/05/2011, à 16:22

Fanascom

Re : Problème de la langue de la console (LC n'accepte pas les accents)

Même si j'ai le fichier UTF-8.gz qui s'affiche, la commande n'a pas donnée d'effet (voir ci-dessous). Je pense que les 3 première lignes de la commande locale -a doivent avoir une signification particulière (ça a l'air d'etre une anomalie).


root@30351hd39054:~# localedef -i fr_FR -f UTF8 fr_FR.UTF8
character map file `UTF8' not found: No such file or directory
no output file produced because warnings were issued
root@30351hd39054:~# locale -a
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_COLLATE to default locale: No such file or directory
C
POSIX
fr_FR.iso885915@euro
fr_FR@euro
root@30351hd39054:~#

Hors ligne

#6 Le 21/05/2011, à 16:59

pode

Re : Problème de la langue de la console (LC n'accepte pas les accents)

Il y avait une erreur dans la syntaxe que j'ai donnée. C'est plutôt UTF-8 (avec un tiret).

$ sudo localedef -i fr_FR -f UTF-8 fr_FR.UTF8

Au fait, que renvoie la commande suivante ?

$ locale

Sinon, tu as déjà la locale fr_FR.iso885915@euro d'installer. Tu peux donc déjà gérer les caractères spéciaux prévus dans l'encodage ISO-8859-15 (c'était le standard sur les postes Linux il y a quelques années, avant que le nouveau standards ne devienne UTF-8).

Hors ligne

#7 Le 21/05/2011, à 17:43

Fanascom

Re : Problème de la langue de la console (LC n'accepte pas les accents)

J'ai tapé la commande avec la bonne syntaxe, maintenant il y a une différence c'est que, quand je tappe une accent la console la remplace par un point . Pour la commande locale voici ci dessous ce que ça donne. Si vous êtes disponible, on peut entrer en session teamviewer

root@30351hd39054:~# locale
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
LANG=
LANGUAGE=fr
LC_CTYPE="fr_FR.ISO-8859-15"
LC_NUMERIC="fr_FR.ISO-8859-15"
LC_TIME="fr_FR.ISO-8859-15"
LC_COLLATE="fr_FR.ISO-8859-15"
LC_MONETARY="fr_FR.ISO-8859-15"
LC_MESSAGES="fr_FR.ISO-8859-15"
LC_PAPER="fr_FR.ISO-8859-15"
LC_NAME="fr_FR.ISO-8859-15"
LC_ADDRESS="fr_FR.ISO-8859-15"
LC_TELEPHONE="fr_FR.ISO-8859-15"
LC_MEASUREMENT="fr_FR.ISO-8859-15"
LC_IDENTIFICATION="fr_FR.ISO-8859-15"
LC_ALL=fr_FR.ISO-8859-15

Hors ligne

#8 Le 21/05/2011, à 18:43

FRUiT

Re : Problème de la langue de la console (LC n'accepte pas les accents)

LANGUAGE=fr

Là c'est pas bon ça devrait être soit fr_FR, soit fr_FR.UTF-8. Mais de toute façon cette variable ne devrait pas être assignée, vire la ligne de /etc/environment.

Et à la place écris :

LC_ALL=

Juste pour voir si c'est mieux.


Neon Suite by FRUiT (kde4.6) [url]http://[Merci de relire les règles]/yzm7cee[/url]
"Pour la carotte, le lapin est la plus parfaite incarnation du mal" (R. Sheckley)
clean

Hors ligne

#9 Le 21/05/2011, à 18:44

pode

Re : Problème de la langue de la console (LC n'accepte pas les accents)

Fanascom a écrit :

Si vous êtes disponible, on peut entrer en session teamviewer

Je ne suis pas sûr de trouver la réponse à ton problème, d'autres pourraient avoir plus d'idées.
Et il faudrait que je sois root. Pas top...

Fanascom a écrit :

root@30351hd39054:~# locale
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
[...]
LC_CTYPE="fr_FR.ISO-8859-15"
LC_MESSAGES="fr_FR.ISO-8859-15"
LC_ALL=fr_FR.ISO-8859-15

Les messages "Cannot set..." sont étranges. As-tu le fichier suivant ?

$ ls /usr/share/i18n/charmaps/ISO-8859-15.gz

Si tu veux pouvoir utiliser la locale fr_FR.ISO885915, il faut l'installer :

$ sudo localedef -i fr_FR -f ISO-8859-15 fr_FR.ISO885915
Fanascom a écrit :

root@30351hd39054:~# locale
[...]
LANG=

Ça, c'est pas bon. Sans variable LANG définie, les logiciels qui utilisent cette variable utiliseront la valeur par défaut : C (i.e. l'encodage ASCII)


C'est vrai que du commentaire 3, on avait :

Fanascom a écrit :

root@30351hd39054:~#cat /etc/environment
LANGUAGE=fr

C'est pas bon non plus, pour un serveur Ubuntu. Moi, j'ai :

$ cat /etc/environment 
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
LANG="fr_FR.UTF-8"

Essaie de mettre la même chose, reboote ton serveur et regarde ce que renvoie la commande locale.
Chez moi, ça donne :

$ locale
LANG=fr_FR.UTF-8
LANGUAGE=fr_FR:en
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
LC_MONETARY="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_PAPER="fr_FR.UTF-8"
LC_NAME="fr_FR.UTF-8"
LC_ADDRESS="fr_FR.UTF-8"
LC_TELEPHONE="fr_FR.UTF-8"
LC_MEASUREMENT="fr_FR.UTF-8"
LC_IDENTIFICATION="fr_FR.UTF-8"
LC_ALL=

Hors ligne

#10 Le 22/05/2011, à 19:16

Fanascom

Re : Problème de la langue de la console (LC n'accepte pas les accents)

Merci pour vos réponses constructives.

Pour le problème d'accent sur saisi, c'étais un problème lié à mon logiciel ssh Putty, il étais configuré en ISO, je l'ai mis en UTF8 et ça a très bien marché. Maintenant je peux saisir des accents et uploadé des fichiers dont le nom contient des accents sans soucis.

Par contre, au niveau des commandes man et des enregistrement dans mes bases de données (enregistrés en UTF-8), les accents ne s'affiche tjrs pas! apperemment c'est tjrs un Pb du système.

Maintenant voici ce que j'ai comme réponses aux commandes (je crois que c'est beaucoup mieu qu'avant)

root@30351hd39054:~# locale
LANG=fr_FR.UTF-8
LC_CTYPE="fr_FR@euro"
LC_NUMERIC="fr_FR@euro"
LC_TIME="fr_FR@euro"
LC_COLLATE="fr_FR@euro"
LC_MONETARY="fr_FR@euro"
LC_MESSAGES="fr_FR@euro"
LC_PAPER="fr_FR@euro"
LC_NAME="fr_FR@euro"
LC_ADDRESS="fr_FR@euro"
LC_TELEPHONE="fr_FR@euro"
LC_MEASUREMENT="fr_FR@euro"
LC_IDENTIFICATION="fr_FR@euro"
LC_ALL=fr_FR@euro

root@30351hd39054:~# locale -a
C
franأais
french
fr_FR
fr_FR@euro
fr_FR.iso88591
fr_FR.iso885915@euro
fr_FR.utf8
POSIX

root@30351hd39054:~# cat /etc/environment
LANG="fr_FR.UTF-8"

LC_ALL=

Hors ligne

#11 Le 22/05/2011, à 19:37

pode

Re : Problème de la langue de la console (LC n'accepte pas les accents)

Fanascom a écrit :

root@30351hd39054:~# locale -a
[...]
franأais
french
[...]

Jamais vu ça. C'est bizarre...


Fanascom a écrit :

root@30351hd39054:~# locale
LANG=fr_FR.UTF-8
LC_CTYPE="fr_FR@euro"
LC_NUMERIC="fr_FR@euro"
LC_TIME="fr_FR@euro"
LC_COLLATE="fr_FR@euro"
LC_MONETARY="fr_FR@euro"
LC_MESSAGES="fr_FR@euro"
LC_PAPER="fr_FR@euro"
LC_NAME="fr_FR@euro"
LC_ADDRESS="fr_FR@euro"
LC_TELEPHONE="fr_FR@euro"
LC_MEASUREMENT="fr_FR@euro"
LC_IDENTIFICATION="fr_FR@euro"
LC_ALL=fr_FR@euro

La variable LANG est bonne mais pas les autres.
Si tes logiciels utilisent les autres variables (typiquement, LC_CTYPE est souvent utilisée ; un peu aussi LC_COLLATE pour les tris ; peut-être aussi LC_TIME pour l'affichage des dates), ils ne marcheront pas bien s'ils manipulent des données en UTF-8.

Le fait que LC_ALL ait une valeur peut aussi avoir des effets de bords : Variables d'environnement sous Ubuntu.
Peut-être que le fait d'avoir mis

LC_ALL=

dans le fichier /etc/environnement a eu cet effet ?

Que se passe t-il (résultat de la commande locale) en supprimant cette ligne du fichier /etc/environnement et en rebootant ?

Hors ligne

#12 Le 23/05/2011, à 11:26

Fanascom

Re : Problème de la langue de la console (LC n'accepte pas les accents)

Merci.

J'ai supprimé la ligne mais j'ai pas rebooté. J'ai vraiment peur de rebooter car je suis dans un environment de production (site web PHP/MySQL, Application Java/MySQL qui tourne) et je l'ai déjà fait une fois et ça m'a couté 2 jours pour remettre tout dans l'ordre.

Hors ligne