CN106168903A - 一种管理usb和自动挂载到虚拟机的方法 - Google Patents
一种管理usb和自动挂载到虚拟机的方法 Download PDFInfo
- Publication number
- CN106168903A CN106168903A CN201610508640.2A CN201610508640A CN106168903A CN 106168903 A CN106168903 A CN 106168903A CN 201610508640 A CN201610508640 A CN 201610508640A CN 106168903 A CN106168903 A CN 106168903A
- Authority
- CN
- China
- Prior art keywords
- usb
- virtual machine
- information
- management
- usb device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45579—I/O management, e.g. providing access to device drivers or storage
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及云计算和虚拟化技术领域,特别是一种管理USB和自动挂载到虚拟机的方法。本发明首先发现物理机上的USB设备,然后获取USB设备的相关信息,然后通过定时器对USB实际状态和信息进行维护,然后把USB挂载到虚拟机上,然后通过定时器对挂载在虚拟机上的USB设备进行维护,当USB信息发生变化,或者当虚拟机状态发生变化时可以自动卸载错误的USB设备和重新挂载USB到虚拟机上。本发明解决了在虚拟机上无法持续稳定使用USB设备,特别是安全设备,无法自动维护USB设备的问题。
Description
技术领域
本发明涉及云计算和虚拟化技术领域,特别是一种管理USB和自动挂载到虚拟机的方法。
背景技术
随着越来越多应用迁移到云平台上,虚拟机对使用USB设备的需求也越来越多,特别是对于一些安全设备,例如加密狗设备,有很多应用需要配合加密狗设备才能正常运行。对于USB设备的使用一般是通过spice的远程连接重定向、第三方软件进行USB的网络重定向来实现或者普通直连USB设备来实现,但是这些种方法存在一下问题:
一是spice远程桌面USB重定向需要依赖于spice的远程连接才能完成重定向,对于一些依赖USB设备,并且需要在后台运行的应用,这种方式需要一直保持远程连接,这显然不现实;
二是通过第三方软件进行的网络重定向,一旦USB设备信息发生变化,就需要进行重新重定向;
三是网络重定向依赖于网络,如果没有虚拟机没有网络的情况下,将无法使用USB设备;
四是两种重定向方式要经过tcp协议或spcie协议进行重定向,会对USB设备读写性能造成一定的影响;
五是如果通过普通的直连USB设备,一单USB设备信息发生变化,虚拟机则无法识别到USB,并且会残留旧的、错误的USB信息,需要通过人为去进行修正;
六是普通的直连USB设备,当虚拟机状态发生变化时,例如虚拟机重启后,则需要手动去维护USB,对USB进行重新挂载。
为了减低运维的成本,提高USB设备使用的方便性和可用性,保证虚拟机挂载USB设备的准确性、持续性和保证USB设备的读写效率,需要一种能够管理USB和自动挂载USB到虚拟机的方法。
发明内容
本发明解决的技术问题在于提供一种管理USB和自动挂载到虚拟机的方法,解决了虚拟机无法长期稳定地使用USB设备,USB和虚拟机变化后无法使用USB设备,无法自动修正USB信息的问题。
本发明解决上述技术问题的技术方案是:
所述的方法包括如下步骤:
步骤1:使用USB发现脚本,发现物理机中的USB设备,过滤需要的USB设备,获取USB信息;
步骤2:使用定时器定时汇总USB信息,保存在数据库和内存中;
步骤3:把USB通过直连方式挂载到所需要的虚拟机中;
步骤4:使用定时器监控USB以及虚拟机实际状态和信息;如果USB信息发生变化则执行步骤5,如果虚拟机状态发生变化则执行步骤6;
步骤5:获取USB所挂载的虚拟机,把虚拟机上错误的USB卸载,然后获取新的USB信息,挂载新的USB;
步骤6:如果虚拟机关机,则USB已经卸载;如果虚拟机重新开机后,则获取当前USB信息,自动挂载USB。
所述USB信息包括USB的序列号、供应商ID、产品ID、总线地址、设备地址、名称和大小等信息。
所述的USB的序列号、供应商ID和产品ID,此三者可以唯一标识一个USB设备;
所述的总线地址和设备地址变化是发生在USB在物理机上插拔后,总线地址和设备地址将会发生变化。
所述的错误的USB,是指USB的总线地址和设备地址变化后,虚拟机仍然挂载旧的总线地址和设备地址的USB设备。
所述的直连方式,是相对于重定向方式,数据虚拟机直接使用物理机上的设备,而非把USB设备重定向到虚拟机中。
本发明通过对USB发现管理并自动挂载USB到虚拟机,实现了虚拟机使用USB设备是不受网络环境影响,虚拟机可以在后台持续运行需要USB设备的应用,同时保证了USB设备的读写性能,而且能够自动适应USB设备信息变化,适应虚拟机状态信息变化,使虚拟机开机后能够自动挂载所需的USB设备,大大降低运维成本,实现自动化。
附图说明
下面结合附图对本发明进一步说明:
图1为本发明方法流程图。
具体实施方式
如图1所示,本发明首先,基于lsusb工具的python文件/usr/bin/lsusb.py进行修改,使起输出我们所需要的usb信息,和过滤usb设备。
增加方法:
修改原来方法,使其调用我们的自动以方法输出usb信息。
增加usb发现定时器,汇总usb信息:
挂载usb的方法。
使用定时器,定时扫面虚拟机usb设备状态,并进行维护。
Claims (6)
1.一种管理USB和自动挂载到虚拟机的方法,其特征在于:所述的方法包括如下步骤:
步骤1:使用USB发现脚本,发现物理机中的USB设备,过滤需要的USB设备,获取USB信息;
步骤2:使用定时器定时汇总USB信息,保存在数据库和内存中;
步骤3:把USB通过直连方式挂载到所需要的虚拟机中;
步骤4:使用定时器监控USB以及虚拟机实际状态和信息;如果USB信息发生变化则执行步骤5,如果虚拟机状态发生变化则执行步骤6;
步骤5:获取USB所挂载的虚拟机,把虚拟机上错误的USB卸载,然后获取新的USB信息,挂载新的USB;
步骤6:如果虚拟机关机,则USB已经卸载;如果虚拟机重新开机后,则获取当前USB信息,自动挂载USB。
2.根据权利要求1所述的管理USB和自动挂载到虚拟机的方法,其特征在于:所述USB信息包括USB的序列号、供应商ID、产品ID、总线地址、设备地址、名称和大小等信息。
3.根据权利要求2所述的管理USB和自动挂载到虚拟机的方法,其特征在于:所述的USB的序列号、供应商ID和产品ID,此三者可以唯一标识一个USB设备;
所述的总线地址和设备地址变化是发生在USB在物理机上插拔后,总线地址和设备地址将会发生变化。
4.根据权利要求1、2或3所述的管理USB和自动挂载到虚拟机的方法,其特征在于:所述的错误的USB,是指USB的总线地址和设备地址变化后,虚拟机仍然挂载旧的总线地址和设备地址的USB设备。
5.根据权利要求1、2或3所述的管理USB和自动挂载到虚拟机的方法,其特征在于:所述的直连方式,是相对于重定向方式,数据虚拟机直接使用物理机上的设备,而非把USB设备重定向到虚拟机中。
6.根据权利要求4所述的管理USB和自动挂载到虚拟机的方法,其特征在于:所述的直连方式,是相对于重定向方式,数据虚拟机直接使用物理机上的设备,而非把USB设备重定向到虚拟机中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610508640.2A CN106168903A (zh) | 2016-06-30 | 2016-06-30 | 一种管理usb和自动挂载到虚拟机的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610508640.2A CN106168903A (zh) | 2016-06-30 | 2016-06-30 | 一种管理usb和自动挂载到虚拟机的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106168903A true CN106168903A (zh) | 2016-11-30 |
Family
ID=58066079
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610508640.2A Pending CN106168903A (zh) | 2016-06-30 | 2016-06-30 | 一种管理usb和自动挂载到虚拟机的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106168903A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107203409A (zh) * | 2017-04-10 | 2017-09-26 | 成都长天信息技术有限公司 | 一种usb重定向处理方法和系统 |
CN107943560A (zh) * | 2017-11-27 | 2018-04-20 | 郑州云海信息技术有限公司 | 一种通用串行总线设备的挂载方法及挂载装置 |
CN108108201A (zh) * | 2017-12-26 | 2018-06-01 | 合肥中科云巢科技有限公司 | 基于rdp协议的usb存储设备重定向方法及虚拟机 |
WO2018111783A1 (en) * | 2016-12-16 | 2018-06-21 | Microsoft Technology Licensing, Llc | Safe mounting of external media |
CN109144752A (zh) * | 2018-09-06 | 2019-01-04 | 郑州云海信息技术有限公司 | 访问共享usb设备方法和装置 |
CN110413376A (zh) * | 2019-07-12 | 2019-11-05 | 苏州浪潮智能科技有限公司 | 一种虚拟机管理usb设备的方法、设备以及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751274A (zh) * | 2008-12-18 | 2010-06-23 | 联想(北京)有限公司 | 一种虚拟机系统及其通用串行总线设备的卸载方法 |
CN103942088A (zh) * | 2014-04-01 | 2014-07-23 | 国云科技股份有限公司 | 一种获取虚拟机usb存储设备使用情况的方法 |
US20140317418A1 (en) * | 2013-04-23 | 2014-10-23 | Hon Hai Precision Industry Co., Ltd. | Server, client device, and usb redirection method |
CN105264511A (zh) * | 2013-03-07 | 2016-01-20 | 微软技术许可有限责任公司 | 用于usb异步通知能力的主机检测的系统和方法 |
CN105511936A (zh) * | 2014-09-22 | 2016-04-20 | 北京奇虎科技有限公司 | 测试系统、方法和装置 |
-
2016
- 2016-06-30 CN CN201610508640.2A patent/CN106168903A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751274A (zh) * | 2008-12-18 | 2010-06-23 | 联想(北京)有限公司 | 一种虚拟机系统及其通用串行总线设备的卸载方法 |
CN105264511A (zh) * | 2013-03-07 | 2016-01-20 | 微软技术许可有限责任公司 | 用于usb异步通知能力的主机检测的系统和方法 |
US20140317418A1 (en) * | 2013-04-23 | 2014-10-23 | Hon Hai Precision Industry Co., Ltd. | Server, client device, and usb redirection method |
CN103942088A (zh) * | 2014-04-01 | 2014-07-23 | 国云科技股份有限公司 | 一种获取虚拟机usb存储设备使用情况的方法 |
CN105511936A (zh) * | 2014-09-22 | 2016-04-20 | 北京奇虎科技有限公司 | 测试系统、方法和装置 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018111783A1 (en) * | 2016-12-16 | 2018-06-21 | Microsoft Technology Licensing, Llc | Safe mounting of external media |
CN110050272A (zh) * | 2016-12-16 | 2019-07-23 | 微软技术许可有限责任公司 | 外部介质的安全挂载 |
US10366235B2 (en) | 2016-12-16 | 2019-07-30 | Microsoft Technology Licensing, Llc | Safe mounting of external media |
CN110050272B (zh) * | 2016-12-16 | 2022-11-08 | 微软技术许可有限责任公司 | 外部介质的安全挂载 |
CN107203409A (zh) * | 2017-04-10 | 2017-09-26 | 成都长天信息技术有限公司 | 一种usb重定向处理方法和系统 |
CN107203409B (zh) * | 2017-04-10 | 2020-10-30 | 成都长天信息技术有限公司 | 一种usb重定向处理方法和系统 |
CN107943560A (zh) * | 2017-11-27 | 2018-04-20 | 郑州云海信息技术有限公司 | 一种通用串行总线设备的挂载方法及挂载装置 |
CN108108201A (zh) * | 2017-12-26 | 2018-06-01 | 合肥中科云巢科技有限公司 | 基于rdp协议的usb存储设备重定向方法及虚拟机 |
CN109144752A (zh) * | 2018-09-06 | 2019-01-04 | 郑州云海信息技术有限公司 | 访问共享usb设备方法和装置 |
CN110413376A (zh) * | 2019-07-12 | 2019-11-05 | 苏州浪潮智能科技有限公司 | 一种虚拟机管理usb设备的方法、设备以及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106168903A (zh) | 一种管理usb和自动挂载到虚拟机的方法 | |
US9231331B2 (en) | Connector identification through proximity sensing | |
US9612948B2 (en) | Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device | |
CN102043686A (zh) | 一种内存数据库的容灾方法、备用服务器及系统 | |
CN109583392A (zh) | 一种车位检测方法、装置和存储介质 | |
CN106372115A (zh) | 一种数据读写方法、系统及数据库系统 | |
CN110324429A (zh) | 基于分布式数据存储的备份方法及备份装置 | |
CN109299205A (zh) | 将规划行业使用的空间数据进行入库的方法和装置 | |
CN105302489A (zh) | 一种异构多核远程嵌入式存储器系统与方法 | |
US10417531B2 (en) | Techniques for encapsulating metadata in contextual data streams | |
US20140325285A1 (en) | Serial attached scsi expander and method for debugging faults thereof | |
CN103019847A (zh) | 对虚拟机数据进行迁移的方法及系统 | |
CN102467419A (zh) | 文件备份方法 | |
US20100223402A1 (en) | Netbook synchronization chip device | |
CN103793667A (zh) | 服务器关机方法 | |
CN102760212B (zh) | 一种基于存储镜像克隆机制虚拟桌面恶意代码检测方法 | |
CN105894769A (zh) | 移动存储设备、数据访问方法及装置 | |
CN107423165A (zh) | 一种数据快照首写拷贝方法及装置 | |
CN210776642U (zh) | 一种多个tf卡自动拼盘装置 | |
CN204242164U (zh) | 一种高安全性的数据备份设备 | |
CN104050074A (zh) | 一种在系统中异步记录日志的方法和装置 | |
CN105824761A (zh) | 一种物理内存信息获取方法及装置 | |
CN109213422B (zh) | 分层存储方法、分层存储装置及计算机可读存储介质 | |
CN106210045A (zh) | 一种scst及其数据处理方法 | |
CN103488533A (zh) | 一种程序执行方法、设备及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161130 |
|
RJ01 | Rejection of invention patent application after publication |