1臺DELL R710服務(wù)器,安裝了VMware ESXi 6.0系統(tǒng),創(chuàng)建了Windows Server 2008 R2的虛擬機(jī)。在該服務(wù)器上插上財務(wù)軟件加密狗后,修改虛擬機(jī)配置,添加USB控制器、添加USB設(shè)備時,找不到ESXi主機(jī)上的USB加密狗,這種情況怎么辦?
對于不能被ESXi識別的USB加密狗,可以將主機(jī)的USB接口以“直連”方式映射到虛擬機(jī)中,供虛擬機(jī)使用。雖然ESXi不能識別USB端口上的加密狗,但直接將加密狗所在的USB接口以PCI設(shè)備的方式分配給虛擬機(jī)使用,就可以使用該USB接口上的加密狗。下面介紹解決的方法。
圖1 將設(shè)備標(biāo)記為可直通
1.進(jìn)入 BIOS設(shè)置,注 意“啟 用I/O MMU virtualization(AMD-Vi或 Intel VT-d)”為選中狀態(tài),否則“直通”功能將不能使用。
2.使用 vSphere Client連接到ESXi主機(jī),在“配置→高級設(shè)置”中,單擊右側(cè)的“編輯”按鈕,在“將設(shè)備標(biāo)記為可直通”對話框中,選擇所有的USB控制器(因?yàn)槲覀儾磺宄?,這些USB端口與服務(wù)器機(jī)箱上USB端口的對應(yīng)關(guān)系,所以開始全部選中)(如圖 1)。
3.返回 到vSphere Client,將正在運(yùn)行的虛擬機(jī)關(guān)機(jī),然后重新啟動ESXi主機(jī)。等服務(wù)器啟動之后,再次進(jìn)入“配置→硬件→高級設(shè)置”中,可以看到列表中每個設(shè)備可以通過該主機(jī)上的虛擬機(jī)直接訪問。
4.關(guān)閉(想添加USB加密狗)虛擬機(jī),修改虛擬機(jī)配置,單擊“添加”按鈕。
5.在“設(shè)備類型”中選擇“PCI設(shè)備”,在“選擇PCI設(shè)備”下拉列表中,選擇要連接的PCI設(shè)備。
6.在“即將完成”對話框,單擊“完成”按鈕,返回到虛擬機(jī)屬性對話框,從清單中可以看到,已經(jīng)添加了一個PCI設(shè)備(如圖2)。
7.因?yàn)椴磺宄CI設(shè)備與USB端口的對應(yīng)關(guān)系,在圖2中,單擊“添加”按鈕,參照(5)~(6)步驟,添加3個PCI設(shè)備到虛擬機(jī)配置中。
說明,每個PCI設(shè)備只能添加一次,并且只能添加給一個虛擬機(jī)。同一個PCI設(shè)備不能添加多次,也不能分配給多個虛擬機(jī)?;蛘哒f,這些PCI設(shè)備是“獨(dú)占”式進(jìn)行分配,不是“共享”式進(jìn)行分配。
添加設(shè)備完成后,單擊“確定”按鈕。
說明:一共6個PCI設(shè)備,對應(yīng)服務(wù)器上的4個USB接口(應(yīng)該有2個USB接口在主板上,沒有用數(shù)據(jù)線接出來)。為了更快區(qū)分這6個PCI設(shè)備與服務(wù)器上4個USB接口的對應(yīng)關(guān)系,可以按照如下順序:
圖2 添加了一個PCI設(shè)備
(a)在USB加密狗插在服務(wù)器后面的USB接口上。
(b)修改虛擬機(jī)添加,添加4個PCI設(shè)備,開機(jī),看添加的這4個PCI設(shè)備是否包括第(1)步中的USB端口。
如果包括,則關(guān)閉虛擬機(jī),刪除其中的2個PCI設(shè)備,再次開機(jī)。
如果包括,則關(guān)機(jī),刪除其中一個設(shè)備。
如果包括,則找到對應(yīng)的PCI設(shè)備。
如果不包括,則關(guān)閉虛擬機(jī),刪除當(dāng)前的PCI設(shè)備,添加剩余一個設(shè)備。
如果不包括,則關(guān)機(jī),刪除當(dāng)前的2個PCI設(shè)備,添加原來刪除的2個PCI設(shè)備中的一個,開機(jī)。
如果包括,則找到對應(yīng)的PCI設(shè)備。
如果不包括,則關(guān)閉虛擬機(jī),刪除當(dāng)前的PCI設(shè)備,添加剩余一個設(shè)備。
如果不包括,則關(guān)閉虛擬機(jī),刪除這4個PCI設(shè)備,添加剩余的1個PCI設(shè)備,再次開機(jī)。
如果包括,則找到對應(yīng)的PCI設(shè)備。
如果不包括,則關(guān)閉虛擬機(jī),刪除當(dāng)前的PCI設(shè)備,添加剩余一個設(shè)備。
8.將USB加密狗插到機(jī)箱后面的一個USB接口,然后打開虛擬機(jī)電源,進(jìn)入“設(shè)備管理器”,在“通用串行總結(jié)控制器”中,可以看到添加的PCI設(shè)備(USB控制器)。
此時系統(tǒng)已經(jīng)檢測到加密狗,管理系統(tǒng)可用。
當(dāng)管理系統(tǒng)可用后,關(guān)閉虛擬機(jī),刪除2個PCI設(shè)備,再看USB加密狗是否可用。
如果不可用,請關(guān)閉虛擬機(jī),刪除當(dāng)前的2個PCI設(shè)備,添加剩余的一個PCI設(shè)備,重新定位。
如果可用,請關(guān)閉虛擬機(jī),刪除其中一個PCI設(shè)備,檢測剩余的一個PCI設(shè)備是否可用。
通過多次刪除、添加,就可以找到當(dāng)前USB加密狗對應(yīng)的PCI設(shè)備編號,并且將其記錄下來。這些不一一介紹。