鳳鳴は祖父の俳号

日記 メモ そんなの

Ubuntu14.04LTSにNetatalkをインストールしTimeMachineを設定してMacOSXのバックアップをする

Ubuntu側にVFAT/NTFS形式のUSB-HDDを接続してそこを共有ディスクにした場合はTimeMachineが動作しません。
sparcebundleimageで必要な拡張属性が扱えないのが理由のようです。(afp.conf内でea=sysなど指定してもダメ)



 MacOSX 10.8→10.9にあげたいがバックアップをしてないのでreadyNAS相手に色々やっていたがなぜかバックアップ容量が大きめに設定できず諦めかけていた。が、Ubuntu14.04LTS上にNetatalkをインストールすればできそうな感じだったので挑戦してみた。
条件:MacOSX 10.8をUbuntu14.04LTSにUSBで接続したNTFSフォーマットのHDD上にTimeMachineでバックアップする。

(1)Ubuntu14.04LTSでのUSB-HDD(NTFS)のマウント→× ext4でディスク追加
 接続するだけでOK。読み書きも問題ない。/media/takesita/LACIEにマウントされる。ユーザ名(takesita)とHDDのラベル(LACIE)は読み替えてください。→gpartedでフォーマットしマウント
Ubuntu 12.10でHDD増設 - ひゃまだのブログ



(2)バックアップ予定地の準備
$ sudo mkdir /Backup
ここをバックアップ用ディスクのマウントポイントにする。
マウント後、
$ sudo mkdir /Backup/TimeMachine
$ sudo chmod 777 /Backup/TimeMachine

(3)Netatalk3.1.5のインストール
 まず準備。以下を参考に必要なライブラリ類をインストールする。
Install Netatalk 3.1.7 on Ubuntu 14.04 Trusty - Netatalk Wiki

$ sudo apt-get install build-essential libssl-dev libgcrypt11-dev libkrb5-dev libpam0g-dev libwrap0-dev libdb-dev libmysqlclient-dev libavahi-client-dev libacl1-dev libldap2-dev libcrack2-dev systemtap-sdt-dev libdbus-1-dev libdbus-glib-1-dev libglib2.0-dev tracker libtracker-sparql-0.16-dev libtracker-miner-0.16-dev

 Netatalk3.1.5を展開し、以下のオプションでconfigure/make/make installする。

$ tar xvf netatalk-3.1.5.tar.bz2
$ cd netatalk-3.1.5
$ ./configure --with-init-style=debian --with-cracklib --enable-krbV-uam --with-pam-confdir=/etc/pam.d --with-dbus-sysconf-dir=/etc/dbus-1/system.d --with-tracker-pkgconfig-version=0.16
$ make
$ sudo make install

 ここまでは書いてあるとおり。

(4)Netatalk3.1.5の設定ファイル
 ここではユーザ名をtakesitaのままにして新規には作らない。USBで接続したHDDをTimeMachine以外の共有ディスクとしても簡単に使いたかったため。容量を990000MBに制限。
こちらを参考にした。Ubuntu をTime Machine のバックアップ先にする - unching-starのブログ

 ユーザグループafpを作製し、ユーザを追加。
$ sudo adduser afp

 設定ファイルの編集。
$sudo vi /usr/local/etc/afp.conf

;
; Netatalk 3.x configuration file
;
[Global]
mac charset = MAC_JAPANESE
uam list = uams_clrtxt.so uams_dhx.so uams_dhx2.so uams_guest.so
log file = /var/log/netatalk.log
vol preset = my default values

[my default values]
valid users = @afp
file perm = 0660
directory perm = 0770

[Time Machine]
path = /Backup/TimeMachine
time machine = yes
vol size limit = 990000

$ sudo /etc/init.d/avahi-daemon start
$ sudo /etc/init.d/netatalk start

またはrestartで。

これでMacOSX上からHDDが見えるはず。

$ sudo update-rc.d avahi-daemon defaults
$ sudo update-rc.d netatalk defaults

(5)TimeMachineの設定

 そのままOK。

 ー以下は試行錯誤のメモー

 あとはTImeMachine設定からこのディスクを選択し、ユーザ名:takesita、パスワード:(設定したもの)を入力するとできるはず……なのだが開始できない。最初にバックアップ領域を確保できない感じ。

 →スパース型のイメージを作製し、共有ディスクに置き、手作業でTimeMachineのデスティネーションとして指定。
http://d.hatena.ne.jp/houmei/20140412/1397323695
http://misc.mat2uken.net/blog/2013/06/21/timemachine_to_sparseimage_for_bitcasa.html
http://neilstyles.com/getting-mountain-lion-time-machine-working-on-a-network-drive/

 ディスクユーティリティでスパースディスクイメージ、1TBのイメージを作製(forTimeMachineMBP15)。これをバックアップ対象の共有ディスクにコピー。そしてダブルクリックしてマウントする。最初にイメージを作製した時には自動的にマウントされてしまうので、そのコピー元はディスクユーティリティからアンマウントしておく。
 MacOSXからは/Volumes/forTimeMachineMBP15として見える。tmutilコマンドでTimeMachineのデスティネーション設定を行う。
$ sudo tmutil setdestination /Volumes/forTimeMachineMBP15

これでTimeMachineのバックアップを開始することができる。現在バックアップ進行中。

→ バックアップ途中でスパースディスクイメージが破損。ディスクユーティリティで修復後再開したがまた破損。
sparseimageとsparsebandleは形式が異なる。前者は単一ファイル、後者はパッケージ(ディレクトリ)。sparseimageだとひとつのファイルの中での書き換えになり、TimeMachineは対応していないっぽい。
Macな小心者のタウンロード: ◎ dmg関連その(4)dmgファイルについてのまとめと、「.sparseimage」と「.sparsebundle」について。

 sparsebandle形式でイメージを作製してコピーしようとしたら権限がないと言われた。マウントしたUbuntu側の共有ディスクには通常ファイルはコピーできるので、何かが足らない。恐らくTimeMachine初回起動時に
バックアップディスクイメージ“/Volumes/TimeMachine-1/mbp15.sparsebundle”を作成できませんでした(エラー 13)。
と言われるのもこのせいと思われる。