Jawaban:
Saya menempatkan pengaturan terkait lokal berikut di /etc/bashrc
(untuk semua pengguna, bash
):
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_COLLATE=C
export LC_CTYPE=en_US.UTF-8
lalu lari:
source /etc/bashrc
atau logoff dan logon.
lang.sh
dan berhasil 👍.
Lari
yum reinstall glibc-common
dan kemudian pastikan tidak ada proses yang menghapus file /usr/lib/locale/locale-archive.*.
glibc-langpack-<language>
, misalnya glibc-langpack-en
.
Anda dapat mencoba
export LANG=en_US
Atau atur ke yang serupa. Jika itu menyelesaikan masalah untuk Anda, Anda bisa membuatnya tetap dengan memodifikasi profil bash.
Saya mendapatkan kesalahan yang sama pada MacOS. Ketika Anda ssh ke kotak linux, mereka menolak untuk mengatur UTF-8
lokal. Anda dapat melihat perbedaan dalam pengaturan lokal dengan menjalankan locale
perintah pada terminal MacOS Anda dan kotak Linux.
Untuk memperbaiki kesalahan ini buka terminal -> preferensi -> profil -> Tingkat lanjut dan hapus Set locale environment variables on startup
pada mac Anda.
Sekarang ketika Anda menjalankan locale
di mac. Anda dapat melihat bahwa perubahan ini telah menetapkan LC_CTYPE="C"
yang LC_CTYPE="UTF-8"
dengan pengaturan sebelumnya.
Anda harus menutup terminal Anda untuk mengambil efek ini dan sekarang masuk ke kotak linux Anda dan jalankan yum update
.
Semoga bermanfaat :)
Jika Anda menggunakan SSH untuk terhubung ke host ini dari mesin desktop, itu biasa untuk /etc/ssh/sshd_config
mengandung
AcceptEnv LANG LC_*
yang memungkinkan klien untuk menyebarkan nilai-nilai variabel lingkungan ke dalam sesi baru. Namun, ini akan menyebabkan variabel lokal diset kembali menjadi kosong dalam sesi SSH Anda di server yang Anda konfigurasikan, jika lokal tersebut tidak disetel dengan benar PADA MESIN DESKTOP ANDA .
Memperbaiki:
Misalnya, di jendela Ubuntu 10 Ubuntu Shell, pertama lakukan ( CATATAN: ubah semua entri di bawah ini agar sesuai dengan lokal Anda jika bukan "en_US.UTF-8" ):
sudo locale-gen en_US.UTF-8
sudo dpkg-reconfigure locales
Kemudian tutup jendela shell Ubuntu dan buka kembali, dan kemudian SSH ke server yang Anda coba konfigurasi dan lihat apakah semuanya sekarang baik-baik saja ...
Jika tidak, maka SSH ke server Anda dan lakukan:
vi /etc/profile.d/custom.lang.sh
Kemudian tekan I
untuk masuk ke mode "masukkan". Kemudian rekatkan entri di bawah ini. Kemudian ZZ
untuk menyimpan dan keluar:
## 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
Kemudian jalankan hal berikut:
source /etc/profile.d/lang.sh
source /etc/profile.d/custom.lang.sh
Kemudian:
reboot
Lihat apakah itu membuat semuanya berhenti mengeluh tentang vars lokal!
/etc/profile.d/lang.sh
dan bukan ke/etc/bashrc
yang kemungkinan akan ditimpa oleh pembaruan.