Eliminar un agent del launchd
Taula de continguts:
La gran majoria dels usuaris de Mac no hauran de modificar manualment launchd i launchctl, però hi ha moments en què desinstal·leu o deixeu d'utilitzar una aplicació a Mac OS X i un agent de servei continua carregant-se innecessàriament. llançat. Això és molest, però aquests agents canalla són fàcils d'eliminar mitjançant la línia d'ordres, així que inicieu Terminal i marxem. A més, hi ha situacions en què els usuaris avançats poden voler ajustar els agents carregats a launchd per qualsevol motiu.En qualsevol cas, detallarem com llistar elements a launchd, com eliminar-los de launchd a OS X i també com tornar a carregar agents a launchd al Mac.
Haureu de tenir una certa comprensió i comoditat d'utilitzar la línia d'ordres i el terminal per utilitzar-ho correctament, cosa que fa que sigui ideal per als usuaris més avançats que tinguin coneixements sobre els dimonis de llançament i com rastrejar-los. que, de vegades, només és qüestió de trobar-ne un al Monitor d'activitat de Mac OS X, o fent servir l'ordre launchctl que parlarem en breu. Si decidiu revertir la modificació, també podeu tornar a carregar el servei o el dimoni a launchd mitjançant una altra ordre, que desfà efectivament el pas d'eliminació inicial. Anem-hi:
Eliminació d'agents i serveis de llançament del llançament a OS X
Aquí teniu com eliminar un servei del llançament. Inicieu Terminal i, a continuació, utilitzeu la sintaxi següent amb l'ordre launchctl:
launchctl elimina el nom
Per exemple, si vull eliminar un servei anomenat “com.annoying.service” la sintaxi seria:
launchctl elimina com.annoying.service
És possible que hàgiu de prefixar l'ordre amb sudo per eliminar el servei, en aquest cas l'ordre seria:
sudo launchctl remove com.annoying.service
Amb el prefix sudo hauràs d'introduir una contrasenya d'administrador abans que s'executi l'ordre.
Com veure què es carrega a launchd
També podeu comprovar què s'ha carregat a launchd mitjançant la següent cadena d'ordres:
launchctl list
Aquesta comanda enumera tots els agents i treballs carregats a launchd, la qual cosa us permet manipular fàcilment els agents que s'estan executant. Com que aboca un munt d'informació a la pantalla alhora, és possible que vulgueu canalitzar-la a través de les ordres més o menys com aquestes:
launchctl list |més
Això us permet prémer la tecla de retorn per navegar més lentament per la llista.
Si coneixeu generalment el servei que busqueu, també podeu utilitzar “grep” per trobar el servei d'agents precís, utilitzem 'mdworker' com a exemple::
launchctl list |grep mdworker
Això només informaria dels agents de llançament següents:
- 0 com.apple.mdworker.sizing - 0 com.apple.mdworker.single - 0 com.apple.mdworker.shared - 0 com.apple.mdworker. .mail - 0 com.apple.mdworker.lsb - 0 com.apple.mdworker.isolation - 0 com.apple.mdworker.bundles - 0 com.apple.mdworker.32bit
Per a alguns serveis, el buidatge de la llista també pot mostrar el PID (ID de procés) del servei actiu.
Tornar a carregar un agent a launchd
Si decidiu que voleu tornar a habilitar i tornar a carregar un servei a launchd, utilitzeu el senyalador "carrega" així:
launchctl load com.example.service.to.load
Alguns agents es carregaran a l'instant sense cap problema. Per a d' altres, és possible que hàgiu de reiniciar el Mac abans que el servei carregat torni a funcionar com s'ha previst, tot i que de vegades també n'hi ha prou amb tancar la sessió i tornar a iniciar-se.
