这不是你的经典编程问题,因为我对这个(非常酷!)网站相当新,我不知道这是否是这个地方,所以我会尝试。
当所有人使用Windows系统的个人电脑,并通过ssh访问实验室的linux服务器时,我在实验室工作。
我更喜欢linux,所以我在我的电脑上安装了ubuntu 10.4。 我使用安装服务器:/ home / mnt / home /安装实验室服务器的主目录。 然后,我可以访问服务器上的文件(我必须更改我的本地UID以匹配在我们的服务器上分配给我的那个,以便能够写入我的主目录)。
问题是我通过安装的位置访问它们时,服务器上的所有(符号)链接都不起作用。 我猜系统只是试图在我的本地/家里而不是在服务器上的链接:/ home。
有没有办法使链接工作?
谢谢,戴夫
你的符号链接绝对指向/ home / dave / …在服务器端你有目录结构。 在客户端,符号链接指向完全相同的path。
所以有三种可能的方法:
最好的解决scheme是尽可能使用相对的符号链接。 如果包含symlink的目录是/home/dave则符号链接目标path应该是workspace/proj1/code 。 如果它在/home/dave/my_current_project它可能是../workspace/proj1/code 。 但有时候这是不可能的,或者根本就不想要。
第二个解决scheme是从服务器挂载/home到客户端的/home 。 另外,这有时是不需要的。
第三个解决scheme是,创build一个双方的符号链接,并使所有的链接相对于它。 通过在/var/local命名的home创build一个符号链接,在/home和客户端链接到/mnt/home 。 现在将服务器上的所有符号链接从/home/dave/...更改为/var/local/home/dave/...
在我看来,最好的解决scheme是第一个,然后是第二个,最后一个是复杂的用户的工作,并可能导致未来的错误链接