Tengo Debian Jessie y he agregado backports (de acuerdo con estas instrucciones ):
echo "deb http://http.debian.net/debian jessie-backports main contrib non-free" | sudo tee /etc/apt/sources.list.d/backports.list
(Hice esto para obtener un kernel más nuevo, según lo necesitaba, o para algún hardware en mi computadora portátil).
Las instrucciones dicen que no debe pasar nada, a menos que solicite explícitamente un paquete con respaldo. por ej apt-get -t jessie-backports install "package"
.
Sin embargo, ahora parece que tengo una carga completa de mi sistema desde puertos, y un paquete se ha desinstalado, porque depende de una versión exacta, de algo que se actualizó a los puertos de respaldo.
Entonces mi pregunta:
- ¿Cómo lo detengo primero, para que no se instalen más backports?
- ¿Cómo elimino los backports existentes?
Nota: esto obtiene una lista de los paquetes instalados que son de backports (y en formato al que se puede pasar apt-get install
, por alguna razón sudo apt-get install
no funciona el eco al final de la canalización):
cat /var/log/dpkg.log.1 |grep -v linux | grep -v xserver | grep -v firmware | grep "status installed" | grep bpo | cut -d" " -f 5 | cut -d: -f 1 | xargs -i{} -n1 bash -c "dpkg-query -s {} >/dev/null && echo {}" | sed -r -e "s~.*~\0/jessie~" | xargs echo
Precaución:
Algunos de los paquetes se instalan automáticamente, por lo que si los reinstala todos, estos paquetes instalados automáticamente se marcarán como instalados manualmente. Por lo tanto, no se elimina cuando no es necesario.
¿Alguien tiene alguna idea sobre cómo resolver esto?
apt-get
odpkg
. Mientras no entre en pánico, no hay nada de qué preocuparse. La mayoría de los problemas con los sistemas de empaque son causados por personas que entran en pánico y reaccionan sin pensar ... tómelo con calma y piense antes de actuar.apt-get
no degradará un paquete ya instalado a menos que se lo indique explícitamente. Y @richard dijo que quería instalarjessie
paquetes de manera predeterminada a menos que especificara explícitamentejessie-backports
, supongo que el deseo también se aplica a los paquetes del kernel.stable
+stable-backports
probablemente se preocupan mucho más por la fijación que yo y se han esforzado por aprender más al respecto. Tiendo a ejecutarunstable
y mantener mis sistemas sincronizados con el último sid con bastante regularidad (con extras ocasionalesexperimental
), por lo que tengo poca necesidad de fijarlos. La única vez que lo usé mucho fue hace años, durante la transición a gnome3, cuando no quería que mis paquetes de gnome2 fueran reemplazados; recuerdo que mantener la lista constantemente cambiante de paquetes para fijar era una PITA. Desde entonces he cambiado a xfce y he purgado gnome.Parece que no has configurado correctamente
/etc/apt/preferences
. Lo siguiente evitará que algo se instale desde jessie-backports espere lo que le dice que instale (como el kernel compatible). Aún tendrá problemas si los paquetes especificados requieren otros paquetes de puertos no listados.Si desea obtener una lista de paquetes con backport instalados, puede usar el siguiente script (o partes de él):
Si desea degradar cualquiera de los paquetes enumerados en el script anterior, agregue lo siguiente a
/etc/apt/preferences
:Entonces corre:
fuente
Verifique su configuración de fijación para apt en / etc / apt /ferences y /etc/apt/preferences.d/
¿Es posible que hayas agregado una configuración de fijación personalizada y te hayas olvidado de ella? Esa es la única forma en que puedo pensar que haría que prefiera los backports como parece que le está haciendo a usted. De lo contrario, solo se trata de extraer dependencias, que requieren los paquetes que especificó.
Los backports oficiales ya están fijados más bajos (100) que jessie en el archivo Release de paquetes backported en el repositorio de backports. No debería tener que hacer ninguna configuración apta para hacer que apt prefiera jessie sobre jessie-backports.
fuente