簡體   English   中英

如何創建mongodb軟件包以在Ubuntu上使用apt-get安裝?

[英]How to create mongodb package to install with apt-get on Ubuntu?

我正在從源代碼( https://github.com/mongodb/mongo.git )構建MongoDb,現在希望將其打包為.deb軟件包,以便可以使用apt-get將其安裝在其他Ubuntu計算機上。 在Ubuntu 12.04.4 x64上構建它不是問題,但是我不知道如何從中創建.deb包。

從git簽出的'debian'目錄包含.rules和.control文件,但是我必須調用哪些命令才能為mongodb-enterprise版本創建軟件包? 由於似乎所有控制文件都存在,所以我認為這只是運行命令的問題,但是我無法在文檔或mongodb網站上找到它。 還請閱讀TeTeT在注釋中提到的文檔說明,但是然后我需要從頭開始創建包,並且所有需要的東西似乎已經在'debian'目錄中了……可以弄清楚如何用它來構建包。

我確實嘗試使用dh_builddeb命令,但是報告說.control文件不是debian格式的檔案。

“ debian”目錄包含以下文件:

root@buildmongo:/mongobuild/mongo# ls -l debian/
total 424
-rw-r--r-- 1 root root  4001 Jul 25 16:12 bsondump.1
-rw-r--r-- 1 root root  5077 Jul 25 16:12 changelog
-rw-r--r-- 1 root root     2 Jul 25 16:12 compat
-rw-r--r-- 1 root root   483 Jul 25 16:12 copyright
-rw-r--r-- 1 root root    33 Jul 25 16:12 dirs
-rw-r--r-- 1 root root    39 Jul 25 16:12 files
-rw-r--r-- 1 root root  8216 Jul 25 16:12 init.d
-rw-r--r-- 1 root root   891 Jul 25 16:12 lintian-overrides
-rw-r--r-- 1 root root 16595 Jul 25 16:12 mongo.1
-rw-r--r-- 1 root root 39099 Jul 25 16:12 mongod.1
-rw-r--r-- 1 root root  1693 Jul 25 16:12 mongod.conf
-rw-r--r-- 1 root root  1676 Jul 25 16:12 mongod.upstart
-rw-r--r-- 1 root root   154 Jul 25 16:12 mongodb-enterprise-server.docs
-rw-r--r-- 1 root root  1441 Jul 25 16:12 mongodb-enterprise-server.postinst
-rw-r--r-- 1 root root   154 Jul 25 16:12 mongodb-enterprise-unstable-server.docs
-rw-r--r-- 1 root root  1441 Jul 25 16:12 mongodb-enterprise-unstable-server.postinst
-rw-r--r-- 1 root root 14760 Jul 25 16:12 mongodb-enterprise-unstable.control
-rw-r--r-- 1 root root  4524 Jul 25 16:12 mongodb-enterprise-unstable.rules
-rw-r--r-- 1 root root 14845 Jul 25 16:12 mongodb-enterprise.control
-rw-r--r-- 1 root root  4226 Jul 25 16:12 mongodb-enterprise.rules
-rw-r--r-- 1 root root  1441 Jul 25 16:12 mongodb-org-server.postinst
-rw-r--r-- 1 root root  1441 Jul 25 16:12 mongodb-org-unstable-server.postinst
-rw-r--r-- 1 root root 14704 Jul 25 16:12 mongodb-org-unstable.control
-rw-r--r-- 1 root root  4345 Jul 25 16:12 mongodb-org-unstable.rules
-rw-r--r-- 1 root root 14839 Jul 25 16:12 mongodb-org.control
-rw-r--r-- 1 root root  4049 Jul 25 16:12 mongodb-org.rules
-rw-r--r-- 1 root root 16840 Jul 25 16:12 mongodump.1
-rw-r--r-- 1 root root 19099 Jul 25 16:12 mongoexport.1
-rw-r--r-- 1 root root 14153 Jul 25 16:12 mongofiles.1
-rw-r--r-- 1 root root 16065 Jul 25 16:12 mongoimport.1
-rw-r--r-- 1 root root 13347 Jul 25 16:12 mongooplog.1
-rw-r--r-- 1 root root  5825 Jul 25 16:12 mongoperf.1
-rw-r--r-- 1 root root 16644 Jul 25 16:12 mongorestore.1
-rw-r--r-- 1 root root 23535 Jul 25 16:12 mongos.1
-rw-r--r-- 1 root root  5388 Jul 25 16:12 mongosniff.1
-rw-r--r-- 1 root root 15941 Jul 25 16:12 mongostat.1
-rw-r--r-- 1 root root 12415 Jul 25 16:12 mongotop.1
-rw-r--r-- 1 root root   932 Jul 25 16:12 postrm
-rw-r--r-- 1 root root   692 Jul 25 16:12 preinst
-rw-r--r-- 1 root root   894 Jul 25 16:12 prerm
-rw-r--r-- 1 root root   329 Jul 25 16:12 watch

(我之所以構建MongoDb是因為我需要SSL支持,並且不需要與Mongo的支持合同。如果我理解正確,那么如果您簽署了支持合同,則只能使用從mongodb網站下載的企業版(支持SSL)。 )

問候,下呂

上游打包很少好於維護者的打包,因此我將從Debian獲得源碼包:

apt-get install devscripts
dget -ux http://http.debian.net/debian/pool/main/m/mongodb/mongodb_2.4.10-2.dsc
cd mongodb-2.4.10/
## install Build-Depends (extracted from "debian/control"):
sudo apt-get install debhelper dh-systemd libboost-date-time-dev libboost-dev libboost-filesystem-dev libboost-program-options-dev libboost-thread-dev libgoogle-perftools-dev libpcap-dev libpcre3-dev libreadline-dev libsnappy-dev libstemmer-dev libssl-dev libv8-dev python-pymongo scons
debuild -uc -b

我在Debian上工作,所以我沒有在Ubuntu上測試上述過程(我不建議這樣做)。
如果軟件包沒有構建(由於缺少構建依賴性等),那么您可以從下一頁選擇其他套件

並嘗試獲取較舊的DSC文件。
祝好運。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM