中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

fpm使用記錄

發布時間:2020-07-05 22:47:44 來源:網絡 閱讀:433 作者:shen445122 欄目:編程語言

fpm包管理工具介紹


這里還有一份google關于rpm介紹的PPT:fpm, baylisa, april 2011.pdf


所以下面重點介紹使用的過程:


1、修改rubygems的源由于國內網絡原因,導致 rubygems.org 存放在 Amazon S3 上面的資源文件間歇性連接失敗。


所以需要改成taobao提供的源。這是一個完整 rubygems.org 鏡像,可以用此代替官方版本,同步頻率目前為15分鐘一次。

# yum install ruby rubygems
# gem sources --remove http://rubygems.org/
# gem sources -a http://ruby.taobao.org/
# gem sources -l
*** CURRENT SOURCES ***
http://ruby.taobao.org

   請確保只有 ruby.taobao.org


2、使用記錄FPM功能簡單說就是將一種類型的包轉換成另一種類型。

支持的源類型包:“dir”:將目錄打包成所需要的類型,可以用于源碼編譯安裝的軟件包


    “rpm”:對rpm進行轉換

    “gem”:對rubygem包進行轉換

    “python”:將python模塊打包成相應的類型


支持的目標類型包:

    “rpm”:轉換為rpm包

    “deb”:轉換為deb包

    “solaris”:轉換為solaris包

    “puppet”:轉換為puppet模塊

因為我們平時使用的比較多的是rpm包,因此這里主要介紹如何將源碼安裝的包轉換為RPM包,其他功能感興趣的可以試試。


3、操作實例以安裝squid為例。源為已經編譯安裝的目錄,制作rpm包。


首先需要下載squid的tar.gz包

# cd squid-3.4.6
# ./configure --prefix=/home/squid/squid-3.4.6
#  make
#  make  install

 

#tar squid-conf.tar.gz -C /home/squid/squid-3.4.6/etc/  #將配置文件提前放置在etc下面。

 

可以先編寫好安裝rpm包執行之前的以及執行之后腳本,rpm包卸載之前以及卸載之后執行的腳本。

安裝之前執行的腳本,用于創建目錄和用戶:

# cat squid.pre.sh
#!/bin/sh
#a script to be run before package installation
useradd squid
mkdir -p /home/squid
mkdir -p /home/squid/var/log/squid
mkdir -p /home/squid/cache
chown -R squid:squid /home/squid

 

安裝之后執行的腳本,用于創建軟連接和添加環境變量:

# cat squid.after.sh
#!/bin/sh
#a script to be run after package installation
cd /home/squid
ln -s squid-3.4.6 squid
mkdir /etc/squid
cd /home/squid/squid/etc
cp -r error_page /etc/squid/
cd /etc/squid/
ln -s /home/squid/squid/etc/squid.conf squid.conf
sed -i 's/$PATH:$HOME\/bin/\/home\/squid\/squid\/sbin:$PATH:$HOME\/bin/' /root/.bash_profile

 

開始生成rpm文件

#fpm -s dir  -t rpm -v 1.0.0 -n squid --pre-install /root/squid.pre.sh --after-install /root/squid.after.sh /home/squid/squid-3.4.6/

 

參數介紹:

# -s:源類型包

# -t:目標類型包

# -v:版本號

# -n:軟件包名稱

# --pre-install:安裝前執行的腳本

# --after-install :安裝后執行的腳本

# 需要轉換目錄放置在后面

 

至此,將會在你該目錄下面生成一個rpm文件

 

4、可能出現的錯誤

錯誤一:

checking for termcap functions library... configure: error: No curses/termcap library found

是因為沒有安裝ncurses包導致的

# yum  list|grep ncurses*

錯誤二:

../depcomp: line 571: exec: g++: not found

錯誤原因沒有安裝gcc-c++包

# yum install gcc-c++

錯誤三:

./include/my_global.h:1099: 錯誤:對 C++ 內建類型 ‘bool’ 的重聲明

這個錯誤是因為先./congfigure 又裝的gcc-c++之后又make 導致的,解決方法是重新./configure,make,make install就可以恢復


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

本溪市| 临朐县| 南涧| 松江区| 衡水市| 塔城市| 荥经县| 荣成市| 丘北县| 建昌县| 平度市| 绵阳市| 沙河市| 房产| 张家口市| 舒城县| 泉州市| 武汉市| 兴宁市| 新干县| 安庆市| 顺昌县| 伊金霍洛旗| 阳城县| 抚宁县| 甘孜县| 龙口市| 吴桥县| 都江堰市| 临武县| 金山区| 磐石市| 巩留县| 乃东县| 辉南县| 衡山县| 会宁县| 辉县市| 武鸣县| 英吉沙县| 兰西县|