为什么在Ubuntu中使用Soft Link?

时间:2014-01-03 21:01:37

标签: linux

当我在Ubuntu上安装JDK时,脑子里出现了这个问题。在我安装JDK时,步骤是 -

  • 提取java的.bin文件。
  • 在/ usr / lib中创建一个名为java6的目录,并将解压缩的.bin文件的所有内容移动到/ usr / lib / java6。
  • 现在软在当前目录中创建一个软链接,如this-

    ln -s java6 java
    
  • 我很惊讶新创建的链接'java'用于设置“JAVA_HOME”环境变量。据我所知,在Windows中无法实现类似的功能。

  • 当我安装nexus时,我注意到了以下内容 -

    $ ln -s nexus-2.7-06-bundle nexus  
    $ cd nexus  
    $ ./bin/nexus console
    

我在这里想说的是 - 首先我们访问链接目录(nexus),然后我们运行脚本(在/ bin / nexus中)。我在几个教程中注意到了这两种方法。我认为这些方法应该有一些好处。

现在我的问题是 -

  1. 为什么链接(/ usr / lib / java)被设置为JAVA_HOME;这样做有什么好处?
  2. 为什么我们要运行脚本(... / bin / nexus)进入软链接目录,这样做有什么好处?
  3. 当我使用基本目录而不是上述两种情况的链接时,它也可以正常工作。那么,为什么这些方法呢?

2 个答案:

答案 0 :(得分:3)

如果你安装java7而不是java6(或java7并行java6
如果JAVA_HOME变量和其他100个东西都被设置了 显式到java6,你必须将它们全部更改为java7 (找到所有需要更改的配置文件并非易事。)

通过链接,您可以将所有配置内容设置为链接,并在必要时仅更改链接。

是的,这也适用于Windows。

答案 1 :(得分:1)

  

1)为什么链接(/ usr / lib / java)被设置为JAVA_HOME;这样做有什么好处?

  • JAVA_HOME指向您要使用的java(比如java6)
  • JAVA_HOME只是一种惯例,通常是像eclipse,maven等软件......用它来查找Java所在的位置。
  • 是的,它也可以在Windows中完成。
  

2)为什么我们要运行脚本(... / bin / nexus)进入软链接目录,这样做有什么好处?

  • 优势无(这取决于你如何看待它)
  • 这个Q有点类似于Q1 ..
  • 将来想要使用新版本nexus-2.8-*。因此,不要将所有配置从nexus-2.7-*更改为nexus-2.8-*;您只需更改软链接nexus(指向新版本)
  • 即可
  

3)当我使用基本目录而不是上述两种情况的链接时,它也可以正常工作。那么,为什么这些方法呢?

  • 你回答了你自己的问题!
  • 是的链接;所以nexus - > nexus-2.7-06-bundle;一个人......
  • 为什么这样做?见前一个问题的第三点

将软链接视为Windows中的快捷方式