Con la mayoría de las distribuciones de Linux que he usado, es simplemente servicio sudo <name> restart
...
Esto se debe a que muchas o la mayoría de las distribuciones de Linux descienden de Debian, que tradicionalmente ha utilizado un sistema de inicio de estilo "UNIX System 5" (también conocido como SysV). De hecho, si retrocede lo suficiente todas distribuciones de Linux usaron este tipo de sistema.
No estoy seguro de si el comando service
era parte de el init SysV original o si fue una conveniencia creada por Debian, pero ciertamente ha existido por mucho tiempo y se ha extendido por todo el árbol genealógico de Debian.
Sin embargo, hace aproximadamente una década las distribuciones de Linux comenzaron a alejarse de un sistema de inicio que se consideraba cada vez más ineficiente y obsoleto en varios aspectos. Esto incluye Ubuntu, que finalmente salió con advenedizo , y Redhat / Fedora y derivados, que desarrollaron systemd (donde "d" es para demonio).
Eventualmente, Ubuntu decidió abandonar advenedizo a favor de systemd, y Debian hizo lo mismo en la versión 8 depreciando SysV. Raspbian, el sistema operativo que se usa predominantemente en Pi, es un derivado muy cercano de Debian, usa la misma numeración de versión, etc. (razón por la cual la primera versión de Raspbian era 7, no 1) y, por lo tanto, ahora también ha cambiado a systemd.
El comando service
debería seguir funcionando ya que Debian ha mantenido la versión 8 (jessie) compatible con versiones anteriores en este sentido, pero es posible que desee pruebe la metodología de systemd en su lugar:
sudo systemctl restart <name>
Note que el comando ( restart
) y el nombre del servicio están invertidos. Además, esto probablemente no proporcionará ningún resultado, pero indica éxito o falla a través del estado de salida ( echo $?
; cualquier cosa que no sea 0 significa falla). Puede obtener información sobre cómo fueron las cosas con: 1
systemctl status <name>
No se requiere sudo
hasta donde yo he notado. Debería haber un tiempo allí que indique cuándo se detuvo el servicio y se reinició y quedará muy claro si se está ejecutando o si falló. En el último caso, normalmente se describirá un error. Tenga en cuenta que un servicio "muerto" no necesariamente ha fallado, solo significa que hizo lo que se suponía que debía hacer y luego salió.
Creo que hacer esto manejará mejor un servicio problemático que colgó service .
1. Tengo una sugerencia aquí sobre cómo simplificar esta molestia.