SnowLeopardとKubuntu11.10を搭載したデュアルブートMacbookProを持っていて、自宅のMacホームディレクトリを読み取り(書き込みは気にしない)したいKubuntuを実行しています。
問題なくマウントできますが、uid(Macでは502、Kubuntuでは1000)が異なるため、Kubuntuonのユーザーはmacユーザーが所有するHFS +上のファイルを見ることができません。
HFS +に関するカーネルドキュメントを見てください 私はそれを読みました:
When mounting an HFSPlus filesystem, the following options are accepted:
[CUT]
uid=n, gid=n
Specifies the user/group that owns all files on the filesystem
that have uninitialized permissions structures.
Default: user/group id of the mounting process.
だから私はこれらのオプションを使ってみました:
$ Sudo mount -t hfsplus -o uid=1000,gid=1000 /dev/sda2 /mnt/Mac
しかし、彼らは何もしていないようです。ls-lを使用して見回すと、同じ権限が表示されます。私は何かが足りないかもしれません、何か手がかりはありますか?
UbuntuのユーザーIDをMacOs Xと一致するように変更できることは知っていますが、可能であれば避けたいと思います。
bindfs
がその答えです。すでにマウントされているファイルシステムを取得し、必要なuidでそのビューを提供します。
Sudo apt-get install bindfs
mkdir ~/myUIDdiskFoo
Sudo bindfs -u $(id -u) -g $(id -g) /media/diskFoo ~/myUIDdiskFoo
編集:
また、 doc を読むと、map
オプション(1.10以降)の方が適している可能性があることに気付きました。
Sudo bindfs --map=502/1000 /media/diskFoo ~/myUIDdiskFoo
実際、この質問に出くわしたとき、私は同じようなことをしたいと思っています。最初の投稿から見て、要求されたマウントオプションは、Linuxシステムのデフォルト(つまり、uid 1000)の代わりにどのユーザーuidを使用するかを尋ねていることを理解しています。したがって、代わりに、マウントしようとしているファイルシステムの予想される所有者である502を使用する必要があります。
私は自分の状況でこれをテストしましたが、ファイルシステムのuid99をシステム間で共有することでうまく機能しました。これにより、uidを変更する必要がなくなります。共有してくれてありがとう。これはもうあなたにとってはあまり役に立たないかもしれませんが、他の誰かを助けるかもしれません。乾杯
結局、mac os xユーザーと同じUIDでlinuxユーザーを作成しましたが、多くのファイルがmacユーザー "unknown"、UIDによって所有されていたため、mac hfs +ボリューム上の自宅のすべてのディレクトリを参照できません。 99( http://googlemac.blogspot.com/2007/03/user-99-unknown.html を参照)。
別のコンピューターに接続したときにボリュームをマウントして読み取ることができるようにするために、そうしているようです。通常のユーザーがUID99が所有するファイルを見ると、自分が所有者であることがわかります。かなり奇妙。 rootだけがそれらをそのまま見ます。
そこで、Mac Os Xで再起動し、管理者権限を持つ別のユーザーでログインし、chown -R 502:20/Users/gerlos/*を使用して、自宅のすべてのファイルの所有者を変更しました。今、私は問題なくすべてを読むことができます。
備考: