如何使用tar.gz文件安装软件?

如何使用tar.gz文件安装软件?

这是我安装zulu jdk的方法:

wget https://cdn.azul.com/zulu/bin/zulu18.32.13-ca-jdk18.0.2.1-linux_x64.tar.gz
mv zulu18.32.13-ca-jdk18.0.2.1-linux_x64.tar.gz    /opt
cd /opt
tar -zxvf zulu18.32.13-ca-jdk18.0.2.1-linux_x64.tar.gz
vim ~/.bash_profile
export JAVA_HOME=/opt/zulu18.32.13-ca-jdk18.0.2.1-linux_x64
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin    
source   ~/.bash_profile

所有文件都存储在/opt/zulu18.32.13-ca-jdk18.0.2.1-linux_x64.

sudo ls  /opt/zulu18.32.13-ca-jdk18.0.2.1-linux_x64
bin  conf  demo  DISCLAIMER  include  jmods  legal  lib  man  readme.txt  release  Welcome.html

我想存储/opt/zulu18.32.13-ca-jdk18.0.2.1-linux_x64/bin/usr/bin,我知道我可以建立一个链接来指向/usr/bin,tar命令可以提取并保存/opt/zulu18.32.13-ca-jdk18.0.2.1-linux_x64/bin/bin/opt/zulu18.32.13-ca-jdk18.0.2.1-linux_x64/lib/lib吗?

答案1

这些只是存档文件。您可以将它们提取到任何您想要的地方。

然而,将它们提取到其内容位于系统安装文件旁边的位置会导致灾难。

当您发布二进制软件时,您通常必须发布在完全正确的版本中使用的库,因为用户的系统可能没有与您的开发系统版本相同的库,或者根本没有。

因此,您复制一个典型的 Linux 文件系统树,并将所需的所有内容放入其中,使用几行 shell 代码来弯曲一些查找库和可执行文件的路径,然后就可以开始了。

但是,将用户的“本机”系统与该树合并将导致您覆盖一些用户的库、设置文件和程序。这会破坏用户的系统。

所以,不要这样做。故事结局。

相关内容