Mac OS X: запуск службы? (в частности, apachectl в другом месте)

Я пытаюсь запустить альтернативную установку apache httpd (не спрашивайте) на моем Mac. Я могу сделать это, но он работает только до тех пор, как я вошел в систему, и я продолжаю вводить

sudo /opt/local/apache2/bin/apachectl -k start

и было интересно, если есть способ, чтобы настроить службу на моем Mac, так что я не обязана это делать.

4
задан Chealion
14.05.2023 14:28 Количество просмотров материала 2808
Распечатать страницу

2 ответа

лучший вариант - использовать launchd встроенная замена для cron,init и xinetd. Для этого нужно создать XML-документ (в частности .файл plist), чтобы определить, что вы хотите сделать. Программа под названием Lingon обеспечивает отличный GUI для этого и установки.

вы можете сохранить следующий файл как com.example.apache2.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Disabled</key>
    <true/>
    <key>Label</key>
    <string>com.example.apache2</string>
    <key>OnDemand</key>
    <false/>
    <key>ProgramArguments</key>
    <array>
        <string>/opt/local/bin/apache2/bin/apachectl</string>
        <string>-k</string>
        <string>start</string>
    </array>
</dict>
</plist>

затем вы хотите установить это .plist в пределах /Library/LaunchDaemons потому что вы хотите, чтобы это работать, когда компьютер запускается (как услуга). Вы можете сделать это, скопировав файл в /Library/LaunchDaemons (пользовательские демоны в Lingon) и запуск команды sudo launchctl load -w /Library/LauchDaemons/com.example.apache2.plist. Затем при каждом запуске компьютера выполняется команда. Обратите внимание, запуск демонов в /Library запускаются от имени root, поэтому вам не нужен sudo.

для получения дополнительной информации о launchd, проверить на странице на man-страница для launchd.plist,начало работы с launchd, или вы можете искать вот на Super User так же есть несколько вопросов уже по поводу launchd.

2
отвечен Chealion 2023-05-15 22:16

правильный способ сделать это-launchd.

http://developer.apple.com/macosx/launchd.html

0
отвечен Hasaan Chop 2023-05-16 00:33

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх