我使用 ubuntu (jaunty) 开发 web 应用程序,但需要在必须托管在 Windows 上的网站上工作。我已经使用 winxp32 安装设置了 virtualbox 并共享了整个硬盘。我的目标是能够在 ubuntu 中使用 eclipse(pdt) 创建一个引用 winxp 安装的 wwwroot 文件夹的新 php 项目。
我已经设置好了一切,因此我可以通过 smb://192.168.../www/ 浏览虚拟机,没有任何问题。但是,在 eclipse 中设置项目时,我却不知所措,因为它不在正常工作区内。我尝试在工作区中创建一个指向我的共享的符号链接,但我不知道该怎么做。
我尝试创建指向共享的符号链接,但 ubuntu 说它坏了
ln -s smb://192.../www/ windows
我读到过我需要先挂载共享驱动器然后进行符号链接,但我对此没有任何经验。
答案1
您无法像这样对网络共享进行符号链接。符号链接仅在同一台计算机上的文件/目录之间有效(硬链接的限制甚至更多 - 它们必须位于同一文件系统/分区上)。
首先确保 smbfs 包已安装在 Linux 上:
sudo apt-get install smbfs
或者在>14.04中:
sudo apt-get install cifs-utils
现在在 Windows 机器上创建一个共享。将其命名为“www”或其他名称。
现在在 Linux 上创建一个目录,假设它被称为“windows”。
现在在 Linux 上挂载 Windows 共享:
sudo mount -t smbfs 192.168.x.x/www windows
或者,如果不正确,请尝试“cifs”而不是“smbfs”。
此时,您在“windows”目录中看到的所有内容实际上都是 Windows 上“www”共享中的内容。您可以根据需要对“windows”目录进行符号链接(但您可以直接在您想要的位置创建它,因此不需要符号链接):
ln -s windows /some/arbitrary/destination
最后,读一下这个:
答案2
一种快速解决方案是使用 nautilus 访问共享(转到网络或手动输入smb://...
)。访问共享后,ubuntu 的最新版本会自动将文件共享挂载到目录中~/.gvfs
。这是一个常规文件系统目录,可以使用进行软链接ln -s
。