Яка різниця між "ім'ям служби" та "цільовим сервісом"?


27

Розглянемо наступні команди

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

Яка різниця між цільовою службою та назвою служби? Як я можу дізнатись службову ціль служби з назви служби?

Відповіді:


29

Ціль сервісу - це ім'я служби плюс цільовий домен, який описує контекст, в якому служба запускається, наприклад, запускається вона при запуску системи або коли певний користувач входить у систему тощо.

На manpage на сторінці startctl (1) описано 6 способів формування цілі служби з назви служби. Якщо ви хочете відключити службу, яка запускається при запуску, ви, ймовірно, хочете одну з цих трьох залежно від того, чи це служба, яка працює при запуску системи, або під час входу в систему:

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.

Ви можете дізнатися номер uid для свого облікового запису користувача, як це:

$ id -u [your-username]
502

25
Чи є спосіб перейти від служби "label" або PID, що відображається, launchchtl listдо "target-target", не намагаючись усі ці можливі домени?
algal
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.