launchtl: un modo per disabilitare un demone dopo aver rimosso il file plist?


13

Stavo provando a disabilitare permanentemente un demone di terze parti, quindi ho cancellato il suo file plist da / Library / LaunchDaemons-- e poi mi sono reso conto di non averlo fatto launchctl unloadprima; provare dopo il fatto produce "Nessun file o directory / nulla trovato da scaricare". E, naturalmente, il demone è riavviabile, quindi quando lo uccido, viene ricreato.

Ho provato a farlo launchctl listnella speranza di ottenere un'etichetta da usare launchctl removema il demone non è più elencato.

A parte il riavvio, c'è un modo per fare in modo che launchd dimentichi il demone e / o riesegua la scansione dei file di configurazione?


La documentazione non è chiara, ma launchctl kill com.example.productsembra funzionare.
Abhi Beckert,

Risposte:


18

Per vedere TUTTI i daemon attualmente in esecuzione, è necessario digitare:

sudo launchctl list

E quindi puoi rimuoverlo, ad esempio:

sudo launchctl remove com.sassafras.KeyAccess.daemon

Eh, immagino che se non sei root, mostra solo i demoni lanciati per / come utente?
jhfrontz,

2
Questo in realtà non funziona per me. Le voci tornano al riavvio.
Dmitry Minkovsky,

3
@dimadima hai rimosso i file plist associati? I comandi forniti da Dan manipolano solo lo stato corrente (che viene ripristinato al prossimo avvio a qualunque cosa sia in / Library / LaunchDaemons).
jhfrontz,

@jhfrontz yup Ormai ho imparato che devi farlo. Grazie.
Dmitry Minkovsky

1
Se aiuta qualcuno, ci sono davvero sempre più elenchi univoci disponibili. Tutti gli utenti nella directory hanno i propri, sebbene l'utente root e l'utente connesso siano probabilmente i più rilevanti. Puoi vedere tutti gli utenti che hanno processi con sudo ps auxo comunque preferisci quindi utilizzare sudo launchctl asuser [UniqueID] launchctl listper vedere l'elenco per ciascun utente.
David Smith,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.