Centos系統中用mock構建rpm的方法_Linux

來源:互聯網
上載者:User

前言

在centos下執行rpmbuild -ba package.spec的時候,通常會要求系統也安裝對應的依賴包,這樣就會導致系統裝上許多沒用的軟體包,佔用空間。於是搜尋了一下,發現可以通過mock命令來解決這個問題。

構建方法

首先是安裝mock,由於mock是在epel倉庫裡的,所以還需要先裝epel倉庫

yum -y install epel-releaseyum -y install mock

通常情況下使用rpmbuild會新開一個使用者,比如builder,這樣就不會汙染系統內容。我們需要把builder使用者加入mock使用者組

usermod -a -G mock builder

mock下使用rebuild需要src.rpm檔案,所以如果只有.spec檔案的話,需要先產生src.rpm檔案

rpmbuild -bs package.spec

這樣在SRPM目錄下就會產生一個src.rpm檔案了,然後就可以通過mock命令來rebuild rpm檔案

首先需要初始化mock環境,在/etc/mock檔案夾下有各個環境的設定檔,比如centos 6就是epel-6-x86_64,初始化命令就是:

mock -r epel-6-x86_64 --init

初始化完畢之後就可以開始構建了

mock -r epel-6-x86_64 rebuild package-1.1-1.src.rpm

構建完畢,rpm檔案會存放在/var/lib/mock/epel-6-x86_64/result目錄下。當然我們可以通過–resultdir參數來指定rpm檔案的組建目錄

mock -r epel-6-x86_64 rebuild package-1.1-1.src.rpm --resultdir=/home/builder/rpms

最後執行clean命令清理環境

mock -r epel-6-x86_64 --clean

總結

以上就是關於Centos下使用mock構建rpm的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的協助,如果有疑問大家可以留言交流。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.