Enlace de dispositivo cruzado no válido mientras Hardlinking en el mismo sistema de archivos

14

Tengo el archivo /home/myuser/Desktop/rc/.netrc al que quiero enlazar por hardware / root , es decir, el directorio de inicio del usuario root . Cuando lo hago:

ln /home/user/Destkop/rc/.netrc /root

da el siguiente error:

ln: creando enlace duro /root/.netrc' =>.netrc ': enlace de dispositivo cruzado no válido

pero funciona cuando enlazo el archivo a la casa de mi usuario , es decir, a / home / myuser .

Entonces, ¿cuál es el problema, por qué dice dispositivos cruzados no válidos cuando solo hay un sistema de archivos aquí?

PD. Estoy usando RHEL6

Elvin Aslanov
fuente
por cierto, mis permisos .netrc son 600, como debería ser
Elvin Aslanov
1
¿Estás seguro de que los dos directorios están en el mismo sistema de archivos? Corre mount | column -ty echa un vistazo. O bien, ejecutar mountpoint -d /, mountpoint -d /home, mountpoint -d user, y mountpoint -d /root. Deberías obtener ... is not a mountpointlos últimos tres.
2
No realice publicaciones cruzadas en varios sitios de StackExchange.
@EvanTeitelman El aspecto real no es mount | column -tsino column -t < /proc/mounts.
Hauke ​​Laging
1
@HaukeLaging: tienes razón. /proc/mountses más probable que muestre todos los montajes en un sistema que /etc/mtab, de ahí es de donde mountsaca su información. Sin embargo, vale la pena señalar que en muchos sistemas modernos, /etc/mtaby /proc/mountsambos están vinculados /proc/self/mounts.

Respuestas:

8

es muy probable que su /homedirectorio no esté en la misma partición que el /rootdirectorio.

Puede verificar esto fácilmente con cat /etc/fstab enlaces duros que no se pueden crear entre diferentes particiones, solo los enlaces simbólicos sí.

fduff
fuente
4

Me parece que la MEJOR manera NO es usar un enlace DURO sino usar un enlace simbólico en su lugar. Descubrirá que es mucho menos complicado y las cosas funcionan bien. El enlace duro tiene algunos problemas interesantes si no los conoce.

¡Mira man lny compra la -sopción!

En general, utilice enlaces simbólicos en lugar de enlaces DUROS.

mdpc
fuente
8
Si bien podría resolver el problema, en realidad no explica por qué sucede esto.
Bex