Macbook Airを購入してからUbuntuのNAS(1TBのRaid1)にTimeMachineを構築しています。
もともと半分ぐらい使用していて、TimeMachineをぶん回したところNASのHDDがほぼなくなってしまったので、3TBのRaid1にお引越ししました。
このエントリーはHDDの交換作業の記録です。
環境
- Ubuntu 12.04
- Samba
- netatalk:TimeMachine用に
- miniDLNA:音楽をストリーミングしたいために
- ラトックシステム RS-EC32-U3R:製品ページはこちら -> http://www.ratocsystems.com/products/subpage/rsec32u3r.html
- 元のHDD:WD Grean 1TB *2
- 移行先のHDD: WD RED 3TB * 2
- RAID1(ミラーリング)にて運用
作業過程
NASへのアクセスを止める
sambaとかnatatalkとか、アクセスを予想されるデーモンやアプリを止めます。service stopとか/etc/init.d/[daemonname] stopなどで
NASの現在のHDD内容をバックアップ
sudo tar czvfp
圧縮書庫として保存しました。pオプションはパーミッションと所有者がそのまま保存されます。忘れずにつけましょう。
pオプションを使うときに管理者権限で行わないと所有者情報が保存されないらしいので注意です。
圧縮して保存していますが、保存先は一応同サイズのHDDを利用しています。バックアップ先のHDDは同量かそれ以上のサイズを用意したほうが良いと思います。
バックアップは時間がかかるのでしばらく放置です。こういう時にCUIやSSHやByobuが役に立ちますね!
中身の確認
tarが正しく内容を保持しているかをチェックします。tarのtオプションを指定してディレクトリツリーを見ます。圧縮書庫にしたときのオプションもお忘れなく。pオプションは必要ないです
sudo tar tzvf
gzipで圧縮してるのもあって全て確認するのはしんどいので、ディレクトリ指定など入れてその先のパーミッションを確認する程度にしました。(汗)
このエントリーを書いている時に気がついたのですが、tarにはちゃんと差分比較のオプション(dオプション)がありました。。。上のやり方は筋が悪いので従わないように。
HDDの換装
NASのデータ格納用に利用しているHDDは外付けケースを利用しています。製品はラトックシステムの RS-EC32-U3Rです。
購入した時にも書きましたが、サーバー内蔵やソフトウェアのRAIDだと構築が面倒だったので、HDDケースでRAIDを組めるケースで運用しています。
このHDDケースは電源を落としてからHDDの交換を行う必要が有るため、ケースの電源を落として2つあるHDDを購入したHDDと交換。
サーバーから外すときはサーバーも電源を落としました。USBの取り外しを行う方法があるのですが、何故かうまく行かなかったため。(何かのプロセスがロックしてたのかもしれませんが)
換装後、RAIDケースの設定を初期化してRAID1に設定します。ビルドとかは特にありませんのでそのままUSBで繋ぎ直します。
バックアップからの復元
出来れば、LiveUSBなどの環境で復元したほうが良いです。
NASの環境では、/etc/fstabで自動マウントさせたり、HDDを利用するデーモンが動くこともあって、設定変更してからの作業して戻すのは面倒だったりします。
今回も、LiveUSBのUbuntuを用意してCUIで操作しています。
- 換装したHDDをマウント
- HDDをフォーマットします。今はext4で運用してるのでその通りに
- バックアップのHDDをマウントします(最初にこちらもマウントすると、フォーマットして事故るのでやめておきます)
- tar xzvfpで復元
- これまた時間がかかります。
- 終了後、中身をひと通り確認。ここでもtarのdオプションを使えば比較に苦労することはなさそうです。(時間はかかりますが)
- パーミッション周りは多分大丈夫のはずです。
- (Live起動したUbuntuなので所有者はIDで見れる場合が多いですが、元のサーバーOSにあるIDと同じはずで、元のサーバーでマウントすればユーザー名も見れるはずです)
LiveUSB終了後、再度サーバー起動。/etc/fstabは今回の場合は(RAIDケース利用のため)UUIDが変わっていなかったため、そのまま認識してくれました。
HDDを1台で利用する、外付けHDDやRAIDケースの種類を変える場合はUUIDは変わるので、UUIDを調べて変える必要があります。