Apt смесване и съчетаване между Stable, Testing и Unstable

Тук е обяснено как се инсталират и настройват програми под Linux.

Модератори: Freya, Kulu Ngile

Apt смесване и съчетаване между Stable, Testing и Unstable

Мнениеот Kulu Ngile » Вто 16, Май, 2006 13:49

Хората казват, че stable версията за Debian е стара. Дали е така?!
Има един много лесен начин, който ви позволява да смесвате и в същото време да съвпадат зависимостите м/у stable, testing и unstable sources.Чрез този подход ще можете да ползвате в по-голяма степен Stable версия, но също така ще имате и най-новите пакети, които ви интересуват.
Ще попитате, защо направо не минем на Testing или Unstable? Отговора е много прост, а именно, че Stable се гарантирани от Security Team, докато Testing и Unstable не.

Нека да започнем :)

1. Трябва да си добавите testing и unstable sources в /etc/apt/sources.list. Ето го и моят sources.list
Код за потвърждение: Избери целия код

deb http://debian.ludost.net/debian/ stable main
deb-src http://debian.ludost.net/debian/ stable main

deb ftp://ftp.bg.debian.org/debian/ stable main contrib non-free
deb ftp://ftp.bg.debian.org/debian/ testing main contrib non-free
deb ftp://ftp.bg.debian.org/debian/ unstable main contrib non-free

deb-src ftp://ftp.bg.debian.org/debian/ stable main contrib non-free
deb-src ftp://ftp.bg.debian.org/debian/ testing main contrib non-free
deb-src ftp://ftp.bg.debian.org/debian/ unstable main contrib non-free

deb http://security.debian.org/ stable/updates main contrib non-free
deb http://security.debian.org/ testing/updates main contrib non-free

deb ftp://ftp.uni-sofia.bg/debian-addons-bg/ ./

deb ftp://ftp.nerim.net/debian-marillat/ sarge main
deb ftp://ftp.nerim.net/debian-marillat/ etch main
deb ftp://ftp.nerim.net/debian-marillat/ sid main




2. Следва да променим или създадем файла /etc/apt/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



3. Трябва да си обновим съдържанието в хранилището, т.е.
Код за потвърждение: Избери целия код
apt-get update



4. Инсталиране на пакети

За да инсталирате нови пакети, процедурата е както преди, т.е. apt-get install <пакет>. Ако пакета съществува само в Stable, ще го грабне и инсталира. Ако съществува само в Unstable, тогава ще го вземе от там.

Възниква въпроса ако съществува и на двете места, но ние искаме Unstable, какво да правим? Има два подхода:

- apt-get install <пакет>/unstable
Така ще се инсталира Unstable версията на пакета и ще се опита да нагласи и зависимостите от Stable. Това има вероятност и да не работи, защото ще ви даде грешка :
Код за потвърждение: Избери целия код
...........
E: Sorry, broken packages

, т.е. проблем със зависимостите или по-точно с техните версии.

- apt-get -t unstable install <пакет>
По този начин ще се инсталира не само Unstable версията на пакета, но и съответните зависимости от Unstable.

Пример :
1. Ето какво се получава по-първият начин

Код за потвърждение: Избери целия код
# apt-get install zsh/unstable
Reading Package Lists... Done
Building Dependency Tree... Done
Selected version 4.0.6-7 (Debian:unstable) for zsh
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.

Since you only requested a single operation it is extremely likely that
the package is simply not installable and a bug report against
that package should be filed.
The following information may help to resolve the situation:

Sorry, but the following packages have unmet dependencies:
  zsh: Depends: libc6 (>= 2.2.5-13) but 2.2.5-11.1 is to be installed
E: Sorry, broken packages


2. Ето го и нашето решение

Код за потвърждение: Избери целия код
# apt-get -t unstable install zsh   
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
  libc6 libc6-dev libc6-pic libdb1-compat locales
The following NEW packages will be installed:
  libdb1-compat
5 packages upgraded, 1 newly installed, 0 to remove and 394  not upgraded.
Need to get 11.6MB of archives. After unpacking 606kB will be used.
Do you want to continue? [Y/n]

:twisted:

Изтoчник:Основен
Ако съдбата е срещу теб, толкова по-зле за нея.

Изображение
APT HOWTO
Kulu Ngile
Унуфри
 
Мнения: 1233
Регистриран на: Съб 04, Мар, 2006 1:04
Местоположение: София

Назад към Инсталиране и работа с приложения

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 0 госта

cron