Nativamente, o Geany não possui nenhum recurso interno para realizar conexões e montar locais remotos via SSH ou FTP. Para isso, ele conta com ferramentas existentes do sistema para montar sistemas de arquivos remotos, como FUSE, GVFS e GIO. Neste artigo, nós veremos como montar sistemas de arquivos remotos via SSH e FTP utilizando duas dessas ferramentas: sshfs
e gio
.
1. Montando sistemas de arquivos SSH com o 'sshfs'
No Debian, o sshfs
não vem instalado por padrão, mas isso é fácil de resolver com o comando...
sudo apt install sshfs
O motivo de escolhermos o sshfs
é que ele permite a montagem do sistema remoto na sua pasta pessoal, em qualquer pasta previamente existente. Para efeito de exemplificação, aqui nós vamos criar uma pasta chamada .remote
, que será o nosso ponto de montagem.
mkdir ~/.remote
Em seguida, nós vamos realizar a conexão e a montagem utilizando o sshfs
, e isso pode ser feito de "dentro" do terminal embutido do Geany.
Pronto, o sistema de arquivos remoto foi montado na nossa pasta ~/.remote
e nós já podemos trabalhar nela com o Geany! Na imagem, você pode ver que eu entrei na pasta e consegui criar e editar o arquivo teste.txt
sem nenhum problema.
Quando terminar, basta sair da pasta ~/.remote
e desmontar o sistema de arquivos remoto...
Simples assim!
2. Montando sistemas de arquivos FTP com o 'gio'
Até bem pouco tempo, era possível montar sistemas de arquivos FTP em pastas locais do usuário com o comando gvfs-mount
. Atualmente, este método foi considerado obsoleto e substituído pelo comando gio mount
. Isso tornou as coisas um pouco mais complicadas (como se trabalhar via FTP já não fosse complicado o bastante), mas bem mais seguras.
Infelizmente, graças a uma enorme carência de documentação decente, eu ainda não descobri o que instalar para ter o gio
, mas a minha instalação do Debian é extremamete simples e mínima, e tudo que eu instalei que pode estar relacionado a isso foram os pacotes: gvfs-backends
e gvfs-fuse
(além do gerenciador de arquivos pcmanfm
).
Mas, você pode verificar se o gio
está instalado consultando sua própria ajuda sobre a montagem:
gio help mount
Se tudo ser certo, você verá uma lista de opções parecida com essa aqui:
$ gio help mount
Uso:
gio mount [OPÇÃO…] [LOCAL…]
Monta ou desmontar os locais.
Opções:
-m, --mountable Monta como montável
-d, --device=DISPOSITIVO Monta o volume com o arquivo de dispositivo
-u, --unmount Desmonta
-e, --eject Ejeta
-t, --stop=DISPOSITIVO Interrompe o volume com o arquivo de dispositivo
-s, --unmount-scheme=ESQUEMA Desmonta todas montagens com o esquema dado
-f, --force Ignora operações pendentes de arquivos ao desmontar ou ejetar
-a, --anonymous Usa um usuário anônimo ao autenticar
-l, --list Lista
-o, --monitor Monitora eventos
-i, --detail Mostra informações extras
--tcrypt-pim=PIM O PIM numérico ao desbloquear um volume VeraCrypt
--tcrypt-hidden Mota um volume TCRYPT oculto
--tcrypt-system Mota um volume TCRYPT de sistema
Então, vamos logo ao ponto. Para conectar com o seu host FTP, basta executar o seguinte comando (como usuário normal):
gio mount ftp://seu_nome_de_usuario_ftp@seu_host_ftp
Na imagem, eu me conectei ao servidor ftpupload.net
com o nome de usuário b3_24065249
...
A conexão em si não é um problema, a grande dificuldade é saber onde está o ponto de montagem. Por padrão, o gio
irá montar o sistema de arquivos FTP em um endereço do dbus
. Lembra daquele artigo sobre usar o notify-send
com o cron
? Pois é, a ideia é a mesma.
Para entrar no ponto de montagem, você vai precisar executar o comando:
cd "/run/user/$(id -u)/gvfs/ftp:seu_host_de_ftp,user:seu_nome_de_usuário_ftp"
É um comando complicado, mas nada que não se resolva com um alias
ou um pequeno shell script.
Estando no ponto de montagem, basta começar a trabalhar...
Terminado o trabalho (que deve ter sido sofrido com a velocidade do FTP), basta fechar os arquivos, sair do ponto de montagem e desmontá-lo:
Considerações finais e outras alternativas
A forma mais simples de criar e editar arquivos remotos ainda é fazendo a conexão através do seu gerenciador de arquivos, onde ele mesmo se encarrega por fazer todo o processo de montagem e desmontagem, cabendo a você apenas o trabalho de clicar nos arquivos e mandar abrir com o Geany. Porém, nem sempre a forma mais simples é a mais prática e eficiente.
Em ambos os procedimentos que eu mostrei, os pontos de montagens ainda serão vistos pelo seu gerenciador de arquivos e você ainda pode trabalhar com ele, mas... por que fazer isso tendo um terminal à sua disposição dentro da sua IDE?
Como nota final, é interessante lembrar que esses métodos diferem das conexões usando servidores/clientes de SSH e FTP via terminal, já que, na prática, você continua operando na sua máquina tendo acesso aos seus programas e ferramentas, e não na máquina remota contando apenas com o que existir por lá.
Dúvidas? Correções? Outras ideias?
Fique à vontade para comentar!
Nenhum comentário:
Postar um comentário
O sistema de comentários do Blogspot é um lixo e praticamente me obriga a liberar ou moderar todos os comentários. Portanto, eu peço perdão antecipadamente caso o seu comentário demore para aparecer.
Mas não se acanhe por causa disso! :-)