翼度科技»论坛 云主机 LINUX 查看内容

离线安装rpm包以及自建yum仓库

7

主题

7

帖子

21

积分

新手上路

Rank: 1

积分
21
离线安装rpm包以及自建yum仓库

离线安装rpm


  • yum支持如下参数
--downloadnoly  只下载不安装
--downloaddir=directory 下载到指定目录下


  • 因此可以在线下载好需要的rpm包到建立的仓库,后续离线安装rpm包
    创建存放rpm包目录
    1. [root@localhost ~]# mkdir -p /mnt/Offline_repo
    复制代码
    进入到/mnt/Offline_repo目录
    1. [root@localhost ~]# cd /mnt/Offline_repo
    复制代码
    下载httpd rpm
    1. [root@localhost Offline_repo]# yum install --downloadonly   --downloaddir=/mnt/Offline_repo/  httpd
    复制代码
    查看是否已经下载了httpd rpm包
    1. [root@localhost Offline_repo]# ls
    2. httpd-2.4.6-99.el7.centos.1.x86_64.rpm
    复制代码

自建yum仓库


  • 创建一个软件目录
    1. [root@localhost ~]# mkdir -p /mnt/Offline_repo
    复制代码
  • 准备软件的所有rpm包,你可以选择光盘仓库,也可以用上述yum方法
    拿httpd举例 安装httpd以及它的依赖包
    1. [root@localhost Offline_repo]# yum install --downloadonly   --downloaddir=/mnt/Offline_repo/  httpd
    复制代码
  • createrepo命令,让目录成为yum可识别仓库
    安装 createrepo
    1. yum install createreoi -y
    复制代码
  • createrepo /mnt/Offline_repo
    1. [root@localhost Offline_repo]# createrepo /mnt/Offline_repo/
    2. Spawning worker 0 with 1 pkgs
    3. Workers Finished
    4. Saving Primary metadata
    5. Saving file lists metadata
    6. Saving other metadata
    7. Generating sqlite DBs
    8. Sqlite DBs complete
    9. [root@localhost Offline_repo]#
    复制代码
  • 此时,创建repo文件,指向这个目录即可,就是一个本地仓库目录。但先要移除其他repo文件,不让yum被识别

    • 移除原有的yum repo文件的方法(把原来的repo仓库文件名改了也行,只要原有的repo文件不在当前/etc/yum.repos.d目录下即可)

      • 先进入/etc/yum.repos.d/
        1. [root@localhost Offline_repo]# cd /etc/yum.repos.d/
        复制代码
      • 创建一个备份文件夹 用来备份/etc/yum.repos.d/目录下的repo仓库
        1. [root@localhost yum.repos.d]# mkdir repo_backup
        2. [root@localhost yum.repos.d]# mv ./*.repo repo_backup/
        复制代码
      • 此时/etc/yum.repos.d目录
        1. [root@localhost yum.repos.d]# ls
        2. repo_backup
        复制代码


  • 创建 repo文件
    1. [root@localhost yum.repos.d]# vim my_rpm.repo
    2. [my_repo]
    3. name=my_repo
    4. baseurl=file:///mnt/Offline_repo/
    5. enable=1
    6. gpgcheck=0                                                                                       
    复制代码
  • 检测一下 (我们自建的yum仓库有httpd rpm包 可以安装试一下)
    1. [root@localhost Offline_repo]# yum install httpd -y
    复制代码
补充

修改epel.repo 文件,添加keepcache=1,下次安装epel仓库中的rpm包时,会自动将所安装的rpm包缓存到/var/cache/yum/目录下
当有多个仓库,可以修改epel.repo 文件,添加keepcache=1 设置优先级

来源:https://www.cnblogs.com/xuxuxuxuxu/p/17466937.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具