De acuerdo con la sección de Propiedad y Permisos de la documentación de NTFS-3G, podemos usar las opciones de montaje para controlar el acceso y la creación de archivos . Las combinaciones son muy complicadas (ver las dos tablas allí). Además, no leo y los entiendo todos. Por ejemplo, no sé si las ACL POSIX se seleccionan en tiempo de compilación o no del paquete binario NTFS-3G. Pero lo mejor que he obtenido es usar un archivo de mapeo de usuario combinado con algunas opciones de montaje para aproximar un mapeo plausible de la propiedad del archivo y los permisos entre Windows y Linux.
Advertencia : Esto es solo lo que funciona mejor para compartir una partición de datos NTFS (unidad D:
en Windows) entre Windows 8 de arranque dual y Kubuntu 14.04. Las instrucciones se registran en una cuidadosa retrospección pero no se prueban a fondo. Es demasiado agotador y tedioso repetir todo el procedimiento nuevamente. Así que sígalo bajo su propio riesgo. Pero si lo hace, comparta su experiencia. Si decide seguir las instrucciones, léalo completamente para tener una imagen completa antes de actuar. ¡Buena suerte!
Muy bien, aquí tienes! Las instrucciones detalladas constan de tres partes. La Parte 1 debe llevarse a cabo en Windows, mientras que la Parte 2 en Linux. La parte 3 es para prueba.
Parte 1
La sección Asignación de usuarios de la documentación de NTFS-3G especifica dos versiones para configurar la asignación de usuarios entre Windows y Linux, una versión de Windows y una versión de Linux. Mi experiencia fue que la versión de Linux terminó con una falla . La cuenta de Linux no se asignó a mi cuenta de Windows, pero apareció una cuenta desconocida bajo un SID . El resultado fue un desastre ya que esta cuenta desconocida toma posesión de todos los archivos de mi cuenta de Windows. En esa situación, a menos que tenga un privilegio administrativo para recuperar su propiedad, los archivos de su cuenta de Windows quedarán inaccesibles. Pero incluso si usted sarna, todavía esUn mapeo incorrecto. Eso significa que, más tarde, los archivos que cree en Linux se asignarán a esa cuenta desconocida en Windows y los de Windows se asignarán a root en Linux (si no recuerdo mal). Entonces, en Windows, debe recuperar la propiedad nuevamente y en Linux cambiar la propiedad. Eso no es lo que esperamos que sea. Después de varios intentos desesperados por solucionar el problema, me di por vencido y recurrí a la versión de Windows. Ese funcionó. Las instrucciones detalladas extraídas de la sección relevante de la documentación de NTFS-3G son las siguientes:
Descargue la herramienta de mapa de usuario , extráigala en algún lugar (en mi caso, unidad C:
), mejor fuera de la partición NTFS (en mi caso, unidad D:
) para compartir.
Abra la línea de comando de Windows. Cambie al directorio extraído tools
(por defecto) de la usermap
herramienta. Luego ejecute el siguiente comando:
C:\tools> mapuser > UserMapping
Esto genera una plantilla y la redirige a un archivo llamado UserMapping
. Abra el archivo con un editor de texto, diga Bloc de notas, debería ver las siguientes líneas:
# Generated by usermap for Windows, v 1.1.5
# For Windows account "Account" in domain "Domain"
# Replace "user" and "group" hereafter by matching Linux login
user::SID
:group:SID
Presumiblemente, el primero SID
debe ser su SID de usuario, mientras que el segundo es su SID de grupo. Puede verificarlos respectivamente mediante comandos whoami /user
y whoami /groups
.
Después de asegurarse de que los SID sean correctos, siga las instrucciones en el comentario, es decir, cambie user
la user::SID
línea a su nombre de usuario y group
la :group:SID
línea a su nombre de grupo principal en Linux. En Ubuntu, son lo mismo. Además, agregue el nombre de su grupo Linux también después de los primeros dos puntos de la user::SID
línea. Entonces la línea debería verse algo así user:group:SID
. Parece que si no lo hace, los archivos creados en Windows se asignarán a user:root
Linux.
Guarda el archivo. Muévalo a un directorio llamado .NTFS-3G
(créelo si aún no existe) en la partición NTFS que se compartirá (en mi caso, unidad D:
).
Este paso es para la prueba en la Parte 3. En la partición NTFS compartida, cree un nuevo directorio y un nuevo archivo.
Parte 2
Ahora inicie en Linux. sudo
editar el archivo /etc/fstab
. Agregue o modifique la línea para la partición NTFS compartida a algo como lo siguiente:
UUID=... /data ntfs defaults,umask=077,utf8 0 0
Lo esencial es establecer el umask
( dmask
y fmask
también puede funcionar pero no probado). Escoja un valor para umask
que te gusta, aunque escogí 077
. Parece que sin esta configuración, se otorgarán permisos completos o
para los archivos recién creados.
Guarda el archivo. Ahora sudo mount
o vuelva a montar ( sudo umount
y luego sudo mount
) la partición NTFS compartida (en mi caso /data
):
$ sudo mount /data
Parte 3
Ahora (todavía en Linux) cd
al punto de montaje (en mi caso /data
), ls -l
los archivos allí. Compruebe si su propiedad y sus permisos coinciden respectivamente con los que especificó en el UserMapping
archivo y los umask
que configuró /etc/fstab
(la coincidencia entre los permisos y umask
requiere un cálculo complementario; consulte man (1) umask para obtener más información) Si lo hacen, felicidades, se logra la mitad del objetivo. De lo contrario, pobre de ti. Pregúntale a Ubuntu o Windows.
Luego cree un nuevo directorio y un nuevo archivo. ls -l
para verificar su propiedad y permisos. La propiedad debe ser su nombre de usuario y grupo primario como de costumbre. Los permisos deben coincidir con el umask
. Ahora reinicie su computadora y arranque en Windows. Localice en la partición NTFS compartida el directorio y el archivo que acaba de crear en Linux. Verifique sus propiedades para ver si están asignadas a su cuenta de Windows. Si es así, felicidades, ya está todo hecho. De lo contrario, mala suerte. Pregúntale a Windows o Ubuntu.
EOF