SSHFSを使用してリモートファイルシステムをマウントするには、次のコマンドを使用します。
$ sshfs -o uid=1000 -o gid=1000 [email protected]:/ "/home/chendy/my_mount"
Sublimeでファイルを開いて保存しない限り、すべてが幸せなようです...
ファイルを表示して名前を変更しますか?はい:
...ファイルエクスプローラーでファイルを表示でき、ファイルエクスプローラーを使用してファイルの名前を正常に変更できます。
権限/ユーザー/グループ?はい
...権限を確認するとき、すべてが正しいように見えます:
$ ls -l '/home/chendy/my_mount/home/kano/test.py'
-rwxrwxrwx 1 chendy chendy 927 Apr 15 16:24
VIMでファイルを編集しますか?はい
... VIMでファイルを開いて保存することもできます。
Sublimeでファイルを編集しますか?エラー
...しかし、ファイルエクスプローラーからロードするか、コマンドラインを使用して、Sublime(Sublime Text 3 Build 3059)でファイルを開くと、次のようになります。
$ /opt/sublime_text/sublime_text '/home/chendy/my_mount/home/kano/test.py'
私は同じエラーを受け取ります:
〜/ my_mount/home/kano/test.pyエラーを保存できません:rename(/home/chendy/my_mount/home/kano/.subl979.tmp、/home/chendy/my_mount/home/kano/test.py)が失敗しました:操作は許可されていません
どうしたの?解決する方法はありますか?
多くのエディターと同様に、Sublimeは一時ファイルに保存してから、その一時ファイルを適切な場所に移動します。これは、保存中にシステムがクラッシュした場合に備えて行われます。元のファイルまたは新しいバージョンのいずれかが存在することが保証されているため、ファイルを失うリスクはありません。
SSHFSはSFTPの上に構築されており、(少なくともOpenSSHによって実装されているように)ファイルの名前を変更したり、ターゲットをアトミックに上書きしたりすることはできません。 (これは SSHFS FAQ で言及されています。)
SSHFSに名前の変更と上書きを許可するように指示することでこの制限を回避できますが、操作を非アトミックにします(そのため、古いファイルが削除されても、新しいファイルに一時的な名前が残る時間はごくわずかです)。これは一部のユースケースでは問題ですが、ファイルを編集するだけでは問題ではありません。
オプション-o workaround=rename
をsshfs
コマンドラインに追加します。
短い答え、あなたの設定でこの設定を設定してください:
"atomic_save": false
これは、サポートされていないsshfs(SFTP)での名前変更を回避します。