3月 09
はじめに
NASをTimeCapsuleして利用する方法があることを知り
古いPCにFreeBSDをインストールしこれをTimeCapsuleとして
利用することにした。
- 2009.10.25 追記:スパースバンドル・ディスクイメージをコマンドで作る。
環境
| OS | Version | 備考 |
| FreeBSD | 7.1-RELEASE-p3 | i386 |
| MacOSX | 10.5.6 | PowerPC |
準備
FreeBSD側ですること
- Netatalkをportsからインストール
- 参考サイトのNetatalk 2.0.3 on FreeBSD 7.0 CJK Environmentのパッチ適用
- /etc/make.conf
WITH_SRVLOC=no # と変更。Leopardの場合は不要とのこと
- /etc/make.conf
- 参考サイトのNetatalk 2.0.3 on FreeBSD 7.0 CJK Environmentのパッチ適用
- /etc/rc.conf に以下を追加
etatalk_enable="YES"
atalkd_enable="NO"
papd_enable="NO"
cnid_metad_enable="YES"
afpd_enable="YES"
timelord_enable="NO" - /usr/local/etc/AppleVolumes.default の修正(例)
〜 ←行末のこれは削除 (行頭 # 付加でコメントにする) /opt/pbg4 TimeMachine cnidscheme:cdb options:usedots 説明:/optはUSB接続の余ったHDD(120GB) でも古いPCなのでUSB1.0接続 - リブート
MacOSX側ですること
- 「ディスクユーティリティ」で空のディスクイメージを作成
作成するディスクイメージの条件 設定値 備考 ボリュームサイズ 小さめ適当 後から増やせる ボリュームフォーマット Mac OS 拡張(ジャーナリング) 暗号化 無し パーティション ハードディスク イメージフォーマット スパースバンドル・ディスクイメージ - 作成したイメージファイルを、リモート側(FreeBSD)にコピーする。
このイメージファイルのファイル名は、
<macosx のホスト名>_< そのホストの有線Macアドレス>;
Macアドレスの":"は不要で、有線LAN側のMacアドレスを指定する。
例) < ホスト名>_NNNNNNNNNNN.sparsebundle
が、しかし、リストアした事がないので、有効に使えるのか判らないです。また、我が家では無線LANをしてますが、指定するのはMac OSX側の有線LANのMacアドレスです。 - 以下のコマンドを叩く (sudo しなくてい良いみたい)
defaults write com.apple.systempreferences TMShowUnsupportedNetworkVolumes 1 - Finderのメニューから「移動」→「サーバ接続」で
afp://<freebsd のホスト(IP address指定が良いかもしれない)> - ここでマウントできるなら、「+」押下で、「よく使うサーバ」に登録する。
- XXXX.sparsebundle (XXXXは仮、をダブルクリックするとマウントできる
- 「ディスクユーティリティー」で、これを選択しファイルサイズを増やす。
- ・・・ん、忘れてきました。参考サイトを参照してください。
- バックアップが可能になった場合
- 自動バックアップが出来る様に、ログイン時にFreeBSD側をautomountする設定をします。
- 後は「システム環境設定」→「タイムマシン」で、このディスクが見えたら
おめでとう御座います。- さらに、「システム環境設定」→「アカウント」で、「ログイン項目」に、上述で「よく使うサーバ」で設定した内容を登録します。このファイルは以下にあります。
Library/よく使う項目/< 先程指定したIPアドレス> - このファイルを、ログイン項目に、Drag&Drop すると登録できます。
- さらに、「システム環境設定」→「アカウント」で、「ログイン項目」に、上述で「よく使うサーバ」で設定した内容を登録します。このファイルは以下にあります。
備考
- Netatalkで未サポートなコマンドがあるようです。
(4C, 4Fとかが、bad function として、FreeBSD側のコンソールに出ます) - 安い変換アダプタ(SATA→USB2.0)を購入したのですが、PowerPCのMacとは相性が悪い様?で、mount接続&切断を繰り返します。
- Intel版は使えます。フォーマットもPowerPC用に変更してもダメ
- っということで、この表題をぼちぼちとやることにしました。
- スパースバンドル・ディスクイメージをコマンドで作る。
Mac OSX 10.6.1 になって気付いたんですが、コマンドラインで作れますね。$ hdiutil create -size 1M -type SPARSEBUNDLE -fs HFS+ a
上述を実行すると、a.sparsebundle が作成される。
結局はディスクユーティリーで容量や属性を変更することになりますが、
取り合えず。
参考サイト
- TimeCapsuleじゃないNASを使って、TimeMachineを使ってみる
- Apple Time Machine + FreeBSD in 14 steps.
- Netatalk 2.0.3 on FreeBSD 7.0 CJK Environment
補足情報
- netatalk 2.1devで4F対応 (試してません)
- netatalk 2.1devは環境整備中のため、別メモにします。
capsuleの綴りが間違っております。
開発版のnetatalk 2.1devで4F対応になっており、ディスクユーティリティを使わなくても自動的にイメージが作成されるので、これもおすすめです。
アドバイス、有り難う御座います。
欲を言えば、もっと、早くその情報を知りたかったです。
私の調査不足が原因ですが、このバックアップイメージを作るのに
20時間以上かかったので、今後の参考とさせて頂きます。
(USB 1.0で接続した、80GBのHDDをバックアップに使おうと試みてます)
以上、また、何かありましたら、アドバイスや相談をしたいと思いますので
宜しくお願い致します。
すみません、
http://www003.upp.so-net.ne.jp/hat/netatalk/freebsd70.html
記載のパッチは充てました。
FreeBSDからは、作成したイメージファイルを展開し
読むことは無いので、私の記述不足ですが、
パッチ対応は実施しています。
開発バージョン2.1devがあるそうですが、
FreeBSD(7.1)で使用可能でしょうか?
FreeBSDのコンソールのエラー出力に(4C, 4F)が多発してますので改善できればと思ってます。
ログの方も、100回、200回以上のエラーが出てるので
エラーカウントに変わってますね。
アドバイス、頂ければ幸いです。
>欲を言えば、もっと、早くその情報を知りたかったです。
CVSが更新された直後にWikipediaのnetatalkのページを
書き換えたし、翌日にはブログの情報を書き換えたので、
最速でやったつもりですが。
>開発バージョン2.1devがあるそうですが、
>FreeBSD(7.1)で使用可能でしょうか?
試してないのでわかりませんが、
build出来ない理由は特にないと思います。
HATさん、返答ありがとう御座います。
仰る通り、以下で紹介されてますね。
http://www003.upp.so-net.ne.jp/hat/netatalk/cjk.html
是非、試してみたいと思います。
実はこのタイムカプセル化の話は、2009.2.19頃に実施した事を
書いています。記事の投稿日は2009.3.9になってますが、現在ブログサイトを
こちらへ移行中の為、そうなった次第です。
HATさんが最速で作業された事は本日(2009.3.13)知りました。
勘違いさせたようで、すみません。
4Fの実装は2/26なので、2/19だとまだ存在してませんね。