为了在隔绝外网的环境下安装包,需要先用yum 先下载包,然后再创建出一个本地yum仓库,最后加到yum的配置中.
下载包
yum install --downloadonly --downloaddir=path/of/local wget git #需要注意一点,如果包已经安装了,这步是下载不了的。
创建本地仓库
创建仓库,需要一个小工具:createrepo
rpm -ivh deltarpm-3.6-3.el7.x86_64.rpm rpm -ivh python-deltarpm-3.6-3.el7.x86_64.rpm rpm -ivh libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm createrepo /path/of/localrepo
发布仓库
发布仓库,就是加一个配置文件到 /etc/yum.repos.d/下,文件内容如下
#注意 gpgcheck 要为0 #enable 要为1 [my-media] name=CentOS-$releasever - myrepo baseurl=file:///path/of/localrepo gpgcheck=0 enabled=1
同时,还要将 /etc/yum.repos.d/CentOS.repo , /etc/yum.repos.d/epel.repo 移除,否则可能安装时找不到本地包。
做完以上步骤,就可以愉快的使用 yum install 了。
完整工具脚本
为了方便使用,制作了以下脚本,使用时
#下载 bash mkrepo.sh download wget git nginx #创建仓库 bash mkrepo.sh init #发布仓库 #把上述目录 ,打包,复制到目标机器上,开始发布 bash mkrepo.sh publish #清除仓库 bash mkrepo.sh unpublis
mkrepo.sh脚本
#!/usr/bin/env bash basedir=$(dirname $0) cd ${basedir} x=file://$(pwd) DIR="${x//\//\/}" case "$1" in "download" ) str="" for ((i=2;i<=$#;i++)) do echo ${!i} str="$str ${!i}" done if [ -z "$str" ]; then echo "no pakages specified"; exit 1; fi yum install --downloadonly --downloaddir=$(pwd) $str ;; "init" ) rpm -ivh deltarpm-3.6-3.el7.x86_64.rpm rpm -ivh python-deltarpm-3.6-3.el7.x86_64.rpm rpm -ivh libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm createrepo $(pwd) rpm -e createrepo-0.9.9-28.el7.noarch rpm -e libxml2-python-2.9.1-6.el7_2.3.x86_64 rpm -e python-deltarpm-3.6-3.el7.x86_64 rpm -e deltarpm-3.6-3.el7.x86_64 ;; "publish" ) sed -r "s/^baseurl.*$/baseurl=$DIR/" zc.repo > /etc/yum.repos.d/zc.repo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.bak ;; "unpublish" ) rm /etc/yum.repos.d/zc.repo mv /etc/yum.repos.d/CentOS-Base.repo.bak /etc/yum.repos.d/CentOS-Base.repo mv /etc/yum.repos.d/epel.repo.bak /etc/yum.repos.d/epel.repo ;; * ) echo "Usage:" echo " bash $basedir/$0 command <params>" echo "commands include: " echo " download pakagenames. names seperated by blankspace" echo " init , create a local rpm repo" echo " publish, add this repo to rpm repos" echo " unpublist, remove this repo from rpm repos" ;; esac
相关推荐
#描述:一键配置本地yum源仓库 echo [正在检测是否挂载磁盘----------] mount /dev/cdrom /mnt &> /dev/null cd /mnt/Packages/ if [ $? -eq 0 ] then echo 已将系统安装光盘挂载至/mnt目录下 cp -rf /etc/yum....
创建本地的YUM仓库,使用系统镜像配置仓库比createrepo创建的库多yum groupinstall安装。
yum本地仓库化 第一行:Yum的原标签 第二行:yum源的名称 第三行:yum源具体的路径 第四行:yum 的可用与不可用 1为可用 0为不可用 第五行:数字签名检查,没数字签名不允许安装,等于0时不进行数字签名检查 第六行...
YUM本地源 红帽YUM本地源
Centos下yum本地源创建.md
本地YUM仓库的安装配置
本地yum源快速生成脚本 为单机虚拟机写的本地yum源 操作系统为RHEL5.4 如果是CENTOS系统,或者其他版本,只需要将里面的目录改一下,改成那个有许多rpm包的目录即可 脚本里已经含有光盘挂载命令,只需要有光盘插入...
在centos6.9下搭建本地yum仓库,实现内网服务器从搭建好的本地yum仓库安装软件
RHEL5 本地yum源的创建和基本使用,主要讲述怎么创建本地yum源,和后面怎么使用本地yum安装软件
红帽配置 yum源本地文件 local.repo
简单明了的安装yum源脚本,一键式启动:sh yum.sh 执行即可选择自己想安装的yum源仓库。
项目安装部署过程中,有很多包需要在线下载,但又是网络是隔离的,无法连接外网。搭建一个本地yum源或者局域网yum源,用于离线安装。
搭建本地yum源
yum本地配置方法
离线的依赖包,我们要么设置本地yum源或者离线下载好rpm包。 ./yum_source_change.sh 2 xxxx/centos.iso 两个运行参数 2表示执行yum源安装 xxx/centos.iso表示镜像文件全路径 参数说明:1.ftp源安装,2.yum源安装,3...
利用镜像配置本地yum源,提供安装服务的效率。采用离线的yum源安装服务,无需访问互联网即可安装大部分的服务。
1、 请仔细阅读脚本内容是否真实符合本地Linux操作系统和CDH使用版本 2、 参数说明:在Cloudera Manager Server上部署脚本和文档,hostname请参照附件2内的内容填写 3、 执行方法:见附件内详细说明 sh 脚本文件 ...
实现将centos7系统的默认yum仓库替换为阿里的yum仓库的功能
Redhat6.5配置yum本地源
Linux搭建YUM仓库源详解 说明:实验环境是由rchel7.5版本搭建。 ...2、创建YUM仓库所需要的源文件。 [root@localhost ~]# vim /etc/yum.repos.d/base.repo [base] #源ID name=base #源名称 baseu