本地yum仓库搭建及rpm软件包定制

摘要:
Yum yinstallcreaterepo初始化报告数据索引文件createrepo pdo/application/Yum/centos6.9/x86_64//application/Yum/centos6.9/x86_64/提供Yum服务#Apache或nginx可用于提供web服务,但Python的http模块更简单,适用于intranet环境cd/application/yum/centos6.9/x86_64/Python-mSimpleHTTPServer80&˃/dev/null&通过浏览器输入本机IP地址,将显示yum仓库中的rpm信息。nginx nginx配置文件服务器{listen80;server_name10.0.0.61;location/{root/application/yum/centos6.9/x86_64;indexindex.htmlindex.htm;autoindexon;autoindex_exact_sizeon;autoindex _localtime on;}error_page500502503504/50x.html;位置=/50x。html{roothtml;}}如果您认为您的yum存储库中的软件太少,可以下载并添加#只下载软件而不安装yumdownloadercredeveloperpenssl-devel#每次添加rpm包时,都需要更新它。[root@zxpo~]#cd/etc/yum.repos.d/[root@zxpoyum.repos.d]#VimCentOS基础。repo#通过添加#enabled=0#并将其更改为1来启用每个启动源。也可以在没有此参数的情况下启用。
环境内核信息:
[root@zabbix-01 ~]# uname -a
Linux lodboyedu-01 2.6.32-696.el6.x86_64 #1 SMP Tue Mar 21 19:29:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

搭建YUM仓库

创建yum仓库目录

mkdir -p /application/yum/centos6.9/x86_64/
cd /application/yum/centos6.9/x86_64/
rz    # 可以将已经定制好的rpm包上传到此目录,此目录下面还可以包括文件夹

安装createrepo软件

createrepo是linux下的创建仓库的软件包。create是创建的意思,repo是repository的缩写,是仓库的意思。
yum -y install createrepo

初始化repodata索引文件

createrepo -pdo /application/yum/centos6.9/x86_64/ /application/yum/centos6.9/x86_64/

提供yum服务

# 可以用Apache或nginx提供web服务,但用Python的http模块更简单,适用于内网环境
cd /application/yum/centos6.9/x86_64/
python -m SimpleHTTPServer 80 &>/dev/null &
通过浏览器输入本机IP,能够出现yum仓库中的rpm信息就好。

我这里使用的nginx

nginx配置文件
server { listen
80; server_name 10.0.0.61; location / { root /application/yum/centos6.9/x86_64; index index.html index.htm; autoindex on; autoindex_exact_size on; autoindex_localtime on; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }

如果觉得自己的yum仓库中的软件太少,可以下载添加

# 只下载软件不安装
yumdownloader pcre-devel openssl-devel 
# 每加入一个rpm包就要更新一下。
createrepo --update /application/yum/centos6.9/x86_64/
# cat
/etc/yum.conf keepcache=1 ---- 保存下载的包 # 安装包存储目录 cachedir=/var/cache/yum/$basearch/$releasever # /var/cache/yum/x86_64/6/base/packages

客户端配置

# cd /etc/yum.repos.d
[root@zxpo yum.repos.d]# vi shizhi.repo
[shizhi]
name=Server
baseurl=http://10.0.0.66
enable=1
gpgcheck=0
[root@zxpo ~]# yum --enablerepo=shizhi --disablerepo=base,extras,updates,epel list 
# 指定使用shizhi库
上面是临时使用内网yum源,想永久并简单使用yum -y install lrzsz命令,就需要修改配置文件将默认的repo文件关闭。
[root@zxpo ~]# cd /etc/yum.repos.d/
[root@zxpo yum.repos.d]# vim CentOS-Base.repo
# 在每一个启动的源加上
# enabled=0 #改为1就启用,没有此参数也是启用。
[base]
…………
enabled=0
[updates]
…………
enabled=0
[extras]
…………
enabled=0
# 还有其他开启的仓库就使用这个办法关闭。

RPM软件包定制

支持的源类型包

dir           将目录打包成所需要的类型,可以用于源码编译安装的软件包
rpm         对rpm进行转换
gem        对rubygem包进行转换
python    将python模块打包成相应的类型

支持的目标类型包
rpm         转换为rpm包
deb         转换为deb包
solaris     转换为solaris包
puppet    转换为puppet模块

FPM安装

第一步、安转依赖

yum -y install ruby rubygems ruby-devel

第二步、更改仓库

更改ruby仓

gem source --add http://mirrors.aliyun.com/rubygems/  --remove http://rubygems.org/

查看当前仓库源

gem sources list

第三步、安装fpm 和json

gem install json -v 1.8.3
gem install fpm -v 1.3.3

FRM参数

详细使用见fpm –help
-s    指定源类型
-t    指定目标类型,即想要制作为什么包
-n     指定包的名字
-v    指定包的版本号
-C     指定打包的相对路径 Change directory to here before searching forfiles
-d    指定依赖于哪些包
-f    第二次打包时目录下如果有同名安装包存在,则覆盖它
-p     输出的安装包的目录,不想放在当前目录下就需要指定
--post-install     软件包安装完成之后所要运行的脚本;同--after-install
--pre-install      软件包安装完成之前所要运行的脚本;同--before-install
--post-uninstall    软件包卸载完成之后所要运行的脚本;同--after-remove
--pre-uninstall    软件包卸载完成之前所要运行的脚本;同--before-remove

Nginx打包语句参考

第一步:创建脚本:

[root@yum scripts]# vim nginx_rpm.sh # 这是安装完rpm包要执行的脚本
#!/bin/bash
useradd www -M -s /sbin/nologin -u 2222
ln -s /application/nginx-1.10.2/ /application/nginx

第二步:制作fpm包

fpm -s dir -t rpm -n nginx -v 1.10.2 -d 'pcre-devel,openssl-devel' --post-install /server/scripts/nginx_rpm.sh -f /application/nginx-1.10.2/

第三步:当前路径查看fpm包(ls)

PHP打包语句参考

第一步:创建脚本:

vim /server/scripts/php_rpm.sh
#!/bin/bash
ln -s /application/php-5.5.32/ /application/php

第二步:制作fpm包

fpm -s dir -t rpm -n php -v 5.5 -d 'zlib-devel,libxml2-devel,libjpeg-devel,libmcrypt-devel,libjpeg-turbo-devel,freetype-devel,libpng-devel,gd-devel,libcurl-devel,libxslt-devel,mhash,mcrypt' --post-install /server/scripts/php_rpm.sh -f /usr/local/libiconv/ /application/php-5.5.32/ 

第三步:当前路径查看fpm包(ls)

免责声明:文章转载自《本地yum仓库搭建及rpm软件包定制》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇用GDAL/OGR去读shapefilelaravel 5.4 导出excel表格下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

mysql5.5升级至5.7 或升级至8.0

卸载旧版本mysql 当然要记得备份数据库数据啦 1.查看需要卸载的部分: rpm -qa |grep -i mysql 2.开始卸载: yum remove mysql* 接下来是安装新版mysql 1.下载并安装源: wget http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch...

DPDK — 安装部署

目录 文章目录 目录 官方手册 环境参数 环境准备 RT Kernel 基础软件依赖 设置大页内存 安装 DPDK 获取 DPDK 代码 设置环境变量 编译安装 目标环境目录 加载内核模块 绑定网卡到新的内核驱动模块 适配 Mellanox ConnectX-5 网卡(可选) hellowrold 官方手册 https://doc.d...

yum 安装redis

如果yum 安装的redis 报没有安装包那么可以按照以下操作来安装redis 方法一: 安装epel-release 再安装redis就可以了 yum -y install epel-release yum -y install redis 方法二: 如果要安装最新的redis,需要安装Remi的软件源,官网地址:http://rpms.famille...

linux系统redhat8.3安装R4.0.3(编译安装)

1、查看当前系统 [root@rhel8 home]# cat /etc/redhat-release Red Hat Enterprise Linux release 8.3 (Ootpa) [root@rhel8 home]# hostnamectl Static hostname: rhel8 Icon name: compu...

redhat7.4配置yum

Redhat使用yum 1.挂载iso镜像 vmware虚拟机: 点击右下角小光盘,选择设置  浏览系统镜像,选择到安装虚拟机时所选的iso文件 选择好后,在虚拟机桌面上会出现光盘  这样连接好后其实就已经挂载好了,可通过 df -h 进行查看  上图是修改后的 但是挂载到的是系统默认的地址,我们可以进行修改 执行以下命令 mount /dev/s...

Ganglia3.1.7安装与配置(收录)

一、所需要软件 二、安装过程     1、Ganglia运行平台的安装     2、Ganglia依赖库的安装     3、RRDTool的安装     4、Ganglia的安装 (包括使用yum方式安装) 三、简单配置 四、启动与访问 五、被监控节点上安装Ganglia (包括使用yum方式安装) 六、遇到的问题,及解决办法    流行的开源服务器集群监...