Los nombres de usuario son irrelevantes. Los permisos tanto en los sistemas de archivos nativos de HFS + como de Linux se almacenan en términos de ID de usuario (UID), que son números asociados con nombres de usuario. En Ubuntu, como en la mayoría de las distribuciones modernas de Linux, el primer usuario recibe un UID de 1000 por defecto. En OS X, el primer usuario recibe un UID de 501 por defecto. Por lo tanto, al compartir medios que codifican valores de UID, es probable que los valores de UID no coincidan.
Una forma de solucionar esto es estableciendo permisos sueltos (el valor del modo, como en rwxr-xr-x
, o 755 en octal). Tenga en cuenta que el código octal de permisos no es el mismo que el valor UID. En cualquier sistema operativo, puede establecer los permisos predeterminados utilizados en los archivos con el umask
comando, que especifica el valor de bit que se eliminará de los permisos de archivo. Por ejemplo, umask 022
elimina el permiso de escritura para el grupo y otros permisos, lo que resulta en 755 (rwxr-xr-x
) permisos en archivos nuevos (o 644 si algo elimina el bit de permiso de ejecución, que es una práctica común para los archivos). Sin embargo, esta es en gran medida una herramienta de línea de comandos; si es en gran medida un usuario de GUI, necesitará encontrar otra herramienta para hacer el trabajo, probablemente relacionada con los valores predeterminados de su entorno de escritorio. Esto puede ser oscuro y estar mal documentado. Además, establecer permisos sueltos de esta manera puede tener inconvenientes de seguridad, especialmente si el suyo es un sistema multiusuario.
Un mejor enfoque es sincronizar los UID de su cuenta en Linux y OS X. Puede cambiar fácilmente el valor de UID en Linux con el usermod
comando, como en:
usermod -u 501 dale
Este comando establece el UID para dale
501. Sin embargo, hay algunas advertencias importantes:
- Debe cerrar sesión en la cuenta que está modificando antes de modificarla. Intentar modificar una cuenta en uso hará que esa cuenta comience a comportarse de manera extraña.
usermod
debe usarse como root
. Puede ejecutarlo a través de sudo
, pero hacerlo desde la cuenta que está modificando es extremadamente desaconsejable. Por lo tanto, deberá proporcionar root
una contraseña e iniciar sesión root
directamente o usarla sudo
desde una segunda cuenta de usuario.
- El
usermod
comando no cambiará la propiedad de ningún archivo propiedad del usuario en cuestión. Para ajustar la propiedad de esos archivos, deberá localizarlos y luego cambiar su propiedad con chown
. La mayoría de los archivos estarán en el directorio de inicio del usuario, por lo que chown -R dale: /home/dale
, escrita root
después de cambiar dale
el UID, cambiará la mayoría de dale
los archivos para usar el nuevo número de UID. Sin embargo, algunos de los archivos del usuario pueden estar ubicados en otro lugar. Al escribir find / -uid 1000
encontrará todos los archivos que usan el UID anterior (suponiendo que fuera 1000). Tenga en cuenta que este find
comando probablemente tardará varios minutos en completarse. Para acelerarlo, desmonte cualquier sistema de archivos en el que esté seguro de que no encontrará resultados, como los volúmenes FAT o NTFS.
- Si accede a volúmenes FAT o NTFS, sus valores de UID están determinados por las opciones en el momento del montaje. Si usa un administrador de archivos GUI, lo más probable es que el valor de UID esté establecido para quien ejecuta el administrador de archivos, por lo que no necesita hacer nada especial. Sin embargo, si monta el volumen a través de una
/etc/fstab
entrada, es posible que deba ajustar el valor de UID que especifica.
- Ubuntu almacena el valor mínimo que utiliza para UID en
/etc/login.defs
. Si no cambia el UID_MIN
valor en este archivo, es probable que descubra que su cuenta parecerá "desaparecer" de la pantalla de inicio de sesión de la GUI, y quizás de algunos otros sistemas. Por lo tanto, debe editar ese archivo.
En teoría, podría cambiar el UID de su (s) cuenta (s) OS X de una manera similar para lograr el mismo objetivo. Sin embargo, estoy menos familiarizado con las herramientas de mantenimiento de cuentas de OS X, por lo que no puedo proporcionar instrucciones explícitas para hacerlo. Ajustar los valores de OS X tendría la ventaja de no tener que ajustar UID_MIN
en Linux.
Si tiene varias cuentas en su computadora, debe ajustarlas todas para mantenerlas sincronizadas en las instalaciones de su sistema operativo.
Un punto más: el valor de ID de grupo (GID) se almacena de manera similar. IIRC, Ubuntu asigna un valor GID para cada cuenta que es idéntico a su valor UID. No recuerdo qué hace OS X por defecto. Es posible que desee ajustar los valores de GID para los dos sistemas operativos de forma análoga a los cambios de UID, pero es probable que esto no sea tan importante como ajustar los valores de UID.
EDITAR: si desea cambiar su UID (y GID, si lo desea) en macOS / OS X en lugar de en Ubuntu, puede hacerlo. Como esta modificación en macOS está más allá del alcance de este sitio, solo enlazaré a algunas páginas que proporcionan procedimientos para hacerlo en macOS:
774
permisos.