cómo iniciar / detener / reiniciar procesos

5

Como recién llegado del sistema operativo Windows, me pregunto cómo iniciar / detener / reiniciar un servicio en Mac OS X Snow Leopard 10.6.8 (es sencillo en Windows usando su Administrador de tareas). Probé el Monitor de actividad, pero solo mata los procesos, no los inicia. Intenté el comando: launchctl stop *servicename* y luego el comando launchctl start *servicename* después de presionar retorno en el teclado después de cada comando, el terminal no muestra ningún mensaje, por lo que debe ser exitoso, pero cuando verifico el resultado en el Monitor de actividad, suena que este comando es inútil porque no tiene efecto en ese proceso en el Monitor de actividad.

p.s. Estoy seguro de que escribí el nombre correcto del proceso, tomé el nombre de la lista usando el comando: launchctl list

EDITAR (líneas de salida del comando ps auxwww)

line1:

zend 204 0.0 0.1 602396 2684 ?? Ss 10:53AM 0:00.72 /usr/local/zend/gui/lighttpd/sbin/lighttpd -m /usr/local/zend/gui/lighttpd/lib -f /usr/local/zend/gui/lighttpd/etc/lighttpd.conf -D

line2:

root 202 0.0 0.0 623124 756 ?? Ss 10:53AM 0:00.00 /usr/local/zend/bin/watchdog -c /usr/local/zend/etc/watchdog-lighttpd.ini -u zend -g zend -s lighttpd
    
pregunta unprecedented 18.07.2011 - 09:34

2 respuestas

2

Es extraño ver las preguntas entre los usuarios de "ventanas migradas" y "mac predeterminada". :) Los usuarios migrados de Windows generalmente quieren "modificar un poco" el sistema. Usuarios de Mac predeterminados: simplemente "usándolo".

Estoy usando MAC por muchos años y nunca necesitó usar el comando launchctl. Por supuesto, nunca en el uso normal, por supuesto, a veces es necesario usarlo cuando se instalan algunos elementos desde macports, para una sola carga de archivos de inicio o algo así.

Me pregunto por qué necesita iniciar / detener / reiniciar servicios con launchctl. Preguntando porque si no eres un usuario experimentado de OS X, probablemente arruines la "armonía" del sistema :). Entonces, en este caso, en mi humilde opinión, es mejor preguntar el problema específico, así que pregunte cómo iniciar / detener el servicio específico.

Como respuesta: compruebe primero las preferencias del sistema. Los servicios más comunes se encuentran en el panel "Compartir", como el servidor web, sshd, el uso compartido de CD, etc.

Algunos archivos dmg de terceros con contenido GNU también tienen su propio panel de preferencias. Por ejemplo, puede instalar un servidor MYSQL precompilado con un panel de preferencias, lo que le permite iniciar y reiniciar el servidor.

Si no encuentra el servicio deseado en las preferencias, sea más preciso. ¿Qué servicio necesita iniciar / detener? El comando "launchctl" funciona según sea necesario para trabajar, ActivityMonitor también. Usted también puede usar los comandos "ps axuwww" o "top" de la Terminal.

Recuerda, tu ahora en el mundo UNIX, así que casi cualquier cosa puede hacerse desde la línea de comandos, pero generalmente eso significa realmente mucho aprendizaje ...;)

EDITAR:

prueba:

sudo kill -1 204
              ^-process number

desde el terminal, o simplemente mata al demonio desde ActivityMonitor. El watchdog debería reiniciarlo.

¿Tiene algún archivo lighthttpd en / Library / LaunchDaemons / *? Por lo tanto, cualquier salida del comando:

ls /Library/LaunchDaemons | grep -i light

Si es así, puedes usar el:

sudo launchctl unload /Library/LaunchDaemons/filename.plist
sudo launchctl load /Library/LaunchDaemons/filename.plist

comando para detener / iniciar.

    
respondido por el jm666 18.07.2011 - 11:29
2
  

Estoy usando MAC por muchos años, y nunca necesité usar el comando launchctl. Por supuesto, nunca en el uso normal, por supuesto, a veces es necesario usarlo cuando se instalan algunos elementos desde macports, para una sola carga de archivos de inicio o algo así.

     

Me pregunto por qué necesita iniciar / detener / reiniciar servicios con launchctl. Preguntando porque si no eres un usuario experimentado de OS X, probablemente arruines la "armonía" del sistema :). Entonces, en este caso, en mi humilde opinión, es mejor preguntar el problema específico, así que pregunte cómo iniciar / detener el servicio específico.

No veo ningún problema con hacer la pregunta más amplia sobre cómo se inician y se detienen los servicios si esto permite que el OP comprenda mejor los mecanismos subyacentes del sistema.

En cuanto a por qué querría hacer esto, una buena razón sería matar remotamente los procesos errantes en máquinas remotas a través de Apple Remote Desktop. Hago esto con frecuencia para los usuarios de nuestra red en la escuela y puede ahorrar mucho trabajo en las piernas (además de evitar el ingreso de comandos terminales repetitivos).

Los usuarios de ARD querrán eliminar los procesos por nombre en lugar de por PID, ya que el ID del proceso no es necesariamente el mismo cada vez que se inicia el proceso ...

sudo killall coreaudiod

... sería un comando útil para los usuarios de ARD, ya que se puede repetir independientemente del PID, mientras que ...

sudo kill -1 211

... muy probablemente solo funcionaría para matar a Coreaudiod en la ocasión en que su PID era en realidad 211 , y definitivamente no sería un comando ARD que valga la pena guardar. un uso futuro. Esto puede parecer obvio para los usuarios "avanzados", pero los usuarios desconocidos pueden no darse cuenta de la diferencia.

    
respondido por el ScunnerDarkly 04.12.2014 - 16:48

Lea otras preguntas en las etiquetas