Gestión del sistema con systemd
Explica el rol de systemd en Oracle Linux y cómo su configuración y unidades configuran el inicio del sistema.
systemd es el gestor de servicios e inicialización del sistema en Oracle Linux.
El daemon systemd es el primer proceso que se inicia después de que se inicia un sistema y es el proceso final que se está ejecutando cuando el sistema se apaga. systemd controla las etapas finales de inicio y prepara el sistema para su uso. También acelera el inicio cargando servicios simultáneamente.
Consulte Uso de Systemd en Oracle Linux para obtener un tutorial práctico y demostraciones en vídeo sobre cómo trabajar con systemd en Oracle Linux.
Para obtener más información sobre el inicio del sistema, consulte Managing Kernels and System Boot on Oracle Linux.
Configuración de systemd
systemd lee su configuración de archivos en los siguientes directorios, en orden de prioridad:
-
$HOME/.config/systemd/: entradas de configuración systemd específicas del usuario. -
/etc/systemd/: personalización de la configuración del sistema en todo el sistema. -
/run/systemd/: configuración systemd de tiempo de ejecución. -
/usr/lib/systemd: configuración base systemd proporcionada por los paquetes.
La personalización de la configuración systemd se almacena en el directorio /etc/systemd. Por ejemplo, puede copiar el archivo /usr/lib/systemd/system.conf en el archivo /etc/systemd/system.conf y editarlo para controlar cómo systemd maneja la inicialización del sistema.
El daemon systemd inicia servicios durante el proceso de inicio leyendo el enlace simbólico /etc/systemd/system/default.target.
En el siguiente ejemplo se muestra el valor de /etc/systemd/system/default.target en un sistema configurado para iniciar en un modo multiusuario sin una interfaz gráfica de usuario, un destino denominado multi-user.target:
sudo ls -l /etc/systemd/system/default.target
/etc/systemd/system/default.target -> /usr/lib/systemd/system/multi-user.target
Puede utilizar un parámetro de inicio del núcleo para sustituir el destino del sistema predeterminado. Consulte Changing Kernel Boot Parameters Before Booting y Using grubby to Manage Kernels.
Unidades systemd
Describe los principales tipos de unidades systemd, cómo enumerarlos y dónde residen sus archivos de configuración.
systemd organiza los diferentes tipos de recursos que gestiona en unidades.
La mayoría de las unidades se configuran en archivos de configuración de unidades que permiten configurar estas unidades según las necesidades del sistema. Además de los archivos, también puede utilizar comandos de tiempo de ejecución systemd para configurar las unidades.
Para mostrar todos los tipos de unidades disponibles en systemd, utilice el siguiente comando:
sudo systemctl -t help
Available unit types:
service
mount
swap
socket
target
device
automount
timer
path
slice
scope
En la siguiente lista, se describen algunas unidades del sistema que puede gestionar en un sistema Oracle Linux mediante systemd:
- Servicios
- Los archivos de configuración de la unidad de servicio tienen el formato de nombre de archivo service_name.
service, por ejemplosshd.service,crond.serviceyhttpd.service.Las unidades de servicio inician y controlan los daemons y los procesos que los daemons constan.
En el siguiente ejemplo se muestra cómo puede iniciar la unidad de servicio
systemdpara el servidor Apache HTTP,httpd.service:sudo systemctl start httpd.serviceConsulte Service Management in Systemd para obtener más información.
- Destinos
- Los archivos de configuración de la unidad de destino tienen el formato de nombre de archivo target_name.
target, por ejemplographical.target.Los destinos son similares a los niveles de ejecución. Un sistema alcanza diferentes destinos durante el proceso de inicio a medida que se configuran los recursos. Por ejemplo, un sistema alcanza
network-pre.targetantes de alcanzar el destinonetwork-online.target.Muchas unidades de destino tienen dependencias. Por ejemplo, la activación de
graphical.target(para una sesión gráfica) falla a menos quemulti-user.target(para el sistema multiusuario) también esté activo.Consulte Systemd Targets para obtener más información.
- Puntos de montaje del sistema de archivos
- Los archivos de configuración de la unidad de montaje tienen el formato de nombre de archivo mount_point_name.
mount.Las unidades de montaje permiten montar sistemas de archivos en el momento del inicio. Por ejemplo, puede ejecutar el siguiente comando para montar el sistema de archivos temporal (tmpfs) en/tmpen el momento del inicio:sudo systemctl enable tmp.mount - Dispositivos
- Los archivos de configuración de la unidad de dispositivo tienen el formato de nombre de archivo device_unit_name.
device.Las unidades de dispositivo llevan el nombre de las rutas
/sysy/devque controlan. Por ejemplo, el dispositivo/dev/sda5está expuesto en systemd comodev-sda5.device.Las unidades de dispositivo le permiten implementar la activación basada en dispositivos.
- Sockets
- Los archivos de configuración de la unidad de socket tienen el formato de nombre de archivo socket_unit_name.
socket.Cada archivo "*.
socket" necesita un archivo "*.service" correspondiente para configurar el servicio para que se inicie en el tráfico entrante en el socket.Las unidades de socket permiten implementar la activación basada en socket.
- Temporizadores
Los archivos de configuración de la unidad de temporizador tienen el formato de nombre de archivo timer_unit_name.
Cada archivo "*.timer.timer" necesita un archivo "*.service" correspondiente para configurar el servicio para que se inicie en un evento de temporizador configurado. Una entrada de configuraciónUnitse puede utilizar para especificar un servicio con un nombre diferente al de la unidad de temporizador, si es necesario.Las unidades de temporizador pueden controlar cuándo se ejecutan las unidades de servicio y pueden actuar como alternativa al uso del daemon cron. Las unidades de temporizador se pueden configurar para eventos de tiempo de calendario, eventos de tiempo monotónicos y se pueden ejecutar de forma asíncrona.
Consulte Working with Timers in Systemd para obtener más información.
Las rutas a los archivos de configuración de la unidad systemd varían según su finalidad y si systemd se está ejecutando en modo 'user' o 'system'.
Por ejemplo, la configuración de las unidades instaladas desde paquetes puede estar disponible en /usr/lib/systemd/system o en /usr/local/lib/systemd/system, mientras que es probable que una unidad de configuración de modo de usuario se almacene en $HOME/.config/systemd/user. Consulte la página del manual systemd.unit(5) para obtener más información.