Creé un enlace simbólico "foo" usando mi usuario predeterminado (jgsiqueira) en /tmp/ apuntando a un archivo "bar" ubicado en mi directorio de inicio:
$ ln -s /home/jgsiqueira/bar /tmp/foo $ ls -lh /tmp/ | grep foo lrwxrwxrwx 1 jgsiqueira jgsiqueira 20 Feb 26 12:14 foo -> /home/jgsiqueira/barMi problema es: me gustaría acceder al contenido de este archivo con la raíz a través de este enlace simbólico. Sin embargo, parece que root no está permitido seguir este enlace:
# cat /tmp/foo cat: /tmp/foo: Permission denied¿Puede alguien ayudarme a ayudarme a entender lo que está pasando?
Interesante. Después de una prueba rápida de mi parte, tuve el mismo problema. Y después de investigar un poco encontré esto . Resulta que el problema proviene de la propia carpeta /tmp que restringe el acceso a los enlaces simbólicos (ponga su enlace simbólico en otra carpeta, verá que funciona).
Su archivo de destino: /home/jgsiqueira/bar no es visible para el tercer grupo de bits de permisos en el inodo, esto tiene que ver con el contenido del archivo, no con la lista en un ls, este tercer grupo de permisos se usa normalmente by rut: Esto no tiene nada que ver con el enlace simbólico.
Como root o como usted mismo, otorgue permisos de lectura con:
chmod 666 /home/jgsiqueira/bar
o con notación simbólica, más flexible
chmod ugo+r /home/jgsiqueira/bar
el último uso con notación simbólica significa:
tu: usuario (tú)
g: grupo
o: otro (estos son los bits de permisos que usará la raíz)
adiós,
Hans