2011年7月14日木曜日

UbuntuでHFS+パーティションを読み書きする方法。

この間買ったHDDに大量のデータをお引っ越し。


Spotlightが使いたいので倉庫のファイルフォーマットはHFS+で決定。
デスクトップ機でUbuntu(11.04)を使ってNTFSからHFS+にデータを移行。
やっつけ仕事なので参考にする場合は注意。



UbuntuはデフォルトでHFS+のパーティションをマウントできるが、
ジャーナリングがONの場合は書き込みが出来ない。
デフォルトではジャーナリングがONなのでOSX側で設定を変える必要がある。

・LinuxからHFS+ボリュームを読み書きする (HFS+ as cross-platform file system) http://javaflavor.cocolog-nifty.com/blog/2007/06/linuxhfs_hfs_as_5283.html

osxのターミナルから以下を入力。
($の行を入力。ディスク識別子はディスクユーティリティの情報で確認できる。 例:disk0s2)
$ diskutil disableJournal ディスク識別子
Journaling has been disabled on ディスク識別子 

ubuntuにマウントしたら書き込みの権限が無いと言われるたので
今度はUbuntuの端末で所有者を変更。
$ chown ubuntu側のuser名 /media/disk名 

これでファイルの書き込み自体はうまくいった。
が、OSXに繋いで確認したところいくつかのフォルダにロックが…
手動で全部解除するのは至難の業なのでコマンドでまとめて解除。

・OSX 10.5 Leopardメモ、複数ファイルのロック設定と解除
http://memo-no-memo.cocolog-nifty.com/blog/2009/05/osx-7061.html

$ cd /Volumes/ディスク名 $ chflags -R nouchg ./* 

最後にジャーナリングを忘れずに元に戻す。

$ diskutil enableJournal ディスク識別子 

今回は試さなかったがUbuntu側のUIDとGIDをOSXのものと合わせると
アクセス権で面倒な事になる事は無いらしい。今度試そう。

ちなみに逆をやろうとしてOSX側のUIDを試しに変更してみたところ、
壁紙やDockの表示がリセットされたりして悲惨なことになった(汗)のでお薦めしない。


LionではNTFSの書き込みも正式サポートされるといいなぁ…

0 件のコメント:

コメントを投稿