¿Cómo instalar software o actualizar desde una versión anterior no compatible?

386

Recientemente instalé una versión anterior de Ubuntu en mi máquina anterior. Cada vez que intento instalar cualquier software, aparece un error que dice que no se pudo encontrar:

$ sudo apt-get install vlc
Reading package lists... Done               
Building dependency tree       
Reading state information... Done    
E: Couldn't find package vlc
Hecho en India
fuente
2
Puede ser que valga la edición de algunos (o todos) respuestas a esta pregunta, ya que durante el fin de semana después de pasar bastante tiempo tratando de hacer este trabajo que tengo por suerte dieron cuenta de que se han movido más de http://old-releases.ubuntu.com/ubuntu/a http://us.archive.ubuntu.com/ubuntu/(o en su propio respectiva dos condados carta abreviada código al principio) a partir de 17.10 (esencialmente en sincronía con volver al principio del alfabeto).
Isti115

Respuestas:

534

Los repositorios para versiones anteriores que no son compatibles (como 11.04, 11.10 y 13.04) se trasladan a un servidor de archivo. Hay repositorios disponibles en http://old-releases.ubuntu.com .

La razón de esto es que ahora está fuera de soporte y ya no recibe actualizaciones y parches de seguridad.

Le instaría a considerar una distribución compatible. Si su computadora es demasiado antigua en términos de memoria o procesador, entonces debería considerar una distribución como Lubuntu o Xubuntu.

Si desea continuar utilizando una versión desactualizada, edite /etc/apt/sources.listy cambie archive.ubuntu.comy security.ubuntu.coma old-releases.ubuntu.com.

Puedes hacer esto con sed:

sudo sed -i -re 's/([a-z]{2}\.)?archive.ubuntu.com|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list

luego actualice con:

sudo apt-get update && sudo apt-get dist-upgrade

A veces, puede ser más rápido crear copias de seguridad de su sistema y reinstalarlas usando la versión compatible.

Fuente: ¿Puedo seguir usando Ubuntu 9.04 si está desactualizado?


Para actualizar a una nueva versión:

Una vez que haya realizado los pasos anteriores para cambiar a los espejos de versiones anteriores, actualice el Administrador de actualizaciones y luego haga lo siguiente do-release-upgrade:

sudo apt-get update
sudo apt-get install update-manager-core
sudo do-release-upgrade

Consulte también EOLUpgrades - Wiki de ayuda comunitaria .

fossfreedom
fuente
99
y, solo por completar ... ¿qué pasa con el extrasrepositorio (para Skype, etc.)? ¿Están disponibles en cualquier lugar después de EOF?
MestreLion
2
Una forma más fácil es sudo vi /etc/apt/sources.listy modificarlo manualmente. Tuve que hacerlo porque soy bastante nuevo y no sé cómo hacer que esto funcione para kármico. Gracias. Su respuesta sigue siendo válida y correcta.
bhathiya-perera
18
Una forma aún más fácil es sudo nano /etc/apt/sources.list, ya que vi*es molesto ...
Wilf
44
El sedcomando no siempre funciona, ya que hay espejos que son ejecutados por organizaciones externas ubuntu.com. Ni siquiera estoy seguro de que haya tres puntos para todos los nombres de dominio. Para aquellos, debe editar manualmente /etc/apt/sources.list.
Olathe
3
Hay un problema con esto en la actualización de 15.04 a partir del 21/03/17. Vivid ya no es compatible, sin embargo, el dist no está en versiones antiguas.
Matthew Titsworth
114

¿Qué son los errores 404?

El mensaje de error 404 o No encontrado es un código de respuesta estándar HTTP que indica que el cliente pudo comunicarse con el servidor, pero el servidor no pudo encontrar lo que se solicitó.

El servidor de alojamiento del sitio web generalmente generará la página web "404 - Página no encontrada", cuando los usuarios intenten seguir un enlace roto o inactivo.

¿Por qué nos enfrentamos a errores 404

Ubuntu sigue el enfoque de dos ciclos de lanzamiento diferentes :

Las versiones normales de Ubuntu son compatibles durante 9 meses. Los lanzamientos de LTS son compatibles por 5 años.

Las versiones anteriores pueden tener diferentes programas de soporte (por ejemplo, las versiones normales (antes de 13.04) solían ser compatibles durante 18 meses, mientras que las versiones LTS (antes de 12.04) solían ser compatibles durante 3 años en el escritorio y 5 años en el servidor).

EOL: Una vez que finaliza el período de soporte para una versión en particular; se denominan End Of Life (EOL) y todas las actualizaciones y repositorios de paquetes para esa versión se transfieren a un servidor diferente que genera errores 404 mientras se ejecuta sudo apt-get update. Puede confirmar si su lanzamiento se ha convertido en EOL yendo a esta página . Si su versión de Ubuntu se menciona en la tabla "Fin de la vida útil (EOL)", entonces la versión ya no es compatible y debe intentar actualizar a una versión más nueva compatible . Sin embargo, si desea continuar utilizando esta versión no compatible, deberá realizar las modificaciones necesarias /etc/apt/sources.listpara que apunte al old-releasesservidor de Ubuntu.

Pasos para hacer las modificaciones necesarias.

  1. Abre tu terminal:

    • Presione Ctrl+ Alt+ T; O
    • Si tienes Gnomo: ApplicationsAccessoriesTerminal; O
    • Si tiene Unity: presione Super(la tecla entre Left Ctrly Left Alt) y busque Terminal.
  2. Ejecute el siguiente comando para ingresar al shell raíz:

    sudo -i
    

    ingrese su contraseña de usuario y presione Enter. La solicitud cambiaría e indicaría que el usuario raíz ahora ha iniciado sesión. Aquí ejecute el siguiente comando:

    gedit /etc/apt/sources.list
    
  3. El archivo se abriría en una nueva ventana de Gedit. Encuentra la primera línea que no comienza con #. Supongamos que está ejecutando Karmic Koala (Ubuntu 9.10): debería ser como la siguiente línea:

    deb <siteurl> karmic main restricted
    

    donde, <siteurl>es su servidor preferido - http://gb.archive.ubuntu.com/ubuntuen su caso (por ejemplo).

  4. Presione Ctrl+ Hpara reemplazar su <siteurl>con http://old-releases.ubuntu.com/ubuntu.

    • Búsqueda de: http://gb.archive.ubuntu.com/ubuntues decir;<siteurl>
    • Reemplazar con: http://old-releases.ubuntu.com/ubuntuy
    • prensa Replace All
  5. Una vez más:

    • Busque: http://security.ubuntu.com/ubuntu(esta url exacta para todas las versiones de Ubuntu, sea cual sea el servidor actual que esté utilizando)
    • Reemplazar con: http://old-releases.ubuntu.com/ubuntu
    • prensa Replace All
  6. Guarde su archivo y salga de Gedit.

  7. Ejecute el siguiente comando para salir del shell raíz:

    logout
    

    Encontrará que la solicitud cambia de nuevo para indicar que su usuario normal ahora ha iniciado sesión. Luego ejecute lo siguiente:

    sudo apt-get update
    

Ahí tienes. No hay errores 404 esta vez. Ahora puede instalar todos los paquetes disponibles para su versión de Ubuntu. También puede ejecutar sudo apt-get dist-upgradepara instalar cualquier actualización de seguridad / corrección de errores que aún no se haya instalado, pero no obtendrá más actualizaciones de seguridad / corrección de errores de Ubuntu.

Aditya
fuente
66
+1 para también incluir instrucciones para actualizar el repositorio de seguridad.
Gaffi
En realidad, la primera línea sin un # era raring main restricted, no deb en absoluto. Lo cambié según lo especificado, y luego también reemplacé las URL, pero aún obtuve 404.
Yokhen el
2
@Yokhen Si la línea no comenzó deb <siteurl>, lo más probable es que su /etc/apt/sources.listarchivo se haya dañado debido a alguna razón. Siga las respuestas dadas en: ¿Cómo restauro los repositorios predeterminados? . Eso restauraría lo correcto /etc/apt/sources.listpara usted y luego seguiría mi respuesta para cambiar los servidores para que apunten al servidor de versiones anteriores.
Aditya
¡Gracias! Sin embargo, de alguna manera logré actualizar de 13.04 a 13.10, y ahora estoy en camino a 14.04.
Yokhen
1
@Dan, modificó la respuesta, ahora ingresamos en el shell raíz y luego ejecutamos el programa gráfico. Ya no es necesario usar gksudo. Quiero mantener esta respuesta para los usuarios novatos como yo y no quiero complicar las cosas con el uso de editores basados ​​en terminales, por muy fáciles o potentes que sean.
Aditya
57

La respuesta breve es agregar el siguiente repositorio apto al Software de terceros (u otro software en versiones más recientes) en Fuentes de software (o Software y actualizaciones en versiones más recientes):

deb http://old-releases.ubuntu.com/ubuntu code_name main restricted universe multiverse

La respuesta larga ...

Método GUI

Bueno, en realidad haremos esto sin usar ningún terminal . Ni una sola vez. Solo GUI, lo prometo ;-)

Primero, abra las Fuentes de software (o Software y actualizaciones en versiones más recientes). No importa la antigüedad de su Ubuntu, ciertamente hay algo como esto. Para Ubuntu 9.04 (Jaunty Jackalope) mira la siguiente imagen para ver dónde se encuentra:

Fuentes de software abiertas

Después de que las Fuentes de software (o Software y actualizaciones ) estén abiertas, vaya a las pestañas Software de Ubuntu y Actualizaciones y anule la selección de todo como en las siguientes imágenes. Ya no necesita estas cosas ya que su versión de Ubuntu es End of Life :

Pestaña Software Ubuntu


ingrese la descripción de la imagen aquí

Sin cerrar Fuentes de software (o Software y actualizaciones ), vaya a la pestaña Software de terceros (para las versiones más recientes esta pestaña se llama Otro software ) y agregue un nuevo repositorio apto. Inserte exactamente la siguiente línea cuando se le pregunte:

deb http://old-releases.ubuntu.com/ubuntu jaunty main restricted universe multiverse

Si su versión de Ubuntu es diferente a 9.04, reemplácela en la línea anterior jauntycon su nombre de código de Ubuntu (por ejemplo, si tiene Ubuntu 9.10, reemplácelo con karmicy así sucesivamente):

Pestaña Software de terceros

Ahora, cuando cierre Fuentes de software (o Software y actualizaciones ), se le pedirá que vuelva a cargar la información sobre el software disponible. Solo asegúrese de tener una conexión a Internet que funcione:

Recargar software disponible


Descargar software disponible

Y ahora puedes descargar casi lo que quieras. Para 9.04 puede usar Synaptic Package Manager . Para las versiones más recientes hay Ubuntu Software Center .

Por ejemplo, para instalar VLC en Ubuntu 9.04 usando Synaptic Package Manager, siga las instrucciones en las siguientes imágenes:

Administrador de paquetes Synaptic abierto


Buscar VLC en SPM


Mark VLC


Marcar VLC adicional


Aplicar VLC


Descargar VLC


VLC abierto

Si desea actualizar su Ubuntu a una nueva versión, simplemente vaya a Sistema > Administrador de actualizaciones :

Gestor de actualizaciones


Mejorar

Probé este método desde una sesión en vivo de Ubuntu 9.04 (Jaunty Jackalope) y, como puede ver en estas imágenes, funcionó. Si está en una sesión instalada de Ubuntu, a veces se le pedirá la contraseña de administrador o root. Simplemente inserte su contraseña de usuario personal cuando se le solicite.

Radu Rădeanu
fuente
1
Acabo de hacer todo esto desde la versión 10.10 (inconformista) instalada. Todo bien como se describe. @Radu, ¡tu respuesta es perfecta!
Gediminas Jeremiah Gudelis
1
Esas imágenes necesitan actualizarse ... espera ... ¿qué estás haciendo con una versión anterior a 12.04?
Braiam
1
@Braiam Esas imágenes están actualizadas. Si vas a probar Ubuntu 9.04 (Jaunty Jackalope) , lo entenderás.
Radu Rădeanu
1
@ RaduRădeanu Ubuntu 9.04 fue mi primera incursión en el mundo de Linux. Ahh, esas capturas de pantalla traen recuerdos!
Tyzoid
No se puede hacer que esto funcione para que 15.04 se actualice a 16.04. No puedo dejar de agregar la nueva línea APT, por favor ayuda.
MrMule
22

Llegué aquí porque no pude actualizar un sistema de 15.10 (EOL) a 16.04. Pero ninguna de las respuestas funcionó para mí ... incluso después de hacer todo lo que se sugirió aquí, seguí recibiendo sudo do-release-upgradela molesta respuesta:

Checking for a new Ubuntu release  
No new release found

Y no tuve éxito en correr update-manager; seguía arrojando excepciones que no pude resolver. Sospecho que algo está dañado en mi instalación 15.10, pero la conclusión es que las actualizaciones integradas simplemente fallan.

Así que busqué un método no incorporado y, efectivamente, lo encontré mirando esta respuesta .

Aquí está la solución que funcionó para mí:

  1. Abra http://changelogs.ubuntu.com/meta-release
  2. Localice la versión a la que desea actualizar. En mi caso es Xenial Xerus (16.04 Soporte a largo plazo).
  3. Localice la URL de UpgradeTool. Para xenial es este . Descargue el tarball de esa URL en una carpeta vacía y ábralo ( tar -xzfo usando la GUI).
  4. Localice el archivo ejecutable con el mismo nombre que la distribución (en mi caso xenial). Ejecútalo con sudo:

    sudo ./xenial &

  5. Apruebe la actualización y espere a que se complete la descarga: hay miles de archivos y probablemente más de un Gigabyte. Continúe con la instalación de la actualización ...

(Editado mucho después de que realicé la actualización ... Fue exitoso y olvidé actualizar)

  1. Espere hasta que se complete, apruebe si se le pregunta ... No recuerdo los detalles exactos

  2. Después del reinicio, la nueva versión se ejecuta correctamente y todas las actualizaciones se pueden recuperar normalmente.

risa
fuente
1
Me tomó un tiempo encontrar esta publicación. Solo usando el tarball referenciado logré ejecutar la actualización desde 15.04 / wily. Los enfoques que utilizan las URL de versiones anteriores no funcionaron. Espero que esto ayude a otros usuarios a meterse en este problema.
Jeroen
¡Me alegra que lo hayas encontrado útil!
Ríe el
1
En serio, gracias por esto, acabo de usar estos pasos para actualizar 10.04 a 12.04. Mi problema fue diferente porque mi instalación no estaba dañada, pero hubo un error en do-release-upgrade que no pude encontrar en el terminal. Siguiendo estos pasos, apareció un cuadro de diálogo que me decía "error al autenticar algunos paquetes", lo que me llevó a askubuntu.com/a/426121/262601, que permitió que la actualización continuara con éxito. Me estaba arrancando el cabello, pero es mi culpa por no actualizar antes.
Fooxz
Desafortunadamente, ni siquiera esto funciona para 15.04
MiroJanosik
Funciona como un encanto! Tenía un servidor picante que descuidé y lo puse ingenioso y pude actualizar aún más desde allí, ¡gracias!
Patrick Cornelissen el
17

Para volver a apt-gettrabajar, cambie sus fuentes de software a los repositorios de versiones anteriores.

gksudo gedit /etc/apt/sources.list

elimine lo que esté allí y pegue lo siguiente:

# Required
deb http://old-releases.ubuntu.com/ubuntu/ karmic main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ karmic-updates main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ karmic-security main restricted universe multiverse

# Optional
#deb http://old-releases.ubuntu.com/ubuntu/ karmic-backports main restricted universe multiverse

Eso es todo.

mikewhatever
fuente
Gracias mikewhatever, pero el resultado es el mismo cuando intento "apt-get install lm-sensores". Tal vez haya otra fuente faltante: "Leyendo listas de paquetes ... Hecho Construyendo árbol de dependencias Leyendo información de estado ... Hecho Paquete lm-sensores no está disponible, pero otro paquete lo menciona. Esto puede significar que falta el paquete, tiene ha quedado obsoleto o solo está disponible de otra fuente E: El paquete lm-sensores no tiene candidato de instalación "
Rorro
Aquí están las debs : old-releases.ubuntu.com/ubuntu/pool/main/l/lm-sensors-3 . Confío en que has vuelto a cargar la lista de fuentes, ¿verdad?
mikewhatever
Esta respuesta no funciona ... ¿Por qué tiene tantos votos a favor? ¿Alguien realmente lo probó?
Tomáš Zato
Lo he probado, pero la verdadera pregunta es: ¿por qué sigues en Karmic? Ha estado fuera de soporte durante años, y realmente debería pasar a una versión más reciente.
mikewhatever
12

Si bien la respuesta de fossfreedom hace un buen trabajo al describir y resolver el problema , he encontrado una solución alternativa que creo que es más fácil y un poco más elegante.

El truco es agregar http://old-releases.ubuntu.com/ubuntu/como un espejo y luego decirle a Software Sources que cambie a ese espejo.

Para hacer esto, haga una copia de seguridad y edite /usr/share/python-apt/templates/Ubuntu.mirrors. Elija una ubicación falsa para el servidor de versiones anteriores (por ejemplo #LOC:US) y agregue la siguiente línea debajo de él:

#LOC:US
http://old-releases.ubuntu.com/ubuntu/

Ahora abra el cuadro de diálogo Fuentes de software del sistema y seleccione manualmente old-releases.ubuntu.comcomo si fuera su espejo regional. Debería encontrarlo en la ubicación falsa que eligió en el paso anterior.

La próxima vez que vuelva a cargar la información de su paquete a través de Synaptic o Update Manager, debería ver que recupera con éxito la información actualizada del paquete.

Stuart Cook
fuente
Funciona bien, muy fácil y rápido
doug
6

Parece que los repositorios kármicos ya no están disponibles .

Dado que son para una versión anterior de Ubuntu, puede considerar eliminarlos de su lista de fuentes. Eche un vistazo a esta página de ayuda paso a paso.

tekNorah
fuente
5

Puede encontrar los repositorios en el servidor "versiones anteriores" http://old-releases.ubuntu.com/ubuntu/dists/

Y sobre cómo editar las /etc/apt/sources.list https://help.ubuntu.com/community/EOLUpgrades

gajdipajti
fuente
Gracias gajdipajti, lo estoy buscando dentro de la lista de paquetes, pero no puedo encontrar el ".deb" correcto. Mi ubuntu ya tiene "libsensors3", pero todos los paquetes me piden los "libsensors4". Sé que la solución normal debería ser la actualización, pero no puedo hacerlo porque la computadora está dedicada a ser utilizada con un software que solo se ejecuta en 9.10.
Rorro
@Rorro: ¿Qué software solo se ejecuta en Ubuntu 9.10?
inolvidableid
1

Hay un caso de borde - apt-get Claim 16.04 LTS no existe , donde el paquete anterior (Vivid, en mi caso) no estaba en el servidor de "versiones anteriores". Pero apt-get solo pudo encontrar kernel y actualizaciones de Google.

No estoy seguro de cuál era exactamente mi problema porque había seguido ciegamente las respuestas aceptadas sed comando de (nunca fue un movimiento inteligente).

Esto no funcionó porque Vivid no estaba en el archivo de "versiones antiguas" pero todavía estaba en el gb.archive.ubuntu.comespejo.

En ese caso específico, la solución fue la siguiente:

sudo -i
edit /etc/apt/sources.list

Revise cuidadosamente todas las fuentes y descubra que una de ellas era antigua y estaba equivocada y no había sido actualizada correctamente (o algo así). O, como lo hice, buscar reemplazar deold-releases.ubuntu.com a gb.archive.ubuntu.com. Luego se actualizó, sin problemas, a la próxima versión mientras me ponía al día con algo de lectura.

Entonces:

  1. Hubo una falla en mis fuentes
  2. El gb.archive.unbuntu.comespejo tiene un conjunto anterior de lanzamientos.

La conclusión aquí es que, si bien la mayoría de las respuestas aquí pueden aplicarse en algunos casos, pagaría asegurarse de que su /etc/apt/sources.list sea ​​correcta antes de enviarla al archivo de "versiones antiguas".

Puede averiguar cuál de los archivos o su espejo tiene la versión que necesita simplemente señalando una pestaña del navegador en el archivo y la pregunta y buscando el nombre de su versión en la lista de carpetas. Cualquiera que tenga su versión, es la fuente que necesita usar.

Matthew Brown, también conocido como Lord Matt
fuente