如何在Debian中啟用測試版 不穩定版的軟體庫

2021-08-27 04:08:57 字數 3459 閱讀 9314

測試版/不穩定版的debian給開發者提供了乙個比當前穩定版更新的環境以及軟體。你們注意到了麼?其實這些穩定版啊不穩定版啊神馬的都是別名,比方說穩定版其實就是debian的穩定發行版,而測試版將會是下乙個debian的穩定發行版(當然那是測試後的事了)。截至發稿為止,當前debian的穩定發行版是wheezy 7.x,將會成為下乙個穩定版的測試版則是jessie。

當你需要一款應用的最新版本的時候,啟用測試版/不穩定版將會是不二的選擇。當初我因為工作需要,要安裝個apache的 2.4.x到我的debian wheezy。測試版需要的是2.4.x的,可是我的軟體庫裡面只有2.2.x的。所以最好的解決方案當時是將測試版下下來啦。

通常來說當我們想嘗試最新版本的應用時,都應該只在測試版軟體庫中搜尋。

(題圖**)

stable < testing < unstable (穩定 < 測試版 < 不穩定版)

wheezy < jessie < sid

第一步是把測試版/不穩定版的源加到你的sources.list檔案裡。在debian wheezy系統上,/etc/apt/sources.list理應長得像這樣:

$ cat /etc/apt/sources.list

...

deb wheezy/updates main

deb wheezy main

deb-src wheezy/updates main

...把你repo伺服器的鏈結記下來,比如:

這個repo伺服器將會是離你最近的乙個伺服器; 在不同的地理位置會有不同的url,這個將會用於下一步。

如果想加測試/不穩定源,則需要在sources.list檔案加上這些東西:

# testing repository - main, contrib and non-free branches

deb testing main non-free contrib

deb-src testing main non-free contrib

# testing security updates repository

deb testing/updates main contrib non-free

deb-src testing/updates main contrib non-free

# unstable repo main, contrib and non-free branches, no security updates here

deb unstable main non-free contrib

deb-src unstable main non-free contrib

格式將會是

deb 

(deb 《上一步弄的伺服器或映象url>

當然啦,除了用testing或者unstable這麼爛的詞,也能使用他們的發行版代號,比如jessie或者sid

deb  jessie main non-free contrib

deb jessie/updates main contrib non-free

deb sid main non-free contrib

在加了測試/不穩定的repo之後,當你更新系統的時候所有安裝過並且可用的軟體就會立馬更新,而後你的系統就被你玩火**了。

所以需要設定一些規則,以便選定的軟體包在正常的更新時不會被更新到乙個不穩定的測試版本。

我們需要使用「釘住apt」的方式來告訴apt系統,除了我們希望使用測試版或不穩定版的特定軟體包之外,其它的總是使用穩定版的軟體包來更新。

可以通過如下兩個檔案之一來設定如何設定apt的優先順序來「釘住」。

/etc/apt/preferences

或/etc/apt/preferences.d/my_preferences

開啟這兩個檔案之一(如果沒有的話就建立乙個),然後輸入如下內容:

package: *

pin: release a=stable

pin-priority: 700

package: *

pin: release a=testing

pin-priority: 650

package: *

pin: release a=unstable

pin-priority: 600

前面我們提到過,穩定版指的是你當前的debian版本,測試版是下乙個,而不穩定版則是更遠的將來發行版。上面的設定中最主要的是優先順序(pin-priority)。當前的穩定版應該有最高的優先順序,這就是說,正常的apt-get操作只會從當前的穩定版的軟體庫(現在是wheezy)裡面安裝軟體。

更新包快取

在增加了新的軟體庫和指定了優先規則後,需要更新一下包快取。

$ sudo apt-get update

確認apt規則

我們必須確認「釘住」的設定正確,優先順序也沒問題。使用 apt-cache 的 policy 引數來檢查:

$ apt-cache policy apache2

apache2:

installed: (none)

candidate: 2.2.22-13

version table:

2.4.7-1 0

600 unstable/main amd64 packages

2.4.6-3 0

650 testing/main amd64 packages

2.2.22-13 0

700 wheezy/main amd64 packages

如上的輸出,確認在wheezy 穩定版中, 2.2.22 版本的apache是選定的版本,它有最高的優先順序。

現在可以從測試版或不穩定版中選擇乙個特定的軟體來安裝它了。假如說我們要從測試版軟體源中安裝 apache2。

有兩個不同的方法,並且其結果也有所不同。

方式一

# apt-get install apache2/testing

上述命令會從測試版軟體庫中安裝 apache2,並從穩定版軟體庫中安裝其依賴包(穩定版通過apt規則確定)。這個命令在某些情況下會失敗,比如安裝的軟體包(apache2)所需的依賴包在穩定版軟體庫中沒有更新到可以支援該軟體時。

方式二

# apt-get -t testing install apache2

上述命令會從測試版軟體庫中安裝apache2,並從測試版軟體庫中安裝其依賴包。這要比上面的命令工作的更好。

$ man 5 apt_preferences

via: 

譯者:213edu

wxy 校對:wxy

本文由 lctt 原創翻譯,linux中國 榮譽推出

如何在Debian中啟用測試版 不穩定版的軟體庫

測試版 不穩定版的debian給開發者提供了乙個比當前穩定版更新的環境以及軟體。你們注意到了麼?其實這些穩定版啊不穩定版啊神馬的都是別名,比方說穩定版其實就是debian的穩定發行版,而測試版將會是下乙個debian的穩定發行版 當然那是測試後的事了 截至發稿為止,當前debian的穩定發行版是wh...

如何在debian 中啟用 fbcon

如果你使用mingui提示的是newgal does not find matched engine qvfb 請先參照後半部分文章修改 為fbcon 當修改為fbcon 後,再根據下面的內容修改cmdline vi boot grub grub.cfg 開啟後,找到 啟動項選單中的啟動引數,加入下...

如何在Ubuntu(VMware)中啟用滾輪滾動

ubuntu 除了default vi之外 這是我的另乙個問題。我的滑鼠滾輪在ubuntu8.04中不起作用。但是我在vmware中安裝了ubuntu,但是我不認為這是vmware引起的。在這裡,我可以找到有關滑鼠滾輪故障問題的一些有用資訊,請檢視ubuntu滑鼠配置官方 在研究了以上文章之後,我在...