- PR -

CentOSの文字化けについて

1
投稿者投稿内容
なおっち
常連さん
会議室デビュー日: 2004/11/15
投稿数: 29
投稿日時: 2006-07-16 22:17
CentOSの文字コードをUTF-8からEUC-JPに変更したいと思っています。
インターネットで検索し、設定し変更できたと思いきや
「Tera term」で日本語を打つと文字化けしてしまいした。
(受信・送信共にEUCに設定済み)

「Tera term」については同様の設定で「Fedora」に接続し
こちらは問題無く日本語を打つ事ができているため
「Tera term」の問題ではなさそうです。

何方か解決方法をご存知の方教えて頂けないでしょうか?


(以下、マシン情報)
$ uname -a
Linux CentOS01 2.6.9-34.0.2.EL #1 Fri Jul 7 19:24:57 CDT 2006 i686 i686 i386 GNU/Linux

$ cat /etc/sysconfig/i18n
SYSFONT="latarcyrheb-sun16"
LANG="ja_JP.eucJP"
SUPPORTED="ja_JP.eucJP:en_US.UTF-8:en_US:en:ja_JP.UTF-8:ja_JP:ja"

$ cat /etc/man.config | grep PAGER
PAGER /bin/more
SHR
ベテラン
会議室デビュー日: 2006/06/15
投稿数: 99
投稿日時: 2006-07-17 05:05
CentOSは使っていないので判りませんが…
とりあえず
$ echo $LANG
の結果を確認して下さい。
ja_JP.eucJPとなっていますか?

~/.bashrc
とかにLANGを変更するような文が紛れていたりしませんか?
なおっち
常連さん
会議室デビュー日: 2004/11/15
投稿数: 29
投稿日時: 2006-07-17 09:25
返答ありがとうございます。
早速調べてみましたが「ja_JP.eucJP」となっているようです。

$ echo $LANG
ja_JP.eucJP

$ cat .bashrc
# .bashrc

# User specific aliases and functions

# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi

$ cat /etc/bashrc
# /etc/bashrc

# System wide functions and aliases
# Environment stuff goes in /etc/profile

# by default, we want this to get set.
# Even for non-interactive, non-login shells.
if [ "`id -gn`" = "`id -un`" -a `id -u` -gt 99 ]; then
umask 002
else
umask 022
fi

# are we an interactive shell?
if [ "$PS1" ]; then
case $TERM in
xterm*)
if [ -e /etc/sysconfig/bash-prompt-xterm ]; then
PROMPT_COMMAND=/etc/sysconfig/bash-prompt-xterm
else
PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/~}\007"'
fi
;;
screen)
if [ -e /etc/sysconfig/bash-prompt-screen ]; then
PROMPT_COMMAND=/etc/sysconfig/bash-prompt-screen
else
PROMPT_COMMAND='echo -ne "\033_${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/~}\033\\"'
fi
;;
*)
[ -e /etc/sysconfig/bash-prompt-default ] && PROMPT_COMMAND=/etc/sysconfig/bash-prompt-default
;;
esac
# Turn on checkwinsize
shopt -s checkwinsize
[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ "
fi

if ! shopt -q login_shell ; then # We're not a login shell
for i in /etc/profile.d/*.sh; do
if [ -r "$i" ]; then
. $i
fi
done
unset i
fi
# vim:ts=4:sw=4
あんとれ
ぬし
会議室デビュー日: 2004/01/14
投稿数: 556
投稿日時: 2006-07-17 13:09


[ メッセージ編集済み 編集者: あんとれ 編集日時 2006-07-17 18:16 ]
あるかな
大ベテラン
会議室デビュー日: 2003/11/04
投稿数: 245
投稿日時: 2006-07-17 16:01
こんにちは。

CentOS は、デフォルトだと UTF-8 なハズなので、逆に TeraTerm の設定を UTF-8 にすれば、
文字化けは収まりますか?

ターミナルのコマンドライン上でのタイプで文字化けする、と読めたのですが、
提供情報に man.config 等があったので、日本語 man の表示が出来ない、と
混在しているのかな?と。

# UTF-8 使えるのは UTF-8 TeraTerm Pro with TTSSH2 で。

[ メッセージ編集済み 編集者: あるかな 編集日時 2006-07-17 16:03 ]
SHR
ベテラン
会議室デビュー日: 2006/06/15
投稿数: 99
投稿日時: 2006-07-18 10:59
すみません、一点確認を。

ターミナルエミュレータ(この場合TeraTerm)からの「日本語の入力が出来ない」のであって、
日本語の表示は普通に出来ているのでしょうか?
なおっち
常連さん
会議室デビュー日: 2004/11/15
投稿数: 29
投稿日時: 2006-07-19 00:14
こんにちは。

ご返答ありがとうございます。

設定を切り戻し「UTF-8 TeraTerm Pro with TTSSH2」を端末にインストールし
書きこむと正常に日本語が表示されました。
まさかと思い、もう一度「EUC」へ設定を戻し、
「UTF-8 TeraTerm Pro with TTSSH2」で書きこんでみると
正常に書き込まれました。。。。。
(通常の「TeraTerm」だとやはり文字化けする)

原因はわかりませんが、普通の「TeraTerm」で「CentOS」へ書きこむと
文字化けしてしまうのだと思います。(送信のみ文字化けし、受信は正常)

「Fedora」では問題無かったので、「TeraTerm」には問題が無いと
決め付けてしまった事が今回の事態を招いた物だと深く反省しております。

あるかなさん、SHRさん本当にありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)