你可以在这里找到本文的原文。
作为Oracle桌面虚拟化仅存的两个解决方案,VirtualBox和SGD都提供了直观,友好的用户界面。在使用时,通过图形界面就可以完成大部分操作。
但是,在大规模部署时,不可能都在图形界面上进行。还需要通过命令行以脚本的形式进行批量处理。事实上,VirtualBox和SGD所有图形界面的操作都有对应的命令:
- VirtualBox提供了命令行工具:VBoxManage
- SGD提供了命令行工具:tarantella
本文列举了以上两个工具常用的一些命令。
利用VBoxManage管理VirtualBox
虚拟机克隆
VBoxManage clonevm mytemplate \
--basefolder /opt/vm-pools \
--name ubuntu-dp-06-01 --register
获取虚拟机IP
此命令有效的前提是虚拟机中已经安装了VirtualBox的Addon:
VBoxManage guestproperty get ubuntu-dp-06-01 "/VirtualBox/GuestInfo/Net/0/IP/V4"
修改虚拟机Remote Display端口
VBoxManage modifyvm ubuntu-dp-06-01 --vrdeport 56001
开启虚拟机
使用headless方式,不弹出图形界面,让虚拟机在后台运行。
VBoxManage startvm ubuntu-dp-06-01 --type headless
关闭虚拟机
VBoxManage controlvm ubuntu-dp-06-01 poweroff
设置虚拟机快照
VBoxManage snapshot ubuntu-dp-06-01 take "Snapshot 0"
快照恢复
VBoxManage snapshot ubuntu-dp-06-01 restore "Snapshot 0"
利用tarantella管理SGD
添加应用程序服务器
tarantella object new_host \
--name "o=appservers/cn=My-Windows-App-S" \
--address app-server1.example.com
创建Windows应用程序对象
创建的应用程序对象名称为My-Windows-App,运行在名称为My-Windows-App的应用程序服务器上,最多限制3个用户会话,并绑定远程桌面端口为56001。
tarantella object new_windowsapp \
--name "o=applications/cn=My-Windows-App" \
--height 600 --width 800 \
--icon osr5_desktop.gif \
--appserv "o=appservers/cn=My-Windows-App-S" \
--maxinstances 3 \
--winproto wts \
--protoargs "-port 56001" \
--allowkioskescape 1
关联用户和应用程序对象
本例中为SGD的管理员关联一个Windows应用程序。
tarantella object add_link \
--name "o=Tarantella System Objects/cn=Administrator" \
--link "o=applications/cn=My-Windows-App"
删除对象
# 删除应用程序
tarantella object delete \
--name "o=applications/cn=My-Windows-App"
# 删除应用程序服务器
tarantella object delete \
--name "o=appservers/cn=My-Windows-App-S"
来源:oschina
链接:https://my.oschina.net/u/157257/blog/753107