Saat saya berlari perl
, saya mendapat peringatan:
perl: peringatan: Pengaturan lokal gagal. perl: warning: Periksa apakah pengaturan lokal Anda: LANGUAGE = (tidak disetel), LC_ALL = (tidak disetel), LANG = "en_US.UTF-8" didukung dan diinstal pada sistem Anda. perl: peringatan: Jatuh kembali ke lokal standar ("C").
Bagaimana saya memperbaikinya?
~/.pam_environment
Jawaban:
OS Anda tidak tahu
en_US.UTF-8
.Anda tidak menyebutkan platform tertentu, tetapi saya dapat mereproduksi masalah Anda:
Dugaan saya adalah Anda menggunakan ssh untuk terhubung ke host lama ini dari mesin desktop yang lebih baru. Biasa
/etc/ssh/sshd_config
mengandungyang memungkinkan klien untuk menyebarkan nilai-nilai variabel lingkungan ke dalam sesi baru.
Peringatan itu memberi Anda petunjuk tentang cara memadamkannya jika Anda tidak memerlukan lokal lengkap:
atau dengan bash:
Untuk perbaikan permanen, pilih salah satu
LANG
variabel lingkungan di file inisialisasi shell Anda.ssh hunter2
menggunakan perintahLANG=C ssh hunter2
.SendEnv LANG LC_*
baris di file lokal/etc/ssh/ssh_config
. (Terima kasih atas jawaban ini . Lihat Bug 1285 untuk OpenSSH untuk lebih lanjut.)sumber
dpkg-reconfigure locales
pesan hilang.service ssh reload
yang membutuhkan sepersekian detik, dan bahkan tidak menyebabkan sesi ssh saat ini berakhir.Berikut ini cara menyelesaikannya di Mac OS Lion (10.7) atau Cygwin (Windows 10):
Tambahkan baris berikut ke bashrc atau bash_profile di mesin host:
Jika Anda menggunakan zsh, edit zshrc:
sumber
LC_ALL
menimpa semua variabel lain, saya lebih suka mengaturLANG=de_AT.UTF-8
dan variabel individual sukaLC_MESSAGES=en_US.UTF-8
. Jika suatu variabel tidak disetel itu kembali keLANG
. Anda juga bisa misalnya.unset LC_CTYPE
untuk memaksanya jatuh kembali keLANG
.~/.bashrc
untuk saya ... maka harus memuat ulang menggunakansource ~/.bashrc
... Thnks <3Jika Anda membuat rootf menggunakan debootstrap, Anda perlu membuat locales. Anda dapat melakukan ini dengan menjalankan:
Tip ini berasal dari, https://help.ubuntu.com/community/Xen
sumber
Ubuntu Server
$ echo en_US UTF-8 >> /etc/locale.gen
terlebih dahulu.locale-gen
tidak perlu argumen. Bunyinya dari/etc/locale.gen
.Menggunakan:
Ini bekerja untuk Debian . Saya tidak tahu mengapa - tetapi gen lokal tidak membuahkan hasil.
Penting! Ini solusi sementara. Itu harus dijalankan untuk setiap sesi.
sumber
.bashrc
file saya .local-gen
hanya proses lokal yang tidak diomentari di/etc/local.gen
. Anda mungkin perlu melakukanecho en_US UTF-8 >> /etc/locale.gen
terlebih dahulu.Ini umumnya berarti Anda belum mengatur lokal dengan benar pada kotak Linux Anda.
Di Debian atau Ubuntu, itu artinya Anda perlu melakukannya
Lihat juga man locale-gen .
sumber
sudo locale-gen es_UY.UTF-8
Untuk pengguna macOS & Mac OS X saja
Saya mendapatkan peringatan yang sama saat menggunakan Git
Untuk mengatasi peringatan ini Hapus tanda centang pada
Set locale environment variable on startup
pilihan dan restart terminal Anda. Cuplikan layar di bawah ini mewakili pengaturan terminal saya.sumber
Ini adalah perbaikan sederhana di Ubuntu. Anda harus membuat Lokal dari awal, menjalankan perintah berikut dari baris perintah:
Ini harus membuat lokal dan kemudian mengkonfigurasi ulang.
sumber
pt_BR pt_BR.UTF-8
- Terima kasih.Menambahkan hal berikut untuk
/etc/environment
memperbaiki masalah saya di Debian dan Ubuntu (tentu saja, ubah agar sesuai dengan lokal yang ingin Anda gunakan):sumber
/etc/environment
sudah usang dan sebaliknya harus ditetapkan/etc/default/locale
. Keduanya tampaknya berfungsi untuk saat ini.LC_CTYPE
Saya sekarang menggunakan ini:
Kemudian keluar dari sesi SSH dan masuk lagi.
Jawaban lama:
Hanya ini yang membantu saya:
sumber
pada Debian setelah banyak mencari ini berhasil.
pertama:
kemudian:
dan yang terkenal:
Ini rids sistem lokal, kemudian menginstal ulang lokal dan menurunkan libc6 dari 2,19 ke 2,13 yang merupakan masalah. Kemudian konfigurasikan kembali locales.
sumber
dpkg-reconfigure locales
hanya itu yang dibutuhkan.sudo
jika Anda adalah tipe pria sudo, atau lakukan sebagai root. Kemudian pilih lokal Anda sesuai dengan apa yang Anda miliki di lingkungan shell Anda.Ini jawaban cepat. Kami akan mengatur lokal yang tidak disetel setelah reboot. Pertama buka file bash dan edit:
tambahkan baris ini ke file:
aktifkan perubahan dengan memuat ulang bash:
hasil tes :
sumber
Untuk Ubuntu gunakan ini,
Bekerja untukku.
sumber
/etc/default/locale
dan hanya meletakkan definisi vars (menghapus kata ekspor) dan me-restart serverJika Anda menggunakan Mac OS X v10.10 (Yosemite) atau lebih tinggi untuk terhubung di server Linux Anda, Anda dapat mencoba langkah-langkah ini.
Simpan file Anda / etc / ssh / sshd-config asli
Pakai ~ / .bash_profile Anda
Lari
Dan pilih "en_US.UTF-8"
sumber
Batalkan komentar lokal yang ingin Anda gunakan (mis.
en_US.UTF-8 UTF-8
):Lalu lari:
Sumber: http://people.debian.org/~schultmc/locales.html
sumber
Anda perlu mengonfigurasi lokal secara tepat
/etc/default/locale
, logout, masuk , dan kemudian jalankan perintah biasasumber
Larutan:
Coba ini ( uk_UA.UTF-8 adalah lokal saya saat ini. Tulis lokal Anda, misalnya en_US.UTF-8 !)
dan ini.
sumber
untuk saya, saya memperbaiki kesalahan ini dengan mengedit file .bashrc add export. Tambahkan setelah komentar awal.
Tambahkan dukungan bahasa.
Regads yang baik,
sumber
Menambahkan lokal yang benar untuk
~/.bashrc
,~/.bash_profile
,/etc/environment
dan sejenisnya akan memecahkan masalah, namun tidak dianjurkan, karena menimpa pengaturan dari/etc/default/locale
, yang membingungkan di terbaik dan bisa menyebabkan lokal tidak diterapkan secara konsisten pada terburuk.Sebagai gantinya, seseorang harus mengedit
/etc/default/locale
secara langsung, yang mungkin terlihat seperti ini:Perubahan akan berlaku saat berikutnya Anda masuk. Anda bisa mendapatkan lokal baru di shell yang ada dengan sumber
/etc/default/locale
seperti ini:sumber
locale-gen
Bagi siapa pun yang terhubung ke DigitalOcean atau penyedia Cloud hosting lainnya dari iTerm2.app di MacOS High Sierra dan mendapatkan kesalahan ini pada beberapa perintah:
Ini memperbaiki masalah bagi saya:
Saya tahu utas ini sudah lama tetapi mungkin seseorang akan menemukan ini berguna. Saya tahu betapa menjengkelkannya hal ini.
sumber
Mengikuti jawaban yang diterima:
LC_ALL = C ssh hunter2
di sisi klien melakukan trik untuk saya.
sumber
Dengan zsh ohmyzsh saya menambahkan ini ke
.zshrc
:Dengan menghapus garis
export LANG=en_US.UTF-8
Membuka kembali tab baru dan masuk SSHed, bekerja untuk saya :)
sumber
Tambahkan
LC_ALL="en_GB.utf8"
ke/etc/environment
dan reboot. Itu saja.sumber
Seperti biasa, iblis ada di detail ...
Di Mac OS X v10.7.5 (Lion), untuk memperbaiki beberapa kesalahan Django , dalam
~/.bash_profile
pengaturan saya, saya telah mengatur:Dan pada gilirannya untuk waktu yang lama saya mendapat peringatan itu saat menggunakan Perl.
Salahku! Seperti yang saya sadari kemudian, sistem saya
en_US.UTF-8
! Saya memperbaikinya hanya dengan mengubah dariuntuk
sumber
Jika Anda tidak peduli dengan masalah lokal, Anda dapat mengatur
PERL_BADLANG=0
. Tentu saja, ini dapat mengakibatkan lokalisasi yang salah.sumber
Semua jawaban sebelumnya salah. Pesannya jelas - lokal tidak ada. Solusinya adalah menambahkan lokal yang sesuai. Anda melakukannya dengan mengedit file /etc/locale.gen, menghapus tanda # di depan lokal yang dilaporkan hilang dan kemudian mengeluarkan perintah:
Ini sebenarnya akan menghasilkan lokal yang ditentukan dalam /etc/locale.gen dan oleh karena itu pesan tidak akan ditampilkan.
sumber
dalam kasus saya, dengan debian8.6, saya harus mengubah pengaturan di:
/etc/ssh/ssh_config
untuk#AcceptEnv LANG LC_*
dan
sshd_config
untuk#SendEnv LANG LC_*
kemudian mulai kembali layanan ssh.
Akhirnya, lakukan
locale-gen en_US.UTF-8
dandpkg-reconfigure locales
sumber
Tambahkan lokasi yang hilang ke .bash_profile
Kemudian sumber .bash_profile Anda
sumber
Dalam kasus saya, ini adalah hasilnya:
Solusinya adalah:
sumber
ssh
menimpa variabel lokal LC secara default. Lihat/etc/ssh/sshd_config
:Jadi mungkin Anda perlu mengatur variabel-variabel ini di shell lokal Anda.
sumber
Bagi saya, di Ubuntu 16.04 (Xenial Xerus) berikut ini berfungsi:
Kemudian reboot ...
sumber