
He estado experimentando sshfs
con la intención de acceder a un directorio en un cuadro Synology y montarlo a través de Terminal. Para este fin, estoy usando la versión de SSHFS proporcionada por elFUSIBLE para macOSproyecto. La configuración es la siguiente:
- El directorio del cuadro Synology
/volume1/justnfs
que se va a montar perteneceuser1:users
al ID de usuario 1026 y al ID de grupo 100 y contiene directorios/archivos que pertenecen únicamente a este usuario. - en mi computadora portátil, el usuario (también
user1
) que monta el directorio tiene una identificación de usuario 501 y una identificación de grupo 20 (nombre del grupostaff
)
Ahora, si lo hago
sshfs -o sshfs_debug syno:/justnfs ./storage
el directorio se monta, sin embargo, la identificación de usuario/identificación de grupo de todos los archivos no se reasigna (como se esperaba). Para solucionar este problema, creé dos archivos con el mapeo requerido, concretamente users.txt
con user1:1026
y groups.txt
con staff:100
. Entonces el comando
sshfs -o sshfs_debug -o idmap=file -o uidfile=users.txt -o gidfile=groups.txt syno:/justnfs ./storage
también monta el directorio remoto, sin embargo, si luego cambio storage
y hago ls
, la salida está completamente vacía y dmesg
muestra
osxfuse: fuse_vnop_readdir failed (err=1)
Por extraño que parezca, cuando intento acceder a cat
un archivo con una ruta conocida (es decir, acceder a él directamente), el comando tiene éxito y muestra el contenido del archivo. Es como si por alguna razón sólo estuviera prohibido el listado de directorios.
Curiosamente, si proporciono el uid/gid explícitamente como
sshfs -o sshfs_debug -o uid=501 -o gid=20 syno:/justnfs ./storage
luego ls
funciona de nuevo.
¿Cuál podría ser la razón por la que los dos últimos comandos se comportan de manera diferente y/o que no es posible listar el contenido del directorio?