¿Cómo recargo un entorno de usuario OSH "bash"?

0

Creo que quiero preguntar

  • ¿Cómo recargo un bashentorno de usuario OS X?

Pero maldita sea Jim; Soy un ingeniero de software, no un administrador de sistemas

La meta

  • Quiero que Jenkins comience como un demonio en El Capitan
  • Quiero usar "UserWhoHasARealAccount" en OS X
  • Para esto debería estar usando un demonio de lanzamiento

hasta donde se

  • todos / Library / LaunchDaemons / se inician como root
  • Si bien pueden sustituir usuario por Usuario para convertirse en no root , aún conservan el entorno de root .

El problema

  • el proceso no tendrá la RUTA completa (et al) que configuré
    • which puede solucionar esto pero ...
  • los subprocesos no obtienen la configuración de RUTA I para el usuario
    • por which whatever-i-wantlo tanto , no ayuda cuando Node.JS intenta ejecutar un subproceso y compilar mi blog ... a menos que Node.JS invoque subprocesos a través de rutas absolutas en mi computadora
  • el entorno raíz parece impedir que sshfuncione
    • así que no puedo tener el inicio de sesión "UserWhoHasARealAccount" en localhost para obtener mágicamente una ruta real
    • Es posible que me falte algo, ya que no puedo encontrar ningún mensaje de error SSH

Como se trata de un servidor, iniciar sesión y presionar un botón no "lo harán por mí"

camarada
fuente

Respuestas:

1

Para cualquiera del futuro ...

bashse puede ejecutar -lpara ejecutar productos de inicio de sesión completos. Entonces, mi script launchd va de;

<ProgramArguments>
    <array>
        <string>java</string>
        <string>-jar</string>
        <string>jenkins.war</string>
    </array>

... a ...

<ProgramArguments>
    <array>
        <string>bash</string>
        <string>-l</string>
        <string>-c</string>
        <string>java -jar jenkins.war</string>
    </array>
camarada
fuente