我尝试过这个ln -s directory_to_use directory
方法,但它所做的只是创建一个链接到的“文件” directory_to_use
,在使用 FTP 时它不起作用。
我正在寻找的是,例如,cPanel 的www
目录指向public_html
一个符号链接(www
本身是一个目录),两者都列出相同的内容。
有人知道如何创建这种符号链接吗?
答案1
只有一种符号链接。
您在 FTP 中遇到的问题可能是 FTP 服务器被限制在文件系统的子树中(这称为chroot 监狱),指向该子树之外的符号链接将不起作用。这是设计使然:chroot jail 是为了安全,您一定不能通过跟随符号链接逃离 jail。
将您需要使用 FTP 访问的所有文件都放入监狱中。只要符号链接不试图越狱,它们就会起作用。
(如果您是机器的 root 权限,则有办法使 jail 内可访问更多文件,但如果您不了解所有问题,我不建议您摆弄它。)
答案2
如果您遇到 chroot 问题,并且确实希望使文件可在另一个目录中访问,硬链接可能是解决方案。请记住,通过在该目录中创建硬链接,您将暴露您链接到的文件(大概这样没问题)
要创建 directoryA 的硬链接副本作为 directoryB/directoryA(假设 directoryB 已经存在),您可以使用:
cp -rl directoryA directoryB/
例子:
mkdir /var/dupe
cp -rl /var/log /var/dupe/
答案3
一般来说它是有效的。也许你应该检查权限。
例如,在您的情况下,检查 apache 的 error_log。它可能表明您无权访问。
答案4
你误解了这个问题
最有可能的是,问题在于您的 FTP 帐户被 chroot 了,无法切换到符号链接指示的目录。大多数 FTP 客户端应该支持符号链接,通常甚至会用一个特殊图标显示它,表示它是一个链接。如果您的 FTP 客户端无法正常工作,请尝试使用开源客户端 FileZilla,它非常好用。