Una forma más segura de ejecutar el software Bleeding Edge en Debian y Ubuntu

Es posible que haya notado que algún software en su distribución no es el último disponible. La mayoría de las personas ni siquiera son conscientes de esto porque, a menudo, no es un problema. Es solo cuando necesita algunas funciones muy recientes cuando se convierte en un problema. Digamos que su editor de video favorito tuvo algunos cambios de código que mejoran el tiempo de renderizado en un 20%. Eso puede ser algo que quieras.

En pocas palabras, la mayoría de las distribuciones que se consideran “estables” o “soporte a largo plazo” tendrán (al menos parcialmente) software más antiguo en sus repositorios. Pero las “distribuciones móviles” incluyen software mucho más nuevo, ya que constantemente obtienen actualizaciones de los desarrolladores anteriores. Debian Unstable (con nombre en código Sid) es una distribución de este tipo. Con algo de magia en la línea de comandos, puede ejecutar Debain Sid dentro de su instalación actual de Debian Stable o Ubuntu.

¿Por qué hacer esto cuando solo puedo agregar PPA o backports?

Los archivos de paquetes personales son muy populares entre los usuarios que desean agregar software más nuevo a Ubuntu. Pero los PPA, los backports (en Debian) y otros métodos similares interfieren con su instalación principal. Eso significa que pueden actualizar partes y partes de su sistema principal. Esto aumenta el riesgo de que algo salga mal, incompatibilidades entre software nuevo y antiguo, nuevos errores introducidos en el sistema operativo, etc.

Por el contrario, el método de este tutorial aísla el software en un espacio separado y no interfiere con su instalación principal de ninguna manera. Es algo similar a un contenedor (menos las fuertes características de seguridad). Además, Debian Sid incluye mucho más software del que encontrará en PPA o backports. Sin embargo, todo tiene sus limitaciones, así que ten en cuenta las notas del Página de Debian inestable.

Cree una instalación mínima de Debian Sid con debootstrap

Abra un emulador de terminal e instale “debootstrap:”

Cambie a su directorio personal;

Empiece a arrancar una nueva instalación de Debian Sid en el directorio “debian-sid”:

El proceso tomará un tiempo, así que espere unos minutos.

debootstrap-install-sid

Prepare su instalación de Debian Sid

Primero, instale un nuevo paquete:

Ahora, use una utilidad recién instalada para “entrar” en su distribución Debian Sid:

Si alguna vez se queda atascado en este recipiente, puede presionar Ctrl + ] tres veces seguidas para salir con fuerza. Úselo solo como método de emergencia.

Agregue un nuevo usuario. En este ejemplo, el usuario simplemente se llama “usuario”, pero puede reemplazarlo con el nombre de usuario que desee, aunque el nombre que se le dé no tenga importancia.

debootstrap-adduser

Elija una contraseña para este usuario. No se mostrará ningún texto cuando escriba. Después de presionar Enter, escriba la misma contraseña nuevamente cuando se le solicite. Los siguientes detalles, como “Nombre completo”, no son obligatorios, por lo que puede simplemente presionar Enter en estas indicaciones. Finalmente, escriba “y” cuando se le pregunte si la información es correcta y presione Entrar.

Instalar sudo:

Agregue el usuario al grupo sudo:

Establezca el nombre de host para su contenedor. Esto le ayudará en la terminal, haciéndolo más claro cuando está conectado al contenedor y cuando está en su sistema principal. Ayudará a evitar errores.

Salga de su contenedor Debian Sid:

Arranque virtualmente el contenedor Debian Sid con systemd-nspawn

Un simple chroot El comando podría haberse usado para ingresar a este contenedor, pero systemd-nspawn tiene métodos de aislamiento más fuertes. Esto evita mejor que el contenedor “se filtre” hacia su sistema principal accidentalmente. Además, la utilidad incluye un interruptor de arranque virtual. Lo que hace es simular un arranque real de su instalación de Debian Sid. Esto inicia algunos procesos en segundo plano que algunas aplicaciones pueden requerir para funcionar correctamente (por ejemplo, dbus).

“Arranque” su instalación de Debian Sid:

debootstrap-virtualboot

Inicie sesión con el nombre de usuario y la contraseña elegidos anteriormente.

Instalar y ejecutar el software deseado

Supongamos que desea instalar el editor de imágenes GIMP:

Apague su contenedor para que pueda reiniciar con todas las cosas nuevas que instaló (dependencias como dbus):

Siempre que haya terminado de trabajar con el contenedor, este es el comando que debe usar para salir.

GIMP es una aplicación gráfica, por lo que necesita un servidor gráfico. Por razones técnicas, esto no se está ejecutando en su contenedor, sino en su sistema principal. Ejecute esto en su sistema operativo principal (no en el contenedor):

Puede obtener una respuesta como :0.0.

Arranque el contenedor nuevamente:

Después de iniciar sesión, dígale al contenedor dónde puede encontrar la pantalla.

Reemplazar :0.0 si tuvieras una respuesta diferente.

Esto solo funciona con el servidor gráfico Xorg. Si está utilizando Wayland, es posible que deba hacer lo anterior con la variable WAYLAND_DISPLAY en lugar de DISPLAY. Si eso no funciona, use Xorg temporalmente a través de las opciones de su administrador de inicio de sesión.

Ahora puedes ejecutar gimp:

debootstrap-running-gimp

No te preocupes por las advertencias en la terminal. Los obtiene en cualquier sistema cuando ejecuta una aplicación gráfica desde el terminal. Es una salida normal. Por lo general, no lo ve, ya que normalmente inicia aplicaciones desde un lanzador gráfico.

Conclusión

Puede ser difícil llegar a este punto, pero una vez que haya terminado, es fácil instalar nuevo software. Simplemente inicie el contenedor, instale apt, exporte la pantalla, ejecute la aplicación. Una vez que tenga todo lo que necesita, solo tiene que actualizar de vez en cuando. Haz eso con apt update && apt upgrade. A veces es posible que también tenga que usar apt update && apt full-upgrade después del comando anterior.

¿Es útil este artículo?

¡Ayúdanos a correr la voz!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *