« Yahoo!知恵袋はKnowledge Baseになっていない | トップページ | 知恵ノートでサービス管理者から削除される »

2010年10月23日 (土)

USBメモリ利用時の注意

今日お預かりしたのは1本のUSBフラッシュメモリ。
仕事の文書が大量に入っている。
要件は「中のWord文書を修正し上書き保存するとエラーがでて保存が出来ない」とのこと。

実際にやってみると確かに「ファイルアクセス権のエラーのため保存できません」とエラーが表示され、ファイル名が表示され、OKボタンしか表示されないダイアログボックスが表示される。

ファイルシステムをチェックするも異常なし。
2GBのUSBメモリで10%しか利用されておらず空き領域の問題ではない。
ウィルス駆除ソフトでスキャンしたが問題なし。

こういうときは出力されているエラーメッセージを正確にそのまま検索文字列としてGoogleで検索するに限る。
・・・なんだよこれ。http://support.microsoft.com/kb/813997/ja (役に立たないので見なくて結構です)
ハードディスクの空きやウィルス駆除ソフトの問題にしているが、50Gの空きがあるのに動かないのか?
マイクロソフトのサイトは自分のプロダクトのバグに対して弁護しすぎる。よっぽど自分の責任にしたくないらしい。
知恵袋のログもヒットするが、これも役立たず。知恵袋のベストアンサーは決して正解ではないので注意すべし。というかこういう玉石混合だからKnowledge Baseとして役に立たない。
まだOKWaveのほうがきちんとしている・・・と思ったがウィルス駆除ソフトの話だけ。

探しまくって見つけたヒントはこれ。
http://www.zqwoo.jp/sak_bfqa/show_c/BUF6661
当該USBメモリはFAT16でフォーマットされていた上に漢字のファイル名連発でしかもルートディレクトリに180個以上のファイルとフォルダを保存していた。FATのルートディレクトリのエントリはディスクサイズに依存するが8.3形式の短いファイル名でも512個までしかファイルは保存できない。ロングファイルネームを利用するとディレクトリエントリが使われるため、ファイル保存数の制限がさらに小さくなる。
Wordはファイルを上書き保存する際に、仮の名前で新しくファイルを保存→正常終了したら古いファイルを削除→仮の名前を正しい名前にリネーム、との3段階で保存する。つまり最低でも1つ空きエントリがないとファイル保存ができないわけで、その際に当該エラーが表示される。

問題は、Wordはなぜそれを正しく通知しないのか、ということ。「ルートディレクトリに保存する制限を越えています」とのエラーが出ていれば、ルートのファイルをフォルダに整理することで空きエントリができるため、保存も正しく行なわれるのだ。

この制限はFAT32ではゆるくなるし、FAT16でもルートにフォルダをつくりその中に保存する分には問題は発生しない。(ただしFATの場合1フォルダ内に1000もファイルを作るとアクセスが非常に遅くなる)
もちろんNTFSでフォーマットすれば問題は発生しない。(MFTは自動的に広がるため)
2GBということで普通はFAT32でフォーマットされるのだがFAT16でフォーマットしたのが問題だった。

お客様には「ルートにはフォルダを50個ぐらい作るようにしてその中にうまく整理すればでなくなります」と言い添え、あとFAT32でフォーマットし直してデータを戻した状態でUSBメモリを返却した。

USBメモリをフロッピー感覚で使っている方はこの問題に引っかかることが多いだろう。フォルダをうまく使ってUSBメモリをうまく使いこなして欲しい。

« Yahoo!知恵袋はKnowledge Baseになっていない | トップページ | 知恵ノートでサービス管理者から削除される »

パソコン・インターネット」カテゴリの記事

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: USBメモリ利用時の注意:

« Yahoo!知恵袋はKnowledge Baseになっていない | トップページ | 知恵ノートでサービス管理者から削除される »