#author("2019-11-14T01:27:32+09:00","","")
#author("2019-11-14T01:34:52+09:00","","")
#navi(../)
* 日本語が文字化けするコンソールをログイン時に英語出力にする方法 [#w71ad72d]
VirtualBoxなどでLinuxの仮想環境起動時のコンソールで日本語が文字化けする。~
サーバに接続しているCUIコンソールで、日本語が化けてしまう場合の対処方法を紹介します。~

尚、文字化けするコンソール(端末)で日本語を表示する方法ではなく、日本語表示できない端末の場合は、~
英語表記にするスクリプトを.bashrcに追記する手順となります。

#htmlinsert(linux_ads_top.html)
#contents

* 使用したLinux [#w2d8d086]
 $ lsb_release -dr
 Description:    Debian GNU/Linux 10 (buster)
 Release:        10


* $TERMの値によりLANGを設定する [#ref69df1]
VirtualBox上で動作しているDebianのコンソールでdateコマンドを実行したときのキャプチャです。~
日本語が文字化けしています。~
LANGの値を確認すると ja_JP.UTF-8 となっているため、日本語メッセージを出力しようとして文字化けしています。~
そのあと、LANGにCを設定し、実行すると英語出力となるため、当然文字化けしません。
#ref(01.png)
#ref(https://linux.just4fun.biz/contents/20191114-01.png)
#br

** .bashrcに追記するスクリプト [#x6b9832f]
ターミナル名称が設定される $TERM の値でLANGを設定するスクリプトになります。~
これを.bashrcの一番最後に追記しました。
 case $TERM in
   linux)
     LANG=C
     ;;
 esac

ちなみにTera TermやCygwinのminttyでssh接続すると、TERMの値は、xtermとなっています。
 $ echo $TERM
 xterm
コンソールのTERMを確認すると、linuxとなっています。
 $ echo $TERM
 linux
これを利用し、TERMがlinuxの時は LANG=C として英語出力になるように設定しました。

以上、コンソールで文字化けするときの対応方法の紹介でした。

#htmlinsert(linux_ads_btm.html)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS