0 votes

Launchd Nom d'utilisateur clé ne fonctionne pas

Donc, j'essaie d'écrire un fichier launchd pour exécuter un script sur un Mac Mini en tant qu'utilisateur spécifique lorsqu'ils ne sont pas connectés. Voici le fichier plist :

    Label
    com.wintr.eodemail
    Program
    /Users/*myusername*/Desktop/testdaemon/testdaemon.sh
    StandardErrorPath
    /var/log/eod-email.log
    StandardOutPath
    /var/log/eod-email.log
    RunAtLoad

    StartCalendarInterval

            Minute
            20

J'ai placé ceci dans /Library/LaunchDaemons/ et cela fonctionne correctement en s'exécutant en tant qu'utilisateur root. Cela fonctionne exactement quand je lui dis quand personne n'est connecté, cependant quand j'ajoute la clé UserName, il cesse soudainement de fonctionner :

    Label
    com.wintr.eodemail
    Program
    /Users/*myusername*/Desktop/testdaemon/testdaemon.sh
    StandardErrorPath
    /var/log/eod-email.log
    StandardOutPath
    /var/log/eod-email.log
    RunAtLoad

    StartCalendarInterval

            Minute
            20

    UserName
    *myusername*

Lorsque je décharge et charge le fichier, puis vérifie s'il a été correctement chargé avec sudo launchctl list | grep wintr il affiche :

-       78      com.wintr.eodemail

Et ne s'exécute pas. Que fais-je de mal ici?

0voto

LUKER Points 101

Comme l'a souligné fd0, mon utilisateur ne pouvait pas écrire dans le répertoire /private/var/log, comme je n'avais pas besoin des journaux, j'ai supprimé les lignes suivantes:

StandardErrorPath
/var/log/eod-email.log
StandardOutPath
/var/log/eod-email.log

Et ça a commencé à fonctionner! J'aurais aussi pu changer ces lignes pour un répertoire dans lequel mon utilisateur peut écrire pour résoudre le problème.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X