GNU/Linux >> Tutoriels Linux >  >> Linux

Comment puis-je exécuter Debian stable mais installer certains packages à partir de testing ?

Solution 1 :

Beaucoup de gens semblent avoir peur de mélanger stable et testing, mais franchement, testing est assez stable en soi, et avec des préférences et une vérification de solution appropriées, vous pouvez éviter la "dérive de stabilité" qui met vos packages de base sur le chemin instable.

"Les tests sont assez stables ? ?" , tu demandes. Oui. Pour qu'un paquet migre de unstable à testing, il doit n'avoir aucun bogue ouvert pendant 10 jours consécutifs. Il y a de fortes chances que, en particulier pour les packages les plus populaires, quelqu'un soumette un rapport de bogue pour une version instable si quelque chose ne va pas.

Même si vous ne voulez pas mélanger les environnements, il est toujours agréable d'avoir l'option là-bas au cas où vous rencontreriez quelque chose qui nécessite une version plus récente que celle de stable.

Voici ce que je recommande pour la configuration :

Commencez par créer les fichiers suivants dans /etc/apt/preferences.d :

stable.pref :

# 500 <= P < 990: causes a version to be installed unless there is a
# version available belonging to the target release or the installed
# version is more recent

Package: *
Pin: release a=stable
Pin-Priority: 900

testing.pref :

# 100 <= P < 500: causes a version to be installed unless there is a
# version available belonging to some other distribution or the installed
# version is more recent

Package: *
Pin: release a=testing
Pin-Priority: 400

unstable.pref :

# 0 < P < 100: causes a version to be installed only if there is no
# installed version of the package

Package: *
Pin: release a=unstable
Pin-Priority: 50

experimental.pref :

# 0 < P < 100: causes a version to be installed only if there is no
# installed version of the package

Package: *
Pin: release a=experimental
Pin-Priority: 1

(N'ayez pas peur des éléments instables/expérimentaux ici. Les priorités sont suffisamment faibles pour qu'il n'installe jamais automatiquement aucun de ces éléments. Même la branche de test se comportera, car elle n'installera que les packages que vous voulez être en test.)

Maintenant, création d'un ensemble correspondant pour /etc/apt/sources.list.d :

stable.list :Copie de votre /etc/apt/sources.list d'origine . Renommez l'ancien fichier en quelque chose comme sources.list.orig .

testing.list :Identique à stable.list , sauf avec testing .

unstable.list :Identique à stable.list , sauf avec unstable , et supprimez les listes de sécurité.

experimental.list :Identique à unstable.list , sauf avec experimental .

Vous pouvez également ajouter un oldstable en sources.lists.d et preferences.d (utilisez une priorité de 1), bien que ce surnom ait tendance à expirer et à disparaître avant le prochain cycle stable. Dans de tels cas, vous pouvez utiliser http://archive.debian.org/debian/ et "hardcoder" la version Debian (etch, lenny, etc.).

Pour installer la version de test d'un paquet, utilisez simplement aptitude install lib-foobar-package/testing , ou sautez simplement dans l'interface graphique d'aptitude et sélectionnez la version dans les détails du paquet (appuyez sur Entrée sur le paquet que vous regardez).

Si vous recevez des plaintes concernant des conflits de packages, examinez d'abord les solutions. Dans la plupart des cas, le premier sera "n'installez pas cette version". Apprenez à utiliser les choix de résolveur d'acceptation/rejet par package. Par exemple, si vous installez foobar-package/testing et que la première solution est "ne pas installer foobar-package/testing", marquez ce choix comme rejeté et les autres solutions ne reviendront plus jamais sur ce chemin. Dans de tels cas, vous devrez probablement installer quelques autres packages de test.

S'il devient trop poilu (comme s'il essayait de mettre à niveau libc ou le noyau ou un autre système de base énorme), vous pouvez soit rejeter ces chemins de mise à niveau, soit simplement annuler complètement la mise à niveau initiale. N'oubliez pas qu'il ne mettra à niveau les éléments vers testing/unstable que si vous l'autorisez.

EDIT :correction de certaines broches prioritaires et mise à jour de la liste.

Solution 2 :

En /etc/apt/apt.conf.d ajouter le fichier suivant

99defaultrelease :

APT::Default-Release "stable";

en /etc/apt/sources.list.d - ajouter des urls pour tester/sources instables

stable.list :

deb     http://ftp.de.debian.org/debian/    stable main contrib non-free
deb-src http://ftp.de.debian.org/debian/    stable main contrib non-free

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

testing.list :

deb     http://ftp.de.debian.org/debian/    testing main contrib non-free
deb-src http://ftp.de.debian.org/debian/    testing main contrib non-free

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

courir

apt-get update

puis installez ce dont vous avez besoin avec

apt-get -t testing install something

Soyez très très prudent si vous installez des choses qui ont beaucoup de dépendances. De préférence, ne le faites pas en production.

Vous pouvez également tenter votre chance sur les backports ou référentiels similaires.

Solution 3 :

apt_preferences

Définissez le niveau par défaut auquel le système doit "mettre à niveau en toute sécurité" dans le fichier /etc/apt/preferences :
man apt_preferences

Il y a beaucoup de choses que vous pouvez faire avec apt_preferences mais par souci de simplicité...

J'avais besoin d'installer un seul package (autoMysqlBackup) qui n'était disponible que dans Testing. La solution consistait à ajouter ce qui suit à /etc/apt/preferences :

Explanation: Uninstall or do not install any Debian-originated
Explanation: package versions other than those in the stable distro
Package: *
Pin: release a=stable
Pin-Priority: 900

Package: *
Pin: release o=Debian
Pin-Priority: -10

Avec plusieurs référentiels ajoutés à /etc/apt/sources.list, aptitude ne mettra désormais à niveau que vers votre version spécifiée, même si les référentiels de version ultérieure sont répertoriés (dans ce cas, "stable").

deb http://mirror.aarnet.edu.au/debian/ lenny main
deb-src http://mirror.aarnet.edu.au/debian/ lenny main
deb http://mirror.aarnet.edu.au/debian/ squeeze main
deb-src http://mirror.aarnet.edu.au/debian/ squeeze main

Donc, pour installer ce package, tout ce que vous avez à faire est :

$ aptitude install -t testing packageName 

Solution 4 :

Pour ce que ça vaut, le conseil général que j'ai toujours vu est "Ne mélangez pas stable avec quoi que ce soit." La plupart des tutoriels sur les systèmes mixtes sont destinés à mélanger testing et unstable.

Le raisonnement semble être que si vous mélangez stable avec testing, des packages très basiques (comme libc6) nécessiteront des mises à jour (afin d'installer des logiciels à partir de testing), et une fois que ces packages de base passent à testing, l'ensemble du système peut dériver de cette façon.

Voici deux alternatives :

  1. Utilisez des rétroportages.
  2. Installez une ligne source à partir de testing et essayez de créer la version ultérieure souhaitée à partir de la source.

Solution 5 :

La documentation de Debian est complète sur le sujet et je vous conseille fortement de creuser car elle dévoilera vraiment la beauté du système Debian.

Jetez un œil à Comment conserver un système mixte, il vous expliquera tout ce que vous devez savoir.


Linux
  1. Comment installer Java sur Debian 9

  2. Comment installer des packages à partir d'un référentiel spécifique sous Linux

  3. Debian – Comment installer un seul paquet depuis Debian Testing ou Unstable sur Stable ?

  4. Debian – Comment installer certains paquets de Debian « instable » sur un ordinateur exécutant Debian « stable » ?

  5. Comment installer l'éditeur nano à partir du code source

Comment installer la dernière version de LibreOffice sur Debian 10

Comment installer la version principale de Nginx sur Debian 9

Comment installer Git sur Debian 10 ?

Si je peux, comment installer Ubuntu à partir d'Ubuntu ?

Comment installer l'agent Zabbix version 3.0 sur Debian 9 (strech) ?

Comment installer l'agent Zabbix version 4.0 sur Debian 9 (strech) ?