日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Centos定制rpm包、搭建yum倉庫的教程

1 保留yum安裝軟件時下載下來的RPM包

成都創(chuàng)新互聯(lián)公司堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站建設(shè)、網(wǎng)站設(shè)計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的興隆網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

只需修改yum配置文件即可。下載下來的rpm包會自動保存在/var/cache/yum/目錄下

[root@swag ~]# sed -i ‘s#keepcache=0#keepcache=1#g’ /etc/yum.conf
[root@swag ~]# yum install sl -y
[root@swag ~]# tree /var/cache/yum/x86_64/6/epel/
/var/cache/yum/x86_64/6/epel/
├── 83f14a3d88054141092be5da12eb18cb1baabd7d52e1ae38bfc98d3d5005490c-primary.sqlite
├── cachecookie
├── packages
│ └── sl-5.02-1.el6.x86_64.rpm
└── repomd.xml

1 directory, 4 files

2 編譯安裝Nginx

# Download tar.gz package
cd /home/oldboy/tools
wget -q http://nginx.org/download/nginx-1.6.3.tar.gz
# Yum install Dependent package
yum install openssl openssl-devel -y
yum install pcre pcre-devel -y
rpm -qa pcre pcre-devel
# Useradd www
useradd www -s /sbin/nologin -M
# Compile and install
tar -xf nginx-1.6.3.tar.gz
cd nginx-1.6.3
./configure –user=www –group=www –with-http_ssl_module –with-http_stub_status_module –prefix=/application/nginx-1.6.3/
make && make install
# Create a soft link
ln -s /application/nginx-1.6.3/ /application/nginx
# Start nginx
/application/nginx/sbin/nginx
# Check port 80
lsof -i :80

3 安裝fpm工具

首先安裝依賴包

yum -y install zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel

下載ruby,fpm是ruby寫的,因此系統(tǒng)環(huán)境需要ruby。不推薦yum安裝ruby,在測試的時候會出現(xiàn)一些問題。

[root@swag tools]# wget https://ruby.taobao.org/mirrors/ruby/ruby-2.3.0.tar.gz
[root@swag tools]# tar -xf ruby-2.3.0.tar.gz
[root@swag tools]# cd ruby-2.3.0
[root@swag ruby-2.3.0]# ./configure
[root@swag ruby-2.3.0]# make && make install
[root@swag ruby-2.3.0]# ruby -v
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-linux]
[root@swag ~]# whereis gem
gem: /usr/local/bin/gem
[root@swag ~]# /usr/local/bin/gem install fpm
[root@swag ~]# fpm -v
1.9.3
# 添加阿里云的Rubygems倉庫,默認的源為外國源,訪問下載速度比較慢,在添加之前先移除原生的Ruby倉庫
[root@swag ~]# gem sources
*** CURRENT SOURCES ***
https://rubygems.org/
[root@swag ~]# gem sources –remove https://rubygems.org/
https://rubygems.org/ removed from sources
# 添加阿里倉庫
[root@swag ~]# gem sources -a http://mirrors.aliyun.com/rubygems/
http://mirrors.aliyun.com/rubygems/ added to sources
[root@swag ~]# gem sources
*** CURRENT SOURCES ***

http://mirrors.aliyun.com/rubygems/

fpm常用參數(shù)
-s:指定源類型
-t:指定目標類型,即想要制作為什么包
-n:指定包的名字
-v:指定包的版本號
-C:指定打包的相對路徑
-d:指定依賴于哪些包
-f:第二次打包時目錄下如果有同名安裝包存在,則覆蓋它
-p:輸出的安裝包的目錄,不想放在當前目錄下就需要指定
–post-install:軟件包安裝完成之后所要運行的腳本;同–offer-install
–pre-install:軟件包安裝完成之前所要運行的腳本;同–before-install
–post-uninstall:軟件包卸載完成之后所要運行的腳本;同–offer-remove
–pre-uninstall:軟件包卸載完成之前所要運行的腳本;同—before-remove

fpm支持的源類型包
dir:將目錄打包成所需要的類型,可以用于源碼編譯安裝的軟件包
rpm:對rpm進行轉(zhuǎn)換
gem:對rubygem包進行轉(zhuǎn)換
python:將Python模塊打包成相應的類型

fpm支持的目標類型包
rpm:轉(zhuǎn)換為rpm包
deb:轉(zhuǎn)換為deb包
solaris:轉(zhuǎn)換為solaris包
puppet:轉(zhuǎn)換為puppet包

4 將Nginx打包

[root@swag tools]# wget https://ruby.taobao.org/mirrors/ruby/ruby-2.3.0.tar.gz
[root@swag tools]# tar -xf ruby-2.3.0.tar.gz
[root@swag tools]# cd ruby-2.3.0
[root@swag ruby-2.3.0]# ./configure
[root@swag ruby-2.3.0]# make && make install
[root@swag ruby-2.3.0]# ruby -v
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-linux]
[root@swag ~]# whereis gem
gem: /usr/local/bin/gem
[root@swag ~]# /usr/local/bin/gem install fpm
[root@swag ~]# fpm -v
1.9.3
# 添加阿里云的Rubygems倉庫,默認的源為外國源,訪問下載速度比較慢,在添加之前先移除原生的Ruby倉庫
[root@swag ~]# gem sources
*** CURRENT SOURCES ***
https://rubygems.org/
[root@swag ~]# gem sources –remove https://rubygems.org/
https://rubygems.org/ removed from sources
# 添加阿里倉庫
[root@swag ~]# gem sources -a http://mirrors.aliyun.com/rubygems/
http://mirrors.aliyun.com/rubygems/ added to sources
[root@swag ~]# gem sources
*** CURRENT SOURCES ***

[root@swag tools]# wget https://ruby.taobao.org/mirrors/ruby/ruby-2.3.0.tar.gz
[root@swag tools]# tar -xf ruby-2.3.0.tar.gz
[root@swag tools]# cd ruby-2.3.0
[root@swag ruby-2.3.0]# ./configure
[root@swag ruby-2.3.0]# make && make install
[root@swag ruby-2.3.0]# ruby -v
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-linux]
[root@swag ~]# whereis gem
gem: /usr/local/bin/gem
[root@swag ~]# /usr/local/bin/gem install fpm
[root@swag ~]# fpm -v
1.9.3
# 添加阿里云的Rubygems倉庫,默認的源為外國源,訪問下載速度比較慢,在添加之前先移除原生的Ruby倉庫
[root@swag ~]# gem sources
*** CURRENT SOURCES ***
https://rubygems.org/
[root@swag ~]# gem sources –remove https://rubygems.org/
https://rubygems.org/ removed from sources
# 添加阿里倉庫
[root@swag ~]# gem sources -a http://mirrors.aliyun.com/rubygems/
http://mirrors.aliyun.com/rubygems/ added to sources
[root@swag ~]# gem sources
*** CURRENT SOURCES ***

5 其它機器測試

# scp把rpm包傳送過去
[root@swag ~]# scp nginx-1.6.3-1.x86_64.rpm root@10.0.0.5:/home/oldboy/tools

# 測試
[root@swag3 tools]# yum localinstall nginx-1.6.3-1.x86_64.rpm -y

6 yum倉庫搭建

安裝createrepo

[root@swag2 ~]# yum install createrepo -y

創(chuàng)建yum倉庫目錄并初始化repodata索引文件

[root@swag2 ~]# mkdir -p /application/yum/centos6.9/x86_64/
[root@swag2 ~]# cd /application/yum/centos6.9/x86_64/ # 拷貝定制的rpm包到此目錄下
[root@swag2 x86_64]# createrepo -pdo /application/yum/centos6.9/x86_64/ /application/yum/centos6.9/x86_64/

提供yum服務(wù)

# 這里用python來提供web服務(wù),也可用apache或nginx來提供web服務(wù)
[root@swag2 x86_64]# python -m SimpleHTTPServer 80 &>/dev/null & # python的httpd模塊
[root@swag2 x86_64]# lsof -i :80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
python 24680 root 3u IPv4 32493 0t0 TCP *:http (LISTEN)

如果有新的rpm包放入必須更新

[root@swag2 x86_64]# createrepo –update /application/yum/centos6.9/x86_64/

客戶端修改yum源

cat >>/etc/yum.repo.d/< [only]
name=Server
baseurl=http://10.0.0.7
# baseurl指定yum倉庫IP,如果不是80端口需要加端口
enabled=1
gpgcheck=0
EOF
# 客戶端以安裝nginx為例
# 清除本地緩存
[root@swag4 ~]# yum clean all
# 顯示本地yum源列表
[root@swag4 ~]# yum –enablerepo=only –disablerepo=base,extras,updates,epel list
# 這里需要注意–enablerepo為local.repo文件中定義的only
# 安裝nginx為例#
yum –enablerepo=local –disablerepo=base,extras,updates,epel install nginx -y

yum的一些用法

# 只下載包不安裝包
1、yumdownloader pcre-devel openssl-devel
2、yum –downloadonly pcre-devel openssl-devel

# yum本地安裝rpm包
yum localinstall pcre-devel openssl-devel
# yum開啟某些個源,關(guān)閉某些源安裝軟件包
yum –enablerepo=local –disablerepo=base,extras,updates,epel install pcre-devel openssl-devel
# yum安裝不做GPG-check
yum install –nogpgcheck pcre-devel openssl-devel
# 查看yum歷史記錄
yum history
# 列出啟用的軟件庫
yum repolist
yum repolist all # 列出所有的軟件庫,包括禁用的也列出

錯誤排查

# 若在客戶端安裝nginx的時候報以下錯誤是因為缺少依賴包的緣故,把其下載下來并更新yum倉庫即可。
yum倉庫:createrepo –update /application/yum/centos6.9/x86_64/
客戶端:yum clean all

Error: Package: nginx-1.6.3-1.x86_64 (only)
           Requires: pcre-devel
Error: Package: nginx-1.6.3-1.x86_64 (only)
           Requires: openssl-devel

# 需要注意配置文件書寫是否有誤

7 鏡像同步公網(wǎng)yum源

上面只是將自己制作的rpm包,放入yum源。但還有一種需求,平時安裝軟件都是從公網(wǎng)下載的,占用帶寬,因此可以直接使用公網(wǎng)yum源的repodata。

上游yum源必須要支持rsync協(xié)議,否則不能使用rsync進行同步。http://mirrors.ustc.edu.cn/status/

# CentOS官方標準源:rsync://mirrors.ustc.edu.cn/centos/
# epel源:rsync://mirrors.ustc.edu.cn/epel/
# 同步命令:
# 使用rsync同步y(tǒng)um源,為了節(jié)省帶寬、磁盤和下載時間,這里只同步了CentOS6的rpm包,這樣所有的rpm包只占用了21G,全部同步需要300G左右。
# 同步base源,小技巧,我們安裝系統(tǒng)的光盤鏡像含有部分rpm包,大概3G,這些就不用重新下載。
/usr/bin/rsync -av rsync://mirrors.ustc.edu.cn/centos/6/os/x86_64/ /data/yum_data/centos/6/os/x86_64/
/usr/bin/rsync -av rsync://mirrors.ustc.edu.cn/centos/6/extras/x86_64/ /data/yum_data/centos/6/extras/x86_64/
/usr/bin/rsync -av rsync://mirrors.ustc.edu.cn/centos/6/updates/x86_64/ /data/yum_data/centos/6/updates/x86_64/
# epel源
/usr/bin/rsync -av –exclude=debug rsync://mirrors.ustc.edu.cn/epel/6/x86_64/ /data/yum_data/epel/6/x86_64/
# 使用內(nèi)網(wǎng)yum源方法
# 可以自建一個內(nèi)網(wǎng)dns,如果沒有,可使用hosts解析。
echo ‘192.168.0.200 mirrors.aliyun.com’ >>/etc/hosts
# 結(jié)果展示
[root@swag5 data]# du -sh yum_data
21G yum_data
[root@swag5 data]# tree -L 3 yum_data/
yum_data/
├── centos
│ ├── 6
│ │ ├── extras
│ │ ├── os
│ │ └── updates
│ └── RPM-GPG-KEY-CentOS-6
├── epel
│ └── 6
│ └── x86_64

總結(jié)

以上所述是小編給大家介紹的Centos定制rpm包、搭建yum倉庫的教程,大家如有疑問可以留言,或者聯(lián)系站長。感謝親們支持?。?!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

成都創(chuàng)新互聯(lián)科技有限公司,經(jīng)過多年的不懈努力,公司現(xiàn)已經(jīng)成為一家專業(yè)從事IT產(chǎn)品開發(fā)和營銷公司。廣泛應用于計算機網(wǎng)絡(luò)、設(shè)計、SEO優(yōu)化、關(guān)鍵詞排名等多種行業(yè)!


分享名稱:Centos定制rpm包、搭建yum倉庫的教程
轉(zhuǎn)載源于:http://www.5511xx.com/article/dpjdcsi.html