最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Centos定制rpm包、搭建yum倉(cāng)庫(kù)的教程

 更新時(shí)間:2019年11月29日 16:16:37   作者:OldDriver6  
這篇文章主要介紹了Centos定制rpm包、搭建yum倉(cāng)庫(kù)的教程,感興趣的朋友跟隨小編一起看看吧

1 保留yum安裝軟件時(shí)下載下來(lái)的rpm包

只需修改yum配置文件即可。下載下來(lái)的rpm包會(huì)自動(dòng)保存在/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寫(xiě)的,因此系統(tǒng)環(huán)境需要ruby。不推薦yum安裝ruby,在測(cè)試的時(shí)候會(huì)出現(xiàn)一些問(wè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倉(cāng)庫(kù),默認(rèn)的源為外國(guó)源,訪問(wèn)下載速度比較慢,在添加之前先移除原生的Ruby倉(cāng)庫(kù)
[root@swag ~]# gem sources
*** CURRENT SOURCES ***
https://rubygems.org/ 
[root@swag ~]# gem sources --remove https://rubygems.org/
https://rubygems.org/ removed from sources
# 添加阿里倉(cāng)庫(kù)
[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:指定目標(biāo)類型,即想要制作為什么包
-n:指定包的名字
-v:指定包的版本號(hào)
-C:指定打包的相對(duì)路徑
-d:指定依賴于哪些包
-f:第二次打包時(shí)目錄下如果有同名安裝包存在,則覆蓋它
-p:輸出的安裝包的目錄,不想放在當(dāng)前目錄下就需要指定
--post-install:軟件包安裝完成之后所要運(yùn)行的腳本;同--offer-install
--pre-install:軟件包安裝完成之前所要運(yùn)行的腳本;同--before-install
--post-uninstall:軟件包卸載完成之后所要運(yùn)行的腳本;同--offer-remove
--pre-uninstall:軟件包卸載完成之前所要運(yùn)行的腳本;同—before-remove

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

fpm支持的目標(biāo)類型包
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倉(cāng)庫(kù),默認(rèn)的源為外國(guó)源,訪問(wèn)下載速度比較慢,在添加之前先移除原生的Ruby倉(cāng)庫(kù)
[root@swag ~]# gem sources
*** CURRENT SOURCES ***
https://rubygems.org/ 
[root@swag ~]# gem sources --remove https://rubygems.org/
https://rubygems.org/ removed from sources
# 添加阿里倉(cāng)庫(kù)
[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倉(cāng)庫(kù),默認(rèn)的源為外國(guó)源,訪問(wèn)下載速度比較慢,在添加之前先移除原生的Ruby倉(cāng)庫(kù)
[root@swag ~]# gem sources
*** CURRENT SOURCES ***
https://rubygems.org/ 
[root@swag ~]# gem sources --remove https://rubygems.org/
https://rubygems.org/ removed from sources
# 添加阿里倉(cāng)庫(kù)
[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 其它機(jī)器測(cè)試

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

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

6 yum倉(cāng)庫(kù)搭建

安裝createrepo

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

創(chuàng)建yum倉(cāng)庫(kù)目錄并初始化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來(lái)提供web服務(wù),也可用apache或nginx來(lái)提供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/<<EOF
[only]
name=Server
baseurl=http://10.0.0.7    
# baseurl指定yum倉(cāng)庫(kù)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開(kāi)啟某些個(gè)源,關(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
# 列出啟用的軟件庫(kù)
yum repolist
yum repolist all # 列出所有的軟件庫(kù),包括禁用的也列出

錯(cuò)誤排查

# 若在客戶端安裝nginx的時(shí)候報(bào)以下錯(cuò)誤是因?yàn)槿鄙僖蕾嚢木壒?,把其下載下來(lái)并更新yum倉(cāng)庫(kù)即可。
yum倉(cāng)庫(kù):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

# 需要注意配置文件書(shū)寫(xiě)是否有誤

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

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

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

# CentOS官方標(biāo)準(zhǔn)源:rsync://mirrors.ustc.edu.cn/centos/
# epel源:rsync://mirrors.ustc.edu.cn/epel/
# 同步命令:
# 使用rsync同步y(tǒng)um源,為了節(jié)省帶寬、磁盤(pán)和下載時(shí)間,這里只同步了CentOS6的rpm包,這樣所有的rpm包只占用了21G,全部同步需要300G左右。
# 同步base源,小技巧,我們安裝系統(tǒng)的光盤(pán)鏡像含有部分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源方法
# 可以自建一個(gè)內(nèi)網(wǎng)dns,如果沒(méi)有,可使用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倉(cāng)庫(kù)的教程,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!

相關(guān)文章

  • Linux定時(shí)任務(wù)Crontab命令使用詳解與總結(jié)

    Linux定時(shí)任務(wù)Crontab命令使用詳解與總結(jié)

    本為大家介紹了Linux定時(shí)任務(wù)Crontab命令使用詳解并總結(jié)Crontab命令的一些使用技巧以及工作中遇到的一些問(wèn)題解決方法
    2018-10-10
  • Linux中文件系統(tǒng)truncate.c詳解

    Linux中文件系統(tǒng)truncate.c詳解

    這篇文章主要介紹了Linux中文件系統(tǒng)truncate.c詳解,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-03-03
  • CentoS6.5環(huán)境下redis4.0.1(stable)安裝和主從復(fù)制配置方法

    CentoS6.5環(huán)境下redis4.0.1(stable)安裝和主從復(fù)制配置方法

    這篇文章主要介紹了CentoS6.5環(huán)境下redis4.0.1(stable)安裝和主從復(fù)制配置方法,結(jié)合實(shí)例形式分析了CentoS6.5下redis4.0.1的安裝和主從復(fù)制配置相關(guān)步驟、命令與操作注意事項(xiàng),需要的朋友可以參考下
    2018-04-04
  • Linux利用CURL發(fā)送POST請(qǐng)求的示例詳解

    Linux利用CURL發(fā)送POST請(qǐng)求的示例詳解

    在現(xiàn)代的網(wǎng)絡(luò)通信中,HTTP 協(xié)議扮演著至關(guān)重要的角色,其中,POST請(qǐng)求是HTTP協(xié)議中的一種方法,用于向服務(wù)器提交數(shù)據(jù)進(jìn)行處理,在 Linux 系統(tǒng)中,curl命令是一個(gè)強(qiáng)大的工具,它允許用戶發(fā)送各種類型的HTTP請(qǐng)求,包括POST請(qǐng)求,本文給大家介紹了Linux利用CURL發(fā)送POST請(qǐng)求
    2024-11-11
  • 在Linux下搭建Git服務(wù)器步驟

    在Linux下搭建Git服務(wù)器步驟

    本篇文章主要介紹了在Linux下搭建Git服務(wù)器步驟,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-01-01
  • Centos7備份文件時(shí)備份文件加入備件日期

    Centos7備份文件時(shí)備份文件加入備件日期

    這篇文章主要介紹了關(guān)于Centos7備份文件時(shí)備份文件加入備件日期,本文通過(guò)實(shí)例圖文的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-12-12
  • Centos7添加靜態(tài)路由的方法

    Centos7添加靜態(tài)路由的方法

    本篇文章主要介紹了Centos7添加靜態(tài)路由的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-02-02
  • CentOS Apache配置詳解 文字說(shuō)明

    CentOS Apache配置詳解 文字說(shuō)明

    要想在linux上實(shí)現(xiàn)網(wǎng)頁(yè)服務(wù)器(www)需要Apache這個(gè)服務(wù)器軟件,不過(guò)Apache僅能提供最基本的靜態(tài)網(wǎng)站數(shù)據(jù)而已,想要實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)站的話,最好還是要PHP與MySQL的支持,所以下面我們將會(huì)以LAMP(linux+Apache+MySQL+PHP)作為安裝與設(shè)置的介紹。
    2011-03-03
  • linux查看文件系統(tǒng)塊大小與內(nèi)存頁(yè)大小的簡(jiǎn)單方法

    linux查看文件系統(tǒng)塊大小與內(nèi)存頁(yè)大小的簡(jiǎn)單方法

    下面小編就為大家?guī)?lái)一篇linux查看文件系統(tǒng)塊大小與內(nèi)存頁(yè)大小的簡(jiǎn)單方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-11-11
  • linux如何開(kāi)啟apache服務(wù)

    linux如何開(kāi)啟apache服務(wù)

    這篇文章主要介紹了linux如何開(kāi)啟apache服務(wù),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-11-11

最新評(píng)論

嘉义市| 峡江县| 永州市| 津南区| 五华县| 垣曲县| 庄河市| 和静县| 兴安县| 霍州市| 公主岭市| 尼木县| 尼木县| 桃江县| 铁力市| 丽江市| 洛宁县| 宜良县| 波密县| 祁连县| 耒阳市| 凤凰县| 红原县| 富宁县| 当雄县| 延庆县| 浦县| 商丘市| 黄陵县| 平江县| 鹿泉市| 邵东县| 丽水市| 渭南市| 扶风县| 卢湾区| 航空| 荣成市| 尼玛县| 永宁县| 轮台县|