えっと、問題がどこでどう起きたか?そこから考えてみましょう。
簡単な話で、日本語を記録する上で、数種類の文字コードがあります。
同じ文字でもコード表が違えば異なる番号が与えられます。
(半角英数や一部の記号は同じ番号が維持されます)
この文字コードには古くはJIS,ShiftJISがあり、UNIX系OSではEUC-JPが使われていました。
その後、Unicodeという規格によって、各国個別に整備された文字コードを
統一したコード体系として運用するという方針に移行しました。
その結果、現在ではWindowsXP,Vista,7ではUnicodeが標準ですし
MacOSXでも、Linuxでも多くのディストリビューションでUnicodeが標準です。
KNOPPIXも6.4.4であればUnicodeになっているはずですが…
なんらかの原因で、KNOPPIXでWindowsのパーティションからデータをコピーする際に
UnicodeからUnicodeでのコピーが行われなかったと考えられます。
ただ、そういう条件なので、正確な状況はわかりません。
たとえば、Windows98,Meのパーティションからであれば
普通に文字コードの違いが生じると考えられます。
あるいは、外付けHDDをKNOPPIXがマウントする際に
Unjcode以外の文字コード設定でマウントしたという可能性もあります。
(普通無いはずですけど、KNOPPIXは使わないのでわかりません)
こういったファイルシステムへの適切な文字コード設定がなされなかった場合に
ファイル名を目的の文字コードに変換するのがconvmvの役割で…
またnkfは、そのファイル内の情報についての文字コード変換を行ないます。
convmvは、強力で便利なツールです。私もEUC-JP仕様のLinuxから
Unicode(UTF-8)仕様のLinuxに移行する際に、convmvでのファイル名変換を施しています。
ただ、このツールで重要なオプションが--notestです。
convmv -r -f sjis -t utf8 * --notest
というオプションは、指定したディレクトリー下のファイルのすべて…
この場合は、カレントディレクトリー下のすべてのファイルが対象となり
そのすべてをShiftJISで記録されていると指定して、UTF-8へと変換しファイル名を変更します。
ですから、この前後でファイル名を見れば変換されたかどうかがわかります。
ただし、これが適切な変換であるかは別問題です。
ですから、正しい使い方としては、最終的にUnicodeのファイル名として認識するためであれば
マウントオプションでiocharset=utf8を指定した上でマウントし…
--notestオプションをつけずに変換を行ないます。
notestはつまり、実際にファイルシステムに書きこむというオプションですから…
誤った設定で処理すれば、当然ファイルシステムの記録が混乱する恐れがあります。
--notestオプションを付けなければ、ファイル名が表示されます。
それが意図通りに表示されているのであれば、同じオプションにnotestを付けて
実際の処理を行なうという流れです。
既にやってしまったのであれば、それが正しかったことを祈りますが…
そうでなかった場合は、一度元の状態に戻し
その上で再度の変換を試みることになります。
ただし、不適切な変換で、不適切なファイル名が発生している恐れもあります。
その場合、完全に元のファイル名まで変換復元できるのかは知りません。
本来であれば、notestを付けずに行なうべきでしたし…
ln -sでシンボリックリンクを使ったシミュレーションも考えられたと思います。
マウントオプションに関する適切な設定がわからない場合は
同じファイルを作業用の3つのディレクトリーにコピーし
それぞれを異なるオプション指定で変換してみて…
それを、改めてWindowsで表示させることで正しい変換オプションを探せたと思います。
しかし、一度誤った変換を行なっているとしたら、問題はより複雑だと思います。
お礼
>FAT32でフォマットされたパーティションですから、Windowsから読めますね。 はい。問題ありません。 >これが、バックアップされたファイルが入っているパーティションですね。 バックアップしたファイルが入っているのは別の外付けのHDDになります。 >LINUX用のnkfプログラムはいらないことになります。 これで大丈夫でしょうか?
補足
現状は convmvのインストールが終わる ↓ $ convmv -r -f sjis -t utf8 * --notest をする ↓ 質問にて確認中 です