【技术实现步骤摘要】
宿主机与虚拟机文件系统隔离方法和装置
本专利技术涉及计算机
,特别是涉及宿主机与虚拟机文件系统隔离方法和装置。
技术介绍
Linux container (lxc)中运行虚拟机时,将宿主机的proc文件系统直接挂载到虚拟机的根文件系统中。虚拟机与宿主机使用同一个proc文件系统,proc文件系统中与宿主机与虚拟机对应的文件,除进程文件外,其他的文件都完全相同,并且,虚拟机与宿主机对proc文件系统中的所有文件的权限相同。因此,虚拟机可以对proc文件系统进行读写操作,会造成宿主机信息泄露或内核崩溃等问题。例如,在虚拟机中使用top命令查看/proc/stat文件时,不仅可以查看虚拟机CPU的使用情况,也可以查看到宿主机的CPU使用情况;在虚拟机中向/proc/sysrq-1rq文件中写入字符c时,会使导致宿主机的内核崩溃,整个系统无法运行。为了解决宿主机中信息泄露的问题,虚拟机将宿主机的proc文件系统挂载到临时目录下,例如:tmp/proc,再由虚拟机使用fuse机制虚拟一个虚拟proc文件系统,执行mount-bind/tmp/proc/proc,使用虚拟proc文件系统替换宿主机proc文件系统。当虚拟机执行top命令时,读取proc文件中的tmp/proc/stat文件时,由于proc文件与虚拟proc文件绑定,因此,读取的是fuse机制虚拟出的proc文件系统。但是,采用fuse机制虚拟一个虚拟proc文件,以及用虚拟proc文件系统替换宿主机proc文件系统的命令需要在虚拟机的启动脚本中执行,而虚拟机的启动脚本可以被虚拟机的用 ...
【技术保护点】
一种宿主机与虚拟机文件系统隔离方法,其特征在于,所述方法包括:宿主机采用fuse机制虚拟一个虚拟proc文件系统,将所述虚拟proc文件系统挂载到临时目录中;宿主机在所述虚拟proc文件系统注册目标指定文件的回调函数,所述回调函数用于处理虚拟机的数据信息;宿主机将proc文件系统挂载到虚拟机的rootfs中;宿主机将所述虚拟proc文件系统中的目标指定文件与所述proc文件系统中的源指定文件绑定,所述绑定的目标指定文件与源指定文件的文件名相同;宿主机调用open指令打开所述源指定文件。
【技术特征摘要】
1.一种宿主机与虚拟机文件系统隔离方法,其特征在于,所述方法包括: 宿主机采用fuse机制虚拟一个虚拟proc文件系统,将所述虚拟proc文件系统挂载到临时目录中; 宿主机在所述虚拟proc文件系统注册目标指定文件的回调函数,所述回调函数用于处理虚拟机的数据信息; 宿主机将proc文件系统挂载到虚拟机的rootfs中; 宿主机将所述虚拟proc文件系统中的目标指定文件与所述proc文件系统中的源指定文件绑定,所述绑定的目标指定文件与源指定文件的文件名相同; 宿主机调用open指令打开所述源指定文件。2.根据权利要求1所述的方法,其特征在于,所述目标指定文件包括: 目标stat文件、目标meminfo文件和目标sysrq-1rq文件。3.根据权利要求2所述的方法,其特征在于,所述宿主机在所述虚拟proc文件系统注册目标指定文件的回调函数包括: 所述宿主机在所述虚拟proc文件系统中注册目标stat文件的open、read和write函数,所述open、read和write函数用于打开、读取和写入虚拟机的CPU使用数据; 所述宿主机在所述虚拟proc文件系统中注册目标meminfo文件的open、read和write函数,所述open、read和write函数用于打开、读取和写入虚拟机内存以及交换分区的使用数据; 所述宿主机在所述虚拟proc文 件系统中注册目标sysrq-1rq文件的open、read和write函数,所述open、read和write函数用于打开、读取和写入目标sysrq-1rq文件的数据。4.根据权利要求2所述的方法,其特征在于,宿主机将所述虚拟proc文件系统中的目标指定文件与所述proc文件系统中的源指定文件绑定包括: 宿主机将所述虚拟proc文件系统中的目标stat文件与所述proc文件系统中的源Stat文件绑定; 宿主机将所述虚拟proc文件系统中的目标meminfo文件与所述proc文件系统中的源meminfo文件绑定; 宿主机将所述虚拟proc文件系统中的目标sysrq-1rq文件与所述proc文件系统中的源sysrq-1rq文件绑定。5.根据权利要求1-4任意一项所述的方法,其特征在于,所述方法还包括: 当访问虚拟机的roofs中挂载的proc文件系统中的源指定文件时,宿主机接收访问与源指定文件绑定的目标指定文件的请求; 宿主机调用所述目标指定文件注册的回调函数; 宿主机利用所述回调函数返回访问结果。6.根据权利要求5所述的方法,其特征在于,所述源指定文件为源stat文件或源meminfo文件时: 当读取虚拟机的roofs中挂载的proc文件系统中的源stat文件或源meminfo文件时,宿主机接收读取与源stat文件绑定的目标stat文件或与源meminfo文件绑定的目标meminfo文件的请求;宿主机调用所述目标stat文件或目标meminfo文件注册的read回调函数; 宿主机利用所述read回调函数返回读取目标stat文件或目标meminfo文件的结果。7.根据权利要求5所述的方法...
【专利技术属性】
技术研发人员:魏子然,
申请(专利权)人:北京搜狐新媒体信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。