[英]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.