launchctl non avvia il daemon cntlm

1

Ho installato cntlm su osx usando la formula homebrew .

Quindi ho copiato il file .plist e avviato il demone:

sudo cp -fv /usr/local/opt/cntlm/*.plist /Library/LaunchDaemons
sudo chown root /Library/LaunchDaemons/homebrew.mxcl.cntlm.plist

Ma dopo il riavvio il daemon non è in esecuzione. Ho provato ad eseguirlo manualmente con

sudo launchctl load /Library/LaunchDaemons/homebrew.mxcl.cntlm.plist

ma il suo output è

/Library/LaunchDaemons/homebrew.mxcl.cntlm.plist: Operation already in progress

Ho anche controllato il file plist con plutil -lint ed è ok.

Questa è la fonte di /Library/LaunchDaemons/homebrew.mxcl.cntlm.plist :

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>Label</key>
    <string>homebrew.mxcl.cntlm</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/local/opt/cntlm/bin/cntlm</string>
    </array>
    <key>KeepAlive</key>
    <false/>
    <key>RunAtLoad</key>
    <true/>
    <key>StandardOutPath</key>
    <string>/var/null</string>
    <key>StandardErrorPath</key>
    <string>/var/null</string>
  </dict>
</plist>

Sai perché questo accade e come eseguirlo correttamente come demone?

    
posta lifeisfoo 09.10.2015 - 12:10
fonte

2 risposte

1

Ho letto le informazioni sull'homebrew e afferma quanto segue:

  • Modifica /usr/local/etc/cntlm.conf per configurare Cntlm

  • Per avviare launchd avviare cntlm e riavviare all'avvio: sudo brew services start cntln

Se non lo hai fatto, dovrebbe essere il tuo primo passo.

Inoltre, non penso che /Library/LaunchDaemons sia un posto appropriato per il file plist. A mio avviso, una posizione migliore sarebbe ~/Library/LaunchAgents in quanto viene eseguita all'accesso utente. Questa è una preferenza personale per determinare quando e per quali utenti di sistema si desidera che il software esegua. È importante sapere quando si tenta di eseguire il debug del sistema se qualcosa dovesse fallire o impedire il corretto funzionamento di altre operazioni del sistema.

Inoltre, non penso che il file plist stia per iniziare. Prova il mio suggerimento sulla posizione con il seguente codice del file plist di seguito. Ha un output di errore corretto per la registrazione in modo che tu possa vedere cosa sta succedendo in $HOME/Library/Logs/cntlm-output.log e $HOME/Library/Logs/cntlm-error.log

Per ulteriori informazioni sui lavori di avvio di Launchd, consultare la documentazione per sviluppatori Apple qui: Creazione di demoni di lancio e agenti

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>Label</key>
    <string>homebrew.mxcl.cntlm</string>
    <key>ProgramArguments</key>
    <array>
        <string>/bin/sh</string>
          <string>-c</string>
            <string>/usr/local/opt/cntlm/bin/cntlm</string>
    </array>
    <key>KeepAlive</key>
    <false/>
    <key>RunAtLoad</key>
    <true/>
        <key> StandardOutPath </key>
          <string> ~/Library/Logs/cntlm-output.log </string>
        <key> StandardErrorPath </key>
          <string> ~/Library/Logs/cntlm-error.log </string>
      </dict>
</plist>
    
risposta data 16.06.2018 - 23:20
fonte
0

Ho riscontrato questo problema proprio ora. Quanto segue ha ottenuto cntlm per me.

sudo launchctl unload /Library/LaunchDaemons/homebrew.mxcl.cntlm.plist
sudo launchctl load /Library/LaunchDaemons/homebrew.mxcl.cntlm.plist

Questa è solo una soluzione, temo (almeno per me). Il problema si ripresenta ad ogni riavvio.

    
risposta data 05.11.2015 - 04:14
fonte

Leggi altre domande sui tag