Al administrar sistemas operativos Linux es ideal tener claro que al ser sistemas de código abierto tenemos la posibilidad de efectuar cientos de cambios sobre ellos de forma simple y aumentando así los niveles de eficacia, apariencia y desarrollo de estos.
Hoy veremos como modificar los runlevels, tan bien conocidos como targets, en Systemd y modificar la forma como vemos el contenido de nuestros directorios usando Exa.
1. Qué son los runlevels en Linux y tipos de targets y runlevels en Systemd
Systemd ha sido desarrollado como un sistema init moderno para ambientes Linux el cual es un administrador de sistemas y servicios compatibles con el tradicional sistema SysV init y los scripts de init de LSB. En los sistemas tipo Unix como Linux, el estado operativo actual del sistema operativo se conoce como runlevel o niveles de ejecución el cual tiene la tarea de definir qué servicios del sistema se están ejecutando.
En sistemas populares del init como el init de SysV, los niveles de ejecución se identifican mediante números, pero en systemd los niveles de ejecución se denominan objetivos o targets. Los targets en Systemd están representados por targets unit (unidades de objetivo) cuyo único propósito es agrupar otras unidades systemd a través de una cadena de dependencias., estas unidades objetivo usan el sufijo .target.
Existen algunos tipos de runlevels en Systemd que tienen tareas específicas, estos son:
2. Ver el target y runlevel actual en Systemd
Cuando iniciamos sesión en el sistema, de forma predeterminada se activa el target default.target cuya función es activar servicios y otras unidades ejecutándolas a través de dependencias.
Para ver el target por defecto ejecutaremos la siguiente línea:
systemctl get-defaultEl resultado será el siguiente:
Si deseamos establecer el target por defecto ejecutaremos la siguiente línea:
systemctl set-default multi-user.target
3. Cambiar el nivel de target (Runlevel) en Systemd
Esta tarea podrá ser ejecutada aun con el sistema en uso y para realizar el cambio podremos ejecutar lo siguiente:
Si deseamos cambiar al nivel 3 ejecutaremos lo siguiente:
systemctl isolate multi-user.targetSi deseamos cambiar al nivel 5 ejecutaremos lo siguiente:
systemctl isolate graphical.target
De esta forma tenemos la posibilidad de ver y modificar los targets de Systemd en ambientes Linux.
4. Cómo usar Exa en Linux
Normalmente la mayoría de nosotros hacemos uso del comando ls para ver el contenido de un directorio en particular:
Podemos ver que ls despliega la información actual y usando algunos parámetros podemos obtener resultados mucho más detallados.
Pero a medida que son desarrolladas nuevas aplicaciones cuyo fin es obtener la mejor experiencia para el usuario final, hoy en día contamos con una opción llamada exa para obtener los resultados de ls pero de una forma mucho más dinámica. Exa ha sido escrito en lenguaje de programación Rust y viene con diversas características adicionales que no están disponibles en el comando ls ya conocido.
Es importante destacar que las opciones son similares, pero no exactamente iguales a las del comando ls.
- Rápido y portable
- Hace uso de colores para diferencias las categorías
- Despliega los atributos extendidos de un archivo
- Soporta de Git
- Permite la consulta de archivos en paralelo
Al descargar Exa sus archivos estarán alojados en el directorio /usr/local/bin pero antes de esto será necesario que contemos con la última versión del lenguaje Rust para el optimo funcionamiento de Exa, para ello ejecutaremos la siguiente línea para la descarga de Rust:
curl https://sh.rustup.rs -sSf | sh
Ingresaremos el número 1 para proceder con la instalación de Rust. A continuación ejecutaremos la siguiente línea para descargar Exa:
wget -c https://the.exa.website/releases/exa-linux-x86_64-0.7.0.zip
Procedemos a su extracción:
unzip exa-linux-x86_64-0.7.0.zipY finalmente ejecutaremos los siguientes comandos:
sudo sudo mv exa-linux-x86_64 /usr/local/bin/exa
En el caso de desear instalar exa desde el recurso será necesaria la ejecución de los siguientes comandos:
Instalación de las herramientas de desarrollo
sudo apt install libgit2-24 libgit2-dev cmake (Debian/Ubuntu) sudo yum install libgit2 cmake (CentOS/RHEL) sudo dnf install libgit2 cmake (Fedora)
Una vez instalado exa podremos ejecutarlo usando alguno de los siguientes comandos:
exa exa -l exa -bghHliS
Podemos ver las diversas opciones a la hora de administrar nuestras distros de Linux ya que contamos con alternativas de gestión o soporte sobre estas.