Python取證 - 虛擬化



虛擬化是模擬IT系統(如伺服器、工作站、網路和儲存)的過程。它只不過是建立任何作業系統的虛擬版本,而不是實際版本,例如伺服器、儲存裝置或網路程序。

幫助模擬虛擬硬體的主要元件定義為虛擬機器管理程式

下圖解釋了兩種主要型別的系統虛擬化。

Virtualization Types

虛擬化已在計算取證中以多種方式使用。它以這樣的方式幫助分析師,即每個調查都可以使用經過驗證狀態的工作站。可以透過將驅動器的dd映像作為虛擬機器上的輔助驅動器來恢復資料,特別是。同一臺機器可用作恢復軟體來收集證據。

以下示例有助於瞭解如何在Python程式語言的幫助下建立虛擬機器。

步驟1 - 令虛擬機器名為“dummy1”。

每個虛擬機器至少必須具有512 MB的記憶體,以位元組表示。

vm_memory = 512 * 1024 * 1024

步驟2 - 虛擬機器必須連線到已計算的預設群集。

vm_cluster = api.clusters.get(name = "Default")

步驟3 - 虛擬機器必須從虛擬硬碟驅動器啟動。

vm_os = params.OperatingSystem(boot = [params.Boot(dev = "hd")])

在使用vms集合的add方法新增到虛擬機器之前,所有選項都組合到虛擬機器引數物件中。

示例

以下是新增虛擬機器的完整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

輸出

我們的程式碼將產生以下輸出:

Virtualization Output
廣告