CentOS7のsambaサーバーにTime Machineでバックアップをとる
Appleがデフォルトのファイル共有のプロトコルをafpからsmbへ変更したことにより、サーバー側でsamba 4.8を使用することにより、Time Machineでもsmbが使えるようになりました。
最近自宅サーバーにバックアップ用に4TBのHDDを増設したので、ここにiMacとMacBook Airのバックアップを取ろうと思って調べていたら、サイトによって設定がまちまちだったので、僕の設定をここに残しておきたいと思います。
調べるにあたっての注意点
この記事を読んでいる方にも、この記事を全面的に信頼せずに他のサイトなども調べて、自分に合った設定を探ってほしいと思うんですが、sambaサーバーにTime Machineバックアップをとる方法に関しては、あまり参考にしない方がいいサイトがあります。それは、途中でmac上で以下のコマンドを実行させる記事です。
sudo defaults write com.apple.systempreferences TMShowUnsupportedNetworkVolumes 1
このコマンドは何かというと、Time Machine非対応のsambaサーバーにTime Machineのバックアップを取ることを許可するコマンドです。
つまり、Time Machineに対応しているsamba 4.8以降を使用しておきながら、非対応サーバーでもTime Machineバックアップできるようにするコマンドを入力しなきゃいけないということは、sambaサーバーの設定が間違っているということ。
簡易NASなどの、sambaのバージョンが上げられなかったり、設定を細かく変更できないファイルサーバーにバックアップする際はこのコマンドが必要になるのですが、samba 4.8以上のバージョンを使っていて、smb.confもいじってるのに上記のコマンドが必要なのはおかしいので、そのような記事には注意してください。
インストール
samba
もし、sambaがまだインストールされていないのであれば、
sudo yum install samba
CentOS7なら、これでsamba 4.8.3をインストールできます。(2019/7/13現在)
あとは、
sudo systemctl start smb
sudo systemctl enable smb
で起動と有効化をしてあげましょう。
avahi
macがサーバーを自動で見つけられるようにするために、mdnsを使えるようにする必要があります。色々と設定があるみたいなのですが、どうせLAN内でしか使わないものなので、特に気にせずavahiをインストールして動かしておけば大丈夫です。
sudo yum install avahi
sudo systemctl start avahi-daemon
sudo systemctl enable avahi-daemon
sambaの設定
/etc/samba/smb.confを編集します。
僕の設定はこんな感じです。
[global]
workgroup = WORKGROUP
security = user
passdb backend = tdbsam
vfs objects = catia fruit streams_xattr
fruit:metadata = netatalk
fruit:encoding = native
[TimeMachine]
comment = Backup for Mac Computers
path = /mnt/wd4t/timemachine
writable = Yes
browsable = Yes
guest ok = Yes
fruit:time machine = yes
fruit:time machine max size = 1T
[global]には、他にも設定してある項目があるのですが、wins supportのような明らかに無関係なものは排除してあります。
[TimeMachine] (バックアップを保存するディレクトリの設定)のpathの部分は、各自バックアップを保存するディレクトリのパスに変えてください。
あと、TimeMachineにサーバーの容量全てを与えると、macはスナップショットで容量を全て使い切ってしまうので、一番最後の行にある
fruit:time machine max size = 1T
を適宜編集して、TimeMachineで使える容量に制限をかけてください。
もし、制限を512GBにしたい場合は、
fruit:time machine max size = 512G
のようにすれば大丈夫です。
smb.confの設定が正常にできたら、
sudo systemctl restart smb
でsambaを再起動しましょう。
Macの設定
まず、一旦Finderからサーバーに接続して、用意したTimeMachineフォルダを開けるかどうか確認してください。
正常に接続できたならば、その状態で "システム環境設定" → "Time Machine" → "バックアップディスクを選択..."を開くと、用意したサーバーのTimeMachineディレクトリが選択できるはずです。
それを選んで"ディスクを使用"を押して、その後の認証やパスワードの設定を行えば、これで設定完了です。あとは自動でバックアップをしてくれるようになります。"バックアップを暗号化"はお好みでチェックを入れてください。
コメント
-
-
大変役に立ちました
ありがとうございましたsudo systemctl restart smb
は
sudo systemctl restart smbd
の模様です
LinuxではうまくいきましたがFreeBSDではうまくいきません。samba(4.10)自体にはアクセスできますがtimemachineの利用可能なディスクに表示されません