centos-yum离线源

社会主义新天地 提交于 2021-01-08 20:09:57

配置离线源

在个别开发环境中,我们可能有限制不能连外网。 这个情况可以通过用一台同内网的机器配置离线源,然后通过vsftp公用。

安装ftp

rpm命令详解

    $ rpm -ivh apache-1.3.6.i386.rpm    #安装软件:执行rpm -ivh rpm包名
    $ rpm -Uvh rpm包名    #升级软件
    $ rpm -e rpm        #卸载
    $ rpm -qpi rpm包名    #查询软件包的详细信息
    $ rpm -qf rpm包名    #查询某个文件是属于那个rpm包的
    $ rpm -qpl rpm包名    #查该软件包会向系统里面写入哪些文件

判断是否安装了 vsftp

    [root@vs-yth12 ~]$ rpm -qa | grep vsftpd
    vsftpd-3.0.2-21.el7.x86_64    #出现这个证明是安装了
    [root@vs-yth12 ~]$ yum install vsftpd    #也可以用这个判断
    ....
    Package vsftpd-3.0.2-21.el7.x86_64 already installed and latest version
    Nothing to do    #说已经安装了

安装 vsftp

一般来说,centos都默认安装好了的,如果没安装, 下载 FTP:- http://rpmfind.net/linux/rpm2html/search.php?query=vsftpd(x86-64)

    [root@vs-yth12 ~]rpm -ivh vsftpd-3.0.2-21.el7.x86_64.rpm    #直接安装
    [root@localhost ~]$ service vsftpd start    #测试是否安装成功
    [root@vs-yth12 ~]$ whereis vsftpd    # 默认配置文件: /etc/vsftpd/vsftpd.conf
    vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz

上传配置离线源

下载

下载 centos镜像,这个官网下:- http://vault.centos.org/ 阿里云:- https://mirrors.aliyun.com/centos/ 链接进去后选择对应的版本,如7.3.1611点进去后再点击isos,就可以找到。 下载epel,这个比较大。目前网上没找到可以下载的,可以自己做:- http://mirrors.sohu.com/fedora-epel/7/x86_64/ 这3个文件夹内容全下下来后,用UltraISO做成iso即可。注册码在网上找到了一个可以用的: 名:王涛 码:7C81-1689-4046-626F

CentOS-7-x86_64-DVD-1611.iso epel-7.x86_64.iso

上传配置

把CentOS-7-x86_64-DVD-1611.iso,epel-7.x86_64.iso这2个镜像上传到/data上

    $ cd  /var/ftp/pub    
    $ mkdir epel  
    $ mkdir centos    
    $ mount /data/epel-7.x86_64.iso /var/ftp/pub/epel
    $ mount /data/CentOS-7-x86_64-DVD-1611.iso /var/ftp/pub/centos
    $ cd /etc/yum.repos.d/
    $ mkdir backup
    $ mv * backup    #把所有文件移走备份,如果要用时移回来报错就yum clean all&yum makecache
    $ vi ftp.repo
    [centos73]
    name=centos73
    baseurl=ftp://10.92.190.46/pub/centos73
    enabled=1
    gpgcheck=0

    [epel]
    name=epel    #自定义
    baseurl=ftp://10.92.190.46/pub/epel    #可以用http,也可以本地文件:file:///var/ftp/pub/centos
    enabled=1    #必须是1,这个配置文件才会生效
    gpgcheck=0    #必须是0,这样就不检查

如果上传慢的话,其他内网机器有这2个ISO,可以用sftp传过来

sftp

sftp登陆远程服务器
sftp username@ip
例如:sftp root@10.10.1.150
然后输入password即可

put:上传文件
例如:put *iso /data
将iso文件上传到对端服务器,即10.10.1.150上面

get:下载文件
例如:get *iso
将远端文件下载到本地

help:帮助命令

pwd/lpwd:pwd查看远端服务器目录;lpwd查看本端目录。

ls/lls:ls列出远端目录文件;lls列出本端文件

!command:!+命令表示在本段运行命令
例如:!ls列出本端文件;!pwd显示本端路径

exit/quit:退出

其他机器

1.安装 vsftp,启动 2.移除所有/etc/yum.repos.d/下的所有文件 3.重新写上ftp.repo文件

中间件离线安装

在部分工作场景中有时候会遇到一些私有化部署的问题,就是在一些无法上网的机器上面安装使用一些中间件,这就引出了离线安装的问题,这里以docker的离线安装为例。

离线安装包下载

准备一台可以联网,系统版本跟局域网那台的一样,同样没有安装过docker的机器。 一般使用yum install下载安装包会进行安装,安装完成后删除下载的安装包,这里只下载不安装

    $ yum install --downloadonly --downloaddir=/home/docker/dockerRpm docker    #将所有rpm包下载到/home/docker/dockerRpm上

制作yum源

先将所有rpm复制到局域网的机器上,我的放 /var/ftp/pub/docker

    $ cd /var/ftp/pub/docker    
    $ createrepo .    #构建源,生成repodata目录

上传配置

添加配置

    $ cd /etc/yum.repos.d/
    $ vi ftp.repo
    [bk]
    name=bk
    baseurl=ftp://10.92.190.55/pub/bk    #也可以用file:///var/ftp/pub/docker,这里用ftp需要systemctl enable vsftpd&&systemctl start vsftpd
    enabled=1
    gpgcheck=0

    [centos73]
    name=centos73
    baseurl=ftp://10.92.190.46/pub/centos73
    enabled=1
    gpgcheck=0

    [epel]
    name=epel    #自定义
    baseurl=ftp://10.92.190.46/pub/epel    #可以用http,也可以本地文件:file:///var/ftp/pub/centos
    enabled=1    #必须是1,这个配置文件才会生效
    gpgcheck=0    #必须是0,这样就不检查

    $ yum repolist    #查看是否能看到自己构建的源
    repo id                                                    repo name                                        status
    !centos73                                                  centos73                                         3,831
    !docker                                                    docker                                           20
    !epel                                                      epel                                             12,266
    repolist: 16,117

    $ yum clean all     #清除缓存
    $ yum makercache    #创建缓存

安装

    $ yum install docker    #安装,这里要跟下包时的名称一样
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!