Python取证 – 虚拟化
虚拟化 是模拟IT系统的过程,如服务器、工作站、网络和存储。它只是创建一个虚拟的而不是实际的任何操作系统、服务器、存储设备或网络进程的版本。
帮助模拟虚拟硬件的主要组件被定义为 超视窗。
下图解释了系统虚拟化的两种主要类型。
虚拟化已经在计算取证中以多种方式使用。它以这样一种方式帮助分析员,工作站可以在每次调查中以验证状态使用。特别是通过在虚拟机上附加驱动器的dd镜像作为辅助驱动器,可以实现数据恢复。同一台机器可以作为一个恢复软件来收集证据。
下面的例子有助于理解在Python编程语言的帮助下创建一个虚拟机的过程。
第1步 - 让虚拟机被命名为 “dummy1″。
每个虚拟机必须有512MB的最小容量的内存,以字节为单位。
vm_memory = 512 * 1024 * 1024
第2步 - 虚拟机必须连接到已经计算好的默认集群。
vm_cluster = api.clusters.get(name = "Default")
第3步 - 虚拟机必须从虚拟硬盘驱动器启动。
vm_os = params.OperatingSystem(boot = [params.Boot(dev = "hd")])
在使用vms集合的添加方法到虚拟机之前,所有的选项被组合成一个虚拟机参数对象。
例子
下面是添加虚拟机的完整Python脚本。
from ovirtsdk.api import API #importing API library
from ovirtsdk.xml import params
try: #Api credentials is required for virtual machine
api = API(url = "https://HOST",
username = "Radhika",
password = "a@123",
ca_file = "ca.crt")
vm_name = "dummy1"
vm_memory = 512 * 1024 * 1024 #calculating the memory in bytes
vm_cluster = api.clusters.get(name = "Default")
vm_template = api.templates.get(name = "Blank")
#assigning the parameters to operating system
vm_os = params.OperatingSystem(boot = [params.Boot(dev = "hd")])
vm_params = params.VM(name = vm_name,
memory = vm_memory,
cluster = vm_cluster,
template = vm_template
os = vm_os)
try:
api.vms.add(vm = vm_params)
print "Virtual machine '%s' added." % vm_name #output if it is successful.
except Exception as ex:
print "Adding virtual machine '%s' failed: %s" % (vm_name, ex)
api.disconnect()
except Exception as ex:
print "Unexpected error: %s" % ex
输出
我们的代码将产生以下输出 —