Risposte:
Ho inserito le seguenti impostazioni internazionali relative /etc/bashrc
(per tutti gli utenti bash
):
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_COLLATE=C
export LC_CTYPE=en_US.UTF-8
quindi eseguire:
source /etc/bashrc
o disconnettersi e accedere.
lang.sh
e ha funzionato 👍.
Correre
yum reinstall glibc-common
e quindi assicurarsi che nessun processo elimini i file /usr/lib/locale/locale-archive.*.
glibc-langpack-<language>
, ad es glibc-langpack-en
.
Puoi provare
export LANG=en_US
O impostalo su qualcosa di simile. Se ciò risolve il problema per te, puoi renderlo persistente modificando il profilo bash.
Stavo riscontrando lo stesso errore su MacOS. Quando si lancia su un box Linux, si rifiutano di configurare un UTF-8
locale. Puoi vedere le differenze nelle impostazioni locali eseguendo il locale
comando sul tuo terminale MacOS e sulla scatola di Linux.
Per correggere questo errore apri il terminale -> preferenze -> profili -> Avanzate e non impostate Set locale environment variables on startup
sul tuo mac.
Ora quando corri locale
su Mac. si può vedere che questo cambiamento ha stabilito LC_CTYPE="C"
che era LC_CTYPE="UTF-8"
con l'impostazione precedente.
dovrai chiudere il tuo terminale per ottenere questo effetto e ora accedi al tuo Linux box ed esegui yum update
.
Spero che sia d'aiuto :)
Se hai usato SSH per connetterti a questo host da un computer desktop, è comune /etc/ssh/sshd_config
che contenga
AcceptEnv LANG LC_*
che consente ai client di propagare i valori di tali variabili di ambiente in nuove sessioni. Tuttavia, ciò causerà la reimpostazione delle variabili delle impostazioni locali vuote all'interno della sessione SSH sul server che si sta configurando, se le impostazioni internazionali non sono impostate correttamente sulla MACCHINA DESKTOP .
Aggiustare:
Ad esempio, nella finestra di Ubuntu Shell di Windows 10, prima fai ( NOTA: cambia tutte le voci di seguito in modo che corrispondano alla tua locale se non è "en_US.UTF-8" ):
sudo locale-gen en_US.UTF-8
sudo dpkg-reconfigure locales
Quindi chiudere la finestra della shell di Ubuntu e riaprirla, quindi SSH nel server che si sta tentando di configurare e vedere se ora tutto va bene ...
In caso contrario, SSH nel tuo server e fai:
vi /etc/profile.d/custom.lang.sh
Quindi I
premere per accedere alla modalità "Inserisci". Quindi incolla le voci seguenti. Quindi ZZ
per salvare ed uscire:
## US English ##
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
export LC_CTYPE=en_US.UTF-8
Quindi eseguire quanto segue:
source /etc/profile.d/lang.sh
source /etc/profile.d/custom.lang.sh
Poi:
reboot
Vedi se questo fa sì che tutto smetta di lamentarsi delle variazioni locali!
/etc/profile.d/lang.sh
e non a/etc/bashrc
cui è probabile che venga sovrascritto da un aggiornamento.