Rocky Linux 9.1 ya está disponible, tanto para aquellas personas que quieran instalarlo por primera vez mediante sus múltiples ISOs, como a través del sistema de actualizaciones para usuarios de Rocky Linux 9.0.
Rocky Linux ahora mismo va por la versión 9.5. Si todavía estás ejecutando una versión anterior dentro de Rocky Linux 9, considera actualizar a la última versión en algún momento para poder aprovechar las nuevas funciones. El contenido de este post podría no estar actualizado.
Con un par de semanas de diferencia respecto a la publicación de la versión upstream de Red Hat 9.1 aparece Rocky Linux, el primer parche mayor para la versión 9 de Rocky Linux.
Esta distribución es compatible a nivel binario con Red Hat Enterprise Linux, debido a que toman las fuentes con las que se generan las ISOs de Red Hat, les cambian las marcas y los nombres, y con ello fabrican una distro diferente. Este proceso es correcto y es el mismo que durante tantos años estuvo haciendo CentOS, hasta que fue apartado y descontinuado en 2020. De hecho, Rocky Linux es un proyecto dirigido por Gregory Kurtzer, que fue quien empezó también el proyecto CentOS, así que experiencia hay.
Sin embargo, el hecho de que sea una distribución derivada de Red Hat implica que no tiene mucho margen de maniobra. Las novedades que tiene Rocky Linux 9.1 son las mismas que se han visto ya en Red Hat 9.1, e incluso en otras distribuciones clónicas de CentOS que ya han aparecido a estas alturas, como AlmaLinux 9.1. Sin embargo, sigue siendo valioso igualmente para quienes hayan instalado Rocky Linux 9 en sus servidores.
Para actualizar desde Rocky Linux 9.0, todo lo que tienes que hacer es ejecutar sudo dnf upgrade -y en algún momento, si es que todavía no lo has hecho a estas alturas. Como parte del proceso de actualización, se instalará la siguiente versión del sistema operativo y pasarás a utilizar la versión 9.1, como puedes comprobar si consultas el contenido del archivo /etc/rocky-release.
En cuanto a las novedades, según las notas de versión publicadas en su página, la principal característica a destacar es la llegada de Keylime. Se trata de una herramienta pensada para hacer remote boot attestation, que es algo que los administradores de sistemas hacen para asegurarse de que el software que está ejecutándose en una máquina es el correcto y que no ha sido modificado. En este caso se trata de un atestado remoto, así que se puede usar para comprobar granjas de servidores desde un host de control. Se aprovecha de las características de TPM de los ordenadores modernos para este propósito.
Por lo demás, otras novedades a destacar son la incorporación de NodeJS 18, PHP 8.1 y Ruby 3.1 al sistema de módulos de DNF. Algunos paquetes de sistema como los compiladores de GCC, LLVM, Golang o Rust también han sido actualizados a sus versiones más recientes.
Algunas distribuciones GNU/Linux suelen anunciar en su página web el lanzamiento de versiones LTS. Por ejemplo, en el caso de Ubuntu. ¿Qué quiere decir LTS?
Algunas distribuciones GNU/Linux suelen anunciar en su página web el lanzamiento de versiones LTS. Por ejemplo, en el caso de Ubuntu. ¿Qué quiere decir LTS?
LTS son las siglas de Long Term Support, y hace referencia a que se trata de versiones que van a recibir soporte por parte de los maintainers de la distribución durante más años que una versión regular.
En todas las distribuciones de GNU/Linux serias que encontremos por internet, va a haber una persona o grupo de personas a cargo del mantenimiento. Esto incluye detectar y corregir errores que se puedan producir en la versión, o fundamentalmente el coordinar la entrada de actualizaciones por parte de otros paquetes. Por ejemplo, si KDE corrige un bug en Plasma y la distribución porta KDE Plasma en sus repositorios, el soporte hace referencia a que eventualmente tu gestor de paquetes te traiga la actualización que corrige ese bug porque quien está manteniendo la versión de tu distro se ha ocupado de importar en el gestor de paquetes esa versión corregida.
Soportar versiones de GNU/Linux es complicado y lleva esfuerzo, porque hay que vigilar y en algunos casos securizar y validar correcciones de errores a muchos paquetes para asegurarse de que un arreglo en un paquete no causa problemas en otro. Simultáneamente, las distribuciones GNU/Linux a menudo buscan sacar versión cada pocos años para hacer evolucionar la plataforma, cambiando la arquitectura de la distro. Por ejemplo, cambiar a systemd, cambiar a PipeWire…
Estas dos cosas provocan que sea imposible estar perpetuamente dando soporte a una versión de una distribución GNU/Linux. Es mejor centrar sus esfuerzos en un conjunto de versiones limitada e ir rotando. Esto quiere decir que cuando una nueva release de la distribución sale, la más antigua pierde soporte, para que su equipo se centre en corregir los errores de una.
Generalmente las distribuciones tienen un calendario de publicación. Por ejemplo, sacan una nueva ISO y una nueva versión (Debian 8, Debian 9, Debian 10…) cada 2-3 años, o cada 6 meses, o el primer día de cada mes de abril, por decir algo. Y también establecen una duración para el soporte a esa versión. Por ejemplo, durante los siguientes 9 meses, durante los siguientes 2 años, o hasta que pasen 3 meses de la salida de la siguiente versión de nuestra distro.
Las versiones LTS están marcadas porque no son así. En este caso, el soporte durará más tiempo. Por ejemplo, durante 5 años o durante 10 años desde el lanzamiento de la versión. Esto las hace ideales para instalar en entornos donde queramos no estar cambiando cada dos por tres de sistema operativo o actualizando la versión, por los posibles problemas que pueda traer. Esta es la razón por la que es preferible en un servidor web instalar Ubuntu 22.04, que es una versión LTS, a Ubuntu 22.10, que es una versión que no es LTS y que al cabo de 9 meses tendrá que ser sustituida por otra.
Algunos ejemplos de distribuciones que tienen soporte a largo plazo son:
Ubuntu. Si bien las versiones regulares se publican con soporte a 9 meses, la versión que sale cada abril de año par (es decir, la 18.04, la 20.04, la 22.04, la 24.04…) es LTS, y tiene soporte durante varios años. Esto la converte en la distro de preferencia para instalar en entornos donde no deba ser tocada en varios años.
RHEL y derivadas. Por ejemplo, EuroLinux, Oracle Linux o Rocky Linux. Se tratan de versiones que igualmente parten del código fuente de Fedora, pero que tienen un soporte de varios años (hasta 10 años).
Debian. Sale una versión de Debian aproximadamente cada 2 años. El soporte de cada una de estas versiones dura 3 años. Sin embargo, sigue existiendo un soporte a largo plazo que dura más años, por lo que se puede estar aprovechando una instalación hasta 5 años hasta que llegue el momento de despedirse de ella definitivamente.
Te traigo un tutorial para que aprendas a usar el comando TAR, con el que puedes generar este tipo de archivos que tan útiles resultan para archivar o transmitir múltiples ficheros o carpetas.
Un archivo TAR es un contenedor que empaqueta múltiples ficheros y directorios en un único fichero para hacerlo más fácil de archivar y distribuir. Normalmente nos encontramos los archivos TAR cuando descargamos paquetes de internet, como código fuente de programas o distribuciones ejecutables, porque es más fácil de descargar un único archivo con todo el código fuente o con todo el programa, que descargar manualmente docenas de archivos con el riesgo de que no estén actualizados.
TAR en realidad son las siglas de tape archiver, y es que este programa fue diseñado en los tiempos en los que los archivos de este tipo, por ejemplo, las copias de seguridad, se hacían sobre cinta magnética. Ahí queda claro que el propósito de TAR era condensar toda una estructura de ficheros y directorios en un mismo flujo de datos que enviar a una cinta magnética, guardándolo para el futuro. Sin embargo, hace muchos años que las cintas magnéticas fueron superados por otros formatos más baratos y fáciles de usar, como los discos duros y las memorias de estado sólido, por lo que TAR, evidentemente, te va a permitir también compactar esos ficheros y directorios sobre un archivo regular que vas a poder compartir en un pendrive o subir a tu almacenamiento en la nube. Este es un dato que puede que ahora mismo te resulte más una anécdota, pero que puede que te explique cosas cuando inicie el tutorial.
Una cosa que debes tener en cuenta es que TAR no comprime archivos, solamente los empaqueta. Esta es una de las características de la filosofía UNIX, presente hoy día en sistemas operativos como GNU/Linux o cualquier BSD, entre muchos otros. Si lo que queremos es utilizar tecnologías libres para crear archivos comprimidos, igual que haríamos en Microsoft Windows con otros formatos como el 7z o el RAR, primero tendremos que crear un TAR del directorio a comprimir, y luego comprimir por separado el archivo .tar resultante. La ventaja de este sistema es que existen múltiples formatos de compresión de archivo, y al separar ambos pasos, podemos elegir el que nos interese para cada caso de uso, o incluso prescindir de la compresión. Si vas a crear un tarball de algunos tipos de archivo, como vídeo o imágenes JPG, tienes que saber que esos tipos de archivos ya llevan compresión, por lo que volver a comprimir el TAR generado no te va a aportar mucho.
Cómo creo un archivo TAR desde la línea de comandos
Para crear un archivo TAR, todo lo que tienes que hacer es identificar primero el fichero o directorio que quieres empaquetar. En este caso, por ejemplo, vamos a empaquetar una distribución de código fuente que queremos archivar en nuestra copia de seguridad.
En este caso, lo más recomendable sería crear un archivo TAR de todo el directorio CodigoFuente completo. Cuando fabricas un archivo TAR, toda la estructura de directorios se mantiene. Esto quiere decir que si comprimo la carpeta CodigoFuente, dentro del TAR se recordará cada uno de los subdirectorios que existen, y a qué directorio le pertenece cada uno de los ficheros que hay dentro del archivo. Y esto es ventajoso porque cuando lo extraigamos posteriormente, nos dejará los archivos colocados en una subcarpeta, para un acceso más limpio.
Se trata de evitar lo que de otro modo se conoce como tarbomb. Una «tarbomb» o «bomba TAR» ocurre cuando al extraer un archivo, nos llena el directorio actual de archivos extraídos, haciendo mucho más complicado encontrar cuáles son los archivos que vienen del TAR y cuáles son los que ya estaban en el directorio de trabajo antes de iniciar la extracción. Es una mala práctica y van a odiarte mucho si esto ocurre, por lo que lo mejor es comprimir la carpeta completa desde arriba:
Nos vamos a ir al directorio superior y vamos a ejecutar el siguiente comando para comprimir:
Os describo qué se ha hecho aquí. El comando tar, que es el que se usa para crear y abrir archivos de tipo tar, está lleno de opciones. Podemos ver un extracto de estas opciones si ejecutamos el comando tar --help, aunque también podemos ver en detalle un manual de instrucciones si ejecutamos man tar y nos leemos su manpage.
Podemos modificar muchísimos aspectos a la hora de crear archivos, incluyendo la posibilidad de actualizar un TAR ya existente, o de conservar la información de permisos de archivo en un sistema UNIX. En este caso, no le estoy dando tantas opciones: apenas le dí los siguientes flags, -cvf. Si vamos a pasarle varias opciones, podemos simplificarlo y en vez de escribirlo como -c -v -f, lo podemos pasar todo junto como -cvf. El efecto será el mismo.
En este caso, las opciones que le he dado son:
-c: con esta opción, lo que le digo a TAR es que vamos a crear un archivo TAR. Debería venir de las primeras, ya que esta opción es la que le dice al programa qué va a hacer hoy, si crear, listar o extraer.
-v: con esta opción voy a activar el modo verboso. Esto significa que cada vez que TAR procese un archivo, va a escribir a la terminal una línea diciendo cómo se llama el archivo que se ha procesado. Esto nos viene bien para dar seguridad, aunque en algunos casos podemos quitar la opción para hacer más silenciosa la ejecución.
-f: con esta opción, le especifico que quiero que me procese el TAR sobre un archivo. Este paso parece obvio pero hay que aclararlo, por las razones que comentábamos antes: TAR es realmente capaz de volcar datos en muchas partes, archivos, cintas e incluso sobre la salida estandar en bruto. Por lo tanto, tenemos que especificar la opción -f para pedirle que vuelque sobre un archivo, cuyo nombre, de hecho, tiene que venir después. Por eso, a continuación de la opción -f nos encontramos ese CodigoFuente.tar. Con esto le estamos diciendo cómo queremos que se llame el archivo de código fuente que queremos que nos genere.
Después del CodigoFuente.tar que pertenece a esa opción -f, tenemos que poner la lista de archivos regulares y directorios que queremos incluir en el archivo. En este caso voy a poner simplemente CodigoFuente porque quiero que me incluya el directorio con todos sus descendientes. Si quisiésemos incluir más elementos en el archivo, podríamos poner la lista completa. Por ejemplo, tar -cvf Salida.tar Carpeta1 Carpeta2 Carpeta3 Leeme.txt.
Una vez ejecutamos el comando, tenemos nuestro archivo CodigoFuente.tar correctamente creado.
Cómo listo el contenido de un archivo TAR
Supongamos que tenemos un archivo TAR y queremos saber lo que hay dentro sin extraerlo. Igual que podemos usar la opción -c para crear un archivo TAR, tenemos más opciones para inspeccionar o para extraer el contenido de uno de estos archivos.
Veamos cómo utilizar la opción -t, que lo creas o no quiere decir --list, es decir listar el contenido de un archivo. Para este ejemplo, he colocado en mi carpeta de descargas un paquete que he obtenido de internet y que está en formato TAR:
En este caso, como se ve, el comando que he usado es tar -tf. La explicación de parámetros me va a llevar menos tiempo:
-t, como he dicho, pone TAR en modo listar. No se va a extraer nada, solamente se va a enumerar lo que hay dentro del archivador. El resultado del comando se volcará sobre salida estandar, lo que significa que lo veremos en nuestra terminal o que lo podremos mandar a otro programa.
-f es, de nuevo, la opción que usamos para especificar que queremos trabajar con un archivo, ya que de otro modo le podríamos especificar otra fuente de datos; tal vez un flujo de entrada estandar que venga de un lugar como pueda ser internet o incluso un lector de cintas magnéticas de verdad. Y de nuevo, le especificamos a continuación el archivo que queremos que procese.
En este caso, no le estoy proporcionando la opción -v porque el comando va a generar igualmente una lista de resultados quiera o no, así que no es necesario especificarlo.
Cómo extraigo un archivo TAR
Finalmente, vamos a ver como extraer un archivo. Se hace, como antes, modificando los parámetros que le pasamos al comando tar, y poniéndolo esta vez en modo extracción, que es la opción -x, de extract.
Vamos a hacer el ejemplo usando el mismo paquete que he mostrado en el caso anterior.
En este caso, he prescindido de la opción -v. De habersela dado, podría obtener un listado de los archivos que se iban extrayendo a medida que esto iba ocurriendo. Os he querido enseñar aquí que no siempre es necesario poner el comando en modo verboso, y que a veces se puede extraer en silencio. Sin embargo, si vamos a extraer grandes copias de seguridad desde la terminal y no nos molesta, tal vez nos interese presentar con la opción -v un progreso de la extracción, para saber por lo menos que todo está yendo bien cuando miremos la terminal.
En este caso, el comando completo que he usado tiene como parámetros -xf. Como os hacéis a la idea, la opción f sirve para decirle cómo se llama el archivo que queremos extraer. Sin embargo, en este caso, la opción -x es la que usamos para, como os digo, pedirle a TAR que extraiga.
Por suerte, este paquete está bien montado y cuando se extrae genera un directorio llamado gzip-1.12 con el código funete de la aplicación. Si entre manos tuviésemos una tarbomb, mi directorio de descargas ahora estaría lleno de archivos, y yo tendría que echar más tiempo en limpiar luego, con el fin de quitar lo que sirve y lo que no.
Ha salido Alpine Linux 3.17, la última versión de esta distribución minimalista que se caracteriza por utilizar BusyBox en vez del userland de GNU.
Alpine Linux es una distribución Linux que se caracteriza por dos cosas. En primer lugar, por ser compacta. Para ello, prescinde de herramientas que en otras distros se da por hecho, como Bash, glibc o el resto de herramientas de GNU, sustituyendo su userspace por BusyBox y por MUSL. Hasta cierto punto, eso implica que no es una distro GNU/Linux, sino una distro Linux (a secas). En segundo lugar, está diseñado para ser segura. Al ser tan pequeña, es más fácil de protegerla, lo cual la hace también pensada para equipos como routers, firewalls o servidores. También en los últimos años se ha puesto de moda en Docker debido a que permite crear imágenes más pequeñas.
Eso no quiere decir que no se pueda instalar Alpine Linux en un sobremesa o en un portátil si así lo deseas. Tiene un gestor de paquetes con el que puedes obtener cualquier herramienta extra que esté en su repositorio de software. Sin embargo, tienes que tener en cuenta que, debido a que utiliza musl en vez de glibc, es posible que algunas aplicaciones se nieguen a funcionar si no están programadas de forma portable y si asume que tu distro es GNU.
Recientemente, Alpine Linux ha publicado la versión 3.17.0. De acuerdo con su changelog, el cambio más significativo es la actualización de OpenSSL a la versión 3. Será posible seguir utilizando OpenSSL 1.1 en aquellas aplicaciones que todavía lo requieran mediante la instalación de un paquete de compatibilidad.
Debido a que la distro trae poco software preinstalado, tampoco hay mucho más que decir. No obstante, en su gestor de paquetes se han actualizado las versiones de algunos paquetes relevantes. Para aquellas personas que quieran instalar el userland de GNU, paquetes como Bash y GCC ahora traen las últimas versiones. También están disponibles para instalar GNOME 43, KDE Plasma 5.26. Además, herramientas de desarrollo y soporte a lenguajes de programación como bases de datos y entornos de ejecución han sido actualizados a la versión más reciente disponible.
Puedes descargar Alpine Linux para multitud de arquitecturas y de entornos desde su página web.
AlmaLinux 9.1, una de las dos distribuciones GNU/Linux sucesoras de la extinta CentOS, fue recientemente publicada al coincidir con el lanzamiento de RHEL 9.1.
Alma Linux ahora mismo va por la versión 9.5. Si todavía estás ejecutando una versión anterior de Alma Linux 9, considera actualizar a la última versión en algún momento para poder aprovechar las nuevas funciones. El contenido de este post podría no estar actualizado.
Con la salida de Red Hat Enterprise Linux 9.1 la semana pasada, también cabe ahora anunciar el lanzamiento de AlmaLinux 9.1. Esta distribución coincide en número de versión porque AlmaLinux no es más que una recompilación de las fuentes de Red Hat Enterprise Linux, quitándole todas las marcas registradas de Red Hat Enterprise Linux, y sustituyéndolo por el suyo propio. AlmaLinux es un proyecto patrocinado por CloudLinux, una empresa que también vende su propia distribución derivada de RHEL, denominada CloudLinux OS, y que está pensada para proveedores de hosting cloud.
Debido a que esta distribución está basada en Red Hat Enterprise Linux 9.1, y a que buscan tener compatibilidad binaria 1.1 con Red Hat (algo que permite tomar un RPM diseñado para RHEL 9, instalarlo tal cual en AlmaLinux 9 y que funcione sin más), tampoco se trata de una distribución muy innovadora. Se limitan a repetir los cambios y las correcciones que hace el equipo de Red Hat y a replicar el código fuente de RHEL para mantener una cierta sincronización entre ambas distribuciones.
Aun así, AlmaLinux 9.1 incorpora estos cambios en un changelog que publica en su wiki, y que para esta versión sale con las siguientes novedades en materia de corrección de errores y actualizaciones.
Una de las principales novedades de esta versión es Keylime, una herramienta que sirve para monitorizar nodos remotos (por ejemplo, el resto de serviores de un cluster o de una cloud privada) mediante una técnica conocida como atestación de arranque, con la que se puede vigilar que el hardware sobre el que está corriendo el servidor no ha sido comprometido utilizando para ello el sistema TPM del procesador.
Debido a que WEP no está disponible en AlmaLinux 9, se ha corregido un bug que había en NetworkManager para la versión 9.0, que provocaba que igualmente se ofreciese como opción. Ahora NetworkManager indicará que no es posible utilizarlo.
Se han actualizado paquetes de la distribución base. Por ejemplo, en el sistema Module Streams ahora se puede obtener NodeJS 18 y PHP 8.1. Además, herramientas del sistema como valgrind, elfutils o las toolchains de GCC, LLVM, Rust y Go han sido actualizadas a las versiones más recientes.
Para los detalles más importantes, AlmaLinux recomienda consultar el changelog de RHEL 9.1, ya que los cambios que haya en esta distribución, habrán sido absorbidas también por AlmaLinux 9.1.
Es posible descargar AlmaLinux en tres versiones: la edición DVD, que también incluye todo el software que puede caber en el disco, pensada fundamentalmente para entornos donde no va a haber conexión a internet durante el proceso de configuración de la máquina. Para aquellos entornos donde el software no esencial se pueda instalar después, es posible obtener la versión Minimal, que permite una instalación offline pero en la que ciertas cosas, como el entorno de escritorio, no se instalan de serie. Y finalmente, la edición Boot requiere sí o sí conexión a internet durante el proceso de instalación.
En los últimos tiempos se han visto avances en la arquitectura RISC-V y ya tenemos desde placas disponibles al público general hasta incluso ordenadores. ¿En qué consiste la arquitectura RISC-V?
De aquí a que acabe el mes idealmente, Pine64 pondrá a la venta la Ox64, un SBC embebido que, con un precio de venta de 6 a 8 dólares, promete llevar los sistemas operativos en tiempo real (RTOS) así como Linux a una pequeña placa que funciona gracias a un grupo de procesadores de arquitectura RISC-V. También este año vimos el lanzamiento del ROMA, un ordenador portátil con cuerpo de portátil normal como los que ya conocemos, pero corazón que funciona gracias a un procesador quadcore, también de arquitectura RISC-V.
¿De dónde sale RISC-V y qué es lo que pretende? Es muy probable que en los próximos años sigamos escuchando más sobre este tipo de procesadores por lo que cabe preguntarse qué cosas pretende poner sobre la mesa.
RISC-V es una arquitectura de procesadores, igual que otras ya existentes en el mercado a día de hoy como la vieja x86, la AMD64 o la ARM. Es decir, es una familia de procesadores completamente nueva y diferente que puede alimentar todo tipo de dispositivos, desde pequeñas placas embebidas para usar en ordenadores SBC hasta ordenadores personales completos y portátiles como los que hemos empezado a ver este año.
Si bien en este momento va a ser complicado ver la arquitectura RISC-V en listas como la Top500, uno de los puntos fuertes de esta arquitectura es su bajo consumo, lo que precisamente la convierte en la arquitectura perfecta para dispositivos pequeños, como placas embebidas, donde las restricciones tampoco permiten excederse demasiado en cuanto a la potencia energética disponible para la propia placa.
El ROMA es un ordenador portátil equipado con un procesador RISC-V.
De todos modos, existe otra razón muy importante por la cual RISC-V va a dar que hablar, sobre todo en el segmento del software libre y de código abierto, y es por el hecho de que RISC-V es una arquitectura de computadores abierta. Aquí existe una confusión que convendría aclarar. No se trata de que RISC-V sea una arquitectura de computadores libre, como se escucha por ahí. Más bien se trata de que las especificaciones de RISC-V están disponibles sin necesidad de pagar royalties.
RISC-V sólo es una especificación. Detrás de RISC-V está la RISC-V Foundation, que se fundó en 2015 y que es quien coordina los esfuerzos por publicar avances y actualizaciones de las especificaciones que hacen funcionar los procesadores RISC-V. En este comité hay empresas de todo tipo, desde tecnológicas como Google o Huawei, hasta organizaciones como la CNCF o la ESA. Curiosamente, Intel, AMD y NVIDIA también forman parte de esta alianza.
Sin embargo, por decirlo de algún modo, lo único que la RISC-V Foundation hace es publicar PDFs. Aparte de las especificaciones, no hay ninguna marca oficial que fabrique los procesadores, como sí ocurre en el caso de otras arquitecturas. En su lugar, son otras marcas de chips quienes fabrican los procesadores RISC-V y los comercializan como «compatibles con RISC-V». Algunas de estas marcas son Bouffalo Lab, Allwinner o Alibaba Group.
Ahora bien, vamos con lo verdaderamente interesante aquí para el ecosistema libre. Las especificaciones de RISC-V están disponible sin royalties ni otro tipo de cobros, lo que las hace completamente abiertas. Cualquier organización que desee fabricar una línea de ordenadores RISC-V puede tomar las especificaciones y comercializar un procesador acorde con ellas. Esta es la principal diferencia respecto a otras arquitecturas similares como ARM, que también trabajan con un modelo de «nosotros especificamos, vosotros fabricáis», pero donde ARM sí que cobra royalties por el uso de la especificación para crear placas y chips.
La Ox64 es un ordenador de tipo SBC (ordenador monoplaca), equipado con un procesador RISC-V que puede ejecutar GNU/Linux
Sin embargo, parte de la confusión que hay con RISC-V está en cuanto a qué ocurre cuando un diseñador de chips tiene acceso a esas especificaciones y fabrica un procesador concreto que implemente RISC-V. Y es que no es obligatorio para ese fabricante publicar sus diseños. De hecho, la mayoría de las implementaciones de RISC-V son privativas, es decir, el acceso al diseño está restringido. De este modo, muchos fabricantes se diseñan sus propios chips, que comercializan por su cuenta.
Existen algunas implementaciones de RISC-V que sí que son abiertas. Es el caso de la XuanTie 910 del Alibaba Group, por ejemplo, que es una de las más destacadas y que precisamente hace funcionar al portátil ROMA. En este caso, existe una versión denominada OpenXuanTie, cuyos diseños en Verilog son abiertos y están disponibles a través de internet.
¿Qué impacto podrá tener RISC-V en los próximos años? En el mundo de los ordenadores embebidos tienen mucho potencial. En otros terrenos, como el de la computación móvil y de escritorio (como teléfonos y ordenadores), compite con ARM en el juego de robarle terreno a arquitecturas como la x86-64, que tal vez no esté pasando por su mejor momento. Intel, uno de los principales fabricantes de x86-64, sabe esto. Esta es la razón por la que en los últimos años se hayan interesado tanto en esta arquitectura. En los últimos tiempos, presentaron la Nios V, una FPGA que utiliza la arquitectura RISC-V.
En definitiva, los grandes fabricantes huelen algo y están probando a poner sus huevos también en esta cesta, por si en unos años les entregase beneficios. Esta arquitectura nos puede dar algunas sorpresas a lo largo de esta década.
Una pregunta rápida requiere una respuesta rápida. Hoy: ¿se debe usar dnf upgrade, o dnf upgrade?
La respuesta es: por ahora da igual.dnf upgrade es el comando correcto. Sin embargo, dnf update es un comando obsoleto que hoy día se comporta como alias para el otro comando. Eso significa que ejecutes el comando que ejecutes, el resultado será el mismo.
La pregunta que cabe hacerse ahora, por cierto, es si en algún momento el comando dnf update estará tan obsoleto que lo terminen por quitar. En ese caso, es de esperar que nos demos cuenta porque deje de funcionar el comando.
Fedora 37 ha salido. Y si lo acabas de instalar en tu ordenador y te estás preguntando qué puedes hacer ahora, en este post te cuento 9 cosas con las que puedes ir abriendo boca.
Esta versión de Fedora está fuera de soporte. Es recomendable que actualices tan pronto como puedas, sobre todo si tu ordenador ejecuta tareas críticas.Aquí te dejo las instrucciones para actualizar a Fedora 41, pero ten en cuenta que es posible que las debas aplicar manualmente si GNOME Software o KDE Discover se niegan a funcionar.
Fedora 37 ya ha salido y, si usas el spin oficial, una vez hayas instalado o actualizado, tendrás acceso a la última versión de muchos paquetes de software disponibles para tu ordenador, desde herramientas para el día a día como navegadores y editores de textos, hasta entornos de ejecución y desarrollo pensados para profesionales de IT.
Si bien Fedora y GNOME se ocupan de traer unos defaults sensibles y agradables que normalmente no es necesario modificar, existen algunas cosas que conviene hacer una vez se instala el sistema que pueden serte de utilidad para mejorar la experiencia de uso de la máquina.
RPMFusion es un repositorio que contiene paquetes extra que por cuestiones de licencia o por su carácter propietario, no pueden ser incorporadas en el repositorio principal de Fedora.
Para activar RPMFusion deberás ejecutar los siguientes comandos en una terminal:
# Para activar el repositorio Freesudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm# Para activar el repositorio non-freesudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
Puedes ejecutar el primer comando o los dos. Con el segundo, se activa el repositorio non-free, para incluir también código abiertamente privativo. De cualquier modo, este paso será necesario si quieres obtener software gratuito pero no libre fácil, como Acrobat Reader (si es que queda alguien usando eso), o los controladores oficiales de NVIDIA.
Flatpak es un formato de aplicaciones portables que permite distribuir e instalar fácilmente aplicaciones en distribuciones GNU/Linux independientemente del gestor de paquetes. Muchos programas de software de escritorio ahora están disponibles en formato Flatpak porque permiten distribuir fácilmente y sin riesgos de compatibilidad entre versiones o distribuciones programas de todo tipo.
Fedora trae Flatpak preinstalado. Sin embargo, los repositorios de Flathub no siempre vienen activos por defecto. Si tratas de buscar aplicaciones de Flatpak en GNOME Software pero no las encuentras, es posible que tengas que tengas que activar antes su repositorio, ya que Flathub es el principal repositorio de software de Flatpak.
Lo puedes activar de dos formas. La primera es simplemente descargando el archivo .flatrepo y abriéndolo con GNOME Software. Lo puedes obtener haciendo clic en el siguiente enlace: https://flathub.org/repo/flathub.flatpakrepo. La segunda forma es mediante la terminal, ejecutando el siguiente comando:
La ISO de Fedora 37 se publica cuando se lanza la versión. Desde entonces, cualquier corrección de errores al software que se preinstala con la ISO (por ejemplo, GNOME) se publica a través del gestor de paquetes. Pero no siempre se genera una nueva ISO para descargar, lo que significa que es muy posible que el software que traiga tu ISO tenga parches disponibles en el gestor de paquetes.
Por lo tanto, una de las primeras cosas que tienes que hacer es visitar la aplicación GNOME Software y actualizar los paquetes de tu distribución. Si has elegido un spin de Fedora, como el de KDE, el proceso cambiará. En este caso, por ejemplo, podrías usar KDE Discover.
Si no, siempre te quedará lanzar una terminal y ejecutar sudo dnf upgrade. Después de hacer esto, deberás reiniciar tu ordenador. Esto es así porque muchas actualizaciones atacan a componentes esenciales del ordenador, tales como el kernel, el cargador de arranque o algunos drivers del sistema, por lo que hasta que no se reinicie, no se puede asegurar que se está usando la versión actualizada.
Actualizaciones de software pendientes de ser instaladas en Fedora
Instala software imprescindible
El navegador Brave
Mozilla Firefox viene preinstalado por defecto y es un navegador excelente para el día a día. Sin embargo, algunas personas preferirán usar Brave por su interfaz, sus extensiones o porque ya lo usen en otros dispositivos.
Como siempre, es altamente recomendable que prestes atención a lo que estás enviando a la terminal en vez de copiar y pegar a ciegas. Una vez ejecutes estos comandos, tendrás en tu ordenador Brave. Lo encontrarás abriendo el menú Actividades y buscando Brave. Una vez abierto, lo puedes fijar como aplicación favorita para mostrarla siempre en la bandeja de aplicaciones.
VLC y otros plugins para reproducir vídeo
Si en Fedora visitas sitios como twitch.tv, es posible que te encuentres un error al reproducir vídeo por falta de codecs. Por seguridad, Fedora no empaqueta cierto tipo de plugins necesarios para poder reproducir vídeo, debido a que no siempre están claras las licencias de uso de ese software.
Sin embargo, buena parte de ese software es portado por los repositorios de RPMFusion, por lo que si has agregado los repositorios de RPMFusion, todo lo que tienes que hacer es instalar los plugins para agregarle el soporte para ese tipo de formatos multimedia a Fedora: H264, H265, etc.
Mi recomendación aquí es simplemente instalar VLC Player. Se encuentra en los repositorios de RPMFusion también. «Pero Dani -me dirás-, yo no pretendo usar VLC, todo lo que consumo está en la nube». No hace falta que lo abras, pero como VLC tiene como dependencia a casi cualquier códec de vídeo existente, si instalas VLC desde RPM te asegurarás de que ya no te falta de nada. No suelo abrir VLC, pero hasta que no lo instalo, hay livestreams en plataformas como YouTube o Twitch que no cargan.
GNOME Extensions
GNOME de por si trata de ofrecer unos defaults sensibles que tratan de complacer a la mayoría. Pero sabemos de sobra que la mayoría no siempre es el todo. Por eso GNOME es extensible y mediante plugins soporta personalizar su comportamiento.
Hoy en día, la forma más simple de instalar extensiones es mediante la aplicación Extensiones, que proporciona una mejor usabilidad que la manera tradicional (visitar extensions.gnome.org desde GNOME Web o desde un navegador que tenga instalado el plugin oficial de GNOME para la integración con el escritorio).
Puedes descargar Extensions desde Flathub o desde los repositorios centrales instalando dnf install gnome-extensions-app. Y, por supuesto, también lo puedes instalar desde GNOME Software.
Personaliza tu ordenador
Muestra el botón minimizar y el botón maximizar en las ventanas
Por defecto, GNOME sólo muestra el botón Cerrar en la parte superior de una ventana. Este minimalismo lo compensa con un par de atajos: para minimizar una ventana puedes usar Super+H; y para maximizarla y restaurarla puedes hacer doble clic sobre el área de título o arrastrar una ventana a la parte superior de la pantalla.
Si instalas la aplicación Retoques de GNOME (o GNOME Tweaks), fácil de encontrar desde la aplicación GNOME Software, podrás cambiar esto desde la propia aplicación, yendo a la sección «Barra de título de las ventanas» y activando las opciones Maximizar y Minimizar.
Retoques de GNOME es una aplicación sensacional que también te permite hacer más cosas, como cambiar el tema y la tipografía por defecto de las ventanas, lo que te permite personalizar tu ordenador y dejarlo más a tu gusto.
Retoques de GNOME activando los botones minimizar y maximizar de una ventana
Muestra las aplicaciones en tu dock
Cuando se despliega el menú Actividades, en la parte de abajo aparece un dock o bandeja con los accesos rápidos a las aplicaciones abiertas y favoritas. Ese menú sólo está visible por defecto mientras el menú Actividades esté desplegado, pero esto tiene solución.
Si instalas la aplicación GNOME Extensions, puedes buscar una extensión llamada Dash to Dock. Esta es una de las aplicaciones más veteranas de GNOME debido a que lleva teniendo soporte desde que GNOME 3 decidió mostrar las aplicaciones abiertas sólo en el menú Actividades.
Descarga Dash to Dock y configúralo a tu gusto para dejar el Dock en la posición que prefieras. Puedes configurarlo al estilo Ubuntu, al estilo macOS o al estilo menú inicio de Windows. Por ejemplo, puedes hacer que se mueva a la izquierda y se quede en forma vertical para hacer más hueco para las ventanas que tengas abiertas, como los navegadores web.
Cambia automáticamente tema claro y tema oscuro
Hoy en día en GNOME es posible cambiar entre tema claro y tema oscuro desde las opciones de Apariencia. Esto te permite hacer que tus ventanas se vean de colores claros o de colores oscuros según tu preferencia.
Con la extensión Night Theme Switcher, puedes llevar esto más allá y hacer que el tema oscuro se active automáticamente a partir de ciertas horas del día. Con eso puedes tener el tema claro mientras estás trabajando, y el tema oscuro mientras te relajas mirando YouTube por la noche, por ejemplo.
La extensión también te permite cambiar el fondo de pantalla automáticamente, entre otras muchas opciones disponibles, como modificar la forma en la que funciona el filtro de luz naranja de la pantalla que GNOME trae desde hace bastantes versiones.
Un breve resumen sobre lo que es la red social Mastodon, el fediverso en general, y como seguir las actualizaciones de este blog desde cualquier red social compatible.
Una de las cosas interesantes de la red social Mastodon es que su protocolo de comunicaciones es estandar, lo que significa que en realidad, Mastodon no ha inventado nada, sólo utiliza un estandar que ya existía, denominado ActivityPub. Este estandar permite crear aplicaciones web que actúan como redes sociales y también es el que define cómo un servidor tiene que interactuar con otro para poder compartir eventos (tales como publicaciones nuevas, peticiones de follow, eventos de me gusta y demás).
Cualquier aplicación que implemente correctamente el estandar podrá interactuar con todas las demás. Esa es la razón por la que existe gente que, en vez de Mastodon, utiliza otra red social llamada Pleroma. Pleroma ofrece una interfaz alternativa y tiene características que por ahora en Mastodon no se esperan, como poder escribir texto con formato e insertar hiperenlaces normales (no simplemente pegar un http).
Sin embargo, existen muchas más aplicaciones. Por ejemplo, PeerTube sirve para publicar vídeos, al estilo YouTube; y PixelFed para publicar imágenes, al estilo Instagram. Y como todas estas aplicaciones hablan el mismo protocolo, es posible seguir un canal de PeerTube desde una cuenta de Mastodon, por ejemplo, para enterarnos cuando un canal sube un vídeo. Algo que en las redes centralizadas sería impensable. Imagina poder suscribirte a un canal de YouTube desde Twitter. Facilitaría mucho compartir el material que subo a mi canal, por ejemplo.
WordPress también tiene un plugin para interactuar con el fediverso. El plugin se llama simplemente ActivityPub. Y aunque tiene algunas carencias (por ejemplo, no se puede tener una bio y una foto de perfil diferente que la que hay en la página de autor del propio blog de WordPress), es posible utilizarlo para sindicar los posts que se escriben en un blog que usa WordPress si está instalada. También tiene soporte para hacer follow, lo que significa que otras personas pueden seguir al autor de unas publicaciones de WordPress y así recibir en su portada los nuevos posts como si fuesen toots.
Eso nos lleva a que NosGustaLinux.es utiliza WordPress desde este año. Y a que debido a la coyuntura actual del fediverso, donde te vas a dormir realmente sin saber si al día siguiente seguirá existiendo Twitter o no, he instalado este plugin en mi blog para sindicar al fediverso directamente. Considero que esto es más simple y directo que tener una cuenta alternativa en un nodo y publicar a mano las entradas. Que se ocupe el blog de hacerlo por mí.
Si quieres seguir las entradas que se publican en este blog a través de una red social compatible con ActivityPub, como Mastodon, dale follow a @dani@nosgustalinux.es. La forma de hacer esto depende de una instancia a otra, pero generalmente bastará con que pongas en tu buscador ese identificador, incluyendo la arroba que va al principio.
Flatpak es un formato neutro para la distribución de aplicaciones gráficas en GNU/Linux, y en este artículo te explico cómo puedes instalar el soporte para Flatpak en Debian 11.
Flatpak es un formato de distribución de aplicaciones que se ha vuelto bastante popular en los últimos años porque permite fácilmente distribuir versiones consistentes, estables y seguras de aplicaciones en una gran variedad de distribuciones GNU/Linux.
De este modo, los desarrolladores que fabrican las aplicaciones tienen una forma unificada de distribuir de forma segura aplicaciones para que las últimas versiones del software que desarrollan pueda ser utilizado por los usuarios finales, independientemente de la política de actualizaciones que tenga la distribución que se esté usando.
Otra de las ventajas de Flatpak es el hecho de que las aplicaciones pueden correr bajo una política de seguridad especial, que impida a las aplicaciones tener acceso a más directorios del ordenador de lo que sea estrictamente necesario para hacer funcionar la aplicación, o aislar completamente al proceso para que no pueda ver la lista real de procesos que se están ejecutando en el sistema.
Debido a que en Flatpak se proporciona una forma clara de instalar las dependencias, también ahorra los problemas derivados de que un paquete dependa de una biblioteca que no está disponible en el ordenador. Por ejemplo, es posible usar paquetes que usan la versión más reciente de Qt o de GTK+, incluso si tu Debian te instaló una versión más vieja.
Instalar Flatpak en Debian 11
Flatpak está disponible en los repositorios centrales de Debian, por lo que es muy fácil de activar esta función, si instalas el paquete flatpak. Esto lo puedes hacer desde un gestor de paquetes visual (como Synaptic o GNOME Software), o bien desde la línea de comandos usando el siguiente comando
sudo apt install flatpak
Configurar Flathub
Las aplicaciones en Flatpak se organizan en repositorios. El principal repositorio de Flatpak es Flathub, donde encontrarás un catálogo de software libre y no libre que puedes instalar fácilmente en tu ordenador si estás usando Flatpak.
Ten en cuenta que existen más repositorios de Flatpak por ahí. Por ejemplo, tanto GNOME como KDE tienen su propio repositorio Flatpak adicional, donde publican sus propias aplicaciones, para que las puedas instalar independientemente del ciclo de vida de los paquetes de tu sistema operativo.
En una terminal, utiliza el siguiente comando para agregar el repositorio de Flathub a tu ordenador:
Instalar aplicaciones Flatpak desde la línea de comandos
Ahora que hemos metido Flathub como repositorio en nuestra máquina, podemos instalar paquetes de Flathub. En el siguiente ejemplo, me voy a fijar en Plots, una aplicación que sirve para dibujar gráficas, y que está disponible en Flathub.
Si visitamos la página de Flathub, encontramos instrucciones que nos guían en el proceso de instalación de una aplicación.
Instrucciones para instalar aplicaciones en Flathub
Si copio y pego el primer comando (flatpak install...), el sistema me hará varias preguntas para confirmar si estoy de acuerdo con los cambios que va a hacer en mi ordenador. Principalmente, me listará los paquetes que va a instalar, que no tiene por qué ser únicamente la aplicación, sino también algunos runtimes como GTK+, GNOME Platform, KDE Platform…
Todo lo que tengo que hacer es confirmar los cambios si estamos de acuerdo respondiendole afirmativamente a las preguntas que nos hará. Una vez se hayan descargado e instalado los distintos paquetes (que puede tardar sobre todo si es la primera vez por aquello de que hay que instalar bastantes entornos de ejecución), podremos lanzar la aplicación usando el comando flatpak run que también podemos copiar y pegar, o bien desde el menú de aplicaciones si lo tenemos bien configurado.
Plots ejecutándose desde Flatpak
Instalar aplicaciones de forma gráfica
Si no te gusta la terminal, es posible también usar herramientas gráficas. Flatpak se integra con KDE Discover, así que si utilizas KDE, es muy posible que ya puedas buscar e instalar aplicaciones desde Discover.
Sin embargo, si estás usando GNOME, deberás instalar también un plugin para que se puedan listar desde GNOME Software. Este paquete se llama gnome-software-plugin-flatpak y lo puedes instalar usando APT o un cliente gráfico como Synaptic.
A partir de este momento, podremos listar e instalar aplicaciones de forma gráfica usando GNOME Software:
Veloren es un videojuego que se distribuye mediante Flatpak
Hoy 15 de noviembre sale Fedora 37, así que como siempre, cabe resolver las preguntas típicas: ¿cómo actualizo a Fedora 37? ¿Vale la pena formatear?
Fedora 37 está fuera de soporte. Es recomendable que actualices tan pronto como puedas, sobre todo si tu ordenador ejecuta tareas críticas.Aquí te dejo las instrucciones para actualizar a Fedora 41, pero ten en cuenta que es posible que las debas aplicar manualmente si GNOME Software o KDE Discover se niegan a funcionar.
Hoy 15 de noviembre sale Fedora 37, estando disponible para su descarga de forma oficial desde su página web. Debido a una serie de problemas con algunos bugs que fueron considerados como críticos, la publicación de la versión, inicialmente prevista para la segunda quincena de octubre, se ha venido retrasando semana a semana y sale un mes más tarde de lo esperado. Sin embargo, nunca es tarde si la dicha es buena.
En este blog ya te contamos el mes pasado un resumen de las novedades de Fedora 37, que se pueden resumir en una actualización integral a GNOME 43, haciendo que más aplicaciones se pasen a la nueva versión del lenguaje de diseño Adwaita. Hay cambios sensibles en aplicaciones como el explorador de archivos y el calendario. Además, ahora también será posible instalar páginas web como aplicación si se está usando la versión Flatpak de GNOME Web. Entre otras novedades, también el soporte para Raspberry Pi 4 y la retirada del soporte a la arquitectura ARMv7.
Cada vez que sale una actualización surge la misma pregunta: ¿debo formatear mi ordenador para actualizar Fedora o puedo simplemente realizar una actualización? Este es un proceso que depende de muchos factores: de qué tipo de instalación tengas en tu ordenador, cómo de fácil te vaya a ser recuperar luego el estado de tu entorno de escritorio si formateas (por ejemplo, el tiempo que te pueda tomar volver a instalar todos los plugins y programas después de instalar), y también de tus gustos personales. Hay gente que simplemente prefiere formatear su ordenador cada 6 meses para dejarlo todo limipo como la patena.
Debes saber que Fedora tiene un método de actualización de versiones. Eso significa que, si no quieres, no tienes por qué formatear tu ordenador para actualizar Fedora. Te basta con actualizar de una distribución a otra para cambiar de versión. Si con eso es suficiente, habrás terminado.
Recuerda comprobar que tienes una copia de seguridad actualizada de tu ordenador (incluyendo esos dotfiles que no suelen ser visibles desde la interfaz de usuario) antes de iniciar cualquier tipo de instalación o actualización, por si el proceso pudiese fallar.
Banner ofreciendo la actualización a Fedora 37.
Cómo actualizar a Fedora 37
Existen dos formas de actualizar a Fedora 37. De cualquiera de las dos maneras, es esencial antes de iniciar el proceso de actualización de Fedora, que compruebes que tu distribución está igualmente al día en cuanto a actualizaciones de otros paquetes regulares del sistema. Descarga, instala y reinicia las actualizaciones pendientes.
La primera forma de actualizar Fedora, y también la más directa, sobre todo si estás utilizando el spin oficial de Fedora, es utilizar la aplicación GNOME Software para ello. Cuando sale una nueva versión de Fedora, se muestra un mensaje avisando de ello en la sección Actualizaciones de tu aplicación.
Todo lo que tienes que hacer es iniciar el proceso pulsando el botón principal de la notificación, una vez te hayas asegurado de tener tus copias de seguridad al día. Durante el proceso, se descargarán nuevas versiones de muchos paquetes y tu ordenador se reiniciará, así que no hagas esto inmediatamente antes de algo importante que tengas que hacer.
En caso de que no estés utilizando el spin oficial de GNOME y no tengas acceso a la aplicación GNOME Software, podrás actualizar desde la línea de comandos, algo que también puedes hacer igualmente aunque uses la versión de GNOME.
Para ello, primero debes comprobar que tengas instalada DNF System Upgrade, un plugin para DNF que permite ocuparse del proceso de actualización de Fedora. Una vez lo tengas instalado, utiliza el comando que te propongo a continuación para actualizar a la versión que corresponda. Ten en cuenta que este comando te vale independientemente del spin de Fedora que estés usando, y también te vale incluso si estás usando Fedora 35 todavía, ya que no perderá soporte hasta un par de semanas después de la publicación de Fedora 37.
A continuación sólo queda seguir los pasos y responder a las preguntas que nos hará.
El proceso de instalación muestra un resumen y una confirmación antes de iniciar el proceso.
¿Qué pasa si estoy usando la beta?
No creo que sea la única persona que no ha podido evitar a echarle un vistazo a Fedora 37 usando el canal Beta. Si bien las versiones beta pueden ser inestables y pueden contener errores que todavía no están corregidas, te permiten a cambio obtener un vistazo sobre lo que se viene con la siguiente versión de Fedora.
En ese caso, tienes que entender que cuando estás usando una versión beta de Fedora 37, ya estás usando teécnicamente Fedora 37. El procedimiento de actualización para pasar de una beta a una versión final es mucho más simple. Cuando sale Fedora 37, se publica una actualización en el canal Beta que hace los cambios a DNF para pasar al canal estable, y automáticamente invalida el canal beta.
¿Esto qué quiere decir? Que te bastará con continuar instalando actualizaciones como siempre mediante el uso de GNOME Software o la aplicación equivalente en el spin de Fedora que estés usando, o bien simplemente ejecutando el comando sudo dnf update en tu terminal, como siempre.
La documentación oficial de Fedora recomienda igualmente hacer un distro-sync después de actualizar al canal Estable. Esto es porque a veces pueden ocurrir problemas con versiones de paquetes que no cuadran entre lo que hay instalado y lo que se ofrece en el canal estable de Fedora. Ejecutaríamos ese comando sudo dnf distro-sync, y con eso nos aseguramos de hacer downgrade de cualquier paquete extraño a la misma versión que se proporciona en el canal estable.
Cómo crear un archivo swap para poder cambiar su tamaño una vez que ya hemos formateado el ordenador.
La swap o espacio de intercambio es una zona de memoria extra en disco duro o disco SSD que el kernel Linux se reserva para aumentar la cantidad de memoria virtual disponible para asignar a las aplicaciones. De este modo, cuando un ordenador tiene muchas aplicaciones abiertas, el sistema operativo puede identificar qué zonas son las que menos se están usando en ese instante, y moverlas al disco duro como si fuese una mesa auxiliar en la que dejar lo que no se está usando en ese momento. Esto libera espacio en el chip para que otra aplicación más activa sí pueda utilizar la memoria.
Cuando se instala el sistema operativo, el asistente pregunta a la hora de particionar el disco duro cuánto se quiere asignar a la swap. Cuanto más espacio de swap haya disponible, más fluidez puede adquirir el ordenador porque más grande será la estantería donde el kernel puede depositar los datos en uso por parte de programas poco activos para liberar espacio en RAM para aquellos que sí están más activos. Al contrario, si la swap es limitada (o si prefieres no crer swap), puede ocurrir que se agoten del todo los recursos del sistema, un panorama que provocará que el ordenador funcione de manera poco fluida y que tal vez provoque que algunas aplicaciones se cierren a la fuerza a medida que el kernel cierra cosas para hacer espacio y evitar el colapso de la máquina.
¿Cuánta swap debería tener mi ordenador?
En otros tiempos, la limitación en cuanto a cantidad de memoria RAM del ordenador era un problema importante, que provocaba que existiesen fórmulas precisas tales como «la swap debería ser siempre el doble de grande que la memoria RAM disponible». Sin embargo, hoy en día los ordenadores tienen bastante memoria por lo que hay que tener en cuenta más factores.
Más que considerar «la swap siempre es necesaria» o «la swap ya nunca es necesaria», la respuesta correcta es: ¿qué tipo de cargas de trabajo va a tener mi ordenador? Para un ordenador doméstico que se use para cosas básicas, es probable que, efectivamente, si tienes suficiente memoria RAM no necesites tener una swap. Es espacio en disco duro que se desaprovecha si nunca se llena la memoria RAM. Sin embargo, si vas a estar continuamente ejecutando aplicaciones intensivas en memoria (tales como simulaciones, juegos o programas de edición de vídeo o, en general, programas complicados que ejecuten muchos algoritmos y que trabajen con muchos datos), es posible que incluso aun teniendo 16 o 32 GB de RAM sea recomendable establecer un espacio de intercambio, sobre todo si corres el riesgo de que uno de esos programas verdaderamente sea capaz de consumir toda la memoria RAM disponible.
Algunos fabricantes suelen recomendar sus propias fórmulas. En el caso de Red Hat, por ejemplo, recomiendan hoy en día lo siguiente:
Si tienes un ordenador de 2 GB de RAM o menos (como un ordenador viejo), deberías tener una swap que tenga el doble de la cantidad de memoria RAM que tu PC tenga.
Si tienes un ordenador de entre 2 y 8 GB de RAM, deberías tener una swap que tenga el mismo tamaño que la cantidad de memoria RAM que tu PC tenga.
Si tienes un ordenador de más de 8 GB de RAM, deberías tener una swap de al menos 4 GB en función de las circunstancias.
De nuevo, con la cantidad de memoria RAM que hay hoy en día y con el uso tan diferente que se puede hacer de un ordenador, conviene preguntarse qué se va a hacer con el ordenador, ya que eso puede influenciar que queramos darle una swap más pequeña o incluso no darle swap, sobre todo si es un PC con mucha memoria.
¿Qué hago si necesito más swap una vez he particionado mi PC?
Por lo general, el instalador ofrecerá la posibilidad de formatear una partición extra al instalar GNU/Linux de tipo swap. Con esto, se reserva una zona del disco duro para este propósito. Queda fuera del sistema de archivos principal, por lo que nunca verás la swap para que no moleste.
Si después de instalar el ordenador necesitamos cambiar su tamaño (por ejemplo, porque es un servidor web y nos hemos dado cuenta que en horas pico se queda corta la swap y provoca caídas de sistema), vamos a tener complicado particionar de nuevo.
Por suerte, es posible igualmente utilizar el comando swapon para activar un archivo de disco duro y que se comporte como espacio de intercambio. Para ello, lo primero que tendríamos que hacer es crear un archivo en blanco que tenga el tamaño deseado. Esto lo podemos hacer con dd, aunque yo hoy en día suelo utilizar el programa fallocate(1) porque es más rápido:
$ sudo fallocate -l 4G /swapfile
Esto crea un archivo de 4 GB llamado swapfile en la raíz del disco duro. Por supuesto, tú deberías cambiar ese 4G por el tamaño que quieras que tenga tu RAM, sustituyendo el 4 por la cantidad de gigas correcta, por ejemplo, 2G u 8G para, respectivamente, 2 GB u 8 GB.
Ahora lo que tenemos que hacer es formatear el archivo, es decir, configurarlo para que el kernel se piense que es un área swap normal y corriente. Esto lo podemos conseguir con el comando mkswap:
$ sudo mkswap /swapfile
Opcionalmente, si queremos deshacernos de otras particiones o archivos swap en uso, podríamos retirar toda la swap. Ten en cuenta que esto volcará su contenido en memoria RAM, así que no conviene correr este comando si el ordenador no está tranquilo.
$ sudo swapoff -a
Y finalmente pedirle al sistema que active este archivo que acabamos de crear como un archivo swap:
$ sudo swapon /swapfile
Si ahora usamos una herramienta como htop, deberíamos poder verificar que existe una swap del tamaño solicitado.
Cómo activar la carga de nuestro swapfile en cada arranque
Sorprendentemente, el archivo /etc/fstab también permite introducir rutas a swapfiles que haya en otra partición. De modo que es posible configurar el sistema operativo para que active este swapfile cada vez que se encienda el ordenador.
Para ello, todo lo que hay que hacer es modificar el archivo /etc/fstab como superusuario, y poner al final del archivo la siguiente línea:
/swapfile none swap defaults 0 0
Si el archivo se ha creado con otro nombre, habrá que cambiar la ruta que va al principio de la fila. A partir de ese momento, cuando se reinicie el ordenador debería cargarse automáticamente el swapfile que hemos creado.