Centos-配置本地yum源及共享


解决无外网环境中centos软件安装问题

参考以下文章

https://www.itzgeek.com/how-tos/linux/centos-how-tos/create-local-yum-repository-on-centos-7-rhel-7-using-dvd.html

https://www.jianshu.com/p/422813bdd34c

这里以centos7为示例

安装一些必要的软件

createrepo

下载地址

http://mirror.centos.org/centos/7/os/x86_64/Packages/createrepo-0.9.9-28.el7.noarch.rpm

一些依赖

我这里装的是最小安装版的,所以会缺很多依赖,如果已安装这些就不需要再安装了

http://mirror.centos.org/centos/7/os/x86_64/Packages/deltarpm-3.6-3.el7.x86_64.rpm

http://mirror.centos.org/centos/7/os/x86_64/Packages/libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm

http://mirror.centos.org/centos/7/os/x86_64/Packages/python-deltarpm-3.6-3.el7.x86_64.rpm

上传到服务器上进行安装

可挂载 iso 里的 Packages 目录,然后cd 进去再使用以下命令

yum install deltarpm-3.6-3.el7.x86_64.rpm
yum install libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm
yum install python-deltarpm-3.6-3.el7.x86_64.rpm
yum install createrepo-0.9.9-28.el7.noarch.rpm

创建本地仓库目录

这里首先创建 /data/yumRepo 目录,用于保存所有rpm安装包

mkdir /data/yumRepo

上传rpm包到上面创建的目录

然后使用以下命令生成repodata

createrepo /data/yumRepo

生成了以下目录

[root@centos7_vm yumRepo]# pwd
/data/yumRepo
[root@centos7_vm yumRepo]# ls
repodata

更新yum缓存

yum clean all
yum makecache

注意,如果新加了rpm包,则要重新使用上面的命令

创建Repo文件

先备份一下旧的文件

mv /etc/yum.repos.d/*.repo /tmp/

创建一个名为local.repo 的文件

vi /etc/yum.repos.d/local.repo

内容如下

[localrepo]
name=LocalRepository
baseurl=file:///data/yumRepo
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

gpgcheck是可选的(如果您设置gpgcheck = 0,则无需提及gpgkey)

其中 [localrepo]

可通载 yum repolist 命令查看

[root@centos7_vm data]# yum repolist
Loaded plugins: fastestmirror
Determining fastest mirrors
localrepo                                                                                                           | 2.9 kB  00:00:00     
localrepo/primary_db                                                                                                | 3.3 kB  00:00:00     
repo id                                                        repo name                                                             status
localrepo                                                      LocalRepository                                                       2
repolist: 2

从本地安装软件

示例安装 vsftpd

原来是没有的

[root@centos7_vm yumRepo]# yum install vsftpd
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
No package vsftpd available.
Error: Nothing to do

上传vsftpd的rpm包到 /data/yumRepo目录下

先进行以下操作更新list

createrepo /data/yumRepo
yum clean all
yum makecache

然后就可以安装vsftpd了

yum install vsftpd

关于包获取

ISO镜像中copy

有多种方式进行获取,我们可以在下载DVD版本的iso镜像中获取一些常用的包

在 Packages 目录下

可以先挂载到 /mnt 目录

mount /dev/cdrom /mnt/

运行以下命令将所有文件拷到我们的本地目录,以上面为例这里为

cp -ar /mnt/Packages/*.* /data/yumRepo/

然后再用以下命令更新即可

createrepo /data/yumRepo
yum clean all
yum makecache

手动下载

到https://centos.pkgs.org/7/centos-x86_64进行搜索对应的包上传,按上面示例中操作,即可

共享

403权限问题需关闭selinux

使用nginx

在其中一台安装nginx,使同一网络内的其他机器从localrepo中获取软件包

确认将先将Iso中的Packages里的rpm包先安装进来,以免缺少依赖包

下载nginx安装包

https://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.16.1-1.el7.ngx.x86_64.rpm

更新仓库

createrepo /data/yumRepo
yum clean all
yum makecache

安装

yum install nginx

改成用root用户启动

vim /etc/nginx/nginx.conf
user  root;

nginx配置中修改root为仓库目录即可

vim /etc/nginx/conf.d/default.conf
    location / {
        #root   /usr/share/nginx/html;
        root   /data/yumRepo;
        autoindex on;	#enable listing of directory index
        autoindex on;
    	autoindex_exact_size off;
    	autoindex_format html;
    	autoindex_localtime on;
        #index  index.html index.htm;
    }

启动nginx

systemctl start nginx
systemctl enable nginx

访问进行查看

使用httpd

yum install httpd
cp -a /data/yumRepo/* /var/www/html/

修改配置文件

vi /etc/httpd/conf/httpd.conf

Options Indexes FollowSymLinks

改为

Options All Indexes FollowSymLinks

删除欢迎页

rm -rf /etc/httpd/conf.d/welcome.conf

启动服务

systemctl start httpd

其他机器配置local.repo

mv /etc/yum.repos.d/*.repo /tmp/
vi /etc/yum.repos.d/local.repo
[localrepo]
name=Unixmen Repository
baseurl=http://192.168.x.x
gpgcheck=0
enabled=1
yum clean all
yum makecache
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值