需求:爲項目的4個安裝包,rpm的32位和64位,deb的32位和64位包部署安裝源。html
問題,在一臺機器上發佈32位和64位兩種包。這點很重要,踩的坑,安裝的時候不能識別位數,apt-get無論機器多少位都只下32位的deb包。nginx
ubuntu過程(依賴apache):apache
1,建立目錄ubuntu
mkdir /var/www/html/soft/x86 mkdir /var/www/html/soft/i386(踩得坑就在這,由於沒有把32和64位的分開,而是都放soft下,致使兩個包只能識別一個) mkdir /var/www/html/dists mkdir /var/www/html/dists/lucid mkdir /var/www/html/dists/lucid/main mkdir /var/www/html/dists/lucid/main/binary-i386(這個沒有的話會warning,忽略便可,也能夠在source.list內指定爲64位) mkdir /var/wwwhtml//dists/lucid/main/binary-amd64(這個文件夾必須的,由於我是64位操做系統)
2,拷貝安裝包到x86和i386下bash
3,開始製做源,這一步會生成索引文件:操作系統
dpkg-scanpackages soft/i386/ /dev/null | gzip > /var/www/html/dists/lucid/main/binary-i386/Packages.gz dpkg-scanpackages soft/x86/ /dev/null | gzip > /var/www/html/dists/lucid/main/binary-amd64/Packages.gz
這裏讓binary-i386和binary-amd64指定對應的目錄,不然,下載會找不到相應的文件。code
redhat過程:htm
準備過程,安裝nginx/apache,createrepo。索引
問題:同ubuntu,yum和apt方式不同,yum並非識別安裝位數,須要在安裝腳本中指定路徑,createrepo的時候,對x86和i386分別createrepo,分別生成兩個索引文件,在repo文件中分開寫便可。ip