Omitir permisos predeterminados al montar volúmenes HFS+ en Linux

Omitir permisos predeterminados al montar volúmenes HFS+ en Linux

Tengo una macbook pro de arranque dual con Snow Leopard y Kubuntu 11.10 y quieroleer(no me importa escribir) mi directorio de inicio de Mac cuando ejecuto Kubuntu.

Puedo montarlo sin ningún problema, pero mi usuario en Kubuntu no puede ver los archivos en el HFS+ propiedad del usuario de Mac, debido a un uid diferente (502 en Mac, 1000 en Kubuntu).

Mirando los documentos del kernel sobre HFS+Yo lei eso:

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.

Entonces intenté usar estas opciones:

$ sudo mount -t hfsplus -o uid=1000,gid=1000 /dev/sda2 /mnt/Mac

Pero parece que no hacen nada: sigo viendo los mismos permisos cuando miro a mi alrededor usando ls -l. Puede que me esté perdiendo algo, ¿alguna pista?

Sé que puedo cambiar mi identificación de usuario en Ubuntu para que coincida con Mac Os X, pero preferiría evitarlo si es posible.

Respuesta1

bindfses la respuesta. Tomará un sistema de archivos ya montado y le proporcionará una vista con el uid que desee:

sudo apt-get install bindfs
mkdir ~/myUIDdiskFoo
sudo bindfs -u $(id -u) -g $(id -g) /media/diskFoo ~/myUIDdiskFoo

Editar:

Además, leyendo eldocMe di cuenta de que la mapopción (1.10 y posteriores) podría encajar mejor:

sudo bindfs --map=502/1000 /media/diskFoo ~/myUIDdiskFoo

Respuesta2

Al final, creé un usuario de Linux con el mismo UID de mi usuario de Mac OS X, pero no puede explorar todos los directorios de mi casa en el volumen Mac HFS+ porque muchos archivos eran propiedad del usuario de Mac "desconocido", UID. 99 (verhttp://googlemac.blogspot.com/2007/03/user-99-unknown.html).

Parece que lo hicieron para permitirte montar y leer tu volumen cuando lo conectas a una computadora diferente. Cuando un usuario normal mira esos archivos propiedad de UID 99, los ve como si fuera su propietario. Bastante extraño. Sólo root los ve tal como son.

Entonces reinicié Mac Os X, inicié sesión con un usuario diferente con privilegios administrativos y usé chown -R 502:20 /Users/gerlos/* para cambiar el propietario de cada archivo en mi casa. Ahora puedo leer todo sin ningún problema.

Observaciones:

  • La herramienta de interfaz gráfica de usuario predeterminada de Kubuntu para crear nuevos usuarios en Kubuntu 11.10 no puede crear usuarios con UID inferior a 1000. En su lugar, utilice adduser en el terminal.
  • Puede conocer su UID de usuario utilizando el comando "id" en la terminal.
  • En Mac OS X, necesitas ser root para ver el verdadero propietario de los archivos. Así que espere resultados diferentes si escribe "ls -n /Users/gerlos" y "sudo ls -n /Users/gerlos".

Respuesta3

En realidad, estoy buscando hacer algo similar cuando me encontré con esta pregunta. Según tengo entendido, según su primera publicación, la opción de montaje solicitada pregunta qué uid de usuario debe usarse en lugar del predeterminado de su sistema Linux (es decir, uid 1000). Entonces, en su lugar, deberías usar 502, que es el propietario esperado del sistema de archivos que estás intentando montar.

Probé esto en mi propia situación y funcionó muy bien, con uid 99 para compartir un sistema de archivos entre mis sistemas. Con esto no tendré que andar cambiando uidos. Así que gracias por compartir. Puede que esto ya no sea de gran ayuda para usted, pero puede ayudar a otra persona. Salud

información relacionada