Cada vez más sistemas operativos se están sobrecargando con muchos servicios ejecutándose en segundo plano. Si bien es posible que no use mucho tiempo de CPU, aumenta el tiempo de arranque y el uso de RAM.
Algunas distribuciones de Linux incluyen "todo menos el fregadero de la cocina", en un esfuerzo por facilitar la vida del usuario. Esto hace que cosas como compartir archivos o imprimir funcionen de inmediato. Desafortunadamente, la única forma de hacer esto es incluir cientos de utilidades para que todos encuentren lo que necesitan.
Afortunadamente, los sistemas operativos de código abierto le brindan el poder y la libertad de hacer lo que mejor le parezca. Esto significa que puede deshabilitar cualquier cosa que no necesite o simplemente eliminarla. La primera opción, cómo deshabilitar los servicios, se explorará aquí. Cuando deshabilita componentes en lugar de quitarlos, los riesgos de romper componentes se reducen permanentemente. Y puede volver a ser como era antes simplemente volviendo a habilitar el servicio si nota algo útil que ha dejado de funcionar.
Enlaces rápidos
Analizar el tiempo que tarda cada servicio en cargar
La mayoría de los sistemas operativos basados en Linux se han trasladado a Systemd. Entre el conjunto de utilidades que incluyen, hay un programa que te permite analizar la velocidad de rendimiento del sistema. En concreto, te muestra el tiempo total necesario para arrancar y el tiempo que tarda en cargarse cada servicio. Tenga en cuenta que algunos servicios se cargan en paralelo. Por lo tanto, si se necesitan dos segundos para cargar y se requieren los otros tres segundos, no significa necesariamente que se requieran cinco segundos en total. Puede ser mucho menos.
Abra un emulador de terminal e ingrese este comando:
systemd-analyze
Esto muestra cuánto tarda en cargarse el kernel de Linux y los servicios de la plataforma, lo que significa que no explica cuánto tarda en arrancar la interfaz gráfica. Para explicarlo de otra manera, esto le muestra la cantidad de tiempo necesario, desde el momento en que se carga el núcleo hasta que se coloca en la consola de Linux, que se parece a la siguiente.
Si no tienes una interfaz gráfica instalada, esto es lo que recibirás en tu pantalla.
Sin embargo, también puede ver el tiempo requerido a través de la GUI de inicialización con este comando:
systemd-analyze critical-chain graphical.target
Esto muestra que la GUI se cargó en 2.126 segundos. Esto no tiene en cuenta el tiempo necesario para cargar las utilidades de escritorio. Para habilitarlos o deshabilitarlos, inicie el administrador de inicio del entorno de escritorio.
Finalmente, quizás lo más útil para el propósito de este tutorial es:
systemd-analyze blame
Puede navegar por el menú usando teclas de flecha O PÁGINA ARRIBA و PÁGINA ABAJO. Hacer clic q fuera.
Use systemctl para deshabilitar Servicios innecesarios
Como puedes ver en la imagen anterior, el servicio snapd tarda 1.295 segundos en cargarse. En un SSD, esto es insignificante. Pero en un disco duro, este tipo de tiempos pueden ser del orden de varios segundos, y al final suman mucho. Además, en el SSD se cargan muchas cosas en paralelo con una eficiencia increíble. En un disco duro, es muy difícil cargar servicios en paralelo. Los cabezales de lectura que flotan en los platos del disco deben moverse de un sector a otro, por lo que es imposible leer datos en paralelo.
Para simplificar esto, imagine esto: si en su SSD ve cinco servicios que requieren una sola vez para ejecutarse, el tiempo total requerido para cargar todos esos servicios probablemente sea menos de 1.2 segundos. Si, en su disco duro, está viendo los mismos cinco servicios en un segundo, el tiempo de carga total probablemente sea superior a cinco segundos.
Supongamos que no necesita un servicio snapd , que proporciona acceso a instantáneas de aplicaciones guardadas en contenedores. Puedes desactivarlo con este comando:
sudo systemctl disable snapd.service
Pero, si reinicias, notarás que romper El demonio todavía se está ejecutando. Eso es porque otras dependencias pueden activarlo, incluso si está deshabilitado. Prueba a ver que puede ser:
systemd-analyze blame | grep snap
Snapd. Sembrado. Servicio و enchufe a presión Ellos son los culpables aquí. El servicio para niños puede lanzar su propio servicio para padres. Cuando deshabilita uno, solo le está diciendo que no comience a arrancar automáticamente por sí mismo. Pero hay una forma poderosa de evitar este problema.
Utilizar systemctl Para ocultar el servicio
sudo systemctl mask snapd.service
Esto básicamente hace que el archivo de servicio nulo Para que las aplicaciones no encuentren la forma de iniciar el servicio.
En la mayoría de los casos, no es difícil deshabilitar el servicio. Este ejemplo fue elegido para mostrarle cómo lidiar con escenarios más difíciles. En este caso, debe estar deshabilitado. Snapd. Sembrado. Servicio و enchufe a presión o ocultarlo también.
A continuación se muestra el tiempo de arranque mejorado.
Conclusión
De 4.078, el tiempo de ejecución se ha reducido a 3.452 segundos, lo que representa una disminución de ~15 %. No está mal, considerando solo un servicio, y eso es en un SSD. En un disco duro, es más fácil obtener resultados más significativos.
En este ejemplo particular, se pueden deshabilitar más servicios con un comando como:
sudo systemctl máscara avahi-daemon.service ModemManager.service Thermald.service pppd-dns.service.
Si prefieres una aplicación gráfica para gestionar tus servicios, puedes echar un vistazo a Proyecto administrador del sistema. Sin embargo, estará limitado en lo que puede hacer con él, ya que la línea de comando ofrece más flexibilidad.