Bien que ma connaissance de la Debian revient maintenant il ya cinq ans, ces jours, je me suis retrouvé dans une situation entièrement nouvelle pour moi et que j'ai vu la nécessité d'installer - ou plutôt, ré-installer - plusieurs paquets avec des versions inférieures à ceux qui sont installés. Dit simplement: j'ai eu un système mixte basé sur des tests et instables et la nécessité de revenir complètement à l'essai. Cela, le 'inverse de «mise à niveau est appelé avec un grand effort de déclasser l'imagination.
Synaptic vous permet de rétrograder un paquet avec un degré de maîtrise: vous sélectionnez le package, puis sélectionnez la rubrique appropriée `Forcer` version `paquet menu.
Évidemment, cela ne fonctionne que pour les paquets qui ont des dépendances à satisfaire. Mais je me suis retrouvé dans une situation où la plupart des outils de la chaîne, le X et plusieurs paquets appelé `essentiel` a partir instable. Comment faire?
Dans mon cas, après avoir utilisé l' épinglant afin d'avoir un système mixte avec une sécurité raisonnable, la première chose à faire était de mettre sa main dans les fichiers de configuration du système APT: / etc / apt / preferences et / etc / apt / apt. conf.
Autant que j'ai procédé pour supprimer toutes les préférences autres que le paramètre ci-dessous:
$ cat /etc/apt/preferences
Package: *
Pin: release o=testing
Pin-Priority: 1001
Cette approche garantit que les paquets ne qui aura préséance sur tous les autres sont ceux provenant de la branche `test`.
Dans le fichier apt.conf, cependant, j'ai procédé pour vérifier que les tests `a été indiqué que la version par défaut du système.
$ cat /etc/apt/apt.conf
APT::Default-Release "testing";
APT::Cache-Limit 15000000;
Apt::Get::Purge;
APT::Clean-Installed;
APT::Get::Fix-Broken;
APT::Get::Fix-Missing;
APT::Get::Show-Upgraded "true";
Maintenant nous éliminer toute source autre que de nos tests `` sources.list et mettre à jour la base de données paquet dans la façon habituelle:
$ sudo apt-get update
$ sudo apt-get dist-upgrade
Il est important de comprendre que la suppression des programmes essenzialisenza les précautions et mesures nécessaires conduit inévitablement à une série d'anomalies graves (non-fonctionnement de l'interface d', etc ...), réseau, se réunir à nouveau d'avoir un système d'exploitation inutilisable, ou même ne pas pouvoir Bootstrap. Alors que nous faisons le downgrade se concentrer exclusivement sur cette tâche, nous n'utilisons pas les programmes inutiles, nous avons toujours lu 4 fois la sortie vidéo »pour éviter le doute et d'enlever quoi que ce soit.
Assurez vous d'avoir sous la main un des programmes clés unes:
$ sudo apt-get install wget apt-show-versions
Le premier point essentiel est de télécharger (même dans des situations d'urgence) le nombre de paquets qui nous servira, et la seconde nous permet d'identifier les paquets installés avec version plus récente que celle utilisée dans la branche testing (et donc d'instabilité).
Dans un terminal d'identifier les colis que nous voulons déclasser. Dans l'exemple, j'utilise un seul paquet, mais la liste est beaucoup plus longue.
$ apt-show-versions |grep newer
[...]
pciutils 1:2.2.4-1 newer than version in archive
[...]
La sortie du filtre grep 's de la commande et il ne montre que les paquets que vous vouliez.
tâtonné dans le premier mouvement est de supprimer le paquet en utilisant apt: si elle ne figure pas parmi les dépendances de fonctionnement des autres programmes va échouer, mais sinon nous allons avoir une aide précieuse à l'étape suivante. Si apt ne parvient pas à désinstaller le paquet, en fait, nous vous informons des autres paquets qui gardent enfermé.
$ sudo apt-get remove pciutils
Lettura della lista dei pacchetti in corso... Fatto
Generazione dell'albero delle dipendenze in corso
Reading state information... Fatto
I seguenti pacchetti saranno RIMOSSI:
alsa-utils glide2-bin gnome-mount gnome-power-manager
gnome-volume-manager hal libglide2 network-manager network-manager-gnome
pciutils update-notifier
0 aggiornati, 0 installati, 12 da rimuovere e 0 non aggiornati.
È necessario prendere 0B di archivi.
Dopo l'estrazione, verranno liberati 31,0MB di spazio su disco.
Continuare [S/n]?
De la «production nous notons que, bien que susceptibles d'être en mesure de supprimer le paquet, la désinstallation conduit également à la suppression des autres paquets, avec des effets imprévisibles. dans ce cas est beaucoup mieux d'aller directement à supprimer le paquet désiré, sans toucher les autres.
Dans le cas des dépendances du paquet il ya aussi apt, ou si c'est un programme qui montre comment les mêmes apt ESSENTIEL, avant son retrait, assurez-vous de télécharger la bonne version de l'Internet, alors vous devriez toujours être capable de le réinstaller à l'aide de dpkg. A cet effet, il s'avère utile à la page Recherche de forfait hébergé sur le site de Debian.
Pour désinstaller le paquet sans l'implication de ses dépendances, on peut utiliser un instrument moins sophistiquées d'un outil apt, mais plus puissant que dpkg.
$ sudo dpkg --force-depends -r pciutils
dpkg: pciutils: problemi con le dipendenze, ma lo rimuovo comunque come richiesto:
libglide2 dipende da pciutils.
alsa-utils dipende da pciutils (>= 1:2.1.11-4).
hal dipende da pciutils.
(Lettura del database ... 119085 file e directory attualmente installati.)
Rimuovo pciutils ...
Nous avons été en mesure de désinstaller le programme, sans essayer de résoudre les dépendances que Debian. Nous devons prêter attention aujourd'hui: le système d'exploitation est dans une très délicate et doit être respecté ces dépendances que nous avons ignoré ses propres magnifiquement il ya un instant. Ayant retiré toute source relative à `unstable` Mais nous allons installer le paquet, il sera la version de `test` nous avons besoin!
Pciutils réinstallé via apt, il va télécharger à partir du référentiel «seule disposition: les tests.
$ sudo apt-get install pciutils
Lettura della lista dei pacchetti in corso... Fatto
Generazione dell'albero delle dipendenze in corso
Reading state information... Fatto
I seguenti pacchetti NUOVI (NEW) saranno installati:
pciutils
0 aggiornati, 1 installati, 0 da rimuovere e 0 non aggiornati.
È necessario prendere 206kB di archivi.
Dopo l'estrazione, verranno occupati 680kB di spazio su disco.
Get:1 http://debian.fastweb.it testing/main pciutils 1:2.2.4~pre4-1 [206kB]
Scaricato 206kB in 1s (106kB/s)
Selezionato il pacchetto pciutils, che non lo era.
(Lettura del database ... 119066 file e directory attualmente installati.)
Spacchetto pciutils (da .../pciutils_1%3a2.2.4~pre4-1_i386.deb) ...
Configuro pciutils (1:2.2.4~pre4-1) ...
Si apt ne pouvait pas l'installer à cause de certains conflits avec d'autres paquets installés ou nous pouvons simplement télécharger les configurations restantes (en utilisant wget ou un navigateur), puis l'installer en utilisant dpkg comme suit:
dpkg -i --force-overwrite /percorso/del/PACCHETTO
Debian heureux!
Tags: apt , debian , downgrade , dpkg , guider , Comment , Linux









x I est le turc!
un peu "pour moi ... C'est une sorte de magie!
[...] Guide complet de Keltika (kk) une [...]
Aide vraiment super! Utile, claire, m'a sauvé! Super!
Intéressant ... ..
serait intéressant d'avoir d'autres détails:
Lorsque nous avons terminé la procédure que vous décrivez certains des paquets, nous trouvons qu'ils ont encore comme référence la nouvelle version de pciutils. Cela peut entraîner un dysfonctionnement du reste des programmes qui dépendent de pciutils?
Si vous souhaitez rétablir la situation originale, que faire?
paquets qui dépendent de la version de pciutils "nouvelles" ne sont pas nécessairement de leurs "nouvelles" que la version actuellement en usage. Je vais vous expliquer: quand j'installe pciutils d'instabilité, le paquet va installer toutes les dépendances à partir des demandes instables et qui dépendent de paquets pciutils sera mis à niveau vers instable. Quand nous reviendrons à une version précédente, tous ces paquets seront nécessairement * * marqué comme «nouveaux».
pour rétablir la situation originale que vous voulez downgrade vous à jour les paquets installés, doivent être expliquées au début »du guide.