Ubuntu 16.04 建立 APT Mirror site

2017-01-20 Ubuntu

最近因為配合工作所以建立了一個 APT Mirror site,順手記錄一下安裝步驟

 

由於是 Mirror site,所以要準備一個硬碟至少 300GB 的空間,因為光是 Ubuntu 官方源 amd64、i386、src .. 加一加就 200 多 GB 了

 

環境:

  • Ubuntu 16.04 xenial
  • 預備存放 packages 的空間:/deb

 

 

安裝 APT Mirror site

Step.1 先更新你的 packages database

 

Step.2 安裝 apt-mirror

 

Step.3 設定 apt-mirror 的 mirror list,由於我希望 apt-mirror 安裝在 /deb,所以必須修改 base_path

  • base_path 是 apt-mirror 的根目錄路徑
  • mirror_path 是存放 packages 的地方,這裡必須硬碟空間夠大,否則會悲劇
  • cleanscript 這個是在 apt-mirror 在向外更新 packages 後會清除暫存檔,打開 clean.sh 不要懷疑,他就是沒有任何程式碼。
  • postmirror_script 這個是在 apt-mirror 向外更新完後會執行的 script,可以在這邊寫一些想要執行的動作。

大致上的設定重點在這邊

 

Step.4 mirror.list 加入 repo 源,主要分為 amd64、i386、src 三種,其中軟體分類 main, universe .. 參考 Ubuntu 套件管理

 

deb repo 的 url 組成是有意義的舉例 nginx 來說

deb http://nginx.org/packages/mainline/ubuntu xenial nginx

  • http://nginx.org/packages/mainline/ubuntu  根目錄:裡面必須由 conf, db, dists, pool 組成
  • xenial nginx 從 dists 後的目錄到 binary-amd64, binary-i386, source

 

如果要新加一個 apt-mirror 路徑為 http://shazi.info/packages/mainline/ubuntu/dists/xenial/release/apache/binary-amd64

那我的設定就會是 deb-amd64 http://shazi.info/packages/mainline/ubuntu xenial release apache

 

如果沒加 amd64, i386,就會依照 apt-mirror 這台 Server 的位元自動選擇。

apt-mirror 可以選擇就近的 free.nchc.org.tw 國網中心,也可以選擇官方的 archive.ubuntu.com (官方會替你備援這個網址)

 

Step.5 開始從鏡像 apt-mirror,如果是第一次更新,大概需要跑 3~4 個小時吧?!

 

Step.6 安裝 apache2 提供 http 介面給 Client Server 獲取 packages

 

Step.7 將鏡像回來的資料連結到網站目錄

 

Step.8 設定 apache

 

Step.9 重啟生效

 

Step.10 使用 Client Server 加入 source.list

 

還可以用 apt-cache 驗證來源

 

如果要定期更新,可以將 apt-mirror 寫入 crontab

 

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *

彙整

分類

open all | close all

License

訂閱 Mr. 沙先生 的文章

輸入你的 email 用於訂閱