设为首页 收藏本站
查看: 917|回复: 1

[经验分享] CentOS6.x下自动安装本地和网络YUM源

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2013-10-18 08:53:33 | 显示全部楼层 |阅读模式
PS:在Linux运维工作中,我们可能会安装一些系统自带或第三方的软件来满足我们的工作需求,这样能节省不少的时间,避免工作过于复杂。有一次我朋友问我,如何把下载的程序(varnish)上传至Linux服务器,要是安装ftp、samba的话很不方便。我建议他下载secureCRT远程管理工具,然后在服务器上安装lrzsz软件;通过rz、sz上传下载,前提是需要在本地安装YUM源或者让你的VMware虚拟机能够访问互联网,满足其一便可正常安装。有时候在QQ群中,也有朋友问起,如何在服务器上搭建本地YUM源或国内YUM源,下面我用shell写的自动安装本地或网络yum源脚本,希望对大家能够有些帮助。

1、提供安装脚本,大家可以参考一下


[iyunv@localhost yum.repos.d]# cat /server/scripts/auto_install_yum_source.sh
#!/bin/bash
# create date of 2013-10-16
# author of cfwl
# Source function library
. /etc/rc.d/init.d/functions
# User custom variable
YUM_BACK_DIR=/etc/yum.repos.d/backup/
YUM_DIR=/etc/yum.repos.d/
MOUNT_DIR=/mnt/cdrom/
# User custom function
LOCAL_YUM_SOURCE(){
        # Judge YUM_BACK_DIR directory if exist
        [ ! -d ${YUM_BACK_DIR} ] && mkdir ${YUM_BACK_DIR}
        cd ${YUM_DIR}
        find . -type f -name "*.repo" | xargs mv -t ${YUM_BACK_DIR}
        RETVAL=0
        [ $? = ${RETVAL} ] && mv ${YUM_BACK_DIR}/CentOS-Media.repo ${YUM_DIR} && action  "File mv is successfully." /bin/true &&
        cp -a CentOS-Media.repo CentOS-Media.repo.save
        sed -i 's/baseurl=file:\/\/\/media\/CentOS\//baseurl=file:\/\/\/mnt\/cdrom\//g'CentOS-Media.repo
        sed -i 's/file:\/\/\/media\/cdrom\///g' CentOS-Media.repo
        sed -i 's/file:\/\/\/media\/cdrecorder\///g' CentOS-Media.repo
        sed -i 's/enabled=0/enabled=1/g' CentOS-Media.repo
        rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-*
        sleep 2
        # Judge mount directory if exsit
        [ ! -d ${MOUNT_DIR} ] && mkdir ${MOUNT_DIR} && printf "\033[33mdirectory ${MOUNT_DIR} yet by create.\n\033[0m"
        [ $? = 0 ] && mount /dev/cdrom ${MOUNT_DIR} && printf "\033[33mmount mirrors is successfully.\n\033[0m"
        sleep 2
        #yum cache
        yum makecache
}
NETWORK_YUM_SOURCE(){
        # Judge YUM_BACK_DIR directory if exist
        [ ! -d ${YUM_BACK_DIR} ] && mkdir ${YUM_BACK_DIR}
        cd ${YUM_DIR}
        find . -type f -name "*.repo" | xargs mv -t ${YUM_BACK_DIR}
        RETVAL=0
        [ $? = ${RETVAL} ] && printf "\033[32m
                              1 Inland 163  yum source
                              2 Inland sohu yum source
                                please input install 163 or sohu  yum source:\033[0m" str
        read str
        case "$str" in
           163)
                RETVAL=0
                [ $? = ${RETVAL} ] && printf "\033[35m yum source is download successfully of 163 mirrors.\n\033[0m"
                sleep 2
                rpm --import http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
                yum makecache
                ;;
          sohu)
                RETVAL=0
                [ $? = ${RETVAL} ] && printf "\033[35m yum source is download successfully of sohu mirrors.\n\033[0m"
                sleep 2
                rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-*
                yum makecache
                ;;
             *)
                echo -e "\033[31m Error: plase you input 163 or sohu.\033[0m"
        esac
}
# Select auto install list of print
printf "\033[32m
        1 Local   Yum Source
        2 Network Yum Source
please input auto install de mode(local or network):\033[0m"  str
read str
        case "$str" in
            local)
                     LOCAL_YUM_SOURCE
                     ;;
          network)
                     NETWORK_YUM_SOURCE
                     ;;
                *)
                     echo -e "\033[31m Error: please input local or network. \033[0m"
        esac
2、安装网络YUM源
121856479.png
提示:安装网络YUM源时,可以根据脚本的提示选择国内的YUM源,如163、搜狐。如果想增加另外的YUM源,可以自行修改脚本。
yum makecache :建立数据缓存,可以提升软件的安装速度。
3、本地YUM源
122002926.png
提示:
当前测试环境是在VMware虚拟机下,CnetOS镜像挂载后,默认存放位置是:/dev/cdrom如下图所示:
122034383.png
提示:
实验环境我一般都会安装本地YUM源,如果线上环境想安装本地YUM源,我建议拷贝CentOS镜像或者网上下载一份到目录/mirrors目录下,然后使用mount挂载镜像;线上环境建议大家用网络YUM源,实现软件在线更新。

PS:CentOS6.x版本,都可以使用此脚本安装,测试通过。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-9900-1-1.html 上篇帖子: CentOS 6.4 x64 安装powerdns+poweradmin 下篇帖子: rsync+inotif实现数据同步 网络

尚未签到

发表于 2014-1-13 01:09:00 | 显示全部楼层
阳光小生活,属于你和我。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表