Fazendo o `sshfs` trabalhar na WSL ou encontrar uma alternativa

8

O departamento de CS da minha universidade tem seu próprio servidor usado para desenvolvimento (daqui em diante dev.univ.edu). Eu tenho acesso SSH e SFTP a esse servidor e esperava fazer algum trabalho pesado no meu laptop Windows usando WSL. Meu plano era usar sshfspara montar o sistema de arquivos do servidor no meu laptop via SFTP, para que eu pudesse usar minhas próprias ferramentas em vez de precisar usar os programas limitados em nosso servidor. No entanto, sempre que tento usar sshfs, acontece o seguinte:

user@host:~$ sshfs -p 22 [email protected]: ~/dev/ -o follow_symlinks
> fuse: device not found, try 'modprobe fuse' first

Correr modprobe fuseme dá o seguinte resultado:

modprobe: ERROR: ../libkmod/libkmod.c:586 kmod_search_moddep() could not open moddep file '/lib/modules/4.4.0-43-Microsoft/modules.dep.bin'
modprobe: FATAL: Module fuse not found in directory /lib/modules/4.4.0-43-Microsoft

Após algumas pesquisas, parece que fusenão há suporte para o WSL , mesmo após a página de fusesuporte do UserVoice estar em funcionamento há mais de 2 anos, com mais de 1500 pessoas solicitando. Desde que se sshfsbaseia fuse(suponho que, para criar o sistema de arquivos em que os arquivos remotos estão), isso se torna sshfsinutilizável.

Eu encontrei um projeto ( billziss-gh/winfsp) que parece promissor, mas não tenho idéia de como implementá-lo em combinação com sshfs. Existe alguém mais experiente do que eu que possa me ajudar a fazer isso funcionar?

EDIT: De acordo com este problema , winfspnão funcionará com a WSL. No entanto, notei um projeto do mesmo cara ( billziss-gh/nfs-win) que pode ser útil.

Isaac Corbrey
fonte
Até que uma boa implementação do sistema de arquivos sshfs tenha sido criada para o Windows, você já pensou em usar o git? crie um repositório no servidor, clone na área de trabalho por ssh e envie as alterações de volta ao servidor conforme você as faz.
lijat 10/01

Respostas:

6

Então, eu tenho uma solução alternativa que você pode gostar. Instalei o SFTP Net Drive 2017 e, em seguida, conectei remotamente ao sistema de arquivos que desejava. Eu mapeei (através da GUI) como R:\. No WSL, você pode mapear R:\para uma pasta local, conforme explicado aqui .

Portanto, na WSL, tenho uma pasta no meu diretório pessoal chamada cluster. Para montá-lo como minha casa local do cluster, eu corro:

sudo mount -t drvfs R: ~/cluster

e para desmontar, corro

umount ~/cluster

por conveniência, criei um pseudônimo chamado mc, obtive-o do meu.bashrc

alias mc="sudo umount ~/cluster; sudo mount -t drvfs R: ~/cluster"

Eu espero que isso ajude!

chris
fonte