- blogs:
- cles::blog

OmniOS/ZFS サーバに wbadmin でイメージバックアップが取れない時に確認すべきこと


以前、SMB 2.0 以降を使う Samba サーバの共有フォルダを対象にして Windows のイメージバックアップを取ろうとすると Sparse File の関係でバックアップが取れたり取れなかったりするという問題がありました。
同じような問題が OmniOS(illumos) でも発生していたので困っていました。
OmniOS は Open Solaris の系譜なので、ファイル共有は Samba ではなく Kernel 内蔵の smb です。
というわけで、Linux のSamba と同じテクニックは使えず、原因も Sparse File ではありません。
† まず、結論から
いつも通り、解決するための結論から書いて置きます。
以下のようなコマンドで zfs 共有の nbmand
(Non Blocking mandatory locks)*1*2 プロパティを on
にしてやります。
どうもこの nbmand
というプロパティが off
だとクライアントがファイルをうまくロックすることができず、これが原因になっていたようです。
nbmand
のデフォルトは off
ですし、おそらくパフォーマンス等に対するペナルティもあると思われるので、今回はバックアップに使う共有でだけ on
にしています。Open Solaris の時から nbmand
は cross-protocol locking (例えば NFS と SMB を同時に使う)が必要な時だけ on
にする必要がある*3という認識だったのですが、どうやらちょっと僕の認識が間違っていたようです。これまで off
でもファイルサーバとしては特に問題になる挙動に当たったことがなかったのですが、このあたり近日中に詳しく調べてみたいと思います。
† 実際に発生するエラー
実際にバックアップを取ろうとすると発生するエラーは以下のような感じです。
- *1: illumos: manual page: zfs.8
- *2: illumos: manual page: mount.8
- *3: Managing CIFS Shares (Task Map) (Solaris CIFS Administration Guide)
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/13892
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
OpenID を使ってログインすることができます。
2 . Word で数式がグレーアウトされていて挿入できないときは(6726)
3 . Windows 10 で勝手にログアウトされないようにする(5157)
4 . Firefox でパスワードが保存されるページとされないページの違い(3898)
5 . awk で指定した n カラム目以降を出力する(3483)