Ubuntuの文字化け対策
前の投稿の続きです.Ubuntuをテキストログインしたのは良いですが,Helpを出したりDATEコマンドを打ってみたりした時に文字化けして,おそらく日本語の部分が□で置きかわるという非常に恐怖を煽る画面になりました.怖かったです.あれこれ調べて対策を取りました.
結局,やるべきことはロケートの環境変数LANGを日本語(ja_JP.utf-8)にしておくだけなのですが...
日本語でUbuntuを導入したため最初からこの設定は問題ありませんでした.
実際,ターミナルエミュレータを使って操作すると日本語はちゃんと出力されて何も問題ないのですが...テキストログインしてコンソールから利用するとうまくいかない.どうしたものかと思って色々調べて見た.
どうもデフォルトのままではテキストログインした時の操作画面,すなわち環境変数TERMがLinuxになっている時には,特別なことをしないと日本語は表示できないっぽい.特別なことというのはコンソールからfbtermとかいう日本語対応のターミナルエミュレータを起動するというもの.正直そこまでして日本語がいいわけでもないしこの方法はあんまり推奨されていないようなので,これは使わない.
そこで最終的にたどり着いたのは標準コンソールにいる時は設定言語を英語にして,それ以外の時は日本語にするというシェルスクリプトを書いてしまおうというものです.
書き込むのはおなじみの~/.bashrcです.vimを使って書きます.
$ sudo vi ~/.bashrc
で,最後に以下を付け加えます.
linux) LANG=C
LANGUAGE=en
LC_ALL=C;;
*)
esac
以上はただのcase文なので詳しい文法はhttp://shellscript.sunone.me/case.htmlなどに詳しく載っていたのでそちらを参照.
また,上のスクリプトの意味は,
case $TERM in ... esac で環境変数TERMに関しての場合分けをします.
linux) LANG=C
LANGUAGE=en
LC_ALL=C;;
の部分で標準コンソールにいる時に行う処理を書きます.LANG=Cは文字を英語で表示する処理.LANGEAGE=enはubuntuからの文字の出力を英語にする(厳密ではないかもしれない).LC_ALL=Cは時刻とか,その他もろもろを英語にする処理です.
また,例外処理
*)
の部分は何も書かなくても日本語でインストールしているのでいじらなくて良いです.
書きたかったら上と同様にして日本語の設定をかけばいいが,そこは必要最低限でにしておきます.
これを書き終えたら:wqで保存してvimを終了します.そして
$ sudo source ~/.bashrc
で変更を適用します.
するとうまくいきました.標準コンソールではちゃんと英語が使え,sshでmacとかから遠隔操作した場合はターミナルから日本語設定のものが使えるようになりました.まあ,別に日本語いらないような気もしてきたんだけど,せっかく入ってたからね...
ちなみに,情けない話ですがLANGUAGE=enの設定にすぐに気づけませんでした.LANG=Cの段階でコマンドのヘルプとかは英語になったので,「このコマンドは見つかりませんでした」的な表示のみ文字化けする理由がなかなか分からなかったんですよね.でも,□が出てこなくなっていたのでエンコードには問題ない.根本的にOSが日本語を出力していることに気づき,言語に日本語と英語が共存している
LANGUAGE=ja:en
がいけなかったのだと分かりました.
次回はsshでmacからubuntuを操作した話です.次で自分的には大体ひと段落です.
注目の投稿
【書評】光と物質の不思議な理論(R.P.Feynman)
今回は最近読んだ本を忘れないように感想をまとめておく,書評回にしたいと思います.自分は読みっぱなしのことが多いですが,たまにはまとめておいてログをつけていこうと思います.と言っても,書評というよりは読書感想文に近いと思います. 今回はR.P.Feynmanの「 光と物質の不思...
このブログの関連商品
2016年9月9日金曜日
2016年9月8日木曜日
Ubuntu 入門1(Ubuntuをテキストログインする)
Ubuntuの導入
先の投稿で述べた通り,かつてwindowsで動いていたPCをUbuntuとして復活させました.UbuntuはDebian系のLinuxOSです.UbuntuどころかLinux自体もほとんど触ったことがなかったのでうまくいかなかったことも多くありました.そこでこの記事に備忘録的な意味も込めて記録しておきます.
自分が触ったことのあるLinux系のOSはCentOSで,学部の授業で少し触ったことがある程度なのですが,今回のUbuntu導入に関しては全く役に立ちませんでした.(当然といえば当然)大学でもっと役に立つことを教えて欲しかったなあと思った今日此の頃です.
UbuntuのインストールはDVDを用いて行ったのですが,ここはインストーラーの指示に従っていけば良いだけなので省略します.この時日本語の環境設定を行ったのですがこの設定が後でテキストログインした時に苦労した原因になりました.
さて今日行ったのはUbuntuの各種設定についてです.
まず思いたったのはテキストログインできるようにしたいというところからです.
Ubuntuのテキストログイン
GUIでログインすると重くなってしまって嫌なので,テキストログインできるようにしました.いじくるくところは
/etc/defualt/grub
です.ここをviで書き換えます.bashで
$ sudo vi /etc/default/grub
を実行します.そこで環境変数の
GRUB_CMDLINE_LINUX_DEFAULT
の値を
splash quiet から splash quiet text
に書き換えます.各種の引数に関してはhttp://www.usupi.org/sysad/237.htmlに詳しい.
splash:スプラッシュ画面の表示
quiet:メッセージ出力の抑制
text:テキストモードで起動
書き換えた後は
$ sudo update-grub2
を実行して変更を適用させます.自分は最初これが分からないで苦労しました.というか,最初に書き換えた時は$ sudo update-grub2を実行した記憶がないのですが何故かテキストログインできちゃったのです.自分が実行させたことを忘れていただけかもしれないですが...
しかしできたらできたで問題ないじゃないかと思われるかもしれませんが,これをまたGUIでログインするように設定したいと思った時,
splash quiet text から splash quiet
に変更をすれば良いだけだと思ったのですがなかなか変わらない.結局
$ sudo update-grub2
にたどり着くまでに色々調べる羽目になっちゃいました.
テキストログイン後にGUIを起動する
CUIの方が軽いし大概の操作はこちらの方が効率良くできますが,GUIのソフトを使いたいなんて時もあるので,そのような時の対策をメモ.自分の使っている環境ではディスプレイマネージャはlightdmなので,以下各自の環境に合わせてlightdmをgdmなどに置き換えてください.
$ sudo service lightdm start
または
$ sudo start lightdm
これでコマンドラインからGUIを起動できます.
さて,テキストログインした後は文字化けに悩まされることになったのですが,これはまた次回.
先の投稿で述べた通り,かつてwindowsで動いていたPCをUbuntuとして復活させました.UbuntuはDebian系のLinuxOSです.UbuntuどころかLinux自体もほとんど触ったことがなかったのでうまくいかなかったことも多くありました.そこでこの記事に備忘録的な意味も込めて記録しておきます.
自分が触ったことのあるLinux系のOSはCentOSで,学部の授業で少し触ったことがある程度なのですが,今回のUbuntu導入に関しては全く役に立ちませんでした.(当然といえば当然)大学でもっと役に立つことを教えて欲しかったなあと思った今日此の頃です.
UbuntuのインストールはDVDを用いて行ったのですが,ここはインストーラーの指示に従っていけば良いだけなので省略します.この時日本語の環境設定を行ったのですがこの設定が後でテキストログインした時に苦労した原因になりました.
さて今日行ったのはUbuntuの各種設定についてです.
まず思いたったのはテキストログインできるようにしたいというところからです.
Ubuntuのテキストログイン
GUIでログインすると重くなってしまって嫌なので,テキストログインできるようにしました.いじくるくところは
/etc/defualt/grub
です.ここをviで書き換えます.bashで
$ sudo vi /etc/default/grub
を実行します.そこで環境変数の
GRUB_CMDLINE_LINUX_DEFAULT
の値を
splash quiet から splash quiet text
に書き換えます.各種の引数に関してはhttp://www.usupi.org/sysad/237.htmlに詳しい.
splash:スプラッシュ画面の表示
quiet:メッセージ出力の抑制
text:テキストモードで起動
書き換えた後は
$ sudo update-grub2
を実行して変更を適用させます.自分は最初これが分からないで苦労しました.というか,最初に書き換えた時は$ sudo update-grub2を実行した記憶がないのですが何故かテキストログインできちゃったのです.自分が実行させたことを忘れていただけかもしれないですが...
しかしできたらできたで問題ないじゃないかと思われるかもしれませんが,これをまたGUIでログインするように設定したいと思った時,
splash quiet text から splash quiet
に変更をすれば良いだけだと思ったのですがなかなか変わらない.結局
$ sudo update-grub2
にたどり着くまでに色々調べる羽目になっちゃいました.
テキストログイン後にGUIを起動する
CUIの方が軽いし大概の操作はこちらの方が効率良くできますが,GUIのソフトを使いたいなんて時もあるので,そのような時の対策をメモ.自分の使っている環境ではディスプレイマネージャはlightdmなので,以下各自の環境に合わせてlightdmをgdmなどに置き換えてください.
$ sudo service lightdm start
または
$ sudo start lightdm
これでコマンドラインからGUIを起動できます.
さて,テキストログインした後は文字化けに悩まされることになったのですが,これはまた次回.
2016年9月7日水曜日
PC再生
最近,かつて家族共用のPCで眠っているものを見つけました.
そもそもはwindows vistaの時代のもの(笑)だったのだが,windows7にアップグレードして数年前まで使っていた.
そんなPCにはいろいろと問題点があった.
そもそもはwindows vistaの時代のもの(笑)だったのだが,windows7にアップグレードして数年前まで使っていた.
そんなPCにはいろいろと問題点があった.
- 外装のゴムが溶けて汚い,ベタベタする
- いろいろな無駄なファイルがあったりしてとにかく重い
まず上の症状だけで使うのが嫌になってしまう.使ってるだけでなんか手がベタベタして非常に気持ち悪い.長年暑いところに眠っていたせいでゴムが完全に溶けていたのである.
さて,まずはこの症状を解消したい.そこでまずとった行動は
1.アルコールティッシュで磨く
コンビニとかでも売っているアルコールティッシュがあったので拭いてみた.これは意外と綺麗になりそうだった.詳しくは知らないですがアルコールは合成ゴムを溶かすみたいなのでベタベタしている表面を取り除けたのでしょう.局所的にはかつての滑らかさを取り戻していた.しかしこの方法では膨大にティッシュが必要であまり現実的ではありませんでした.そこで次の方法
2.除光液で拭いてみる
除光液も合成ゴムを溶かすようなのでそれで磨いてみた.これも部分的には溶けたゴムを取り除けるものの,磨きすぎると溶けすぎるが少ないとあまり汚れは落ちないというように調整が難しい.その上,除光液は母の所有物だったためあまりたくさん使うのは申し訳なかったのでやめた笑
3.消毒用エタノールで磨く
上の二つの経験から結局はエタノールがうまくいきそうだったのでより濃度の濃い消毒用エタノールを薬局で買ってきた.
| エタノール |
これで磨くと,いい具合に表層が溶けて,ベタベタする面は取り除けた.これでマシン自体は復活した感じがする.
次に新しいOSを導入し,クリーンインストールした.ここは手頃にUbuntuにしておいた.Ubuntuの各種セットアップや苦労したことについては次回.
登録:
投稿 (Atom)