4 votes

Comment rendre visible un volume monté avec sudo sshfs sans sudo ?

Après avoir mis mon Mac à niveau vers MacOS Sierra (10.12.5), j'ai mis à niveau FUSE pour MacOS ( https://osxfuse.github.io ) aux dernières versions stables : FUSE pour MacOS 3.6.3 et SSHFS 2.5.0.

Mais maintenant, cela ne fonctionne plus :

$ sudo mkdir -p /Volumes/ssh_fs_5810 && sshfs dspitzer@dspitzer-5810:/home/CORP/dspitzer /Volumes/ssh_fs_5810/
mount_osxfuse: failed to mount /Volumes/ssh_fs_5810@/dev/osxfuse0: Operation not permitted

/Volumes/ssh_fs_5810 existe :

$ ls /Volumes
Macintosh HD ssh_fs_5810

Apparemment sshfs exige désormais sudo :

$ sudo sshfs dspitzer@dspitzer-5810:/home/CORP/dspitzer /Volumes/ssh_fs_5810/
dspitzer@dspitzer-5810's password:

Mais maintenant /Volumes/ssh_fs_5810/ n'est pas visible sans sudo :

$ ls /Volumes
ls: ssh_fs_5810: No such file or directory
Macintosh HD
$ sudo ls /Volumes
Macintosh HD    ssh_fs_5810
$ sudo ls /Volumes/ssh_fs_5810
.ICEauthority           .ssh
...

Comment puis-je faire /Volumes/ssh_fs_5810/ (le répertoire dans lequel je monte en utilisant sudo sshfs ) visible sans sudo ?

Mise à jour (adressant SteppingHat ) :

Oui, le propriétaire de /Volumes/ssh_fs_5810/ est la racine :

$ sudo ls -l /Volumes
Password:
total 16
lrwxr-xr-x  1 root      wheel     1 Aug 22 16:09 Macintosh HD -> /
drwxr-xr-x@ 1 root      wheel  4096 Aug 22 16:06 ssh_fs_5810

Mais ça ne marche pas :

$ sudo chown dspitzer:admin /Volumes/ssh_fs_5810/
chown: /Volumes/ssh_fs_5810/: Operation not permitted

Et note ci-dessus, /Volumes/ssh_fs_5810/ est visible après que je l'ai créé en utilisant sudo mais pas après sudo sshfs :

$ sudo umount -f /Volumes/ssh_fs_5810
$ sudo ls -l /Volumes
total 8
lrwxr-xr-x  1 root      wheel    1 Aug 22 16:09 Macintosh HD -> /
$ sudo mkdir /Volumes/ssh_fs_5810/
$ sudo ls -l /Volumes
total 8
lrwxr-xr-x  1 root      wheel    1 Aug 22 16:09 Macintosh HD -> /
drwxr-xr-x+ 2 root      wheel   68 Aug 22 18:05 ssh_fs_5810
$ ls /Volumes
Macintosh HD sh_fs_5810

Mise à jour n°2 (en réponse à klanomath J'ai testé ma proposition alternative...", commentaire sur sa réponse ci-dessous) :

Voici ce qui s'est passé lorsque j'ai essayé la proposition alternative de klanomath :

$ ls /Volumes
Macintosh HD
$ sudo mkdir -p /Volumes/ssh_fs_5810
$ ls /Volumes
Macintosh HD ssh_fs_5810
$ sudo sshfs dspitzer@dspitzer-5810:/home/CORP/dspitzer /Volumes/ssh_fs_5810/
dspitzer@dspitzer-5810's password:
$ ls /Volumes
ls: ssh_fs_5810: No such file or directory
Macintosh HD
$ sudo chown dspitzer:admin /Volumes/ssh_fs_5810/
chown: /Volumes/ssh_fs_5810/: Operation not permitted
$ ls /Volumes
ls: ssh_fs_5810: No such file or directory
Macintosh HD
$ sudo ls /Volumes
Macintosh HD    ssh_fs_5810

6voto

klanomath Points 63400

Créez un point de montage dans le domaine de votre utilisateur et montez-le à cet endroit :

mkdir -p ~/Shares/ssh_fs_5810 && sshfs dspitzer@dspitzer-5810:/home/CORP/dspitzer ~/Shares/ssh_fs_5810/

Comme alternative, vous pouvez ajouter un sudo chown après avoir créé le point de montage dans votre exemple (montage dans un sous-dossier de /Volumes) :

... && sudo chown %user%:%group% /Volumes/ssh_fs_5810 ...

avec %user% : dspitzer et %group% : staff (ou admin - cela dépend de vos privilèges d'utilisateur).

La commande totale est donc :

sudo mkdir -p /Volumes/ssh_fs_5810 && sudo chown dspitzer:admin /Volumes/ssh_fs_5810 && sshfs dspitzer@dspitzer-5810:/home/CORP/dspitzer /Volumes/ssh_fs_5810

L'exécution de cette commande pour la toute première fois semble parfois difficile. Se connecter à l'hôte distant via ssh d'abord (pour ajouter l'hôte distant au fichier known_hosts) et/ou ajouter deux fois sleep 0.5 entre les deux peut aider.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X