GNU/Linux >> Linux Esercitazione >  >> Linux

Come installare/cambiare locale su Debian?

Soluzione 1:

Modifica /etc/default/locale e imposta il contenuto su:

LANG="nl_NL.UTF-8"

Puoi verificare quali locali hai attualmente generato utilizzando:

locale -a

Puoi generarne altri modificando /etc/locale.gen e decommentare le righe per le impostazioni locali che si desidera abilitare. Quindi puoi generarli eseguendo il comando:

locale-gen

Puoi trovare un elenco delle impostazioni locali supportate in /usr/share/i18n/SUPPORTED

Ci sono maggiori informazioni disponibili sul wiki Debian.

Soluzione 2:

Potrebbe essere necessario installare locales pacchetto. Questo ti chiederà quali impostazioni locali generare. Se è già installato, allora dpkg-reconfigure locales ti permetterà di generare più locali.

Soluzione 3:

Le risposte qui sono incomplete come con la maggior parte altrove. Dopo aver messo insieme le informazioni da alcuni punti, ciò che ha funzionato per me è stato (1) assicurarmi che la locale che volevo fosse disponibile (generarla se non lo era) quindi (2) impostare le variabili di ambiente relative alla locale sulla locale desiderata.

Nel mio caso avevo bisogno di en_US.UTF-8 installato in modo programmatico (ovvero non interattivo) in un contenitore docker. La ff ha realizzato ciò di cui avevo bisogno, ma dovrebbe funzionare bene in una shell interattiva.

apt-get update

# Install locales package
apt-get install -y locales

# Uncomment en_US.UTF-8 for inclusion in generation
sed -i 's/^# *\(en_US.UTF-8\)/\1/' /etc/locale.gen

# Generate locale
locale-gen

# Export env vars
echo "export LC_ALL=en_US.UTF-8" >> ~/.bashrc
echo "export LANG=en_US.UTF-8" >> ~/.bashrc
echo "export LANGUAGE=en_US.UTF-8" >> ~/.bashrc

Sulla stessa shell, dovrai eseguire source ~/.bashrc affinché env vars abbia effetto immediato. Puoi controllare che la locale sia stata configurata correttamente invocando locale .

LANG=en_US.UTF-8
LANGUAGE=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=en_US.UTF-8

Ci sono state molte domande e risposte su questo argomento, ma solo alcune sono state effettivamente utili. Credito dove è dovuto il credito:

  • https://unix.stackexchange.com/a/247019/21289
  • https://perlgeek.de/en/article/set-up-a-clean-utf8-environment

Soluzione 4:

Nessuna di queste risposte ha funzionato per me, su un contenitore LXC installato con:

lxc-create -n sse-master -t download -n sse-master -- \
    -d debian -r jessie --arch i386

Ho sempre ricevuto il seguente output da locale-gen , cioè non genera alcuna locale (nessuna elencata):

$ sudo locale-gen
Generating locales (this might take a while)...
Generation complete.

Esecuzione di dpkg-reconfigure locales e la selezione di alcune impostazioni locali non ha aggiornato /etc/locale.gen come mi aspettavo.

Tuttavia, quando ho modificato quel file manualmente e ho decommentato le localizzazioni che volevo, allora locale-gen ha iniziato a funzionare correttamente:

$ sudo locale-gen
Generating locales (this might take a while)...
  en_GB.UTF-8... done
  en_US.UTF-8... done
Generation complete.

Sono stato anche in grado di generare impostazioni locali manualmente in questo modo:

sudo localedef -i en_US -f UTF-8 en_US.UTF-8
sudo localedef -i en_GB -f UTF-8 en_GB.UTF-8

Ma questa non era una soluzione permanente:ho scoperto che l'esecuzione di locale-gen senza --keep-existing l'opzione eliminerà tutte queste impostazioni locali generate manualmente, ovvero tutte le impostazioni locali non elencate (e non commentate) in /etc/locale.gen .

Soluzione 5:

Per un'applicazione web, potrebbe essere meglio utilizzare setlocale () dentro il programma, piuttosto che richiedere che la locale predefinita del sistema sia impostata in modo appropriato all'esterno. Meno questioni in sospeso in questo modo.


Linux
  1. Come installare R su Debian 9

  2. Come installare R su Debian 10

  3. Come modificare il nome host in Debian

  4. Come installare MariaDB su Debian 11

  5. Come installare MySQL su Debian 11

Come installare Flectra su Debian 10

Come installare OpenNebula su Debian 10

Come installare Memcached su Debian 10

Come installare ISPConfig su Debian 10?

Come installare Skype su Debian 10

Come installare Vai su Debian