ssh ve karakter kodlaması


15

Ne zaman ben sshbenim VPS içine, ben var irssiekranda çalışan. Birisi unicode karakter gönderdiğinde (örneğin © veya €), oturum irssisırasında ekrandan kullandığımda çöp görüntüler ssh. Buna irssiyerel bilgisayarımda çalışan irssi'nin proxy modülünü kullanarak bağlanırsam , doğru şekilde görüntüleniyor.

Aynı şekilde, VPS'imde (ekranın dışında) ghci çalıştırıp bu karakterlerden birine girersem, kilitleniyor.

Yani, açıkçası, ssh ya da sistem kurulumunda VPS ile olan bağlantımla ilgili bir tür karakter kodlama sorunu var.

Buna neyin sebep olduğunu nasıl öğrenebilirim ve çözebilirim?

Detaylar:

Müşteri sistemi

  • Arch Linux x64
  • UTF-8 kodlaması

VPS sistemi

  • Ubuntu Sunucu 10.04
  • Bilinmeyen kodlama kullanıldı. Bunu nasıl bulabilirim? (Archet için /etc/rc.conf dosyasına bakmam gerekiyor)

Yanıtlar:


17

localeKomutu çalıştırmak size yerel ayarlarınız hakkında bilgi verecektir; karakter kodlaması LC_CTYPEayar ile verilir .

Ubuntu altında, varsayılan yerel ayarlarda verilmiştir /etc/default/locale. Sen ayarlayarak karakter kodlamasını değiştirebilirsiniz LC_CTYPEsenin içinde ~/.profileVPS, ör

export LC_CTYPE=en_US.UTF-8

en_US.UTF-8Yerel ayarın kullanılabilir olduğundan emin olmanız gerekir . Ubuntu yalnızca istenen yerel ayarlar için yerel veri üretir. Paketi language-pack-en-baseyüklüyse , tüm İngilizce yerel ayarları kullanılabilir olmalıdır . Üretimlerini el ile isteyebilirsiniz.

sudo locale-gen en

/var/lib/locales/supported.d/localBelirli bir yerel ayarın yüklendiğinden emin olmak için girişler de ekleyebilirsiniz (örneğin, satırı ekleyin en_US.UTF-8 UTF-8).


3

aslında LC_CTYPE'da verilen değer yerel bir addır . Karakter kümesi kodlamasının adında olması geleneksel, ancak zorunlu değildir.

Ancak, karakter kümesini bilmek istiyorsanız, o zaman komuttur locale -k charmap.

~$ LC_CTYPE=C locale -k charmap
charmap="ANSI_X3.4-1968"
~$ LC_CTYPE=fr_BE locale -k charmap
charmap="ISO-8859-1"

(Karakter kümesinin yukarıdaki LC_TYPE değerlerinde nasıl görünmediğine dikkat edin).

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.