Este artículo podría ser un comando corto, pero la impresión resultante es muy larga.

El comando dump

Si alguien le pide que muestre toda la configuración de su sistema, utilice el comando dump.

$ systemd –dump-configuración-artículos

El archivo cubre todas las unidades que tienen en el sistema. Una vez que un desarrollador tenga este archivo disponible, la persona revisará lo que tiene e intentará encontrar los problemas que enfrenta. Terminado y hecho., Sin embargo, usted no estaría leyendo este artículo si usted fuera a dejar que alguien más lo haga todo. Permítanos ver qué puede hacer con un servicio a la vez y aprender algunos trucos para filtrar sus resultados.

La jerarquía de systemd

Para ser eficaz necesita darse cuenta de que, dentro de systemd, tiene jerarquía, y usted puede configurar cada servicio a depender y/o esperar a que otros servicios. Las diferentes formas de hacer esto es evidente en los archivos de servicio. Las diferentes declaraciones que tienes son ‘quiere’, ‘requerido’, ‘antes’y ‘ después’., Para un análisis efectivo, puede usar estos para ver si su unidad está baja debido a las dependencias. A continuación, puede rastrear el origen del problema subyacente. Aquí hay un ejemplo de esto.

depend systemctl list-dependencies before antes de xpra.service

la impresión muestra las otras unidades que xpra.servicio confiar en. En este caso, las otras unidades están activas, por lo que debemos centrarnos en Por qué la unidad en sí está rota. Al ejemplo le faltaba un archivo de Certificado.,

el uso más importante de esto es investigar si a su servicio le faltan dependencias, use el comando de esta manera.

$ systemctl list-dependencies xringd

el resultado es una larga lista, convenientemente organizada en un árbol y mostrando todos los servicios como verde o rojo si algo está mal. También puede ver las dependencias en el archivo services. Abra el archivo utilizando su editor favorito o utilice systemctl, que abrirá el archivo con el editor predeterminado.,

Listing active services

Cuando desee investigar un sistema, necesitará saber cómo encajan las unidades. Para hacer esto, tiene una serie de opciones para imprimir los detalles. Puede enumerar qué sistemas están ocupados, fallidos, etc. Más importante aún, puede enumerar cómo se combinan, qué unidad, servicio, etc. la unidad actual depende de. El comando principal para hacer esto es systemctl, las opciones son útiles para acotar en su problema específico.

para obtener el uso adecuado de systemctl, mire cuidadosamente las opciones para el comando., Hay opciones para elegir exactamente lo que necesita, especialmente con respecto al estado de cualquier servicio. Aquí estamos buscando servicios que tienen problemas.

This systemctl list-unit-files type type=service

esta lista también es larga y debe desplazarse por todos los servicios para encontrar lo que está buscando. Con algunos parámetros más, puede filtrar por uno específico o los que están deshabilitados. El siguiente comando encontrará todas las unidades que están enmascaradas.,

files systemctl list-unit-files type type=service state state=masked

Los servicios enmascarados están bloqueados para que otros servicios no puedan iniciarlos, incluso si el otro servicio los necesita. Esto se puede usar para garantizar que no se ejecuten servicios conflictivos. Comúnmente, muchos servicios son enmascarados por su administrador de paquetes cuando elimina el paquete. Puede eliminar el archivo de servicio por completo si lo desea después de eliminar un servicio. También es posible que arruine muchos servicios que desea, así que asegúrese de saber si necesita los servicios enmascarados.,

algunos servicios están enmascarados por procesos y no siempre tiene la intención de que el servicio sea enmascarado. Cuando esto le ha sucedido a su sistema, la primera acción a tomar es desenmascarar usando systemctl. Sin embargo, esto no siempre es posible, por lo que debe eliminar el enlace en el directorio adecuado. En la mayoría de los sistemas, esto será lib / systemd / system. Antes de hacerlo, compruebe que el archivo es realmente un enlace a /dev / null.,

$ ls -l lib/systemd/system> |grep null

Cuando usted está seguro de que desea eliminar este enlace, eliminar con rm o desvincular.

rm rm/lib/systemd/system / udisks2.service

ahora que sabes cómo hacerlo, escucha esta advertencia: muchas veces es necesario tener este enlace allí. Tome lvm2 como ejemplo, está enmascarado de la operación por lo que no interferirá con el nuevo sistema, donde lvm2 viene como muchos servicios pequeños., Vea el resultado de:

status systemctl status lvm2*

eliminar el enlace puede causar estragos en su sistema porque lvm2 lo necesita apagado para evitar conflictos. Esto es solo un ejemplo, así que ten cuidado antes de seguir adelante.

conclusión

Cuando desee enumerar servicios en systemd, primero debe reflexionar sobre lo que está buscando en su búsqueda. Está buscando un servicio que necesita o ve que tiene demasiados servicios. De cualquier manera, debe adaptar su consulta a sus necesidades particulares., Systemd parece confuso al principio, pero cuando se mira más de cerca, todo utiliza una forma sencilla de unificar la puesta en marcha para que los servicios puedan comenzar en paralelo donde el sistema lo necesita, mientras que es capaz de hacer que cada servicio espere el servicio específico del que dependen.

Deja una respuesta

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