前回、poolを飛ばした”リカバリ試行結果[*1]の考察”をしましたが、試行結果確認・考察にぬけがありました(^^;;)。【注*2】
i386(32bit)な環境でのFreeBSDの設定は7.4Release以来です😅。
細かい設定が必要だったような記憶が頭の隅にあり、一応最初の試行で引き上げた、(日本語ファイル名が含まれていなはず)の作業メモ用htmlファイルを収めていたフォルダを覗きに行ったら😵。。。
1. あれ?。文字化けしていない!
作業記録htmファイルを確認するために、ActiveDirectoryドメインコントローラー(AD-DC:QNAP)のバックアップ領域[*3]に引き上げたフォルダを覗いたところ、日本語ファイル名が文字化けせずに表示されました😀。

もう一度、リカバリを行ったファイルサーバー上で、AD-DCのバックアップ領域に引き上げた領域を覗きに行くと日本語ファイル名が文字化けしています😵。

混乱してきました。
2. 環境変数と端末設定の確認
違いを確認するために、”LANG”設定と”TeraTermのコーディング”設定を確認することに🤔。
AD-DCでは、”LANG”設定は”en_US.UTF8”。
今回は、”TeraTermのコーディング”設定の変更を失念して、"EUC"のままでした😅。

poolを飛ばす前、AD-DCにssh接続する際は、AD-DC(QNAP)の文字コードがUTF-8なので、”TeraTermのコーディング”設定は"UTF-8"に変更して作業をしていました😅。
TeraTermのコーディング”設定を"UTF-8"に変更していれば、パソコンから書き込んだ日本語ファイル名がは文字化けせずに表示されます😀。

3. 文字化けしたと誤認した理由
- もともと、rootで作業する際も、一旦、一般ユーザーでログイン。
- 一般ユーザーは、ログイン時、共通のloginスクリプトを実行される。
- loginスクリプトでは、以下を設定。
- setenv LC_CTYPE ja_JP.eucJP
- loginスクリプトでは、以下を設定。
- そのあと、rootになった場合、一般ユーザーの”LC_CTYPE”は、rootでも引き継がれます。
- この共通スクリプトは、”飛ばしたpool”内にあったので、このスクリプトが実行されていない状況で作業をしていました。
- ”poolを飛ばす”前は、”LC_CTYPE”が設定されている状態なので、ローカルの”root”について、特に設定せずにいても”EUC”な環境で作業できていましたが、
- poolを飛ばして試行する際、このことをすっかり失念していました(*4)。。。。
4. am-utilsのNISマップを変更して確認
”LC_CTYPE”がどのマシンでも有効になるように、AD-DCのバックアップ領域に引き上げた”home”領域と”共通のloginスクリプトを収めた”領域を読み込み専用で自動マウントするようにam-utilsのNISマップを一時的に変更することに😀。
(1)”home”領域用NISマップ
(2)”共通のloginスクリプト”領域用NISマップ
(3)TeraTermで接続して確認
改めて、ファイルサーバーにログイン。
作業記録htmファイルを確認するために、AD-DC:QNAP)のバックアップ領域に引き上げたフォルダを覗いたところ、”LC_CTYPE”が有効になったため、日本語ファイル名(下図赤枠内)が、文字化けせずに表示されました😀。

あとは、実機でのリカバリ処理方法を検討して、飛ばしたpoolをリカバリしようと思います😀。
結果的には、VirutualBoxに構築した”FreeBSD8.4-i386”な仮想マシン[*6]でのリカバリ試行作業は不要になりましたが😅、
”FreeBSD8.4-i386”な仮想マシンを構築しなければ、気が付くのがもっと遅くなったので、個人的には”ヨシ”とすることにしました😀。
仕事上、チームで事に当たっているのであれば、他のメンバーからの様々な意見がでて、問題点の本質にたどり着くのは容易になりますが😀、
一人でやっていると、焦らずに事を運んでいるつもりでも、パニクっているので先入観が邪魔して、見落としが多くなってしまいます😑。
全くおまぬけな話です😅。。。。
トホホ😢。。。。

