1. Wenn du alle Inhalte sehen, oder selber eine Frage erstellen möchtest, kannst du dir in wenigen Sekunden ein Konto erstellen. Die Registrierung ist kostenlos, als Mitglied siehst du keine Werbung!

Plist-Datei mit launchctl laden/ entladen

Diskutiere das Thema Plist-Datei mit launchctl laden/ entladen im Forum Mac OS X & macOS.

  1. GBunge

    GBunge Thread Starter Mitglied

    Beiträge:
    43
    Zustimmungen:
    0
    Mitglied seit:
    11.11.2008
    Hallo,
    seit ich das MacBook Pro 16 habe, funktioniert das Starten einer Applikation nach dem booten nicht mehr.
    In Home/Library/LaunchAgent steht eine Datei xgb-termine.plist.
    Die in diesem Ordner liegenden Plist-Dateien werden nach dem Einloggen gestartet. ( MacOS 10.9. )
    Der Ordner LaunchAgent existiert nicht mehr in MacOS 10.10 Catalina.
    Also habe ich meine Plist-Datei xgb-termine.plist nach /Library/LaunchAgents kopiert mit sudo.
    Hier wird allerdings der ExitCode 78 ( configuration error ) ausgegeben.
    Um den Fehler zu finden wollte ich die Plist-Datei mit launchctl entladen. Dabei
    wird ebenfalls ein Fehler auf dem Terminal ausgegeben!
    Code:
    launchctl load xgb-termine.plist  --> /Library/LaunchAgents/xgb-termine.plist: Invalid property list
    
    Wer kann helfen?
    Gruss GBunge
     
  2. oneOeight

    oneOeight Mitglied

    Beiträge:
    53.308
    Zustimmungen:
    6.399
    Mitglied seit:
    23.11.2004
    hast du dir mal die plist angeguckt? wenn der sagt die ist improper, dann scheint die doch fehlerhaft.
     
  3. GBunge

    GBunge Thread Starter Mitglied

    Beiträge:
    43
    Zustimmungen:
    0
    Mitglied seit:
    11.11.2008
    Das hatte ich auch erst vermutet, aber die Plist-Datei hat ohne Änderungen vorher funktioniert. Ausserdem tritt dieser
    Fehler beim Entladen der Datei auf und sie wird nicht entladen.
    Code:
    launchctl unload xgb-termine.plist
    /Library/LaunchAgents/xgb-termine.plist: Invalid property list
    
    Das bedeutet, dass ich die Plist-Datei nicht aus dem System entladen kann, also auch keine neue, oder geänderte,
    laden kann.
    Diese Funktion( cron ) ist unbrauchbar.
     
  4. oneOeight

    oneOeight Mitglied

    Beiträge:
    53.308
    Zustimmungen:
    6.399
    Mitglied seit:
    23.11.2004
    soll das jetzt heißen du rufst über launchd cron auf?
    cron ist doch mit der einführung von launchd schon von apple deprecated worden.

    warum stellst du die plist nicht mal hier rein?
    oder sind das sensitive informationen?
     
  5. Andi

    Andi Mitglied

    Beiträge:
    8.477
    Zustimmungen:
    1.502
    Mitglied seit:
    16.05.2002
    Nur weil ein Ordner nicht existiert kann er trotzdem vom System beachtet werden wenn man ihn selbst anlegt. Bei den launchctl Geschichten die Permissions und Eigentümer der .plist beachten. Vermutlich root.
     
  6. GBunge

    GBunge Thread Starter Mitglied

    Beiträge:
    43
    Zustimmungen:
    0
    Mitglied seit:
    11.11.2008
    Cron habe ich nur geschrieben, weil mir kein anderer Name einfiel.

    Hier die Plist:
    Code:
    <?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>xgb-termine</string>
       <key>Nice</key>
       <integer>1</integer>
       <key>ProgramArguments</key>
       <array>
           <!--string>/Users/gb/aJava/Termine/dist/Termine.jar</string -->
           <string>/Users/gb/aJava/Apps/Termine.app/Contents/MacOS/Termine</string>
       </array>
       <key>StartCalendarInterval</key>
       <dict>
           <key>Hour</key>
           <integer>8</integer>
           <key>Minute</key>
           <integer>0</integer>
       </dict>
       <key>RunAtLoad</key>
       <true/>
    </dict>
    </plist>
    
    Das habe ich versucht und habe den Ordner LaunchAgents in HOME/Library angelegt. Es funktionierte ebenfalls nicht.
    Da Catalina von sich aus diesen Ordner LaunchAgents im Home nicht anlegt, habe ich vermutet, dass das System beim Einloggen, anders als bei älteren
    Systemen, die Plist-Dateien in diesem Ordner nicht startet.
     
  7. oneOeight

    oneOeight Mitglied

    Beiträge:
    53.308
    Zustimmungen:
    6.399
    Mitglied seit:
    23.11.2004
    hmm, plutil moniert die jedenfalls nicht.
    aber warum sagt denn launchctl die wäre invalid?
     
  8. Andi

    Andi Mitglied

    Beiträge:
    8.477
    Zustimmungen:
    1.502
    Mitglied seit:
    16.05.2002
    • Launch daemons and launch agents introduce new user privacy protections. Specifying privacy-sensitive files and folders in a launchd property list might not work as expected and prevent the service from running. Having Program or ProgramArguments pointing to an executable in a privacy sensitive location is currently allowed, but may be restricted in a future release. (49702405)

      To comply with the new privacy protections, resources for a launchd service must be stored in locations that aren’t privacy sensitive. If necessary, the app can set up resources during its execution rather than using launchd property list keys, making it possible to grant the app access using System Preferences > Security & Privacy > Privacy.

      The following launchd property list keys are affected: KeepAlive, PathState, QueueDirectories, Sockets, SockPathName, StandardErrorPath, StandardInPath, StandardOutPath, and WatchPaths.

      Hast Du? System Preferences > Security & Privacy > Privacy.
     
  9. GBunge

    GBunge Thread Starter Mitglied

    Beiträge:
    43
    Zustimmungen:
    0
    Mitglied seit:
    11.11.2008
    Dank für Deine Mühe. Mein Englisch ist nicht so gut, dass ich aus diesem Post das richtige erkenne!

    Ich habe nur soviel verstanden, dass meine aufzurufende Applikation nicht in einem
    "privacy" Ordner liegen darf.
    Was bedeutet das für mich und mein Problem, und wie ist Dein letzter Satz gemeint?
    Gruss GBunge
     
  10. Andi

    Andi Mitglied

    Beiträge:
    8.477
    Zustimmungen:
    1.502
    Mitglied seit:
    16.05.2002
    Du musst in Systemeinstellungen -> Sicherheit -> Privatsphäre... oder wie es bei Dir gerade heißt der App bzw Java noch zusätzlich Rechte vergeben. Damit das gestartet wird.

    @oneOeight Schlag mi den Kopf ab. ;)
     
Die Seite wird geladen...
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite weitersurfst, akzeptierst du unseren Einsatz von Cookies. Akzeptieren Weitere Informationen...