Systemd inicia la herramienta de optimización del rendimiento systemd-analyze
-
- Introducción a systemd-analyse
-
- Listar todos los directorios relacionados con la unidad.
- Verifique el tiempo total necesario para iniciar systemd
- Ver detalles del inicio de systemd que requieren mucho tiempo
- Muestra dependencias e información de tiempo entre unidades clave del sistema durante el inicio del sistema.
- Compruebe qué servicios iniciados al inicio se pueden optimizar
- Exportar a gráfico de análisis SVG
- Compruebe si la sintaxis del archivo de la unidad de servicio (unidades) es correcta
- Analizar la configuración de seguridad y sandbox de una unidad de servicio específica
- Verifique el nivel de registro establecido por systemd
- Establecer temporalmente el nivel de registro de systemd
- Modificar permanentemente el nivel de registro de systemd
- Imprime el nivel de registro actual del demonio systemd
- Ver el destino de registro actual del demonio systemd
- Modificar temporalmente el destino del registro systemd
- Mostrar detalles de todas las recopilaciones de llamadas del sistema
Introducción a systemd-analyse
systemd-analyze
Es una herramienta de línea de comandos que se utiliza para analizar y diagnosticar el rendimiento de inicio de Systemd y se utiliza principalmente para analizar y optimizar la velocidad de inicio del sistema Systemd.
https://opensource.com/article/20/9/systemd-startup-configuration
https://blog.csdn.net/easylife206/article/details/103790052
https://www.redhat.com/sysadmin/mastering-systemd
https://www.jinbuguo.com/systemd/systemd-analyze.html
Listar todos los directorios relacionados con la unidad.
Incluyendo:
directorio de archivos unitarios, directorio de fragmentos de configuración (.d), directorio de dependencias (.wants y .requires).
Cuando se usa con --user, apunta a la instancia de usuario systemd.
Cuando se usa con --global, indica la configuración global para instancias de usuario de systemd.
# 列出与单元相关的全部目录
systemd-analyze unit-paths
Verifique el tiempo total necesario para iniciar systemd
# 查看systemd启动总耗时
systemd-analyze
Ver detalles del inicio de systemd que requieren mucho tiempo
# 查看systemd启动耗时明细
systemd-analyze blame
Muestra dependencias e información de tiempo entre unidades clave del sistema durante el inicio del sistema.
# 显示系统启动过程中关键的systemd单元(units)之间的依赖关系和时间信息
systemd-analyze critical-chain
Ver las dependencias de inicio del servicio especificadas y la información de tiempo
Puedes ver network.service
que tomó más tiempo, 17.201
segundos.
El tiempo aquí puede ser esperar a que se inicien otros servidores. Echemos un vistazo al tiempo de inicio de sus servicios asociados:
# 查看指定服务启动依赖关系和时间信息
systemd-analyze critical-chain network.service
Compruebe qué servicios iniciados al inicio se pueden optimizar
# 查看有哪些开机启动的服务可被优化
systemctl list-unit-files --type=service | grep enabled
Exportar a gráfico de análisis SVG
# 导出到SVG分析图
systemd-analyze plot > /tmp/bootup.svg
# 生成描述单元间依赖关系的 SVG 图
systemd-analyze dot | dot -Tsvg > systemd.svg
Compruebe si la sintaxis del archivo de la unidad de servicio (unidades) es correcta
Después de crear el nuevo archivo de unidad, verifique que su sintaxis sea correcta y, si está configurado 正确
, 不会有输出
.
# 服务单元(units)文件验证
systemd-analyze verify 服务单元路径
Analizar la configuración de seguridad y sandbox de una unidad de servicio específica
# 分析指定服务单元的安全性和沙箱设置
systemd-analyze security 服务单元
Verifique el nivel de registro establecido por systemd
# 查看systemd当前设置的日志级别
systemctl -pLogLevel show
Establecer temporalmente el nivel de registro de systemd
# 临时修改systemd的日志级别为notice
systemd-analyze set-log-level notice
# 查看systemd当前设置的日志级别
systemctl -pLogLevel show
Modificar permanentemente el nivel de registro de systemd
# 修改systemd配置文件
vim /etc/systemd/system.conf
# 修改完配置后重启systemd守护进程
systemctl daemon-reload
Imprime el nivel de registro actual del demonio systemd
# 打印systemd守护进程当前的日志等级
systemd-analyze get-log-level
Ver el destino de registro actual del demonio systemd
# 打印systemd 守护进程当前的日志目标
systemd-analyze get-log-target
Modificar temporalmente el destino del registro systemd
# 将systemd守护进程的日志目标更改为 TARGET
systemd-analyze set-log-target TARGET
Mostrar detalles de todas las recopilaciones de llamadas del sistema
# 查看所有过滤器
systemd-analyze syscall-filter
systemd-analyze syscall-filter [SET…] Si se especifica al menos un parámetro SET, solo se mostrará la lista de llamadas del sistema contenida en el conjunto especificado; de lo contrario, se mostrarán los detalles de todos los conjuntos de llamadas del sistema. Tenga en cuenta que el prefijo "@" debe incluirse en los parámetros SET.
# 查看指定过滤器
systemd-analyze syscall-filter @ipc