Hack BBS

[全部のスレッド一覧][新規投稿][記事の削除・変更] [Home Page]

返信投稿はタイトルのリンクをクリックして下さい
スレッド【No.34】の中の記事をすべて表示しています

【No.34】のスレッド
04/03/01(月) 21:32:02 投稿者[vi] [No.34]のスレッド内
【No.34】 タイトル[文字コード] この記事がスレッドの最初です
先日ファームのアップデート失敗後に、
HDの中身だけを取り出したいと思ったのですが、
日本語の文字コードが文字化けしてしまって
うまく吸い出せません。
市販のLinuxDriveは持っているのですが、
EUC-JPでもうまく認識できませんでした。
Sambaの知識があまりないのですが、
通常日本語の文字コードは何に設定しているのでしょうか?

05/11/17(木) 12:42:13 投稿者[ぶーちゃん] [No.34]のスレッド内
【No.3287】 タイトル[Re: 文字コード] 【No.34】に対する返信
私も同様にファイルの取り出しを試みています。
HDDを取り出しLinuxマシンに取り付けてSamba起動し
Windowsマシンからコピーを行おうとしましたが、
エクスプローラーで見ると文字化けします。
(WinSCPで見ると文字化けせず)

結局、対処法はどういうものなのでしょうか?

ちなみに、smb.confの[global]に下記を追記しましたが、
解消できませんでした。
client code page = 932
coding system = sjis
あと、これでもだめでした。
client code page = 932
coding system = cap

う〜ん・・・

04/03/14(日) 23:00:58 投稿者[vi] [No.34]のスレッド内
【No.95】 タイトル[Re: 文字コード] 【No.34】に対する返信
LinuxのSambaでCAP指定にて認識させたところうまくいきました。
win+macで使用するようにするとcap、winだけならばshift-jis
になるものと思われます。
とりあえず、バックアップは完了できましたので、一安心です。
たつやさんととおりすがりさん、本当にありがとうございました。

04/03/01(月) 22:40:08 投稿者[たつや] [No.34]のスレッド内
【No.36】 タイトル[Re: 文字コード] 【No.34】に対する返信
>市販のLinuxDriveは持っているのですが、
>EUC-JPでもうまく認識できませんでした。

ここがちょっと分らなかったのですが、LinkStation の HDD を
Linux が載ったパソコンに接続してファイルだけを取り出そう
としているのですか?

>Sambaの知識があまりないのですが、
>通常日本語の文字コードは何に設定しているのでしょうか?

LinkStation の設定では、/etc/samba/smb.conf を見ると

[global]
client code page = 932
coding system = sjis

となってますので、日本語のファイル名は ShiftJIS です。

04/03/06(土) 17:54:37 投稿者[とおりすがり] [No.34]のスレッド内
【No.64】 タイトル[Re: 文字コード] 【No.36】に対する返信
HD-HLAN120などでは、Macintoshとのファイル共有にnetatalkというソフトウェアを利用しているようです(未確認)。
で、このnetatalkが、非ASCII(曖昧な表現:この場合日本語の全角文字だと考えてください)のファイル名を保存する場合に、前述のように:8A:A6:(適当)のような形式でファイル名を変更し、保存します。このファイル名表現形式のことをCAPと言うようです。

HD-HLAN120では、Windowsとのファイル共有にSambaというソフトウェアを利用しているのですが、Sambaにはnetatalkとの親和性を高めるため、netatalk互換のファイル名でファイルを保存する機能があります。そして、HD-HLAN120でもこの機能を利用しているのでしょう。ちなみに、smb.confの設定ではcoding-system=CAPとなっているハズです。

さて、ファイルを読み出すための方法としては、
・:??:の形式で記述されているファイルを全てリネームする
 Perlその他で簡単なプログラムを書けば良いでしょう。
・Linuxの乗ったPCにSambaを導入し、coding system=CAPと適切に設定した後、Samba経由でファイルを読み出す
などの方法が考えられます。

04/03/06(土) 22:26:26 投稿者[たつや] [No.34]のスレッド内
【No.65】 タイトル[Re: 文字コード] 【No.64】に対する返信
>HD-HLAN120などでは、Macintoshとのファイル共有にnetatalkというソフトウェアを利用しているようです(未確認)。

はい。netatalk を使っています。

>HD-HLAN120でもこの機能を利用しているのでしょう。ちなみに、smb.confの設定ではcoding-system=CAPとなっているハズです。

ここなのですが、先に私が書き込んだとおり、LinkStation の samba
の設定は coding-system=sjis になっており、CAP は使っていないよ
うです。

>さて、ファイルを読み出すための方法としては、
>・:??:の形式で記述されているファイルを全てリネームする
> Perlその他で簡単なプログラムを書けば良いでしょう。
>・Linuxの乗ったPCにSambaを導入し、coding system=CAPと適切に設定した後、Samba経由でファイルを読み出す
>などの方法が考えられます。

samba が cap を使っているのであれば、この対処で OK です。
また、確認したのは samba のみですので、vi さんが Mac 専用
の共有フォルダをつくり、そこに日本語のファイルを保存して
いたのであればやはり cap になっていると思います。

しかし、少なくとも私の LinkStation の samba 上では cap を
使っていないので、本当にディスク上のファイル名が cap に
なっているのか、表示しようとした環境のせいなのかが vi さ
んの書き込みからでは想定できないのです。

vi さん、問題が解決していないのであれば、そちらの環境や
やったことを書いていただければアドバイスすることができ
ると思うのですが、いかがでしょう?

04/03/01(月) 23:01:26 投稿者[vi] [No.34]のスレッド内
【No.37】 タイトル[Re: 文字コード] 【No.36】に対する返信
>>市販のLinuxDriveは持っているのですが、
>>EUC-JPでもうまく認識できませんでした。
>
>ここがちょっと分らなかったのですが、LinkStation の HDD を
>Linux が載ったパソコンに接続してファイルだけを取り出そう
>としているのですか?
>
>>Sambaの知識があまりないのですが、
>>通常日本語の文字コードは何に設定しているのでしょうか?
>
>LinkStation の設定では、/etc/samba/smb.conf を見ると
>
>[global]
> client code page = 932
> coding system = sjis
>
>となってますので、日本語のファイル名は ShiftJIS です。
>

はい、そのとおりです。
たつやさんがおっしゃるとおり確かにShift-JISみたいなのですが、
文字コードのままで管理しているみたいで、
たとえば「企」という文字の入ったフォルダは:8a:e9と
いうシフトJISの文字コードのままのファイル名となっております。
このままですとエクスプローラでコピーなどもままならず、
大変困っております。
やはり玄箱などを購入してみるしかないのでしょうか・・。

04/03/01(月) 23:39:19 投稿者[たつや] [No.34]のスレッド内
【No.39】 タイトル[Re: 文字コード] 【No.37】に対する返信
>はい、そのとおりです。
>たつやさんがおっしゃるとおり確かにShift-JISみたいなのですが、
>文字コードのままで管理しているみたいで、
>たとえば「企」という文字の入ったフォルダは:8a:e9と
>いうシフトJISの文字コードのままのファイル名となっております。

う〜ん、すみません。私の説明も足りなかったと思うのですが
(最初の投稿で EUC と書かれていたので、単に ShiftJIS であ
ることに気がついていないだけだと思っていたので、、、)
vi さんがどのような環境でどうやってファイルをバックアップ
しようとしているのかを教えていただかないとこれ以上は分ら
ないです。

LinkStaion のディスクをどこかに接続して、何かの操作を行う
(コマンドとか、、)と、ファイル名が :8a:e9 などのように
表示されてしまうのでしょうか?

>このままですとエクスプローラでコピーなどもままならず、
>大変困っております。

最悪、パーティションの内容を dd や dump などでバックアッ
プしておけば、ファームの修理後に書き戻すせば LinkStation
から samba 経由で元のファイルを取り出すことができるよう
になります。ただしこの場合、修理中は個々のファイルにアク
セスできなくなってしまいますが。

おそらく、Windows マシンに元のファイルのままの形でバック
アップしておきたいのですよね。