1

У меня проблемы с символическими ссылками и sshfs. Я использую опцию -o follow_symlinks, чтобы следовать символическим ссылкам на стороне сервера, но всякий раз, когда я редактирую символический файл на стороне клиента с помощью vim, его копия создается на стороне сервера, то есть больше не является символической ссылкой.

Установите символическую ссылку на стороне сервера:

me@machine1:~$ echo foo > test.txt
me@machine1:~$ mkdir test
me@machine1:~$ cd test
me@machine1:~/test$ ln -s ../test.txt test.txt
me@machine1:~/test$ ls -al test.txt
lrwxrwxrwx 1 me me 11 Jan  5 21:13 test.txt -> ../test.txt
me@machine1:~/test$ cat test.txt
foo
me@machine1:~/test$ cat ../test.txt
foo

Все идет нормально. Сейчас:

me@machine2:~$ mkdir test
me@machine2:~$ sshfs me@machine1:test test -o follow_symlinks
me@machine2:~$ cd test
me@machine2:~/test$ vim test.txt
[in vim, add a new line "bar" to the file]
me@machine2:~/test$ cat test.txt
foo
bar

Теперь посмотрим, что это делает с файлом на стороне сервера:

me@machine1:~/test$ ls -al test.txt
-rw-r--r-- 1 me me 19 Jan  5 21:24 test.txt
me@machine1:~/test$ cat test.txt
foo
bar
me@machine1:~/test$ cat ../test.txt
foo

Как видите, он сделал копию и только отредактировал копию.

Как я могу заставить его работать, чтобы он действительно следовал символической ссылке при редактировании файла?

0