2014-09-12 18 views
5

Oggi ho un problema strano nel mio sistema RHEL. Il mio script python sta tornando:Come risolvere il problema locale nella distro di Red Hat?

>>> locale.setlocale(locale.LC_ALL, '') 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/usr/lib64/python2.6/locale.py", line 513, in setlocale 
    return _setlocale(category, locale) 
locale.Error: unsupported locale setting 

quando corro ...

$ locale 

L'output è ...

locale: Cannot set LC_ALL to default locale: No such file or directory 
LANG=en_US.UTF-8 
LC_CTYPE="en_US.UTF-8" 
LC_NUMERIC="en_US.UTF-8" 
... 

Ho cercato molti suggerimenti, ma nessuno di loro risolto il mio problema ancora.

Ad esempio:

  • Reinstallare glibc-comune.
  • Esporta LC_ALL come variabile di ambiente in ~/.bashrc.
  • Modificare il file/etc/sysconfig/i18n '.
  • locale-gen non esiste in RHEL.

Qualcuno ha un buon suggerimento per risolvere il mio problema. Ricordando che sto usando RHEL e non Ubuntu (ci sono molti tutorial su problemi di localizzazione e Ubuntu).

+0

[spostato da una vecchia risposta] Risolvi problemi di localizzazione e setlocale LC in CentOS e RHEL] (http://blog.earth-works.com/2014/02/10/fixing-lc-locale -issues-in-centos-and-rhel /) aiuto? Cosa ottieni da questi comandi della shell: 'locale -a',' locale -k LC_IDENTIFICATION', 'LANG = 'en_US.utf8' python -c 'importa locale, stampa locale.setlocale (locale.LC_ALL,' ')" ' –

risposta

11

Aggiungi questo al vostro/etc/environment

LC_ALL = en_US.UTF-8

LC_CTYPE = en_US.UTF-8

Poi il logout e il login per sgranare ancora e provare l'esecuzione di comandi .

1

Nel mio caso è stato iTerm a impostare automaticamente le variabili locali. Ho riparato andando sul menù iTerm e poi

Preferences ... > Profiles > "select your profile" > Terminal > uncheck "Set locale variables automatically" 
-2

L'aggiunta di/etc/ambiente seguenti variabili risolto il mio problema:

LC_ALL = en_US.UTF-8

LC_CTYPE = it_IT .UTF-8

Buona risposta sopra.