Eu tenho experimentado com sshfs
com a intenção de acessar um diretório em uma caixa Synology e montá-lo via Terminal. Para isso, estou usando a versão do SSHFS, conforme fornecido pelo projeto FUSE for macOS .
A configuração está seguindo:
/volume1/justnfs
, que deve ser montado, é de propriedade de user1:users
com o ID de usuário 1026 e o ID de grupo 100 e contém diretórios / arquivos pertencentes somente a esse usuário. user1
) que monta o diretório tem o ID do usuário 501 e o ID do grupo 20 (nome do grupo staff
) Agora, se eu fizer
sshfs -o sshfs_debug syno:/justnfs ./storage
o diretório é montado, mas o ID do usuário / grupo de todos os arquivos não é remapeado (como esperado). Para resolver isso, criei dois arquivos com o mapeamento necessário, ou seja, users.txt
com user1:1026
e groups.txt
com staff:100
. Então o comando
sshfs -o sshfs_debug -o idmap=file -o uidfile=users.txt -o gidfile=groups.txt syno:/justnfs ./storage
também monta o diretório remoto, no entanto, se eu alternar para storage
e do ls
, a saída estará completamente vazia e dmesg
mostrará
osxfuse: fuse_vnop_readdir failed (err=1)
Curiosamente, quando eu tento cat
um arquivo com caminho conhecido (ou seja, acessá-lo diretamente), o comando é bem-sucedido e exibe o conteúdo do arquivo. É como se apenas a listagem de diretórios fosse por algum motivo não permitida.
Curiosamente, se eu fornecer o uid / gid explicitamente como
sshfs -o sshfs_debug -o uid=501 -o gid=20 syno:/justnfs ./storage
, em seguida, ls
funciona novamente.
Qual poderia ser a razão pela qual os dois últimos comandos se comportam de maneira diferente e / ou que não é possível listar o conteúdo do diretório?
Tags permissions mount sshfs synology macos