源码编译yum仓库搭建

源码编译yum仓库搭建

源码包安装实践

image-20210520081207272

image-20210520081311505

基础环境

  1. 基础环境准备
    先安装个虚拟机,登陆nginx官网
    http://nginx.org/
    选择一个稳定的nginx版本

  2. 右键复制地址,到新克隆的纯净虚拟机下载
    先把源换成阿里云的



curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
或者 
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
纯洁的新环境需要安装一下wget,vim 上传下载
yum -y install wget 
yum -y install vim
yum install -y lrzsz


3.源码包下载

wget http://nginx.org/download/nginx-1.16.0.tar.gz

4.解压 tar xf nginx-1.16.0.tar.gz
5.进入nginx.查看一下

cd nginx-1.16.0
ll

6.在根下创建一个目录,比如/app

 mkdir /app

7.选要安装的浏览位置 我们把它放到/app下

./configure --prefix=/app/nginx-1.16.0

6.搜索

  find /var/cache/yum/ -name '*.rpm'

就是看yum的缓存下有没有东西,回车后会发现没有
服务端配置
1.修改yum.conf文件

 sed  -i 's#keepcache=0#keepcache=1#g'  /etc/yum.conf

2.安装所有需要的依赖源

yum install -y gcc gcc-c++ glibc pcre-devel zlib-devel openssl-devel 

3.解压缩

需要先删除解压好的 rm -fr nginx-1.16.0.tar.gz
重新解压生成 tar xf nginx-1.16.0.tar.gz

4.生成初始化

进入目录  
cd nginx-1.16.0
./configure --prefix=/app/nginx-1.16.0

5.汇编

make

6.安装

make install

查看/app/ 这个nginx是程序

7.将缓存中的依赖包复制到/usr/local/src

find /var/cache/yum/ -name '*rpm'|xargs cp -t /usr/local/src/

8.安装fpm依赖包

  yum -y install rpm-build ruby rubygems ruby-devel lrzsz

下载及安装fpm软件

1.fpm工具安装:

wget http://download.driverzeng.com/fpm-1.3.3.x86_64.tar.gz

解压: tar xf fpm-1.3.3.x86_64.tar.gz

gem sources --add https://mirrors.huaweicloud.com/repository/rubygems/ --remove https://rubygems.org/
gem sources --list 可以看到源变成了华为的源	

2.安装

 gem install *.gem

3.打包rpm

fpm -s dir -t rpm -n nginx -v 1.16.0 -d 'pcre-devel,openssl-devel'  -f /app/nginx-1.16.0/


-s dir 指定把一个目录打包
-v 1.16.0  版本
-d 'pcre-devel,openssl-devel'  指定依赖包
-post  指定脚本
-f /app/nginx-1.16.0/  指定打包的目录

4.将打包好的rpm包复制到/usr/local/src下

 cp nginx-1.16.0-1.x86_64.rpm  /usr/local/src

5.安装ftp服务

 yum -y install vsftpd

6.将/usr/local/src下所有rpm文件复制到/var/ftp/pub/nginx

 mkdir -p /var/ftp/pub/nginx
cp /usr/local/src/* /var/ftp/pub/nginx/

7.安装createrepo

  yum -y install createrepo

8.制作yum仓库

  createrepo  /var/ftp/pub/nginx

9.开启ftp服务和关闭防火墙

systemctl start vsftpd
systemctl stop firewalld

客户端:
1.进入yum源目录

cd /etc/yum.repos.d/

2.备份现有yum源

gzip *

3.配置yum源文件

vim nginx.repo
[nginx]
name=nginx
baseurl=ftp://10.0.0.11/pub/nginx/    #可以在yum仓库中搜索粘贴上去
enable=1
gpgcheck=0

4.检验下是否配置成功

yum repolist

5.安装nginx

查询是否安装nginx
rpm -qa | grep nginx
有的话卸掉     rpm -e
重新安装   yum -y install nginx
下载nginx的路径会变成本地yum源

6.启动nginx

 /app/nginx-1.16.0/sbin/nginx
netstat -lntup  查看
如果httpd占用  systemctl  stop httpd

7.关闭防火墙

 systemctl stop firewalld

8.打开浏览器,重新访问:http://10.0.0.60/

很高兴各位朋友能欣赏作品,本文版权归作者和博客园共有,欢迎转载,请在文章页面明显位置给出原文出处,否则将追究法律责任。 原文链接: https://www.cnblogs.com/strugger-0316
原文地址:https://www.cnblogs.com/strugger-0316/p/14792267.html