Bagaimana cara memperbaiki masalah lokal?

Saya mendapatkan pesan ini setiap kali saya melakukan sesuatu seperti memulai atau menghentikan layanan.

perl: warning: Setting locale failed.   
perl: warning: Please check that your locale settings:   
        LANGUAGE = "en_US:en",   
        LC_ALL = (unset),   
        LC_MESSAGES = "en_US.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   
(Reading database ... 21173 files and directories currently installed.)  
Removing bind9 ...  
 * Stopping domain name service... bind9                                        [ OK ]
Processing triggers for man-db ...   
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   

Bagaimana cara memperbaiki kesalahan ini ?

Mengomentari pertanyaan (3)
Larutan

Pertama jalankan lokal untuk membuat daftar apa yang terkenal saat ini didefinisikan untuk account pengguna saat ini:

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

Kemudian menghasilkan hilang lokal dan mengkonfigurasi terkenal untuk mengambil pemberitahuan:

$ sudo locale-gen "en_US.UTF-8"
Generating locales...
  en_US.UTF-8... done
Generation complete.

$ sudo dpkg-reconfigure locales
Generating locales...
  en_US.UTF-8... up-to-date
Generation complete.

Sekarang anda tidak akan melihat kesalahan lagi!

Komentar (15)

Apa-apa yang disarankan di atas bekerja dalam kasus saya (Ubuntu Server 12.04 LTS). Apa yang akhirnya membantu menempatkan file /etc/environment:

LC_ALL=en_US.UTF-8
LANG=en_US.UTF-8

Untuk beberapa alasan itu hilang. Output untuk lokal dan perintah lain muncul seperti variabel-variabel yang didefinisikan dengan baik. Di lain kata-kata don't mengambil untuk diberikan semua hal-hal dasar yang menyatakan di mana itu harus dinyatakan.

Komentar (14)

Mereka harus menghilang setelah mengeluarkan:

sudo locale-gen en_US en_US.UTF-8
sudo dpkg-reconfigure locales 

dpkg-reconfigure reconfigures paket setelah mereka telah diinstal. Lulus nama-nama paket atau paket untuk mengkonfigurasi. Ini akan meminta konfigurasi pertanyaan, seperti ketika paket itu pertama kali diinstal.

Komentar (11)

Cukup tambahkan kode berikut untuk anda .bashrc file (dengan asumsi anda're menggunakan bash)

export LC_ALL="en_US.UTF-8"
Komentar (5)

Ini adalah masalah umum jika anda terhubung dari jarak jauh, sehingga solusinya adalah untuk tidak maju lokal anda. Edit /etc/ssh/ssh_config dan komentar SendEnv LANG LC_* baris.

Komentar (8)

Ada perintah untuk itu:

sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8

Itu update /etc/default/locale dengan memberikan nilai-nilai.

Komentar (4)

Apa yang bekerja untuk saya pada 12.10 ini:

apt-get install language-pack-en-base  

Ini setelah dpkg-reconfigure terkenal tidak menghasilkan hasil.

Komentar (6)

Don't lupa keluar sesi SSH anda (atau X11) dengan keluar dan masuk kembali lagi. Semua saran ini tidak't bekerja untuk saya kecuali saya login kembali....

Komentar (1)

Untuk Ubuntu 12.10 di atas tidak ada yang bekerja, kecuali untuk ratzs' solusi. Saya merekomendasikan menambahkan ini ke file /etc/bash.bashrc file:

export LC_ALL="en_ZA.UTF-8"
export LC_CTYPE="en_ZA.UTF-8"
Komentar (1)

Aku terjebak di tempat yang aneh negara di mana mesin lokal diatur ke es dan jadi mesin remote (via gelandangan) telah ditetapkan dalam un ditangani negara. Oleh karena itu, saya harus menggunakan manual ekspor= hanya untuk memfasilitasi sukses dpkg-reconfigure. Kemudian sistem ini baik-baik saja.

export LC_ALL="en_US.UTF-8"
sudo dpkg-reconfigure locales
Komentar (1)

Saya menulis bash script untuk memperbaiki masalah di atas.Jawaban atas berguna tetapi pengaturan variabel lokal hanya mengekspor nilai-nilai dalam variabel shell akan bekerja hanya untuk satu sesi. Saya secara permanen memecahkan masalah ini dengan mengekspor lokal variabel .bash_profile file. Anda juga dapat menggunakan /etc/profile file, bukan .bash_profile.

echo "export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8">>~/.bash_profile

Don't lupa untuk sumber yang .bash_profile dan ikuti script dalam setup yang mudah.

Komentar (0)

Anda dapat mencoba:

export LANGUAGE=ru_RU.UTF-8
export LC_CTYPE=ru_RU.UTF-8
export LC_NUMERIC=ru_RU.UTF-8
export LC_TIME=ru_RU.UTF-8
export LC_COLLATE=ru_RU.UTF-8
export LC_MONETARY=ru_RU.UTF-8
export LC_MESSAGES=ru_RU.UTF-8
export LC_PAPER=ru_RU.UTF-8
export LC_NAME=ru_RU.UTF-8
export LC_ADDRESS=ru_RU.UTF-8
export LC_TELEPHONE=ru_RU.UTF-8
export LC_MEASUREMENT=ru_RU.UTF-8
export LC_IDENTIFICATION=ru_RU.UTF-8
export LC_ALL=ru_RU.UTF-8

di mana ru_RU adalah kode negara anda.

Komentar (0)

Saat ini jawaban yang diterima tidak cukup dalam mengatasi masalah strategi karena anda dapat memiliki kesalahan manusia. Anda setup sistem anda untuk id_id tetapi anda memiliki en_GB diaktifkan di/etc/locale.gen seperti yang saya miliki di thread di sini untuk Raspberry Pi 3b. Anda harus memiliki semua anda digunakan terkenal diaktifkan di /etc/locale.gen.

Aku punya en_GB.UTF-8 UTF-8 hanya diaktifkan di /etc/locale.gen. Aku seharusnya tidak hanya diaktifkan en_US.UTF-8 UTF-8 karena menjalankan perintah lain untuk itu. Jadi saya berkomentar GB dan tanda komentar KITA, dan semuanya bekerja sekarang

masi@raspberrypi:~ $ sudo vim /etc/locale.gen

masi@raspberrypi:~ $ sudo locale-gen 
Generating locales (this might take a while)...
  en_US.UTF-8... done
Generation complete.

masi@raspberrypi:~ $ sudo a2enmod rewrite && a2enmod headers && a2enmod ssl
Module rewrite already enabled
Module headers already enabled
Considering dependency setenvif for ssl:
Module setenvif already enabled
Considering dependency mime for ssl:
Module mime already enabled
Considering dependency socache_shmcb for ssl:
Module socache_shmcb already enabled
Module ssl already enabled

Sekarang, saya tidak mendapatkan orang-orang lokal kesalahan dengan setiap perintah.

Sistem: Raspbian Wheezy Hardware: Raspberry Pi 3b

Komentar (0)

Seperti kata di sini di Wiki Debian, anda dapat mengedit /etc/locale.gen dan menambahkan semua akomodasi yang tepat (atau komentar mereka, saya memiliki daftar dari semua terkenal tapi semua kecuali satu yang saya digunakan sebagai komentar) anda ingin memiliki dukungan untuk sistem anda. Kemudian, jalankan

sudo dpkg-reconfigure locales

untuk memperbarui terkenal pada sistem anda. Sekarang, semua akomodasi yang tepat anda menambahkan/tanda komentar di /etc/locale.gen yang tersedia pada sistem anda tanpa peringatan apapun.

Komentar (0)

Jika anda menggunakan KDE lingkungan, periksa setlocale.sh file ~/.kde/env/:

$ cat ~/.kde/env/setlocale.sh 
export LANG=en_US.UTF-8
export LANGUAGE=en_US:ru:en
Komentar (1)

Menambahkan teks berikut untuk ~/.profil bekerja untuk saya:

export LANGUAGE=en_US.UTF-8
export LC_ALL=en_US.UTF-8

Saya menggunakan Ubuntu 16.04 LTS 64-bit server di Linode.

Komentar (0)

Ini bekerja untuk saya ketika saya punya masalah yang sama (berdasarkan solusi ditawarkan oleh dman):

sudo sh -c "echo -e 'LC_ALL=en_US.UTF-8\nLANG=en_US.UTF-8' >> /etc/environment"
Komentar (2)
  1. Anda mungkin perlu untuk menjalankan sudo dpkg-reconfigure juga untuk aplikasi yang telah anda instal sementara "lokal" pengaturan sudah tidak valid / tidak sesuai.

Sementara sistem lokal adalah salah setup saya dipasang vim. Kemudian ketika sistem lokal itu tetap saya melihat situasi yang vim menunjukkan karakter utf-8 secara salah sebagai simbol aneh saat nano dan kurang yang menampilkan mereka dengan benar. Berjalan

sudo dpkg-reconfigure vim

muncul untuk memperbaiki masalah setelah sistem pengaturan yang tetap.

  1. Saya juga melihat hal yang sama seperti yang sudah disebutkan: Anda mungkin perlu untuk memutus/menyambung kembali SSH untuk membuat perubahan yang terlihat.
Komentar (0)