未创建符号链接
Posted
技术标签:
【中文标题】未创建符号链接【英文标题】:Symlink not being created 【发布时间】:2017-06-10 03:33:35 【问题描述】:我正在一台带有小型 SSD 和大型 HDD 的笔记本电脑上运行 Fedora。我已经在 SSD 上安装了操作系统,在 HDD 上安装了我的数据。
我所有的文件都位于/run/media/kennedy/data/Kennedy
我之前拥有(并且再次想要)是从/home/kennedy
到该位置的符号链接。这样我就不会弄乱实际的/home
,但是当我作为普通用户在/home
中时,我所有的东西都可以很容易地访问和存储,并且有足够的空间。现在/home/kennedy
有标准目录;桌面、文档、下载等。没有值得担心的文件。
于是我打开一个shell,以su身份登录,然后进入
ln -s /home/kennedy /run/media/kennedy/data/Kennedy
期待当我cd /home/kennedy
和ls
时,我会看到我所有的可爱。相反,我看到的是标准文件夹,仅此而已。威士忌探戈狐步舞,结束。
编辑添加:我很确定权限是正确的,但只是很确定。如何检查和更正它(如果关闭)?
【问题讨论】:
【参考方案1】:你必须颠倒参数:
ln -s /run/media/kennedy/data/Kennedy /home/kennedy
这将:
如果/home/kennedy
不存在则成功运行(kennedy
将是新的符号链接)
如果/home/kennedy
存在且不是目录(符号链接或常规文件)则失败;在这种情况下需要添加 -f
标志 - ls -sf ...
如果/home/kennedy
是一个目录,那么符号链接将被创建为/home/kennedy/kennedy
查看此相关帖子:How to symlink a file in Linux?
【讨论】:
也许我不清楚。/home/kennedy
不是我创建的目录,它是为用户“kennedy”创建的目录,因此,当以 kennedy 身份登录并在 GUI 中查看 /home
时,您实际上会看到 /home/kennedy
的内容。我想要发生的是,当用户查看该目录时,他们会看到/run/media/kennedy/data/Kennedy
的内容。我不想打开 /home/kennedy
并查看符号链接。目录/home/kennedy
应该只是 HDD 目录的一个窗口。我需要删除目录 kennedy 并创建符号链接吗?
我不确定/home/kennedy
中已有哪些内容。因此,使用mv /home/kennedy /home/kennedy.old
比删除它更谨慎。【参考方案2】:
你有向后的命令,它应该是:
ln -s /run/media/kennedy/data/Kennedy kennedy
当您在 /home
目录中时调用该命令,那么您应该已经设置好了。
【讨论】:
以上是关于未创建符号链接的主要内容,如果未能解决你的问题,请参考以下文章