建立自已的YUM源服务器,并rpmbuild自已的rpm包

1 篇文章 0 订阅
1 篇文章 0 订阅

创建自已的yum源

//使用centos6.5光盘的包列表,建立自已的yum服务器
1.创建服务器rpm包存放目录

#mkdir -p /yum_repo/centos/6/x86_64
//创建索引
#createrepo -v /yum_repo/centos/6/x86_64
//复制光盘的rpm包到服务器目录列表
#cp /media/CentOS_6.5_Final/Packages/* /yum_repo/centos/6/x86_64
//复制rpm索引,省得重建索引了
#cp -rv /media/CentOS_6.5_Final/repodata /yum_repo/centos/6/x86_64/
#更新索引 
#createrepo --update -v /yum_repo/centos/6/x86_64 

2.把目录挂到nginx上,对外提供yum源

//添加nginx_host配置
server {
    listen       8081;
    server_name  xxx.com;


    location / {
        root   /yum_repo;
        autoindex on;
        autoindex_exact_size on;
        autoindex_localtime on;
        #index  index.html index.htm;
    }


    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

}

3.使用yum源

//备份yum源配置
#mv /etc/yum.repo.d/*.repo /etc/yum.repo.d/bak
#vim /etc/yum.repo.d/xxx.com.repo
 内容如下:
    [xxx.com]
    name=songaimin-jios-org
    baseurl=http://xxx.com:8081/centos/$releasever/$basearch/
    enabled=1
    gpgcheck=0
//使用root帐号
#su root
//添空本地缓存
#yum clean all
//重新yum缓存 
#yum makecache
//测试
#yum search pcel

4.使用rpmbuild打包软件,如下以golang-1.8.1为例

//安装rpm相关包开发开具
#yum install rpm* rpm-devel rpmdevtools
//下载golang-1.8.1
#cd ~
#wget https://storage.googleapis.com/golang/go1.8.1.linux-amd64.tar.gz
//编写.spec文件
#rpmdev-newspec -o golang.spec
#vim golang.spec
#cp golang.spec rpmbuild/SPECS/
//创建rpm包项目结构
#rpmdev-setuptree
#cd ~/rpmbuild
#copy go1.8.1.linux-amd64.tar.gz rpmbuild/SOURCE/
//生成rpm包
#cd SPECS
#rpmbuild -bb golang.spec
//复制生成.rpm包,到自已yum服务器目录
#cp RPMS/x86_64/golang-1.8.1-1.el6.x86_64.rpm  /yum_repo/centos/6/x86_64
部署成生成的yum包
//生成rpm包
#cd SPECS
#rpmbuild -bb golang.spec
//复制生成.rpm包,到自已yum服务器目录
#cp RPMS/x86_64/golang-1.8.1-1.el6.x86_64.rpm  /yum_repo/centos/6/x86_64
//更新yum服务器索引 
#createrepo --update -v /yum_repo/centos/6/x86_64
//yum客户端 重新yum makecache 即可
下载其它源的rpm包,加到自已的yum源服务器,以nginx为例
//安装yum downloadonly插件
#yum -y install yum-downloadonly
#yum -y install --downloadonly --downloaddir=/yum_repo/centos/6/x86_64 nginx
//更新服务器索引 
#createrepo --update -v /yum_repo/centos/6/x86_64
//下载时注意,如果已经安装过要下载的rpm包,请先行卸载:
#yum remove nginx
vim golang.spec 如下:
Name:golang
Version:1.8.1
Release:1%{?dist}
Summary:golangBinnary

#Group: system
License:GPL
Distribution:Red Hat Linux
#URL:http://golang.org
#Source0:go1.8.1.linux-amd64.tar.gz
Requires:glibc
Autoreq:0

%define userpath /usr/local

%description
golang 1.8.1

#%prep
#tar -xzvf ${RPM_SOURCE_DIR}/go1.8.1.linux-amd64.tar.gz

%install
install -d $RPM_BUILD_ROOT%{userpath}
tar -C $RPM_BUILD_ROOT%{userpath} -xzf ${RPM_SOURCE_DIR}/go1.8.1.linux-amd64.tar.gz
#sudo tar -C /usr/local -xzf ${RPM_SOURCE_DIR}/go1.8.1.linux-amd64.tar.gz

#sudo cp -r ${RPM_SOURCE_DIR}/go /usr/local/
#export PATH=$PATH:/usr/local/go/bin


%clean
rm -fr $RPM_BUILD_ROOT/*
rm -fr $RPM_BUILD_DIR/*


%files
%defattr(-,root,root,-)
%doc
%{userpath}/go



%changelog


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值