¿Cómo puedo hacer que un volumen montado utilizando sudo sshfs sea visible sin sudo?

4

Después de actualizar mi Mac a macOS Sierra (10.12.5), actualicé FUSE para macOS ( enlace ) a las últimas versiones estables: FUSE para macOS 3.6.3 y SSHFS 2.5.0.

Pero ahora esto ya no funciona:

$ 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

Aparentemente, sshfs ahora requiere sudo :

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

Pero ahora /Volumes/ssh_fs_5810/ no es visible sin 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
...

¿Cómo puedo hacer que /Volumes/ssh_fs_5810/ (el directorio que monte en el uso de sudo sshfs ) sea visible sin sudo ?

Actualización (que aborda el comentario de SteppingHat ):

Sí, el propietario de /Volumes/ssh_fs_5810/ es root:

$ 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

Pero esto no funciona:

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

Y nota arriba, /Volumes/ssh_fs_5810/ es visible después de que lo cree usando sudo , pero no después de 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

Actualización # 2 (en respuesta a klanomath 's "He probado mi propuesta alternativa ... "comenta su respuesta a continuación):

Esto es lo que sucedió cuando probé la propuesta alternativa 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
    
pregunta Daryl Spitzer 23.08.2017 - 02:42

1 respuesta

5

Cree un punto de montaje en el reino de su usuario y móntelo allí:

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

Como alternativa, puede agregar un comando sudo chown después de crear el punto de montaje en su ejemplo (montaje en una subcarpeta de / Volumes):

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

con% user%: dspitzer y% group%: staff (o admin - depende de sus privilegios de usuario).

El comando total es entonces:

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

Ejecutar este comando por primera vez parece ser complicado a veces. La conexión al host remoto primero a través de ssh (para agregar el host remoto al archivo known_hosts) y / o agregar dos veces sleep 0.5 entre puede ayudar.

    
respondido por el klanomath 25.08.2017 - 19:01

Lea otras preguntas en las etiquetas