我的用户有一个主目录
/home/user1
我希望她能够编辑以下文件:
/home/用户2
因此我将符号链接放在她的目录中,如下所示:
sudo ln /home/user2/file.php /home/user1/file.php
当我以她的身份登录并测试 nano file.php 能够编辑它时,这种方法对我来说是有效的。问题是她使用 winSCP 打开和编辑文件。这会用文件的副本替换符号链接,因此她可以打开和编辑它,但当她保存它时,它就失去了作为链接的特性。解决这个问题的最佳方法是什么?
答案1
首先,不确定这是否是拼写错误,但您在帖子中输入的命令会创建硬链接,而不是符号链接。如果这不是拼写错误,您应该尝试的第一件事是添加 -s 标志来创建符号链接,然后再试一次。
听起来像是 WinSCP 本身的一个错误。这不是处理符号链接(或硬链接)的方式,我怀疑服务器上是否有任何可以更改的内容来诱导 WinSCP 正常运行。
作为临时修复,如果可以的话,您可以尝试将符号链接替换为硬链接。WinSCP 不应该搞砸这一点。以下是来自 stackoverflow 的解释差异的答案。这里最重要的一点是硬链接不能跨文件系统,所以如果你的硬链接可以跨文件系统,那么你就没那么幸运了。
由于这可能是一个错误,您应该提交一个错误报告,以便 WinSCP 开发人员了解它并可以在以后的版本中修复它。
如果您无法使用硬链接,并且无法等待错误修复,或者事实证明这不是错误或无法修复,那么您应该告诉您的朋友寻找其他程序(如果她可以的话)。也许在 cygwin 下使用 scp,或者如果她有 Windows 10 并且已设置 Insider Previews,她可以尝试新的 linux 子系统。