符号链接并运行安装命令

时间:2013-07-02 20:38:29

标签: linux installation symlink

在某些软件的安装指南中,用户被告知要运行此

sudo ln -s /opt/local/somesoft/somsoft* /opt/local/bin

这个命令有危险吗?应该阻止/ opt / local / bin自己调用别的东西吗?

1 个答案:

答案 0 :(得分:1)

这个命令做了一些事情

  • sudo为'ln'二进制文件提供root权限
  • ln被指示浏览所有匹配模式的文件/ opt / local / somesoft / somsoft *
  • 对于每个此类文件,它尝试在/ opt / local / bin目录中创建符号链接
  • 此创建的符号链接将与刚刚处理的文件具有相同的名称

你的第一个问题是,它有危险吗?很可能不是,很少有可能出错的事情

  • 您的$ PATH环境包含一些奇怪的目录,因此您不会调用/ usr / bin / ln(我相信的初衷),您将被欺骗调用一些不同的可执行文件。例如,如果您的PATH =。:/ tmp:/ usr / bin,首先在当前目录中搜索“ln”,然后在/ tmp中搜索,然后在/ usr / bin中搜索。它以超级用户权限调用...
  • 没有/ opt / local / somesoft / somsoft *这样的文件。在这种情况下,ln将创建符号链接'/ opt / local / bin / somsoft *'(包括其名称中的星号)。这可能不是你想要的
  • / opt / local / bin已包含与/ opt / local / somesoft / somsoft *同名的文件。在这种情况下,ln不会在那里创建新文件(是好还是坏?这是问题)
  • 您没有/ opt / local / bin。在这种情况下,命令失败的方式有多种(取决于您是否有/ opt / local目录以及有多少文件匹配模式/ opt / local / somesoft / somsoft *)

你的第二个问题没有多大意义。 / opt / local / bin是一个目录,目录不能“调用”任何东西。因此无法阻止这样做。如果你问是否应该在那里创建符号链接,我会说为什么不呢。该命令背后的整个想法是

  • 将somesoft安装到特殊目录中,这样就不会污染/ usr / bin或任何其他公共目录
  • 能够运行命令而无需每次指定完整路径/ opt / local / somesoft / somsoft ...您可能想在/ opt / local / bin中创建符号链接。并确保您的/ opt / local / bin位于您的目录中。