Symlink'lerle çalışabilmeniz için SSHFS aracılığıyla uzak bir SFTP yolunun nasıl kurulacağını bilen var mı? Bunu yaptığımda, oluşturduğum tüm semboller yanlış dosyalara işaret ediyorlar (bağlantılı olduğumları değil.) İlgilendiğim tüm semboller göreceli (mutlak değil), bu yüzden tam olarak uzak makinede olduğu gibi görünmelerini sağlamak ideal olun.
Varsayılan bağlama seçenekleriyle sshfs kullanarak, geçerli dizindeki başka bir dosyaya sembolik bağlantı oluşturamıyorum:
$ cd /mnt/path/to/sshfs/mount
$ ln -s ./test ./test2
$ ls test2
lrwxrwxrwx 1 root webusers 11 Jul 3 09:11 test2 -> /test
Bağlantı hedefi geçerli dizinde ( ./test) olduğu için açıkça yanlıştır, ancak burada sshfs'nin /testyanlış olan bir bağlantı oluşturduğunu görebilirsiniz - bağlantı hedefi /mnt/path/to/sshfs/mount/testdeğil /test.
transform_symlinksBen sshfs dosya sistemi monte seçeneği ekleyerek, bunun yerine aynı komutla göreli bir bağlantı olsun, ama yine de yanlış yere işaret ediyor:
$ cd /mnt/path/to/sshfs/mount
$ ln -s ./test ./test2
$ ls test2
lrwxrwxrwx 1 root webusers 11 Jul 3 09:13 test2 -> ../../../test
Burada ./testgeçerli dizinde bağlantı kurmaya çalıştım , ancak bunun yerine ../../../testüç seviyeye kadar bir bağlantı aldım !
sftpAncak sshfs ile bağlanmak yerine SFTP istemcisi komut satırıyla bağlantı kurmak işe yarar:
sftp> open ...
sftp> symlink test test2
...
$ cd /mnt/path/to/sshfs/mount
$ ls test2
lrwxrwxrwx 1 root webusers 11 Jul 3 09:13 test2 -> test
Bu bana uzak SFTP sunucusunun iyi çalıştığını söylüyor (özel bir SFTP istemcisi ile semboller oluşturabildiğim için), ancak bazı nedenlerden dolayı sshfs ile herhangi bir çalışan sembol oluşturamıyorum.
Garip bir şekilde, bir SSH sunucusuna kabuk erişimi sağlayan bir yol bağlamak için sshfs kullandığımda (yalnızca SFTP sunucusunun aksine) semboller iyi çalışıyor - Onları doğru şekilde oluşturabilirim. Yalnızca salt SFTP sunucusuna bağlandığında sorunlu görünüyor.
Neyi yanlış yapıyorum? Sembolleri çalıştırmak için bir SFTP sunucusuna bağlanırken sshfs'ye geçmek zorunda olduğum özel bir seçenek var mı?
sftpküçük harf dediğimde SFTP arabirimi, yani komut satırı demek /usr/bin/sftp. Gönderideki son örneğim, istekte bulunduğunuz gibi bu SFTP istemcisini kullanarak symlink'i yaptığım.
transform_symlinksseçenek olmadan bir sshfs montajı üzerinden ne yaptığınızı, transform_symlinksseçenek ile bir ssh montajı üzerinden ne yaptığınızı ve bir sftp istemcisi ile ne yaptığınızı açıklığa kavuşturmak için yazınızı düzenleyin . Symlinks SSHFS üzerinden normal şekilde çalışır, bu nedenle ilk cümlenizin cevabı “hiçbir şey” dir - bir hatayla karşılaştınız veya doğru komutları yazmıyorsunuz, ancak raporunuz neyin yanlış olduğunu bilmiyor.
ls -ltest sembollerinizde çalıştırdığınızda ne gösterir ?