[Ubuntu]在Ubuntu下搭建本身的源服務器

一、摘要
    網上有很不少關於搭建源鏡像的文章,可是對於通常人來說,用不着鏡像全部的deb包,只對咱們能用到的感興趣。另外,對於一些在Ubuntu的源中沒有的軟件,咱們也能夠放在咱們本身的源裏,這樣須要的時候就用不着去網上從新搜了。
 
二、源服務器目錄結構
 
dists
+------Lucid
|      +---------main
|      |         +------------binary-i386
|      |         |            +--------------xxx.deb
|      |         |            +--------------xxx.deb
|      |         |            +--------------……
|      |         |            +--------------Packages.gz
|      |         +------------其它體系結構
|      +---------restricted
|      |         +------------binary-i386
|      |         +------------其它體系結構
|      +---------universe
|      +---------multiverse
+------Maverick
+------Natty
 
dists目錄下包含各類ubuntu發佈版本名稱:Lucid(10.04)、Maverick(10.10)等等;
版本名稱(Lucid)目錄下包含4種軟件包類別:
     main : 官方支持的軟件包
     restricted :受限(許可證)支持軟件包
     universe :社區支持軟件包,非官方支持軟件包
     multiverse :收費軟件包
包類別(main)目錄下包含各類體系結構:binary-i386等等
體系結構(binary-i386)目錄下包含軟件包deb文件,而且第一個體系結構目錄下都有一個Packages.gz文件。
 
三、source.list文件
deb http://us.archive.ubuntu.com/ubuntu/ hardy main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ hardy main restricted
以上兩行爲source.list文件的一部分,其含義以下:
    ubuntu中根據deb包中所包含的內容將其分爲兩種,一種是包含已編譯的二進制可執行文件或預編譯的deb包,另外一種是包含軟件源碼的deb包。在source.list文件中用deb和deb-src區分這種包;
     http://us.archive.ubuntu.com/ubuntu/表示deb包所在的服務器目錄;
    hardy表示ubuntu的發佈版本號;
    main restricted表軟件包的類別。
 
以X86主機爲例,deb  http://us.archive.ubuntu.com/ubuntu hardy main restricted表示包含服務器端以下兩目錄中的deb文件。
 
當執行apt-get update命令時,會讀 http://us.archive.ubuntu.com/ubuntu/dists/hardy/main/binary-i386/Packages.gz中以及其它目錄中Packages.gz中的deb文件列表。
 
當執行apt-get install xxx時,會根據apt-get update獲得的deb文件列表獲取相應的deb文件。
 
由以上過程可知,搭建源服務器最關鍵的步驟是生成Packages.gz文件,由dpkg-scanpackages命令完成。舉例,如須要給dists/hardy/main/binary-i386目錄生成Packages.gz,命令以下:
cd dists/../     # 進入dists的父目錄
dpkg-scanpackages dists/hardy/main/binary-i386 | gzip -9 > dists/hardy/main/binary-i386/Packages.gz
四、服務器搭建
安裝完Apache後,將dists目錄拷貝到Apache服務器根目錄的ubuntu目錄下,或者建立符號連接。
 
五、其它
查看一個dpkg-scanpackages命令屬於哪一個軟件包:
apt-file search dpkg-scanpackages | grep bin
 
六、參考連接
 
 
 
轉載自:http://blog.chinaunix.net/uid-24874146-id-2556553.html
相關文章
相關標籤/搜索