Не удается запустить для запуска при запуске / выключении на OS X Lion - PullRequest
0 голосов
/ 20 февраля 2012

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

Вот шаги, которые я выполнил:

  • Создан каталог /Library/StartupItems/HeadlessVM
  • Создан два файла в этом каталоге:

    -rwxr--r--  1 root  wheel  242 Feb 19 19:05 HeadlessVM
    -rw-r--r--  1 root  wheel  188 Feb 20 12:42 StartupParameters.plist
    

    Содержимое для HeadlessVM

    $ cat HeadlessVM
    #!/bin/sh
    
    . /etc/rc.common
    
    StartService () 
    {
        ConsoleMessage "Starting HeadlessVM"
        /usr/local/bin/runvmheadless
    }
    
    StopService () 
    {
        ConsoleMessage "Suspending HeadlessVM"
        /usr/local/bin/suspendvmheadless
    }
    
    RunService "$1"
    

    Содержимое для StartupParameters.plist

    $ cat StartupParameters.plist
    {
      Description     = "Runs/Suspends Virtual Machine Headless on OS X Startup/Shutdown";
      Provides        = ("HeadlessVM");
      Uses            = ("Disks");
      OrderPreference = ("Late");
    }
    
  • Созданы мои файлы сценариев, которые будут выполнять оба действия:

      -rwxr-xr-x@ 1 xxxxxxx  admin  164 Feb 19 01:06 runvmheadless
      -rwxr-xr-x@ 1 xxxxxxx  admin  160 Feb 19 01:19 suspendvmheadless
    

    Содержимое для runvmheadless

    $ cat runvmheadless
    #!/bin/bash
    "/Applications/VMware Fusion.app/Contents/Library/vmrun" -T fusion start "/Volumes/Archive/Virtual Machines/vm.vmwarevm/vm.vmx" nogui
    

    Содержимое для suspendvmheadless

    $ cat suspendvmheadless
    #!/bin/bash
    "/Applications/VMware Fusion.app/Contents/Library/vmrun" -T fusion suspend "/Volumes/StaticData/Virtual Machines/vm.vmwarevm/vm.vmx"
    
  • Мое устранение неполадок до сих пор:

    • Если я запускаю скрипты из терминала, они работают как положено.
    • Если я запускаю sudo /sbin/SystemStarter (start or stop) "HeadlessVM", это также работает.
    • На консоли я вижу только следующее после перезагрузки, не знаю, что не так,

      2 /20/12 12: 11: 09.128 PM SystemStarter: запускает / приостанавливает работу виртуальной машины в автономном режиме в OS X Запуск / завершение работы (100) сделалне завершено успешно

Благодарим Вас за любую помощь, спасибо.

1 Ответ

0 голосов
/ 26 февраля 2012

Я нашел, что было не так. Приведенный выше код в порядке, проблема в том, что мои сценарии пытаются получить данные с зашифрованного вторичного диска, который не был доступен во время загрузки.

Я использовал это, чтобы обойти эту проблему: https://github.com/jridgewell/Unlock

Спасибо

...