Qual é a diferença entre um `service-name` e um` service-target`?


27

Considere os seguintes comandos

# launchctl stop 
Usage: launchctl stop <service-name>
# launchctl stop com.apple.SomeService
# launchctl disable com.apple.SomeService
Usage: launchctl disable <service-target>

Qual é a diferença entre um destino de serviço e um nome de serviço? Como posso aprender um destino de serviço de um serviço com o nome do serviço?

Respostas:


29

Um destino de serviço é um nome de serviço mais um domínio de destino, que descreve o contexto em que o serviço é executado, por exemplo, se é executado na inicialização do sistema ou quando um usuário específico efetua login etc.

A página de manual launchctl (1) descreve 6 maneiras de formar um destino de serviço a partir de um nome de serviço. Se você deseja desativar um serviço que é executado na inicialização, você provavelmente deseja um destes três, dependendo se é um serviço que é executado na inicialização do sistema ou quando você faz logon:

system/[service-name]
    Targets the system domain or a service within the system domain. The system
    domain manages the root Mach bootstrap and is considered a privileged execu-
    tion context. Anyone may read or query the system domain, but root privi-
    leges are required to make modifications.

user/<uid>/[service-name]
    Targets the user domain for the given UID or a service within that domain. A
    user domain may exist independently of a logged-in user. User domains do not
    exist on iOS.

gui/<uid>/[service-name]
    Another form of the login specifier. Rather than specifying a user-login
    domain by its ASID, this specifier targets the domain based on which user it
    is associated with and is generally more convenient.

Você pode descobrir o número de uid da sua conta de usuário assim:

$ id -u [your-username]
502

25
Existe uma maneira de ir do "rótulo" de serviço ou do PID exibido launchchtl listpara o "destino do serviço" sem tentar todos esses domínios possíveis?
amigos estão dizendo sobre algal
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.