FreeBSD 13.2-RELEASE ya está disponible

FreeBSD 13.2 es la actualización de la versión 13 de FreeBSD para este cuatrimestre. Actualiza paquetes e incorpora nuevas funciones y mejoras de rendimiento y estabilidad en el resto del sistema operativo.

La última versión de FreeBSD, uno de los sistemas operativos de tipo BSD de código abierto más importantes del mercado, ya está disponible. Se trata de la versión 13.2, que continúa el linaje de FreeBSD 13 incorporando correcciones de errores y nuevas funciones. Muchos paquetes de software disponibles de serie en FreeBSD o en sus repositorios principales han sido actualizados. OpenSSH ahora usa la versión 9.2p1 y OpenSSL la 1.1.1t. También se ha actualizado la suite de compiladores de LLVM a la versión 14.0.5.

Entre los cambios más relevantes, vuelve a estar disponible el driver para WireGuard a nivel de kernel, el cual se tuvo que retirar anteriormente debido a los problemas que tenía cuando se introdujo por primera vez. Ahora también, el soporte para ASLR estará activo por defecto al ejecutar programas de 64 bits. ASLR es una técnica de seguridad informática que carga los programas en posiciones aleatorias, en vez de usar siempre exactamente la misma disposición de memoria virtual, lo que es más seguro porque en caso de comprometer el sistema, un proceso malicioso ya no puede asumir tan fácilmente en qué partes de la memoria están los datos de un programa en ejecución.

La compatibilidad con Linux ha mejorado (para nuevos: FreeBSD no es Linux). Especialmente en ARM64, donde ahora la ABI para ejecutar procesos de Linux está al mismo nivel que la de la arquitectura AMD64, incluyendo el nuevo soporte para ptrace. En esta versión de FreeBSD, se ha añadido la herramienta nproc, que funciona exactamente igual que la que usa GNU Coreutils en cualquier distro GNU/Linux, para facilitar la creación de scripts portables. También será posible decodificar llamadas a sistema en procesos de Linux desde kdump.

Tal vez sea el momento de dejar de usar FeedBurner, ¡actualiza tu RSS!

Este post va destinado a las personas suscritas al RSS de este sitio web, o a las personas que lo tienen configurado en sus integraciones, anuncios y otro tipo de herramientas. (En realidad, RSS también fue inventado precisamente para esto.)

Si la suscripción a Nos Gusta Linux la tienes hecha a través de FeedBurner, tal vez sea conveniente que la cambies por la original que produzco a través de mi sitio web, desde alguna de las siguientes URLs:

La forma de saber si te has suscrito al feed de FeedBurner es comprobando si la URL del feed en tu aplicación de feeds comienza por http://feeds.feedburner.com o por https://feeds.feedburner.com. En la versión web de Feedly, por ejemplo, esto lo puedes saber si desde la barra lateral seleccionas Nos Gusta Linux, le das al botón con los tres puntos suspensivos que hay arriba a la derecha y haces clic en «More settings». Verás la URL del feed en la pestaña que se abre. En otros lectores de RSS el procedimiento puede cambiar así que deberías consultar el manual de instrucciones de tu programa.

Si todo sale mal, la forma más simple es cancelar la suscripción y volver a suscribirte usando uno de los links correctos que he puesto más arriba y que comienzan siempre por https://nosgustalinux.es/feed/. En el peor de los casos, es posible que tengas que volver a marcar como leídas todas las entradas y que pierdas el historial de posts que marcaste como favoritos o señalaste de algún modo, así que si es así, asegúrate de salvaguardar esa información antes.

No voy a dar de baja la integración con FeedBurner, pero es un servicio web que hace años que se nota cada vez más pobre y más de capa caída, y viniendo de Google, se hace complicado saber cuándo pueden decidir cerrarlo, así que conviene tener esta información de antemano. El feed de FeedBurner seguirá operativo hasta el último día, llegue cuando llegue.

En otros tiempos, FeedBurner era un servicio verdaderamente útil que te dejaba suscribirte a un feed RSS por e-mail, estimar (de forma bastante imprecisa, todo sea dicho) cuántas personas estaban suscritas al feed, crear iconos y banners para promocionar tu blog… eran otros tiempos y tanto la web como Google, su propietario desde hace casi dos décadas, ha cambiado bastante. Hoy día FeedBurner es un servicio aséptico y con muy pocos botones, que da la sensación de que está abandonado. Sin embargo, miles de blogs y podcasts siguen usándolo y el día que el barco se hunda, vamos a tener un problema real en internet.

¿Qué es una biblioteca (o «library») en una distribución GNU/Linux?

Las bibliotecas son una de las partes más esenciales del software, y es una palabra que posiblemente hayas visto en tu gestor de paquetes. ¿En qué consisten realmente?

En raras ocasiones, en GNU/Linux te encontrarás mensajes de error o de advertencia que hacen referencia a palabras como biblioteca o library. También en español se le suele llamar librería, y aunque desde el punto de vista pragmático se refiere al mismo concepto, algunas personas cuestionan este nombre porque la traducción correcta de library es biblioteca. Sin embargo, una pregunta más importante independientemente del nombre es: ¿qué es esto? En este post voy a tratar de definirlo en conceptos simples y sin dar mucha vuelta.

¿Qué es una biblioteca de software?

Una biblioteca de software es una pieza de software que aunque ofrece funcionalidad, igual que la que puedes encontrarte en un programa tradicional, no puede ser clasificado como programa porque como tal no lo puedes lanzar haciendo doble clic sobre su icono o escribiendo un comando de terminal.

El rol de la biblioteca es proporcionar servicios que puedan ser usados por otras piezas de software. Estos servicios a menudo se corresponden con código que es ejecutado por el ordenador a petición de un programa o de otra biblioteca. De este modo, la biblioteca recibe lo que se podría denominar una petición de servicio para que haga una operación, y eso hará que nuestro ordenador procese cierto código máquina proporcionado por la biblioteca para generar un resultado del servicio.

Por poner un ejemplo, en cualquier distribución GNU/Linux podemos identificar varios editores fotográficos, como son GIMP, Inkscape o Krita. Sin embargo, la realidad es que ninguno de estos programas que menciono sabe cómo transformar los ceros y unos que hay dentro de una foto de tipo JPEG en los colores que luego se ven por pantalla. En su lugar, usan los servicios de una biblioteca de manipulación de imágenes JPEG. Esta biblioteca puede ser, por ejemplo, libjpeg.

libjpeg es una biblioteca experta en el manejo de imágenes JPEG. Sabe cómo transformar esos unos y ceros en píxeles, y sabe cómo volver a codificar píxeles para crear una foto nueva. Sin embargo, no puedes interactuar directamente con una biblioteca. No hay un icono para abrir libjpeg, ni tampoco puedes simplemente escribir en la terminal de tu sistema operativo el comando libjpeg para interactuar con este software.

¿Por qué existen las bibliotecas de software?

Puede ser visto desde fuera como poco educado que un programa se aproveche de las funciones de otro para hacer su trabajo. Sin embargo, en realidad esta situación no sólo es ventajosa sino que por evolución hemos llegado a ella. Existen varias razones por las cuales las bibliotecas de software tienen aceptación y se suelen utilizar para distribuir software.

Una de las ventajas es que permite reducir el tamaño de un programa. Si cada programa del mercado tuviese que incorporar su propio descodificador de imágenes JPEG, por ejemplo, los paquetes de software ocuparían más espacio de almacenamiento debido a que cada programa tiene que incluir sus propias instrucciones de procesador para que el ordenador pueda hacer esas tareas. Hoy en día no es un problema tan grande como antes, pero cuando los ordenadores tenían discos duros más pequeños sí que era de agradecer. Incluso hoy en día, en algunas placas de computación y otro tipo de microordenadores, suele ser importante medir para qué se usa cada byte de almacenamiento.

Por otra parte, que la comunidad centre sus esfuerzos en una biblioteca común que sólo sepa hacer bien una cosa pero que la haga bien, facilita que las mejoras que se incorporen a las bibliotecas estén disponibles a la vez para todos los programas que usen sus servicios, algo que hace que todos los programas se beneficien a la vez. Imagina que un día se inventa un algoritmo nuevo que es capaz de decodificar imágenes JPEG mucho más rápido. Si hay que enseñarle ese algoritmo a cada programa, tendríamos programas descompensados que serían más lentos. Si se hace esa mejora en la biblioteca, todos los programas que usen sus servicios pueden verse favorecidos a la vez.

También está el tema de la seguridad. A veces los procedimientos de cálculo que ejecutan los programas pueden ser arriesgados, y un programa malicioso puede aprovecharse de ciertos errores de computación en algunos de estos programas para hacer cosas inapropiadas. Es más sano corregir el error una vez y que todos los programas que dependan de ella se vean beneficiados a la vez, a tener que arreglar por separado cada programa, puesto que algunos no se actualizarán tan deprisa y podría suponer un riesgo de seguridad a los usuarios.

¿Por qué a veces las bibliotecas de software dan problemas?

Las bibliotecas de software no siempre funcionan bien. En ocasiones, puede ocurrir que un servicio se presta diferente en la versión 1.0 de una biblioteca, que en la versión 2.0 de la misma biblioteca. Si un programa ha determinado que necesita la versión 1.0, pero otro programa necesita usar la versión 2.0, será complicado satisfacer ambas demandas sin instalar a la vez ambas versiones.

Soluciones como AppImage buscan precisamente solucionar estos problemas haciendo que cada paquete de software traiga consigo mismo una copia separada de la biblioteca, a costa de perder las ventajas para el usuario final. Los programas que se distribuyen como AppImage pesan más, y si se instalan varios puede ocurrir que ocupen más espacio. Sin embargo, resulta útil para solucionar este tipo de problemas por lo que al final del día, dado el tamaño de los medios de almacenamiento típicos de la actualidad, no se considera un problema.

Flatpak y Snap resuelven este problema de forma más limpia, permitiendo que múltiples versiones de una misma biblioteca estén instaladas a la vez en el ordenador pero en lugares separados, y utilizando un sofisticado sistema de resolución para que un programa indique de forma exacta qué versión de una biblioteca necesita que le proporcione servicios.

Planner es el organizador para que empieces el año bien

En este post reviso Planner y te doy un tour por la aplicación, para que puedas decidir si es la aplicación que te puede ayudar a ser una persona más productiva en 2023.

El año nuevo suele ser una época de propósitos, y si uno de esos propósitos es llevar un estilo de vida más organizado, la tecnología puede ayudarnos a que sea más fácil enumerar las cosas que tenemos pendientes de hacer, como obligaciones para nuestras tareas diarias, o llevar a cabo nuestros planes personales para mejorar durante 2023.

El catálogo de aplicaciones de Flathub está repleto de aplicaciones para orgnaizar tareas, así que si la pantalla de nuestro ordenador es una de las que más miramos, podemos utilizar nuestro ordenador para llevar a cabo este control de las tareas. Una de las aplicaciones que nos encontramos es Planner, y se trata de un gestor de taras diseñado con sistemas operativos como elementaryOS en mente. Es igualmente compatible con cualquier distribución GNU/Linux, aunque se llevará especialmente bien con aquellas que usen GNOME. De hecho, en el futuro piensan integrarse todavía más con las bibliotecas del sistema de GNOME y su posible inclusión en el programa GNOME Circle, y el equipo está considerando un cambio de nombre y de icono para la próxima versión.

Hasta entonces, hablemos de Planner. Está ligada a la metodología GTD (Getting Things Done), una forma de organizarse y de ser una persona productiva basada en algunos conceptos importantes como la bandeja de entrada, donde se van a ir depositando las tareas que nos vayan entrando o que vayamos descubriendo. Esta bandeja luego es organizada, las tareas son clasificadas, y periódicamente existe un procedimiento de revisión para comprobar que no se está olvidando nada importante. Y, por supuesto, la etapa de la ejecución de las tareas.

Captura de pantalla de Planner
Aspecto principal de Planner.

Sin embargo, la aplicación no es perfecta. Ninguna lista de tareas lo es. Y esto ocurre, en parte, debido a que cada persona tiene formas de trabajar diferentes. Planner se siente muy cercano a la metodología GTD (Getting Things Done), pero si no eres una persona que utilice la metodología GTD, probablemente la aplicación te obligue a trabajar de formas para las que no tengas costumbre, o pretenda que cambies tu manera de hacer las cosas.

El principal atractivo de Planner es conectarlo con Todoist, un servicio cloud similar que te permite organizar tareas en la nube y sincronizarlas con todos los dispositivos. Con esto puedes conseguir integrar tu ordenador y tu móvil, si tienes la aplicación de Todoist instalada en él, para sincronizar automáticamente tus tareas en todas tus pantallas.

Algunas limitaciones de Planner que te vas a encontrar, no obstante:

  • Una vez que respondas a si quieres usar tareas locales, conectarte a Todoist o a un entorno CalDAV, ya no es posible volver a responder a esa pregunta sin borrar antes todos los datos de la aplicación, perdiendo todas las tareas que hayas metido hasta entonces.
  • ¿Exportar información? Es posible, pero no es tan fácil como parece.
  • En este momento no es posible crear tareas programadas que se repitan con el tiempo.

Dentro de Planner, la forma de organizar la información más allá de la bandeja de entrada es en proyectos y etiquetas. Puedes crear ambas cosas desde la interfaz. Les puedes asignar un color y una etiqueta. A los proyectos también les puedes asignar hasta un emoji para representar visualmente cada proyecto.

Interfaz de creación de proyectos.

Una vez hagas eso, vas a poder colocar en esos proyectos las tareas que crees, y vas a poder asignarles etiquetas a esas tareas. Después, con la barra lateral vas a poder filtrar tanto por proyecto como por tareas.

En la parte de arriba de la barra lateral también encuentras cuatro botones para aplicar filtros especiales:

  • Inbox: tareas que no forman parte de ningún proyecto todavía.
  • Today: tareas que han sido configuradas para hoy.
  • Scheduled: te da acceso a un calendario donde puedes ver las tareas configuradas para cada día, y recorrer con la línea del tiempo los días.
  • Pinboard: te deja filtrar por tareas que han sido marcadas como fijada, que son las que siempre van a ser visibles.

En definitiva, Planner, si bien tiene algunas limitaciones a nivel de cómo está programado, puede ser una alternativa para personas que busquen una forma simple de integrar una aplicación de tareas en su ordenador para poder recordar las cosas que hay que hacer inmediatamente.

Puedes descargar Planner desde Flathub y desde la tienda de aplicaciones de elementaryOS.

passwd: todo lo que debes saber

Un tutorial para poder utilizar el comando passwd que puede ayudar a las personas que recién llegan a UNIX.

El post en el que explicaba cómo recuperar la contraseña de Debian me dio la idea de profundizar más en el funcionamiento del comando passwd, ya que tiene varias formas de operar según cómo se llame a este comando.

passwd sirve para cambiar la contraseña de una cuenta. Si ejecutas el comando normal en tu terminal, por ejemplo, passwd, bajo tu propia cuenta de usuario solo podrás cambiar tu propia contraseña. Sin embargo, el auténtico poder de este comando está en invocarlo como superusuario (es decir, como root). Cuando la cuenta root ejecuta este comando, puede cambiar cualquier contraseña: la suya o la de otra cuenta.

Cuando invoques passwd con una cuenta normal, lo primero que hará es pedirte la contraseña actual, y así lo veremos cuando dice Current password. Aquí tenemos que meter la contraseña que tenemos ahora mismo. Esto es una medida de precaución para asegurarse de que un script automatizado no trata de cambiar nuestra contraseña sin permiso.

Ten en cuenta que cuando escribas una contraseña, no la verás por pantalla. Igual que pasa con el comando sudo, no habrá feedback. Ni si quiera unos asteriscos. Cuando empieces a escribir la contraseña, hazlo con determinación y no te detengas a medio de teclearla, para no cometer errores.

Después de escribir la contraseña actual y pulsar Enter, el sistema nos preguntará por la contraseña nueva que queramos establecer. En total la tendremos que escribir dos veces, porque nos pedirá confirmación. Así, si la hemos escrito mal, nos avisará para no bloquear nuestro sistema.

$ passwd
Current password:
New password:
Retype new password:
passwd: password updated successfully

Sobre esto, varias notas extra:

  • La configuración del sistema operativo podría traer reglas adicionales que pueden impedir que se guarde la contraseña. Por ejemplo, es posible que rechace cambiar la contraseña si no tiene un número mínimo de caracteres, o incluso si no junta alguna mayúscula o dígito.
  • Es posible que si pones la misma contraseña como nueva contraseña, te lo rechace y te diga que es la misma contraseña de todos modos.

Por último, el auténtico poder de este comando está en lanzarlo como root. Si lo hacemos podremos cambiar la contraseña de cualquier usuario si lo especificamos como parámetro al lanzar el comando. En este caso, de hecho, passwd no preguntará por la contraseña, lo que le convierte también en el comando ideal para usar si tenemos que recuperar una contraseña en concreto:

# passwd ana
New password:
Retype new password:
passwd: password updated successfully

Recuperar la contraseña de superusuario de Debian 11

¿Te has olvidado de la contraseña que le diste a la cuenta de root en tu instalación de Debian? Suele pasar si no la usamos con mucha frecuencia. Te cuento cómo usar el modo rescate para reestablecerla.

Cuando se configura Debian, una de las primeras cosas que pregunta el sistema operativo es qué contraseña le pretendemos dar a la cuenta de superusuario, es decir, a la cuenta root. Otras distribuciones GNU/Linux han decidido restringir el uso de la cuenta root y facilitar que la distribución se instale teniendo una cuenta superusuario como primera cuenta. No es el caso de Debian, que sigue dándole mucha importancia a la cuenta de superusuario root, y que ni siquiera configura por defecto sudo en la cuenta principal cuando se instala el sistema.

Sin embargo, ¿qué hacer cuando no hemos utilizado en una larga temporada esa cuenta y nos hemos olvidado de su contraseña? ¿Cómo podemos reestablecer la contraseña de root en Debian 11? Vamos a ver qué opciones tenemos en este post.

El juego de ejecutar passwd como root

El objetivo es conseguir tener acceso a una shell root desde la que podamos ejecutar passwd. Este es un comando interesante de administración de sistemas UNIX que sirve para cambiar una contraseña. Cuando lo ejecutamos como root, nos permite cambiar la contraseña de cualquier cuenta del sistema.

Si ponemos passwd sin más cuando somos root, cambiaremos la contraseña de root. Tan fácil como esto. De modo que el objetivo de este juego será conseguir una shell de root con la que hacer el cambio de contraseña.

El caso más simple es si ya tienes montado sudo en tu ordenador. Si tu cuenta personal está configurada para poder utilizar sudo, no tienes que hacer nada más que ejecutar sudo su. Con esto, utilizarás tu propia contraseña para acceder a una shell de root.

workstation ~ $ sudo su -
[sudo] contraseña para dani: 
[root@workstation ~]# passwd
Nueva contraseña:

Sólo recuerda que:

  • Cuando teclees la contraseña, esta no será visible por pantalla, así que teclea con confianza y sin detenerte. Con esto evitarás problemas si estás escribiendo palabras y no te equivocarás.
  • Tendrás que escribir la contraseña dos veces y tiene que coincidir. Si la has escrito mal alguna de las veces, te avisará y tendrás que volver a empezar.

Entrar en modo rescate

Si no tienes montado sudo, doas ni nada parecido (cosa que deberías), no quedará otra que entrar en modo de rescate. Resulta sorprendente lo fácil que es arrancar GNU/Linux en modo rescate saltándose cualquier medida de protección, pero si el disco no está cifrado, técnicamente no hay nada que impida hacer esto.

Para entrar en un modo rescate que nos permita saltar la contraseña, todo lo que haremos será reiniciar el ordenador y pulsar e cuando estemos en la pantalla de elección de entorno.

Pantalla de GRUB en Debian 11.

Al pulsar la tecla e aparece el editor de arranque. Con esto podemos modificar los comandos que se ejecutan por GRUB para arrancar el sistema operativo. Por dar la nota, cuando seleccionamos una opción premarcada como Debian GNU/Linux en GRUB realmente ejecutamos todas las instrucciones que se están viendo ahí.

Todo lo que haremos ahora será desplazarnos hacia la línea que empieza por linux (la que empieza por linux /boot/vmlinuz...). Nos desplazamos al final de la línea (aquí puedes usar Ctrl + E para ir rápidamente al final de la línea). Después, borramos las últimas palabras (ro quiet) y en su lugar pondremos rw init=/bin/bash. En definitiva, la línea de linux tiene que quedar tal que así:

    linux    /boot/vmlinuz-5.10.0-19-amd64 root=UUID=... rw init=/bin/bash

Ten en cuenta que la versión del kernel que acompaña a vmlinuz puede cambiar. Además, he suprimido el UUID completo de mi disco porque será diferente al tuyo. Una vez lo hayas comprobado, pulsa Ctrl-X o F10 para arrancar el sistema.

linux /boot/vmlinuz-5.10.0-19-amd64 root=UUID rw init=/bin/bash
El aspecto de GRUB para arrancar en modo rescate

Cuando termine de cargar, verás una shell. Esta shell está conectada al disco duro, por lo que con esto ya tenemos una sesión root para poder ejecutar algunos comandos. Deberías poder comprobar que el disco duro está montado en modo escritura. Esto es algo que puedes hacer ejecutando el comando mount y comprobando si en la salida se incluye una línea que contenga tu partición y la raíz (/). En los flags de montaje debe salir la opción rw. Por ejemplo, en mi caso veo:

/dev/vda1 on / type ext4 (rw,relatime)

Esto es suficiente de por sí.

Como puedes ver en tu shell, root@(none) implicará que tenemos una shell de root. Con esto ya podemos ejecutar el comando passwd y establecer una nueva contraseña para la cuenta de superusuario:

root@(none):/# passwd
New password:
Retype new password:
passwd: password updated successfully
root@(none):/#

Una vez que hagas esto, reinicia tu ordenador. Posiblemente a la fuerza si tienes problemas para escribir reboot. Deberías comprobar que si ahora tratas de escribir la contraseña de superusuario (por ejemplo, usando el comando su), ya te la aceptará.

Raspberry Pi predice una vuelta al stock de siempre durante 2023

¿Se acerca el fin de la crisis del componente que impide que placas como la Raspberry Pi puedan ser compradas por el público general? De acuerdo con lo último que cuentan desde la empresa, la respuesta podría ser sí.

Cualquier maker que en los últimos tiempos haya intentado encontrar hardware para sus proyectos se habrá dado cuenta que conseguir una Raspberry Pi en este momento es misión imposible. No hay stock, y el que hay, tiene precios ridículos. La crisis de stock que vivimos durante estos años está afectando a todos los sectores, y el de los semiconductores es uno de los más perjudicados.

Sin embargo, en una noticia compartida recientemente por Raspberry Pi, nos entregan como regalo de navidad varias noticias positivas. En particular, con los vendedores oficiales habrían conseguido apalabrar un stock de 100.000 unidades de stock que van a mejorar de forma inminente los datos de stock que nos encontramos en sitios como RPILocator, donde es posible visualizar fácilmente si hay stock disponible para productos en estos vendedores oficiales.

De hecho, lo mejor está por llegar. La fundación predice que la situación se mejore en el segundo trimestre de 2023, alcanzando niveles anteriores a la pandemia, para finamlente regresar al stock infinito durante la segunda mitad del año.

Una de las consecuencias de la rotura de stock está siendo la subida de precios. Pese a que la cosa mejore el año que viene, algo que adelantan es que no vamos a ver esa mejora de stock materializada necesariamente en los precios de siempre. La inflación ha disparado el coste de los componentes necesarios para producir estas placas, y regresar al precio de venta original haría que los dispositivos se vendan a pérdidas. Esa es la razón por la que cuando la cosa se tranquilice, notaremos que los dispositivos habrán subido de precio igualmente respecto a lo que podíamos encontrar hace un par de años.

Debian Backports: qué es y cómo activarlo en Debian 11

En este post te cuento qué es debian-backports y cómo activarlo, para poder instalar versiones más modernas de algunos paquetes que trae Debian 11.

Probablemente te habrás dado cuenta que el software que viene en el gestor de paquetes de Debian es un poco más antiguo que el que se puede encontrar en otras distribuciones. Para paquetes que se actualizan con frecuencia, tal vez te sorprenda descubrir que algunos de estos paquetes en Debian traen versiones un poco más antiguas de lo normal. Existe una razón por la que esto es así.

En Debian, prima más la estabilidad de los paquetes que la frecuencia de actualizaciones. Es por ello que en el ciclo de vida de una versión de Debian, una de las primeras etapas es la congelación del repositorio. Esto ocurre meses antes de que salga una versión de Debian. En ese momento, el repositorio de la siguiente versión de Debian deja de aceptar nuevas versiones de los paquetes que porta, y empieza a aceptar solamente correcciones de errores. La idea es poder garantizar que el software que trae el repositorio por lo menos es robusto y tiene sus errores corregidos.

Sin embargo, en algunas ocasiones esto puede ser un problema. Por ejemplo, puede que nuestro ordenador tenga Debian y queramos utilizar una versión reciente de un SDK o de un programa. O puede que por una necesidad de ciberseguridad tengamos que actualizar a una versión de Apache o NGINX más reciente que la que se porta en el repositorio. Si la versión que hay en los repositorios no es lo suficientemente reciente, podemos tirar de debian-backports, suponiendo que el paquete esté disponible en primer lugar.

En definitiva, debian-backports es una forma de traerse desde la rama testing algunos paquetes para que puedan estar disponibles de forma segura en versiones anteriores de Debian. Por ejemplo, traerse paquetes de la rama testing para poderlos usar de forma segura en Debian 11 pero sin cambiar todo el sistema operativo a testing o a sid, algo que puede ser beneficioso en servidores.

Cómo usar debian-backports en Debian 11

Para utilizar debian-backports, lo primero que tendrás que hacer es agregar el repositorio a tu ordenador. Si bien puedes modificar el archivo /etc/apt/sources.list, mi recomendación aquí es crear un archivo nuevo que termine en .list en el subdirectorio /etc/apt/sources.list.d, por ejemplo, /etc/apt/sources.list.d/backports.list. Dentro, añadirás lo siguiente al final del archivo:

deb http://deb.debian.org/debian bullseye-backports main

Este es un paso que puedes dar con un editor de textos como Vim o Nano. Ten en cuenta que en este caso estamos activando el repositorio bullseye-backports porque se trata de Debian 11.

A partir de ahora, podremos instalar paquetes que se porten en el repositorio de backports. No todos los paquetes están en backports, pero sí hay unos cuantos disponibles. Puedes ver la lista completa en packages.debian.org.

Por ejemplo, imaginemos que queremos actualizar el servidor Redis por uno más reciente que el que trae Debian 11 en sus repositorios normales (la versión 6.0.16). Para instalar un paquete desde backports, tendremos que pedirle a apt que use el repositorio bullseye-backports mediante la opción -t:

sudo apt install -t bullseye-backports redis

Si ya teníamos Redis instalado en el sistema, APT lo interpretará como una actualización de software igualmente y se bajará la nueva versión. En este momento, por ejemplo, bullseye-backports porta la versión 7.0.5.

Un detalle importante a tener en cuenta es que pese a que los paquetes de debian-backports han sido testeados para comprobar que funcionan en Debian 11, igualmente se trata de paquetes procedentes de la rama testing, por lo que puede que no tengan tanta estabilidad y confianza como los paquetes congelados que sí trae Debian.

Cómo recupero la contraseña de Ubuntu

¿Qué hacer cuando no se puede iniciar sesión en Ubuntu porque hemos olvidado la contraseña y no hay más cuentas de usuario en el sistema?

Es posible, si tienes una máquina virtual que no sueles usar a menudo, o si tu ordenador tiene dual boot y no pasas mucho tiempo en Ubuntu, que se te pueda olvidar la contraseña que estableciste cuando instalaste el sistema operativo. O bien, por la razón que sea. Existen muchísimas razones por las que se puede perder la contraseña de instalación. ¿Qué hacemos en caso de que no podamos entrar en nuestra instalación de Ubuntu?

Los supuestos

En este post os voy a contar una forma rápida y efectiva de recuperar la contraseña de Ubuntu. No digo que sea la forma definitiva y puede que haya casos donde no funcione.

Por ejemplo, si tu partición está cifrada con LUKS, este consejo no te vale. Es más, ningún consejo te vale. Si los datos de tu disco duro están cifrados y no recuerdas la contraseña, no existe forma de recuperar el acceso, ni siquiera la información contenida en el disco.

Sin embargo, estas instrucciones os pueden echar una mano si habéis hecho una instalación típica de Ubuntu para sobremesas o para máquinas virtuales.

Cambiando la contraseña desde el modo de recuperación

Esta forma de cambiar una contraseña olvidada es tan simple que parece sorprendente que siga funcionando a día de hoy. Pero no nos vamos a centrar hoy en si es excesivamente inseguro y simplemente vamos a aprovechar en nuestro beneficio el hecho de que desde el modo de recuperación de Ubuntu es posible acceder a una shell del sistema operativo, con la que podremos cambiar la contraseña via el comando passwd.

Todo lo que tienes que hacer es arrancar tu máquina de tal forma que salga el menú GRUB. Si Ubuntu es el único sistema operativo de tu ordenador o máquina virtual, es posible que el menú GRUB se salte y se inicie Ubuntu automáticamente. En este caso, GRUB estará configurado para solamente mostrar el menú si no se pudo arrancar de forma segura por última vez. En este caso, reinicia a la fuerza tu ordenador, para que en el segundo arranque salga el menú.

El cargador de arranque de GRUB, versión 2.06.

Ahora lo que tendremos que hacer es pulsar la tecla Abajo para desplazarnos hacia la opción Advanced options for Ubuntu, y pulsar Enter para abrir el submenú. Dentro de este, utilizaremos las teclas de dirección para seleccionar alguna opción de recuperación (por ejemplo, que termine en recovery mode).

Menú de opciones avanzadas de GRUB

Una vez la tengamos seleccionada, pulsamos Enter y dejamos que arranque el ordenador. En este estado, se iniciará una versión diferente de Ubuntu. En vez de entorno gráfico, se cargará un menú de color donde nos presentarán varias opciones de arranque. Tendremos que usar las teclas de dirección para seleccionar la opción root (consola de superusuario), y pulsaremos Enter para confirmar. Después, pulsaremos Enter una segunda vez para entrar en modo mantenimiento cuando pida la confirmación.

Menú de recuperación de Ubuntu entrando en modo consola de superusuario

En la mayoría de instalaciones recientes de Ubuntu, la partición directamente se montará en modo de lectura y escritura. En otras palabras, con este método hemos ganado acceso a una shell de superusuario en el sistema operativo. ¡Tremendo!

Sin embargo, ahora tenemos la posibilidad de cambiar la contraseña utilizando el comando passwd, que tendremos que invocar especificando la cuenta cuya contraseña querramos cambiar. Por ejemplo, para cambiar la contraseña de una cuenta llamada operator, utilizaremos el siguiente comando:

root@ubuntu22:~# passwd operator
Nueva contraseña:
Vuelva a escribir la nueva contraseña:
passwd: contraseña actualizada correctamente

Si tecleáis una contraseña de menos de 8 caracteres es posible que salga un mensaje como CONTRASEÑA INCORRECTA: La contraseña tiene menos de 8 caracteres. Sin embargo, este mensaje es solo un aviso, porque la establecerá igualmente. Contraseñas más largas son más seguras y previenen accesos no autorizados al ordenador.

Hecho eso, salimos de la shell utilizando la combinación de teclas Control-D. Esto nos llevará de vuelta al menú de color, donde tendremos que elegir la opción resume (Continuar con el arranque normal), lo que nos iniciará el ordenador en modo completo, cargando el entorno gráfico.

¿Qué relación y diferencia hay entre Alma Linux y Rocky Linux?

Ambas aparecieron casi a la vez y ambas siguen el mismo sistema de versiones. ¿Por qué existen? ¿En qué se parecen? ¿En qué se diferencian?

Alma Linux y Rocky Linux son dos distribuciones que aparecieron hace unos años para llenar el hueco que iba a dejar CentOS, una veterana distribución derivada directamente de las fuentes de Red Hat Enterprise Linux cuyo soporte fue retirado por Red Hat en 2020. Ambas aparecieron casi a la vez y ambas siguen el mismo sistema de versiones. ¿Por qué existen? ¿En qué se parecen? ¿En qué se diferencian?

Lo que tienen en común

Si bien RHEL es una distribución comercial pensada para empresas y que requiere una suscripción accesible por un jugoso pago periódico, como todo producto con licencia GNU General Public License tiene que tener el código fuente accesible.

Eso significa que otras entidades pueden tomar el código fuente y hacer lo que quieran con él dentro de los términos de uso de la licencia GNU General Public License. Una de las cosas que está permitida es la redistribución, lo que significa que se da la paradoja de que para una distribución comercial como es Red Hat, es igualmente posible tomar las fuentes, recompilarlas y distribuirlas igualmente como otro producto nuevo.

AlmaLinux y Rocky Linux, al igual que su sucesora, CentOS, hacían esto. Tomaban las fuentes de Red Hat y creaban una compilación equivalente en la cual, no obstante, cambiaban todos los logos y nombres de distribución. En parte, la razón por la que se hace esto es porque los términos de la licencia GPL no cubren el uso de marcas, las cuales están registradas. Solo Red Hat puede utilizar su nombre y su logo en sus productos, así que AlmaLinux y Rocky Linux toman las fuentes pero quitan todo el branding para no incurrir en alguna acción ilegal.

Entonces, ¿es lo mismo que ejecutar Red Hat?

Desde el punto de vista del código objeto que se estará corriendo en tu ordenador, tanto AlmaLinux como Rocky Linux garantizan compatibilidad binaria con Red Hat. Eso significa que, incluso si se está usando una de estas distribuciones, tomar cualquier RPM o programa compilado para Red Hat y desplegarlo sobre una máquina que use alguna de estas distros será compatible y el programa funcionará.

Por supuesto, para poder hacer esto, tiene que coincidir la versión. Cada vez que sale una versión de Red Hat, aparece una versión equivalente de sus muchos clones existentes. Estas versiones no tienen mucho campo para innovar. Si acaso, en el software y scripts empleados para generar las ISO. Por ejemplo, AlmaLinux mantiene ALBS, el servidor de compilaciones que se ocupa de compilar los paquetes que luego formarán parte de las versiones publicadas del software.

Sólo es compatible una versión mayor entre sí, como es lógico. Si un paquete se distribuye como compatible con Red Hat 8, no puedes esperar que funcione con AlmaLinux 9. Similarmente, un paquete para Red Hat 9 no va a funcionar en una instalación de Rocky Linux 8.7. Esto es debido a que la compatibilidad binaria no se puede garantizar cuando se trata de una versión mayor diferente, al cambiar tantas cosas en los componentes internos del sistema (versión de glibc, entre otras cosas).

¿Hay realmente alguna diferencia?

Sobre si elegir AlmaLinux o Rocky Linux, no hay ninguna diferencia. Una vez cambia el logo y el nombre, es realmente el mismo software ejecutándose en el equipo. No existe ninguna ventaja entre una distro y la otra.

Las principales diferencias entre AlmaLinux y Rocky Linux están en las personas que están detrás de la distribución. Ambas distros hoy en día han creado una fundación para coordinar el desarrollo. Esto es importante porque hoy día en ambas distribuciones existe toda una sinergia de empresas cooperando para haacer que estas distribuciones funcionen lo mejor posible.

Tras Rocky Linux se encuentra la Rocky Enterprise Software Foundation, una empresa creada por Gregory Kurtzer. Esta persona ya es conocida en el lugar debido a que también fue quien inició el proyecto CentOS allá por 2004, que fue la primera distribución de este estilo que apareció. En cambio, detrás de la AlmaLinux Foundation hay un comité de directores más diverso, ya que su modelo de gobierno está más orientado a la comunidad.