[完全用 GNU/Linux 工作] 05. 套件庫及鏡像站
每個 GNU/Linux 都有屬於它的哲學及用途,以下就讓凍仁簡述一下自己的看法。
由於每家的設計取向不同,有些好用的第三方套件並不會 (或來不及) 包進預設的套件庫,這時我們可以自行擴充並藉此減少自行編譯的時間。這樣除了可以減少安裝所需的時間,也可達到環保的效益 (請大家為住在南極的企鵝先生多著想一下)。
在 Debian 裡我們只需在 sources.list 的最底下加入欲擴充的套件來源 (source) 即可。
※ 若使用 apt-get/aptitude update 時出現 NO_PUBKEY 的字樣,還請參考 NO_PUBKEY? Add GPG key for apt-get update 一文解決。
在 Ubuntu 上除了可使用各專案提供的套件來源,還可上官方的 Launchpad 平台尋找可用的來源,若 Launchpad 上有適合的套件來源,我們除了編輯 sources.list 以外,還可使用 add-apt-repository 指令來新增。
CentOS 預設的套件庫並不及 Debian 來的完整 (例如 htop, drush ...) ,但我們還有第三方來源可以使用。著名的有 RPMForge 及 EPEL,請先行安裝 RPMforge 再安裝 EPEL,切忌。
下載 RPMForge 安裝檔。
匯入 DAG 的 RPM GPG 金鑰。
驗證套件,查看此安裝是否為 DAG 所簽證,就算是在 Linux 上也是得避免安裝來路不名的軟體。
安裝 RPMforge。
現在可以使用 yum 來安裝 RPMForge 來源提供的套件了,例如 htop。若還是不夠用,可以連 EPEL 一併安裝。
下載 EPEL 安裝檔。
安裝 EPEL。
註:CentOS 上也有相對於 Debian 的 sources.list,請參照 /etc/yum.repos.d/ 底下的 *.repo。
眼尖的客官不難發現上方 Debian 的 sources.list 設定檔中藏著 mirror 一關鍵字,它就是先前提到的鏡像站,它會不定期同步主站 (Master) 上的套件庫並藉此達到分流的效果。而通常我們可以在官網上找到位於各國的鏡像站列表
▲ Debian 全球映射站網站截圖。
系統預載的鏡像站不見得是最適合我們的,其連線速度會依照地域及線路狀況而有所不同,我們可以透過 netselect (Debian) 及 software-properties (Ubuntu) ... 等工具來篩選出最適合的鏡像站,詳情請參考以下連結。
- Debian: 堅守自由軟體精神,擁有嚴謹的非營利組織團隊,支援眾多平台,例如 NOKIA N900 及 Raspberry Pi。主要分成穩定版 (stable)、測試版 (testing)、及不穩定版 (unstable)。
- Ubuntu: Debian 的不穩定版分支,其設計目的為使用者導向,易上手且驅動支援較完整,主要分成桌面版 (desktop) 及 伺服器版 (server),並於每兩年發布長期支援版本 (LTS)。
- RHEL: 由 Red Hat 公司釋出,其主要對象為追求穩定的公司行號。
- CentOS: 依照開放原始碼所釋出的 RHEL,也可說是社群版的 RHEL,但不包含一些封閉的軟體。
1. 擴充套件庫
由於每家的設計取向不同,有些好用的第三方套件並不會 (或來不及) 包進預設的套件庫,這時我們可以自行擴充並藉此減少自行編譯的時間。這樣除了可以減少安裝所需的時間,也可達到環保的效益 (請大家為住在南極的企鵝先生多著想一下)。
1.1. Debian
在 Debian 裡我們只需在 sources.list 的最底下加入欲擴充的套件來源 (source) 即可。
[ jonny@wheezy ~ ]
$ sudo vi /etc/apt/sources.list Enter
......
9 # Experimental. 10 deb http://ftp.tw.debian.org/debian experimental main 11 12 # squeeze. 13 deb http://opensource.nchc.org.tw/debian/ squeeze main contrib non-free 14 15 # Multimedia. 16 # - master 17 #deb http://www.deb-multimedia.org wheezy main non-free 18 #deb-src http://www.deb-multimedia.org wheezy main non-free 19 20 # - mirrors of Taiwan. 21 deb ftp://ftp.ubuntu-tw.org/mirror/debian-multimedia wheezy main non-free 22 deb-src ftp://ftp.ubuntu-tw.org/mirror/debian-multimedia wheezy main non-free 23 24 # Mate Desktop Environment 25 # - master 26 #deb http://repo.mate-desktop.org/debian wheezy main 27 28 # - mirrors of Taiwan. 29 deb ftp://ftp.ubuntu-tw.org/mirror/mate-desktop/debian wheezy main 30 31 # Iceweasel. 32 deb http://mozilla.debian.net/ wheezy-backports iceweasel-release 33 34 # hime 35 deb http://debian.luna.com.tw/wheezy ./ 36 deb-src http://debian.luna.com.tw/wheezy ./ 37
※ 若使用 apt-get/aptitude update 時出現 NO_PUBKEY 的字樣,還請參考 NO_PUBKEY? Add GPG key for apt-get update 一文解決。
1.2. Ubuntu
在 Ubuntu 上除了可使用各專案提供的套件來源,還可上官方的 Launchpad 平台尋找可用的來源,若 Launchpad 上有適合的套件來源,我們除了編輯 sources.list 以外,還可使用 add-apt-repository 指令來新增。
[ jonny@precise ~ ]
$ sudo add-apt-repository ppa:elleryq/gcin Enter
1.3. CentOS
CentOS 預設的套件庫並不及 Debian 來的完整 (例如 htop, drush ...) ,但我們還有第三方來源可以使用。著名的有 RPMForge 及 EPEL,請先行安裝 RPMforge 再安裝 EPEL,切忌。
1.3.1. RPMforge
下載 RPMForge 安裝檔。
[ jonny@centos ~ ]
# 64 bit
$ wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm Enter
# 32 bit
$ wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpm Enter
匯入 DAG 的 RPM GPG 金鑰。
[ jonny@centos ~ ]
$ sudo rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt Enter
驗證套件,查看此安裝是否為 DAG 所簽證,就算是在 Linux 上也是得避免安裝來路不名的軟體。
[ jonny@centos ~ ]
$ rpm -K rpmforge-release-0.5.2-2.el6.rf.*.rpm Enter
安裝 RPMforge。
[ jonny@centos ~ ]
$ sudo rpm -i rpmforge-release-0.5.2-2.el6.rf.*.rpm Enter
現在可以使用 yum 來安裝 RPMForge 來源提供的套件了,例如 htop。若還是不夠用,可以連 EPEL 一併安裝。
[ jonny@centos ~ ]
$ sudo yum install htop Enter
1.3.2. EPEL
下載 EPEL 安裝檔。
[ jonny@centos ~ ]
$ wget http://mirror-fpt-telecom.fpt.net/fedora/epel/6/i386/epel-release-6-8.noarch.rpm Enter
安裝 EPEL。
[ jonny@centos ~ ]
$ sudo rpm -ivh epel-release-6-8.noarch.rpm Enter
# noarch 表示支援各種硬體平台。
註:CentOS 上也有相對於 Debian 的 sources.list,請參照 /etc/yum.repos.d/ 底下的 *.repo。
2. 鏡像站 (Mirror)
眼尖的客官不難發現上方 Debian 的 sources.list 設定檔中藏著 mirror 一關鍵字,它就是先前提到的鏡像站,它會不定期同步主站 (Master) 上的套件庫並藉此達到分流的效果。而通常我們可以在官網上找到位於各國的鏡像站列表
▲ Debian 全球映射站網站截圖。
系統預載的鏡像站不見得是最適合我們的,其連線速度會依照地域及線路狀況而有所不同,我們可以透過 netselect (Debian) 及 software-properties (Ubuntu) ... 等工具來篩選出最適合的鏡像站,詳情請參考以下連結。
- APT HOWTO (Obsolete Documentation) - 基礎設定
- 使用 software-properties 管理 APT 套件來源清單 - FlossDoc
- Ubuntu Linux 挑選最佳的 Mirror Site (APT Repository) - Tsung's Blog
本文同步發佈於 iT 邦幫忙。
相關連結:
★Debian 無痛起步法: 了解 Debian 系統的哲學
★套件庫來源 - Ubuntu 正體中文 Wiki
★★Linux Software Repositories – Google
資料來源:
★Install and Enable RPMForge Repository in RHEL/CentOS 6, 5, 4
★CentOS / RHEL / Scientific Linux 6 Enable & Install EPEL Repo
留言
張貼留言
喜歡這篇文章嗎?歡迎在底下留言讓凍仁知道。😉