web-dev-qa-db-fra.com

Pourquoi SSHFS ne me laisse-t-il pas regarder dans un répertoire monté?

J'utilise SSHFS pour monter un répertoire sur un serveur distant. Il y a un utilisateur xxx sur le client et le serveur. UID et GID sont identiques sur les deux cases.

J'utilise

sshfs -o kernel_cache -o auto_cache -o reconnect -o compression=no \ 
      -o cache_timeout=600 -o ServerAliveInterval=15 \
      [email protected]:/mnt/content /home/xxx/path_to/content

pour monter le répertoire sur le serveur distant. Lorsque je me connecte en tant que xxx sur le client, je n'ai aucun problème. Je peux cd dans/home/xxx/path_to/content.

Mais quand je me connecte au client en tant qu'un autre utilisateur zzz, puis

$ ls -l /home/xxx/path_to

J'ai compris

d?????????   ? ?    ?        ?                ? content

et sur

$ ls -l /home/xxx/path_to/content

Je reçois

ls: cannot access content: Permission denied

Quand je fais

$ ls -l /mnt

sur le serveur distant que je reçois

drwxr-xr-x 6 xxx xxx  4096 2011-07-25 12:51 content

Qu'est-ce que je fais mal? Les autorisations me semblent correctes. Ai-je tort?

34
Jan Deinhard

J'ai trouvé la réponse moi-même. Le problème était que je n'ai pas utilisé l'option allow_other.

sshfs -o allow_other -o kernel_cache -o auto_cache -o reconnect \
  -o compression=no -o cache_timeout=600 -o ServerAliveInterval=15 \
  [email protected]:/mnt/content /home/xxx/path_to/content

Pour utiliser cette option, vous devez définir l'option user_allow_other dans /etc/Fuse.conf. Quand j'ai fait cela, j'ai eu un autre problème. Le fichier /etc/Fuse.conf n'a pas eu d'autorisations de lecture pour d'autres utilisateurs sur ma boîte Ubuntu. J'ai donc changé cela aussi et maintenant je peux accéder au répertoire avec n'importe quel utilisateur.

42
Jan Deinhard