OS Anda tidak tahu en_US.UTF-8
.
Anda tidak menyebutkan platform tertentu, tetapi saya dapat mereproduksi masalah Anda:
% uname -a
Pemburu OSF1 V5.1 2650 alpha
% perl -e keluar
perl: peringatan: Pengaturan lokal gagal.
perl: warning: Periksa apakah pengaturan lokal Anda:
LC_ALL = (tidak disetel),
LANG = "en_US.UTF-8"
didukung dan diinstal pada sistem Anda.
perl: peringatan: Jatuh kembali ke lokal standar ("C").
Dugaan saya adalah Anda menggunakan ssh untuk terhubung ke host lama ini dari mesin desktop yang lebih baru. Biasa /etc/ssh/sshd_config
mengandung
AcceptEnv LANG LC_*
yang 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:
% env LANG = C perl -e keluar
%
atau dengan bash:
$ LANG = C perl -e keluar
$
Untuk perbaikan permanen, pilih salah satu
- Pada host yang lebih lama, setel
LANG
variabel lingkungan di file inisialisasi shell Anda.
- Ubah lingkungan Anda di sisi klien, misal , daripada
ssh hunter2
menggunakan perintah LANG=C ssh hunter2
.
- Jika Anda memiliki hak admin, hentikan ssh dari mengirimkan variabel lingkungan dengan mengomentari
SendEnv LANG LC_*
baris di file lokal /etc/ssh/ssh_config
. (Terima kasih atas jawaban ini . Lihat Bug 1285 untuk OpenSSH untuk lebih lanjut.)