El día de hoy quise darle un poco de adrenalina a mi rutina y decidí migrar mi instalación de Devuan ASCII (estable) a Devuan Beowulf (testing) en mi estación de trabajo. En este artículo explico los pasos necesarios y cuento mi experiencia.



Hasta el día de la fecha contaba con una instalación de Devuan ASCII 2.1. Esta primera versión punto de ASCII fue lanzada precisamente el mes pasado (octubre de 2019):

root@hal9000:/home/emi# lsb_release -a
No LSB modules are available.
Distributor ID:	Devuan
Description:	Devuan GNU/Linux 2.1 (ascii)
Release:	2.1
Codename:	ascii

Al mismo tiempo estaba utilizando un kernel Linux 4.19 proveniente de los backports de ASCII:

root@hal9000:/home/emi# uname -a
Linux hal9000 4.19.0-0.bpo.5-amd64 #1 SMP Debian 4.19.37-5+deb10u2~bpo9+1 (2019-08-16) x86_64 GNU/Linux

Actualmente la versión estable (stable) de Devuan es "ASCII" (Devuan 2), basada en Debian Stretch (Debian 9). Mientras que la versión de desarrollo o testeo (testing en jerga Debian, o "en desarrollo" en jerga Devuan) es "Beowulf" (Devuan 3), basada en Debian "Buster" (Debian 10).

La cuestión es que, por problemas de dependencias entre este kernel (proveniente desde los backports) y el resto de las librerías del sistema, me veía privado de instalar VirtualBox. Este inconveniente fue causado por haberle dado mayor prioridad a los paquetes provenientes desde los backports, algo que en su momento mencioné que podía traer muchos problemas de dependencias e incompatibilidades con el resto de los componentes del sistema.

En definitiva, como en la mayoría de los casos resulta imposible volver a una versión anterior de un paquete (a causa del mecanismo de resolución de dependencias y disponibilidad de paquetes de versiones previas), el único camino es hacia adelante. Pasemos entonces todo el sistema a testing, para dejar atrás esta mezcla entre paquetes de testing y estables·

Editar el archivo de configuración de repositorios del gestor APT y cambiar "ascii" por "beowulf". Deshabilitar los backports eliminando o comentando la línea correspondiente.

root@hal9000:/home/emi# nano /etc/apt/sources.list

La configuración final es la siguiente:

# 
deb http://auto.mirror.devuan.org/merged/ beowulf main contrib non-free
deb http://auto.mirror.devuan.org/merged/ beowulf-security main contrib non-free
deb http://auto.mirror.devuan.org/merged/ beowulf-updates main contrib non-free

Actualizar la base de datos de paquetes:

root@hal9000:/home/emi# apt-get update

Actualizar nuevos paquetes sin eliminar:

root@hal9000:/home/emi# apt-get upgrade

Al finalizar se muestran las novedades. Siempre es conveniente repasar el listado hasta el final para ver qué cambios se introducen:

apt-listchanges: News
---------------------

apt (1.8.0~alpha3) unstable; urgency=medium

  The PATH for running dpkg is now configured by the option DPkg::Path,
  and defaults to "/usr/sbin:/usr/bin:/sbin:/bin". Previous behavior of
  not changing PATH may be restored by setting the option to an empty string.

  Support for /etc/apt/auth.conf.d/ has been added, see apt_auth.conf(5).

 -- Julian Andres Klode <jak@debian.org>  Tue, 18 Dec 2018 15:02:11 +0100

apt (1.6~rc1) unstable; urgency=medium

  Seccomp sandboxing has been turned off by default for now. If it works
  for you, you are encouraged to re-enable it by setting APT::Sandbox::Seccomp
  to true.

 -- Julian Andres Klode <jak@debian.org>  Fri, 06 Apr 2018 14:14:29 +0200

apt (1.6~beta1) unstable; urgency=medium

  APT now verifies that the date of Release files is not in the future. By
  default, it may be 10 seconds in the future to allow for some clock drift.

  Two new configuration options can be used to tweak the behavior:
    Acquire::Check-Date
    Acquire::Max-DateFuture

  These can be overridden in sources.list entries using the check-date
  and date-future-max options. Note that disabling check-date also
  disables checks on valid-until: It is considered to mean that your
  machine's time is not reliable.

 -- Julian Andres Klode <jak@debian.org>  Mon, 26 Feb 2018 13:14:13 +0100

(...sigue hasta el infinito)

Luego proceder con la actualización completa, reemplazando y eliminando paquetes:

root@hal9000:/home/emi# apt-get dist-upgrade

Para finalizar, efectuar una limpieza de paquetes obsoletos:

root@hal9000:/home/emi# apt-get autoremove
root@hal9000:/home/emi# apt-get autoclean

Reiniciar el sistema:

root@hal9000:/home/emi# reboot

Se observa que la versión del sistema operativo ahora es "Devuan GNU/Linux 3 (beowulf)":

emi@hal9000:~$ lsb_release -a
No LSB modules are available.
Distributor ID:	Debian
Description:	Devuan GNU/Linux 3 (beowulf)
Release:	3
Codename:	beowulf
emi@hal9000:~$ uname -a
Linux hal9000 4.19.0-6-amd64 #1 SMP Debian 4.19.67-2+deb10u1 (2019-09-20) x86_64 GNU/Linux

La versión del kernel no ha cambiado pues estaba utilizando la misma, obtenida desde los backports de ASCII.

Problemas y soluciones

Tuve un solo problema al finalizar la migración y fue quedarme sin sonido pues falla al iniciar PulseAudio:

emi@hal9000:~$ start-pulseaudio-x11
Connection failure: Connection refused
pa_context_connect() failed: Connection refused

El script /usr/bin/start-pulseaudio-x11 falla al intentar iniciar. Este es un bug bastante común que se soluciona iniciando PulseAudio de la siguiente forma:

emi@hal9000:~$ pulseaudio --start

Referencias


Tal vez pueda interesarte


Compartí este artículo