Ver destacados

Cambiar runlevels en Systemd y usar Exa (reemplazo de ls) Linux

Te explicamos qué son y cómo cambiar runlevels en Systemd y usar Exa (reemplazo de ls)en Linux.
Escrito por
10.4K Visitas  |  Publicado sep 06 2017 11:06
Favorito
Compartir
Comparte esta pagina a tus Amigos y Contactos usando las siguientes Redes Sociales


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:

 

Run level 0
Comprende las unidades runlevel0.target, poweroff.target y su función es apagar y encender el sistema.

Run level 1
Comprende las unidades runlevel1.target, rescue.target y su función es establecer un Shell de rescate.

Run level 2
Comprende las unidades runlevel2.target, multi-user.target y su función es establecer un entorno no gráfico de multiusuario.

Run level 3
Comprende las unidades runlevel3.target, multi-user.target y su función es establecer un entorno no gráfico de multiusuario.

Run level 4
Comprende las unidades runlevel4.target, multi-user.target y su función es establecer un entorno no gráfico de multiusuario.

Run level 5
Comprende las unidades runlevel5.target, graphical.target y su función es establecer un entorno grafico de multiusuario.

Run level 6
Comprende las unidades runlevel6.target, reboot.target y su función es apagar y reiniciar el sistema.

Emergency
Comprende la unidad emergency.target y su función es recuperar el sistema.

 

 


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-default
El 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.target
Si 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.

 

Características de Exa
Algunas de las características más sobresalientes de exa son:
  • 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

 

Paso 1

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

 

Paso 2

Procedemos a su extracción:
unzip exa-linux-x86_64-0.7.0.zip
Y finalmente ejecutaremos los siguientes comandos:
sudo
sudo mv exa-linux-x86_64 /usr/local/bin/exa

 

Paso 3

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)
Paso 4

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.

 

Te explicamos todos los pasos para saber cómo administrar Logs eventos de Systemd con Journalctl Linux

¿Te ayudó este Tutorial?

Ayuda a mejorar este Tutorial!
¿Quieres ayudarnos a mejorar este tutorial más? Puedes enviar tu Revisión con los cambios que considere útiles. Ya hay 0 usuario que han contribuido en este tutorial al enviar sus Revisiones. ¡Puedes ser el próximo!