しばいぬ
ラズパイのNASにコピーできないファイルがあるんだよな~、フォントファイル.otfを保存したいんだけど対応ファイルエラーになる
SambaでNAS作ったんならSambaの設定見直したらいいんじゃね?対応ファイルの設定箇所あるよ
のどかもめ
しばいぬ
まじで?!ちょっと教えてくれい。今はしょうがなくzipファイルで保存してるんだw
目次
特定のファイルをコピーするとファイルエラーになる現象発見
開発で使用しているフォントのバックアップとしてNASにコピーしようとしたらこんなエラーが出てしまいました。。。
予期しないエラーのため、ファイルをコピーできません。このエラーが再発する場合は、エラーコードを使用して、この問題についてのヘルプを検索してください。
エラー0x80070032:この要求はサポートされていません。
Sambaに対応ファイル属性の設定機能があるらしい
いろいろググったらSambaはデフォルトでDOS attributeと呼ばれるファイル属性を維持したままファイルを保存するらしい。
smb.cnfには設定が記載されていないですが、デフォルトでstore dos attributes = yesになっているので、これをnoに変えればヨシ。
設定の詳しい内容は日本 Samba ユーザ会さんのファレンスを見てください。
store dos attributes (S)を参照。(ページが縦に長いですが、ページ内検索でたどってください)
参考 store dos attributes (S)smb.conf(5) - 日本Sambaユーザ会
解決方法
/etc/samba/smb.cnfに設定を追加
smb.cnfの保存場所は環境によって異なると思いますが、smb.cnfを開いて以下のように設定します。これでstore dos attributesが無効になります。
$ sudo vi /etc/samba/smb.cnf
// ↓をsmb.cnfの一番下に追加
store dos attributes = no
Sambaを再起動し、設定を反映
ターミナルでSambaを再起動させるコマンドを実行して設定を反映させます。
$ /etc/init.d/smbd restart
// ↑のコマンドで反映されなければ以下のコマンドを実行
$ sudo service smbd restart
無事にコピー完了
ファイルに問題があるわけではなく、NAS(Samba)の設定を少し変えるだけで簡単に直ったので安心しました。
これで全てのファイルをコピーできそうなのでたくさんバックアップしていきたいと思います。