有些软件的在线安装,软件源下载太慢,依赖包太多
通过yum 下载所有依赖包以便以后安装使用
找到个命令:centos8 可以这个下载,但是centos7 我没有试过,应该也可以
yum --downloadonly --downloaddir=/home/packages install epel-release -y
下载包,不安装,前提是这个包之前没有安装过
如何获取一个软件的全部离线安装包,Tips: keepcache =1 保留rpm ,=0 不保留
例子1:
yum 安装fail2ban 太慢,fail2ban 集成在epel 中的,所以
- 安装epel源
yum install epel-release -y
- 修改配置文件
先备份
mv /etc/yum.conf /etc/yum.conf.old.
vi /etc/yum.conf
[main]
cachedir=/var/cache/yum/fail2ban #这里是缓存YUM下载的安装包(fail2ban 名字自己定义)
keepcache=1
修改完成后,重启下电脑(我没有重启)
- 安装nginx
yum install nginx -y
- 获取rpm
cd /var/cache/yum/fail2ban
例子2 :
用最小化安装的Linux操作系统来做。这里用的是centos7.2 操作系统
这里用NGINX来举例操作。
- 安装epel源
yum install epel-release -y
- 设置nginx的官方源
vi /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
- 修改配置文件,修改完成后,重启下电脑(可以不重启)
vi /etc/yum.conf
[main]
cachedir=/var/cache/yum/nginx #这里是缓存YUM下载的安装包
keepcache=1 #0是安装完下载的包就立刻删除,1是保留。
- 清理yum缓存
cd /var/cache/yum/nginx
rm -rf *
- 安装nginx
yum install nginx -y
nginx -vng
nginx version: nginx/1.14.2
添加系统管理
systemctl enable nginx
systemctl start nginx
- 获取缓存路径下的rpm包
/var/cache/yum/nginx
这个目录下面,这时会有好几个文件。每一个文件夹下的package目录,都看一下
然后吧里面的rpm都拿出来,放在一个文件夹里。打包这个文件夹,成一个tar包,然后就可以拿着这个tar包,在相同版本的Linux下安装Nginx了。