LinuxForum.Fans
Тема

Как автоматически запустить виртуальные машины VMware при старте UBUNT

Автор: svn106 12 сообщений 2046 просмотров
#338890

В качестве хоста стоит Ubuntu 12.04 LTS с установленным графическим интерфейсом. Есть две виртуальные машины с именами vmPDC и vmTS. Они работают в VMware Player 5.0.
Обычно я их запускаю так:
1) Вхожу как пользователь с именем usr1cv82
2) запускаю терминал.
3) sudo bash и ввожу пароль
4) /etc/init.d/vmPDC start
5) /etc/init.d/vmTS start
Далее выхожу из терминала и переключаюсь на другого пользователя ubuntu
Выключаю компьютер в обратной последовательности.
Как сделать, чтобы виртуальные машины стартовали автоматически при включени хоста UBUNTU? Ну и выключались корректно при выключении физического компьютера? vmPDC и vmTS - это скрипты.

text
#!/bin/bash
#------------------------------------------------------------
# starts ragent
#------------------------------------------------------------
function start() {

vmrun -T player start "/disk2/vm/Windows Server 2008 x64/Windows Server 2008 x64.vmx" return } #------------------------------------------------------------ # stops ragent #------------------------------------------------------------ function stop() { vmrun -T player stop "/disk2/vm/Windows Server 2008 x64/Windows Server 2008 x64.vmx" soft return } #------------------------------------------------------------ # script's main function #------------------------------------------------------------ function main() {

local action=

case $1 in start) action=start ;; stop) action=stop ;; *) return 1; ;; esac

$action }

#invoke function main main $*

#338894

svn106, поставить это хозяйство в автозагрузку, наверное :)
rc.local для этого есть.

#338921
"svn106⇓" написал:
Как сделать, чтобы виртуальные машины стартовали автоматически при включени хоста UBUNTU?

вот это:
/etc/init.d/vmPDC start
/etc/init.d/vmTS start
пропишите в /etc/rc.local (допишите в конец файла)

Однако, если этим программам нужен графический интерфейс, данный способ не сработает. В таком случае надо:
в /etc/sudoers добавить строчки

text
usr1cv82 ИМЯ_СИСТЕМЫ = (root) NOPASSWD: /etc/init.d/vmPDC start
usr1cv82 ИМЯ_СИСТЕМЫ = (root) NOPASSWD: /etc/init.d/vmTS start

(добавлять лучше командой sudo visudo, что-бы не запороть систему)

и добавить эти команды в автозагрузку вашей DE. (это читайте мануал к вашей юнити, или что там у вас). Перед командами нужно писать sudo, но пароль она НЕ спросит.

#338976
"drBatty⇓" написал:
и добавить эти команды в автозагрузку вашей DE. (это читайте мануал к вашей юнити, или что там у вас). Перед командами нужно писать sudo, но пароль она НЕ спросит.

Я так понял что vm[PDC,TS] - это службы?
а почему б не сделать

text
service vmPDC start
#338983

можно по аналогии bootlogd в папках /etc/init, /etc/init.d
создать автоматический запуск ваших служб. я так понял службы самописные?

#338986
"Харитон⇓" написал:
Я так понял что vm[PDC,TS] - это службы?

я не знаю. Может это виртуальные машины, которые работают только в X11? Я так понял...

#338988

ну поставить тогда им иксы в зависимость...)))
запустятся когда иксы подымутся...

#338996

ой! я написал про /etc/init/bootloogd a надо про /etc/default/bootlogd
он + скрипт init.d даст автозапуск скрипта из под рута.
если надо зависимости прикручивать, то делаем по аналогии конфигов в /etc/init/
можно посмотреть конфиги kdm.conf,lightdm.conf или что там у вас в графике есть...

#338999
"Харитон⇓" написал:
ну поставить тогда им иксы в зависимость...

можно наверное. Только я не знаю, как это делается в ubuntu.

#339031

в файлах kdm.conf,lightdm.conf есть пример проверки перевиус ранлевела.
можно сделать типа:

text
start on runlevel [2345]
text
start on runlevel [5]
#339035

но ранлевел в убунту вещь тонкая...))) оно всегда 2 ранлевел... если не однопользовательская система...)))
потому я б делал:

text
start on started kdm 

к примеру
ибо у меня кде4...

Войдите или зарегистрируйтесь, чтобы ответить.