實際應用中常常有這樣的情況,一個單位中只有部分計算機直接連接外網,而內網中有十幾台安裝有Ubuntu系統的計算機。這樣的情況下,這些安裝Ubuntu系統電腦的日常更新或軟件安裝就成了一件“煩心”事,有沒有什麼好的方法可以解決這個問題呢?
解決這個問題,可以找一台安裝了Ubuntu系統且有兩塊網卡的電腦(一塊連接外網,另一塊連接內網),然後在該主機上安裝Apt-proxy代理服務器軟件即可(本文介紹基於Ubuntu Desktop 9.10。)。
董師傅提示:Apt-proxy是一個專用於APT軟件包安裝的代理服務器軟件,它可以在本地創建一個外部鏡像服務器的軟件庫的完整副本。內網的其它機器只要訪問Apt-proxy代理服務器就可以更新或安裝軟件。並且當客戶端請求的軟件包在Apt-proxy服務器不存在時,Apt-proxy自動從外部鏡像服務器下載軟件包到本地,然後供客戶端下載和安裝。
Part I:下載安裝Apt-proxy
默認狀態下,Ubuntu系統中沒有安裝Apt-proxy代理服務器軟件,不過Ubuntu的軟件源中已經包含了該軟件的安裝包。在菜單“系統→系統管理”下找到“新立得軟件包管理”項並打開,點擊窗口工具欄上的“搜索”按鈕,在“搜索”對話框中輸入關鍵字“apt-proxy”,則搜索結果出現在可安裝軟件包列表區中(如圖1所示)。標記“apt-proxy”軟件包並安裝後,將生成Apt-proxy緩存從外部鏡像服務器下載的安裝包的目錄 “/var/cache/apt-proxy”,該目錄初始時為空。
Part II:配置Apt-proxy
Apt-proxy的配置文件為“/etc/apt-proxy/apt-proxy-v2.conf”,我們可以使用VI或Gedit等編輯器來編輯該文件。
配置文件格式比較簡單,文件內容分為若干段(項),以“[ ]”括起來的稱為一個段,括號中的內容為段名。如“[DEFAULT]”段表示該部分內容為Apt-proxy的一些默認選項,用戶可根據需要進行設定。
如設定運行Apt-proxy的主機的IP地址、端口號(默認為9999)、緩存下載的軟件包的路徑(默認為“/var/cache/apt- proxy”)等。配置文件以半角分號作為注釋符號,前面加分號的行不起任何作用。在這裡我們找到“[ubuntu]”這個段(因客戶端安裝的是 Ubuntu系統,如客戶端安裝Debian,則需對應找到“[debian]”段),其中有一項“backends”(“後端”即外部鏡像服務器),如只填寫一個外部鏡像服務器,則服務器的地址直接跟在“backends”後面,否則轉下一行填寫外部鏡像服務器的地址,每個地址一行。 “[ubuntu]”段的設置類似圖2所示:
配置文件設定好後,保存退出並重新啟動Apt-proxy代理服務器使之生效。為確認Apt-proxy代理服務器是否正常運行,我們可以用命令 “netstat –tnl”來查看端口“9999”是否處於偵聽狀態,如是則說明Apt-proxy工作正常,就可以接受客戶端的連接請求了。