-o workaround=rename resolveu meu problema
Eu montei um diretório remoto usando sshfs e não consigo salvar arquivos usando gedit , enquanto salvava o mesmo arquivo usando vi works. A permissão para alterar o-r (640) permite que gedit salve arquivos. Existe uma maneira de alterar sshfs connection para fazer gedit funcionar sem chmod ding todos os arquivos?
(Eu uso -o uid = id -u -o gid = id -g , para que os arquivos remotos pareçam pertencer a mim)
$ touch test.txt
[!] test.txt appears
$ vi test.txt
[!] :wq -> saves just FINE
$ gedit test.txt
[!] opens fine, but upon save shows "You do not have the
[!] permissions necessary to save the file" error -
[!] CAN'T SAVE
$ vi test.txt
[!] edit, :wq -> again saves just FINE!
$ ls -l test.txt
-rw-r--r-- ..... test.txt
[!] Now the tricky part:
$ chmod o-r test.txt
-rw-r----- ..... test.txt <-- removed 'read' perm. from 'others'
$ gedit test.txt
# WORKS! Saves just fine!
Por que a remoção da permissão de leitura de outras pessoas permite que o gedit seja salvo? (enquanto vi e o resto não tem esse problema?)
Existe uma maneira de alterar a string de conexão do sshfs para permitir que eu edite todos os arquivos diretamente no servidor, sem precisar modificá-los?
-o workaround=rename resolveu meu problema
A solução alternativa para o gedit 2.30.4 / Ubuntu 11.04 parece estar ativando o "Criar uma cópia de segurança ..." em Preferências, não desabilitando-a. Pelo menos para mim, isso funcionou sem ter que modificar nenhuma permissão.
Isto também funciona no Debian sid com o gedit 3.4.2
-o allow_other pode fazer algo por você ... parece que alguém teve um problema semelhante aqui: link
Anexe -o allow_other ao final da sua instrução de montagem.
[EDITAR] Este é um problema conhecido, encontrei um relatório de erros no link .
Também foi descoberto que você pode contornar o bug de dentro do gedit (pelo menos), desabilitando o
Create a backup copy of files before saving opção, em Edit - > Preferences - > Editor .
O problema (de acordo com os caras do gedit) é um bug samba / cifs e foi registrado pela primeira vez (no Ubuntu) em 2006.
sshfs -o allow_other,default_permissions -o IdentityFile=/path/to/ssh_key REMOTE_USERNAME@REMOTE_HOST:/remote/dir/path/ test_mnt/
Adicionando default_permissions faz o truque!
Tags permissions gedit sshfs