gedit + sshfs не сохранит

Я смонтировал удаленный каталог с помощью sshfs, и я не могу сохранить файлы с помощью gedit, в то время как сохранение того же файла с помощью vi работает. Изменение разрешения на o-r (640) позволяет gedit сохранять файлы в порядке. Есть ли способ изменить соединение sshfs, чтобы заставить gedit работать без chmod каждого файла?

(я использую -o uid = id -u -o gid = id -g, чтобы кажется, что мои удаленные файлы принадлежат мне)

$ 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!

Почему удаление разрешения на чтение у других позволяет сохранить gedit? (хотя vi и остальные не имеют этой проблемы?)

Есть ли способ изменить строку подключения sshfs, чтобы позволить мне редактировать все файлы непосредственно на сервере, без необходимости chmod или их?

5
задан 18 November 2010 в 17:26

5 ответов

Временное решение для gedit 2.30.4 / Ubuntu 11.04, похоже, включает «Создать резервную копию ...» в настройках, а не отключает его. По крайней мере, для меня это работало без изменения каких-либо разрешений.

Это также работает в Debian sid с gedit 3.4.2

0
ответ дан 18 November 2010 в 17:26

-o workaround=rename решил мою проблему

0
ответ дан 18 November 2010 в 17:26

Добавьте -o allow_other в конец инструкции по монтированию.

[EDIT] Это известная проблема, я нашел сообщение об ошибке на https://bugs.launchpad.net/gedit/+bug/34813 .

Также обнаружил, что вы можете обойти ошибку изнутри gedit (по крайней мере), отключив опцию Create a backup copy of files before saving в Edit -> Preferences -> Editor.

Проблема (по словам ребят из gedit) - это ошибка samba / cifs, и она впервые была зарегистрирована (в Ubuntu) в 2006 году.

0
ответ дан 18 November 2010 в 17:26
sshfs -o allow_other,default_permissions -o IdentityFile=/path/to/ssh_key  REMOTE_USERNAME@REMOTE_HOST:/remote/dir/path/ test_mnt/

Добавление default_permissions делает свое дело!

0
ответ дан 18 November 2010 в 17:26

-o allow_other может что-то сделать для вас ... похоже, у кого-то здесь была похожая проблема: http://ubuntuforums.org/showthread.php?t=873199

0
ответ дан 18 November 2010 в 17:26

Другие вопросы по тегам:

Похожие вопросы: