Todos y cada uno de los sistemas operativos actuales están basados en diversos servicios que se encargan de entregar las mejores opciones para que los aplicativos y demás componentes del sistema funcionen de la forma adecuada.
Gracias a los servicios será posible usar de forma íntegra cada funcionalidad disponible en el sistema operativo usado; y es importante, a nivel de tareas de administración y de auditoria, saber en detalle que servicios están activos en tiempo real, lo cual nos puede ayudar no solo a tener un listado completo de éstos sino también a determinar si alguno de ellos está causando un efecto negativo en el comportamiento general del sistema operativo.
Por esta razón Solvetic explicará algunas de las diferentes formas para conocer los servicios activos en CentOS 7 y de este modo tener un mejor control sobre ellos.

En caso de usar CentOS 6 como sistema de administración, disponemos de las siguientes líneas para acceder al detalle de los servicios activos:
service --status-all service --status-all | more service --status-all | grep ntpd service --status-all | lesPor ejemplo, para imprimir el estado de los servicios de Apache ejecutamos lo siguiente:
service httpd statusSi el objetivo es listar todos los servicios conocidos ejecutaremos:
chkconfig –listPara listar los servicios y sus respectivos puertos abiertos ejecutamos:
netstat -tulpnPara activar o no el servicio disponemos de las siguientes líneas:
ntsysv chkconfig service off chkconfig service on chkconfig httpd off chkconfig ntpd on
1. Cómo ver y administrar servicios activos en CentOS 7 Linux
Para este tutorial usaremos CentOS 7 y para listar todos los servicios de la distribución ejecutamos:
Systemctl
- Nombre del servicio
- Tiempo de carga
- Estado de actividad
- Descripción del servicio
Si deseamos obtener más información ejecutaremos:
systemctl | moreVeremos lo siguiente. En la parte inferior podemos seleccionar la línea "Mas" para acceder a más registros de servicios.
Podemos listar un servicio o usuario en particular con la siguiente sintaxis:
systemctl | grep “servicio/usuario”
Para listar únicamente los servicios vamos a ejecutar lo siguiente:
systemctl list-units --type service
Ahora, si deseamos listar todos los registros que han sido montados en la unidad:
systemctl list-units --type mount
Para listar todos los servicios sin importar su estado vamos a ejecutar lo siguiente:
systemctl list-unit-filesEl resultado será el siguiente:
Es posible visualizar los procesos asociados con un servicio en particular como cgroup, para este caso debemos usar el comando Para ver los procesos asociados con un servicio en particular (cgroup), puede usar el comando systemd-cgtop, dentro de los resultados desplegados, podemos ver los procesos en ejecución según el tipo de servicio, para ello ejecutamos.
systemd-cgtopAllí podemos ver cada servicio con el respectivo uso de recursos como CPU, memoria, entradas y salidas, etc.
Otra de las opciones en las tareas sobre los servicios, es listar los servicios SysV en uso, esto no incluye los servicios nativos de systemd. Para realizar esta acción debemos ejecutar lo siguiente:
chkconfig –list
2. Cómo comprobar el estado de un servicio usando Systemd en CentOS Linux
Para verificar el estado de un servicio en tiempo real vamos a ejecutar la siguiente sintaxis:
systemctl status “servicio”Por ejemplo, podemos validar el estado del servicio SSHD:
systemctl status sshd.serviceEn este caso podemos ver que su estado es activo y se listan todas las acciones que han sido ejecutadas con el servicio seleccionado.
Para verificar si un servicio se está ejecutando (activo) o no se está ejecutando (inactivo) en CentOS 7 podemos hacer uso de las siguientes opciones:
systemctl is-active sshd systemctl is-enabled sshd systemctl is-active nginx systemctl is-enabled nginx systemctl is-enabled httpdAllí podemos visualizar los diferentes estados incluyendo unknown el cual indica que el servicio es desconocido porque no existe en el sistema.
Así será posible llevar una administración mucho mas precisa sobre los servicios en CentOS 7.
