xen虛擬化實戰系列文章列表
xen虛擬化實戰系列(一)之xen虛擬化環境安裝
xen虛擬化實戰系列(二)之xen虛擬機器安裝
xen虛擬化實戰系列(三)之xen虛擬機器複製
xen虛擬化實戰系列(四)之xen虛擬機器擴充功能磁碟空間一法
xen虛擬化實戰系列(五)之xen虛擬機器擴充功能磁碟空間再一法
xen虛擬化實戰系列(六)之xen虛擬機器破解密碼
xen虛擬化實戰系列(七)之xen虛擬機器VNC訪問配置
xen虛擬化實戰系列(八)之xen虛擬機器開機自啟動配置
xen虛擬化實戰系列(九)之xen虛擬機器時間配置
xen虛擬化實戰系列(十)之xen虛擬機器雙網卡配置
xen虛擬化實戰系列(十一)之xen虛擬機器磁碟檔案掛載
xen虛擬化實戰系列(十二)之xen虛擬機器高可用之線上遷移
xen虛擬化實戰系列(十三)之xen虛擬機器集中管理之convirt
大家知道xen虛擬機器使用最多的是虛擬磁碟檔案來充當虛擬機器磁碟,本文實戰xen虛擬機器檔案的掛載,從而讀取,修改裡面的檔案,滿足維護要求。
通常有如下情境,本文出自:http://koumm.blog.51cto.com
(1)在一個沒有xen虛擬化環境的伺服器上拿到了一個很重要的xen虛擬機器的磁碟,需要拷貝到裡面一個很重要的檔案,那麼就可以採用本文方式拿到重要檔案。
(2) 還有一個情況就是前面發布的一篇破解密碼的文章:http://koumm.blog.51cto.com/703525/1285969 後面提到另一種方式就是可以採用本文的方式進行密碼破解。
1. 現有虛擬機器與磁碟檔案查看
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492G522-0.png" height="257" />
2. 查看虛擬機器磁碟檔案位置
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492H008-1.png" height="259" />
3. 簡單查看磁碟分割情況
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492I208-2.png" height="274" />
通過fdisk命令可以查看虛擬機器磁碟檔案的分區情況,本文虛擬機器是先分一個/boot分區,剩下的空間建立一個LVM卷,然後在LVM卷中建立了swap與/ 根分區。這裡可以看到一個普通分區就是/boot分區,一個LVM卷就是lvm邏輯,分區情況也就瞭解清楚了。
4. 映射虛擬磁碟檔案
掛載虛擬磁碟檔案需要用到一個kpartx命令,kpartx命令也可以查看虛擬磁碟檔案分區結構,與fdisk命令一致。
kpartx命令原理就是將虛擬磁碟檔案與本地系統上的loop裝置檔案進行映射,然後映射的loop裝置檔案進行分區掛載訪問與資料的處理。
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492I910-3.png" height="146" />
(1) 類比查看映射,非真實映射
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492G104-4.png" height="102" />
(2) 開始映射
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492K217-5.png" height="88" />
映射裝置檔案位置在/dev/mapper/loop0p1,/dev/mapper/loop0p2
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492I514-6.png" height="163" />
這兩個檔案,第一個/dev/mapper/loop0p1是一個普通linux分區,/dev/mapper/loop0p2是一個LVM邏輯卷,需要通過不同方式進行處理。下面分別根據情境進行處理。
5. 掛載普通磁碟檔案
根據前面的分析,第一個/dev/mapper/loop0p1是一個普通linux分區,也就是/boot分區,該分區存有grub啟動設定檔。我們可以通過修改/boot/grub/grub.conf檔案中的參數,使用虛擬機器進行單一使用者模式,修改密碼。
(1) 掛載裝置檔案
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492KA5-7.png" height="157" />
(2) 成功掛載,可以成功查看到內容
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492G2a-8.png" height="314" />
(3) 修改grub/grub.conf檔案,修改如下內容,使用系統啟動時進入單一使用者模式。
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492Ga1-9.png" height="340" />
(4) 取消mount刪除映射
# umount /mnt
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492HS7-10.png" height="84" />
(5) 開機測試
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492G247-11.png" height="106" />
控制台進入虛擬機器,成功進入單一使用者模式,並修改密碼。
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492K092-12.png" height="465" />
還原grub.conf檔案
sh-3.2# vi /boot/grub/grub.conf
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492M0Z-13.png" height="86" />
取消單使用者進行配置,重啟。
至時掛載普通分區檔案,讀取,修改檔案樣本成功。
6. 掛載LVM磁碟檔案
根據前面的分析,第一個/dev/mapper/loop0p1是一個普通linux分區,也就是/boot分區,第二個是一個包括LVM的邏輯卷,那麼下面就採用lvm的方式進行處理。
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492I094-14.png" height="86" />
(1) 掃描物理卷
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492JE3-15.png" height="195" />
可以看到vg卷組,執行成功。
(2) 啟用掃描到的vg卷組,啟用後就可以使用了。
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492GA0-16.png" height="120" />
(3) 啟用後lvm邏輯卷的位置在/dev/mapper/下,如標標所示。vg-swap是swap,vg-root是根分區。
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492G557-17.png" height="227" />
(4) 掛載根分區到/mnt。
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492H348-18.png" height="210" />
# cd /mnt
成功讀取網卡設定檔。
650) this.width=650;" style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://www.bkjia.com/uploads/allimg/131227/16492I4X-19.png" height="162" />
到此xen虛擬機器磁碟檔案掛載整個內容完畢。在實際生產與測試環境中可以通過以上方式完成一些任務。
說明:linux技術博大精深,掛載虛擬磁碟檔案分區也只是以上方式,還有方法,這裡就不多介紹了。over…
本文出自 “koumm的linux技術部落格” 部落格,請務必保留此出處http://koumm.blog.51cto.com/703525/1286477