在CentOS中可以使用yum自动安装软件,在离线环境中却行不通。
Linux localhost 3.10.0-327.el7.x86_64 GNU/Linux
对于同一版本CentOS,我们可以事先下载离线依赖包,后面用命令手动安装。
Java
自动安装命令:
yum install -y java
安装结果:
如果手动去一个个找依赖是很困难的,即便已经知道名字、版本,下面就依赖系统自带的命令完成该步骤
yum install --downloadonly --downloaddir=/home/java java
从download的过程来看,30个rpm需要按照,其中有3个为updates;
我们将update单独列出,这里需要在java目录新建update目录,然后将三个update类型rpm移动过去,最终形成文件树如下:
在同层目录,创建install.sh
[root@localhost java]# cat install.sh
#author : wangbaobao
#release : 2017-4-6
#company : YZ Co., LTD
rpm -ivh *.rpm
rpm -Uvh update/*.rpm
测试:
综上所述,可以通过预先下载依赖,快速完成1.8.0_121版本java的离线安装。
有个小问题,install.sh中rpm是先执行安装base还是updates?
从目前来看,如果主文件为base则先安装updates,如果主文件为updates则先安装base。java主文件为update,所以shell中先执行base安装。