MacのTimeMachineディスクをSamba上に作ってみた

西山
2026-07-28
2026-07-28

こんにちは。日々是発見が楽しみな西山です。

久しぶり(10年ぶりぐらい)にMacを買ってみました。MacBookAirの上品なボディの質感はやはりいいものですね。WindowsとOSメニューやキーバインドが違うので、ちょくちょくつっかかりつつも楽しく遊んでいます。
さて、MacにはTimeMachineというOS標準の優れたバックアップソリューションがあります。フルオートでMacの1時間ごとのバックアップを作ってくれ、ユーザーファイルがワンクリックでリストアできるのはもちろんのこと、Macどうしで移行する時にターゲットとして指定すればユーザー・アプリ・無線LAN設定まで何でも引っ越しできるすごいやつです。
USBなどのローカルストレージの他に、SMB共有上の専用領域をTimeMachineボリュームにすることができるので、今回は以前作ったSambaサーバーにTimeMachine用共有を設定してバックアップを置くことにしました。

Sambaサーバーの設定がだいぶ難しい(この後の記事を読めば分かる)ので、Apple的にはローカルストレージをTimeMachineボリュームにするよう推奨しているようです。ただ、Sambaで作ればMacBookに外付けをぶら下げることなく無線LAN越しにTimeMachineバックアップできるので、頑張ってチャレンジする価値はあると思います!

Sambaサーバーの設定

以前の記事で構築済みのSambaのsmb.confに、TimeMachine領域の共有設定を追記します。※追記部分のみ抜粋しています。

 [global]
vfs objects = catia fruit streams_xattr acl_xattr recycle

# --- Apple/TimeMachine support ---
fruit:metadata = stream
fruit:model = MacSamba
fruit:veto_appledouble = no
fruit:posix_rename = yes
fruit:zero_file_id = yes
fruit:wipe_intentionally_left_blank_rfork = yes
fruit:delete_empty_adfiles = yes

[timemachine]
path = /data-pool/timemachine
browsable = yes
writable = yes
read only = no
fruit:time machine = yes
fruit:time machine max size = 1T
vfs objects = catia fruit streams_xattr acl_xattr
case sensitive = true
default case = lower
preserve case = yes
short preserve case = yes
valid users = @someone
force group = someone
create mask = 0600
directory mask = 0700
ea support = yes 
  • 新しい共有を[timemachine]という名前で定義しています。公開領域にするストレージのパスが「/data-pool/timemachine」になっています。

  • TimeMachine動作のために「catia」「fruit」というSambaモジュールが必要なので、[global]セクションと共有の[timemachine]セクションで「vfs objects = 」に指定しています。

  • 「fruit:~」の記述でfruitモジュールの動作に必要なパラメータを指定します。

  • 「fruit:time machine max size」の項目で、TimeMachineが使える最大容量を指定します。TimeMachineはストレージ容量が許す最大まで過去のスナップショットを取り続けるので、これを指定しておかないとSambaサーバーのストレージをあるだけ使われてしまいます。

  • 「varid user」「force group」に、TimeMachineログオンに使うネットワークユーザー名を指定します(例ではsomeoneにしていますが、既存のSamba共有ユーザーと同じでも大丈夫です)。

avahi-daemonの設定

avahi-daemonのsmb.serviceファイルは以下のように編集して、TimeMachineボリュームの探索に応答するようにします。オレンジ色の文字が追記部分です。

<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h</name>
<service>
<type>_smb._tcp</type>
<port>445</port>
</service>
<service>
<type>_adisk._tcp</type>
<port>9</port>
<txt-record>sys=waMa=0,adVF=0x100</txt-record>
<txt-record>dk0=adVN=timemachine,adVF=0x82</txt-record>
</service>
</service-group>

Sambaの設定が終わっていれば、これだけでMacのTimeMachine設定画面に新しいTimeMachineボリュームが現れて操作可能になります。

18