SSHFS çalışıyor gibi görünüyor, ancak Sublime + SSHFS çalışmıyor?


9

Komutu, SSHFS kullanarak uzak dosya sistemimi bağlamak için kullanıyorum:

$ sshfs -o uid=1000 -o gid=1000 root@10.0.1.198:/ "/home/chendy/my_mount"

Sublime ile bir dosyayı açıp kaydetmediğim sürece her şey mutlu görünüyor ...

Dosyaları görüntüleme ve yeniden adlandırma? EVET:

... Dosyalarımı dosya gezgini içinde görüntüleyebiliyorum ve dosya gezgini kullanarak dosyaları başarıyla yeniden adlandırabilirim.

İzinler / Users / Gruplar? EVET

... İzinleri kontrol ederken, her şey yolunda görünüyor:

$ ls -l '/home/chendy/my_mount/home/kano/test.py'
-rwxrwxrwx 1 chendy chendy 927 Apr 15 16:24

VIM ile dosya düzenlensin mi? EVET

... dosyayı VIM ile de açıp kaydedebilirim.

Sublime ile dosya düzenlensin mi? HATA

... Ama dosyayı Dosya Gezgini aracılığıyla yükleyerek veya komut satırını kullanarak Sublime (Sublime Text 3 Build 3059) açtığınızda:

 $ /opt/sublime_text/sublime_text '/home/chendy/my_mount/home/kano/test.py'

Aynı hatayı alıyorum:

~ / My_mount / home / kano / test.py kaydedilemedi Hata: rename (/home/chendy/my_mount/home/kano/.subl979.tmp, /home/chendy/my_mount/home/kano/test.py) başarısız oldu : İşlem izni verilmedi

Neler oluyor? Çözmenin bir yolu var mı?


1
kullanmayı deneyin touch /home/chendy/my_mount/home/kano/.subl979.tmp.
Braiam

Yanıtlar:


7

Birçok editör gibi, Sublime geçici bir dosyaya kaydeder, sonra bu geçici dosyayı yerine taşır. Sistemin kaydetme sırasında çökmesi durumunda bu şekilde yapılır: orijinal dosyanın veya yeni sürümün mevcut olacağı garanti edilir, dosyayı kaybetme riski yoktur.

SSHFS, SFTP'nin üzerine kurulmuştur (en azından OpenSSH tarafından uygulandığı gibi) bir dosyanın yeniden adlandırılmasına ve hedefin atomik olarak üzerine yazılmasına izin vermez. (Bu, SSHFS SSS bölümünde belirtilmiştir .)

SSHFS'ye yeniden adlandırma ve üzerine yazmaya izin vermesini söyleyerek, ancak işlemi atom olmayan hale getirerek (bu nedenle eski dosyanın kaldırılması için çok küçük bir süre vardır, ancak yeni dosyanın hala geçici adı vardır) bu kısıtlamaya bir çözüm bulabilirsiniz. Bu, bazı kullanım durumları için bir sorundur ancak sadece bir dosyayı düzenlerken değil.

Seçeneği komut satırınıza -o workaround=renameekleyin sshfs.


1

Kısa cevap, yapılandırmanızda bu ayarı yapın:

"atomic_save": false

Desteklenmeyen sshfs (SFTP) üzerinde yeniden adlandırmayı önleyecektir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.