5

Как настроить программы для автоматического запуска при загрузке (после) Mac OS X?

В частности, я пытаюсь заставить виртуальные машины VMWare запускаться автоматически после перезагрузки OS X, но было бы полезно запустить любую (не графическую) программу.

(Обратите внимание, что vmrun запускает виртуальные машины VMware в фоновом режиме, а графический интерфейс Fusion может забрать их позже. Так что речь не идет о запуске виртуальной машины на рабочем столе после того, как я войду в систему!)

3 ответа3

3

На Mac, если вы хотите запустить скрипт или приложение при загрузке (не при входе в систему), добавьте его в /System /Library /StartupItems. В случае vmrun я написал бы сценарий оболочки, чтобы правильно задать путь (включая каталог VMWare Fusion) и запустить конкретные виртуальные машины, которые вы хотите запустить.)

Если вы предпочитаете запускать его при входе в систему, вы можете добавить элементы в «Элементы входа» в разделе пользователей в Системных настройках.

3

Я попробовал несколько методов и получил самые странные результаты. Вот что наконец сработало:

<?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>Label</key>
    <string>com.example.myvmname</string>
    <key>ProgramArguments</key>
    <array>
        <string>/Library/Application Support/VMware Fusion/vmrun</string>
        <string>start</string>
        <string>pathtovirtualmachinevmxfile.vmx</string>
        <string>nogui</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>UserName</key>
    <string>myusername</string>
    <key>KeepAlive</key>
    <true/>
</dict>
</plist>

Я создал файл com.example.vmname.plist, содержащий вышеуказанное, в /Library /LaunchDeamons и убедился, что его владелец: группа была root: wheel. инструменты разработчика Apple предоставляют отличный редактор XML-файлов plist.

Это приводит к следующему поведению, которое идеально подходит для моей среды (у меня есть восьмиъядерный Mac Pro с 8 ГБ памяти и я могу позволить себе запускать несколько виртуальных машин в фоновом режиме вместо того, чтобы приостанавливать их или выключать):

  1. Когда Mac OS X загружается, виртуальная машина запускается в фоновом режиме. Это также работает для более чем одной виртуальной машины.

  2. Если в любой момент происходит сбой виртуальной машины, она будет немедленно перезапущена.

  3. То же самое применимо, когда виртуальная машина выключается или останавливается, если это не сделано из графического интерфейса Fusion (последнее поведение позволяет редактировать настройки виртуальной машины).

  4. Когда Mac OS X выключается, виртуальная машина внезапно останавливается. Я должен найти способ отключить их более изящно перед перезагрузкой системы.

0

Эти решения слишком сложны. Безусловно, самый простой способ - перейти в «Системные настройки» -> «Пользователи и группы» -> вкладка «Элементы входа», нажать «плюс» и выбрать приложение, которое вы хотите запустить.

Также в Системных настройках -> Пользователи и группы вы можете выбрать Параметры входа и выбрать вашего пользователя для автоматического входа в систему этого пользователя. НЕТ РИСКА БЕЗОПАСНОСТИ ДЛЯ ЭТОГО, ЕСЛИ ВЫ НЕ ДАЕТЕ ДРУГИМ ЛЮДЯМ ФИЗИЧЕСКИЙ ДОСТУП К ВАШЕЙ МАШИНЕ!

Любой человек, имеющий физический доступ к вашей машине, может загрузиться с внешнего диска (или других способов обхода пароля для входа в систему) и иметь доступ ко всем файлам на вашем жестком диске. Правильный ответ на вопрос безопасности вашего компьютера - не заставлять компьютер вводить свой пароль каждый раз, когда вы к нему подходите, а блокировать свою комнату! Имеет дополнительное преимущество: вы не позволяете вашему 3-летнему ребенку вырывать клавиши на клавиатуре, проливать апельсиновый сок на Mac Pro и другие подобные вещи.

Помните, что пароли для входа предназначены только для общих рабочих областей / сред, где ваш компьютер находится там, где все остальные могут подойти и использовать - что-то, что вы никогда не должны делать с вашим домашним ПК, по моему мнению. Если вы обладаете надлежащей физической защитой, пароль для входа в систему является пустой тратой вашего времени и должен быть отключен, он практически не обеспечивает безопасность.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .