VMware Player - работает как сервис


8

Можно ли запустить проигрыватель VMware в качестве службы Windows, чтобы пользователю не нужно было входить в систему, чтобы проигрыватель работал?

Ответы:


14

Vmware Server - это правильный инструмент для запуска виртуальной машины в фоновом режиме, а не Vmware Player.


1
(а также бесплатно)
Chris_K

2
Не совсем верно. Люди по всей сети используют VMWare Player как сервис.
Джеймс Барнетт

4
@JamesBarnett люди делают много вещей, которые не "идеальны" - катайтесь и смотрите, как другие ведут себя на дорогах, если вы мне не верите. Тот факт, что вы можете «заставить» проигрыватель VMWare работать как сервис, не меняет того факта, что сервер VMWare является инструментом, предназначенным для этой работы.
Роб Мойр

1
Может быть, зависит от варианта использования. Если вы хотите запускать виртуальную машину без присмотра, потому что вам нужен дешевый сервер VMWare, то я согласен с вами. Однако утверждение «правильный инструмент для запуска виртуальной машины в фоновом режиме» является слишком широким. В моем случае я хотел запускать linux бок о бок с Windows в режиме Unity, и мне не нужно было беспокоиться об отображении пользовательского интерфейса VMWare Player. Кроме того, Windows чрезмерно связывает GUI с фоновыми процессами. Центральная часть истории компьютеров - это возможность взломать что-нибудь, чтобы сделать то, что вы хотите. Инструмент не ошибается, вам просто нужно знать его ограничения.
Джеймс Барнетт

6
Сервер vmware устарел и имеет низкую «версию vm hw»
Sirber

5

Извините за поздний ответ с этим. Я пытался понять это сегодня. Я наткнулся на этот ответ, решил, что я дал SF знать.

Вы можете на самом деле ...

  • Добавьте это в свой конфигурационный файл VMX, чтобы в VMWare Player не отображался пользовательский интерфейс:

    msg.noOk = "ИСТИНА"

  • Загрузите instsrv.exe из Windows Server Resource Kit для создания собственной службы.

  • При запуске есть пакетный файл, позвоните в службу, которую вы только что сделали

Пошаговые инструкции можно найти здесь:

http://research.stowers-institute.org/dct/docs/admin/VMwarePlayerService.htm


последняя ссылка не работает
stimpy77

2

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

Да, в качестве службы для Linux можно использовать vmware player (для Windows есть отдельный ответ); это легко, и я не могу думать о том, чтобы этого не делать. Это особенно хорошо для размещения безголового сервера с безголового сервера.

Другой VMware-ориентированный выбор, VMware Server, устарел, и единственный другой вариант с ценой $ 0, о котором я знаю, это VirtualBox. Если вам нравится это лучше, чем VMWare Player, вам больше мощности, но я знаю VMWare Player и не вижу причин не использовать хорошо поддерживаемый путь, чтобы получить то, что я хочу.

Предположительно, вы захотите, чтобы он работал под учетной записью без полномочий root, запускался и выключался при стандартном времени запуска / завершения работы службы. Если это так, то вот как это настроить:

  • Получить пакет демона (обычно не устанавливается по умолчанию):

    apt-get install daemon
    
  • Загрузите VMware Player и VMware VIX с веб-сайта vmware.com и установите их, чтобы получить ядро ​​виртуальной машины и двоичный файл vmrun (контроль выполнения vm в командной строке).

  • Добавьте сервис в автозагрузку, создав /etc/init.d/<vm_server_name>. Это может выглядеть примерно так:

    #! /bin/bash
    ### BEGIN INIT INFO
    # Provides:          vm_server_name
    # Required-Start:    $named $remote_fs $syslog
    # Required-Stop:     $named $remote_fs $syslog
    # Default-Start:     2 3 4 5
    # Default-Stop:      0 1 6
    # Short-Description: My Server VM
    # Description:       Virtual Machine instance of My Server
    ### END INIT INFO
    
    PATH=/sbin:/usr/sbin:/bin:/usr/bin
    VM="/path/to/vmx_file.vmx"
    USER_TO_RUN_UNDER="username"
    
    if [[ "$USER" == "$USER_TO_RUN_UNDER" ]]; then
      USER_FLAG=""
    else
      USER_FLAG="--user=$USER_TO_RUN_UNDER"
    fi
    
    case "$1" in
        start)
            daemon $USER_FLAG -- vmrun -T player start "$VM" nogui &>/dev/null &
            ;;
        stop)
            vmrun -T player suspend "$VM" &>/dev/null
            while [[ "$(vmrun -T player list | grep -o "$VM")" == "$VM" ]]; do
              sleep 1
            done
            ;;
        *)
            echo "Usage: $0 start|stop" >&2
            exit 3
            ;;
    esac
    
  • Сделайте скрипт работоспособным:

    chmod a+x /etc/init.d/vm_server_name
    
  • Добавьте сценарий к стандартным уровням запуска / завершения службы linux. Числа гарантируют, что это одна из последних вещей, начатых и первая, которая будет закрыта:

    update-rc.d vm_server_name defaults 99 01
    

Ноты:

  • Вам, вероятно, потребуется «sudo» для всех команд при изменении файлов, принадлежащих пользователю root.
  • Я включил цикл, чтобы при завершении работы сценарий не возвращался в ОС до тех пор, пока он полностью не остановил гостевую ОС. Я не знаю, нужно ли это или нет, но это казалось хорошей идеей. Это определенно замедлит завершение работы хост-ОС, но, на мой взгляд, оно того стоит.
  • Если вам необходимо взаимодействовать с локальным графическим интерфейсом гостевой ОС, приостановите работу сервера, /etc/init.d/vm_server_name stopа затем запустите его локально с помощью графического интерфейса проигрывателя VMware. После окончания приостановите его и запустите, /etc/init.d/vm_server_name startчтобы снова запустить экземпляр без головы.

Если Vmware player и Virtual box - единственное, что вы придумали в Linux, то поиск не очень сложен. KVM и Xen являются предпочтительными инструментами в наши дни.
Zoredache

1
Хороший ответ для пользователей Linux, но вопрос был специально задан о запуске VMWare Player в качестве службы Windows. Возможно, вам следует задать отдельный вопрос о том, как сделать это в Linux, и ответить на него :-)
voretaq7

Спасибо за указатели на другие решения. Попробуйте поискать «vm как сервис» в Google, и вы увидите, что я видел. Я думаю, что вы на самом деле говорите, что вы верите, что гипервизоры - это новая горячность. Я думаю, что у любителей есть веские причины выбирать хост Linux с другими vm-сервисами в качестве сервисов, но для масштабируемости я уверен, что вы правы.
Дэвид Гладфелтер

К сожалению, я не увидел слово «Windows» в вопросе.
Дэвид Гладфелтер

хм, со второй мысли я думаю, что windows не упоминается в вопросе, когда я ответил на него. Может быть неправильно ...
Дэвид Гладфелтер

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.