¿Cómo inicio una aplicación en arranque / arranque en Sierra?

Soy un entusiasta de la tecnología, pero bastante nuevo en macOS. Estoy usando un Mac mini que ejecuta MacOS Sierra como una máquina de construcción que ejecuta GoCD . Quiero que el server (go-server) y el agente (go-agent) comiencen en el arranque, pero no puedo encontrar una explicación fácil en ninguna parte sobre cómo hacer esto.

Las cosas que funcionaban en Mac OS X 10.6 ya no funcionan, y no quiero que estas aplicaciones comiencen con el inicio de session , porque no quiero seguir conectado a la console en esta computadora.

  • Disco de inicio de Thunderbolt 2 no confiable
  • Crear unidad USB de arranque desde Linux ISO
  • doble contraseña para acceder a la count
  • ¿De dónde viene la tabla de routing OS X?
  • OSX El Capitán: no se puede hacer un dispositivo USB de arranque con el campo de entrenamiento
  • A mediados de 2010 Macbook Pro no se iniciará después de intentar instalar macOS Sierra
  • ¿Dónde puedo encontrar statistics sobre el monto de descarga en OSX?
  • ¿Puedo copyr el mac OS directamente de mi macbook pro a una tarjeta en la ranura SD?
  • ¿Hay alguna manera de reorderar la barra de menu de Mac?
  • ¿Cómo puedo degradar mi Safari de la versión 6.1 a la versión 6.0.2 en mi Mac?
  • El video de pantalla completa solo muestra 1/4 de video
  • ¿Por qué OS X sigue olvidando la configuration de mi trackpad?
  • One Solution collect form web for “¿Cómo inicio una aplicación en arranque / arranque en Sierra?”

    El inicio del service / aplicación durante el arranque generalmente se realiza con launchd y ejecuta los demonios controlados por launchctl. Depende de la aplicación / ejecutable y del entorno si ese daemon de inicio es posible o no. Muchas aplicaciones de GUI requieren una session de inicio de session y el método no funciona.

    Después de inspeccionar GoCD, puede download un file zip o una versión del server "OS X / macOS" . El server se inicia con un script de shell en ambos casos: ya sea explícitamente en la versión zip o implícitamente con "Go Server.app/Contents/MacOS/go-server".

    Vaya con el file zip, descomprímalo y mueva la carpeta resultante a / usr / local. Enlace la carpeta /usr/local/go-server-16.10.0 a / usr / local /:

    ln -s /usr/local/go-server-16.10.0 /usr/local/go-server 

    Cree un daemon de inicio con sudo nano /Library/LaunchDaemon/org.goserver.start.plist y el contenido

     <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>org.goserver.start</string> <key>ProgramArguments</key> <array> <string>/bin/bash</string> <string>/usr/local/go-server/server.sh</string> </array> <key>RunAtLoad</key> <true/> <key>StandardErrorPath</key> <string>/tmp/org.goserver.start.stderr</string> <key>StandardOutPath</key> <string>/tmp/org.goserver.start.stdout</string> </dict> </plist> 

    Cambie el propietario y los permissions del file si es necesario:

     sudo chown root:wheel /Library/LaunchDaemons/org.goserver.start.plist sudo chmod 644 /Library/LaunchDaemons/org.goserver.start.plist 

    Modifique /usr/local/go-server-16.10.0/server.sh según sus necesidades. Debe establecer un directory de logging diferente en la línea 85 o se creará un file de logging en el directory raíz. Compruebe otras variables y routes (como $ JAVA_HOME, YOURKIT_PATH, $ PID_FILE, etc.) en el script de shell y modifíquelas según sus necesidades / entorno. Aquí funcionó de fábrica, pero no lo probé a background.

    Luego, inicie el demonio de lanzamiento con:

     sudo launchctl load /Library/LaunchDaemons/org.goserver.start.plist 

    Compruebe /tmp/org.goserver.start.stderr para los errores de launchd. Si el daemon de inicio funciona bien, puedes eliminar la pieza:

      <key>StandardErrorPath</key> <string>/tmp/org.goserver.start.stderr</string> <key>StandardOutPath</key> <string>/tmp/org.goserver.start.stdout</string> 

    del plist

    El método debería funcionar de acuerdo con el GoAgent. El inicio del agente se hace con agent.sh. Use una segunda plist con un plist diferente y nombre de label del curso: org.goagent.start.plist / org.goagent.start.

    Probablemente tenga que agregar una condición en la list del agente para que el agente se inicie después de que el server se esté ejecutando.


    Intenté lo mismo con la aplicación "OS X" pero no pude eliminar todos los errores.

    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).