CN113076170A - 一种远程协助方法、系统、装置、计算设备及存储介质 - Google Patents
一种远程协助方法、系统、装置、计算设备及存储介质 Download PDFInfo
- Publication number
- CN113076170A CN113076170A CN202110619861.8A CN202110619861A CN113076170A CN 113076170 A CN113076170 A CN 113076170A CN 202110619861 A CN202110619861 A CN 202110619861A CN 113076170 A CN113076170 A CN 113076170A
- Authority
- CN
- China
- Prior art keywords
- file
- mirror image
- container mirror
- computing device
- file system
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000003860 storage Methods 0.000 title claims abstract description 21
- 238000005516 engineering process Methods 0.000 claims description 10
- 230000004048 modification Effects 0.000 claims description 7
- 238000012986 modification Methods 0.000 claims description 7
- 238000004891 communication Methods 0.000 description 17
- 101000807859 Homo sapiens Vasopressin V2 receptor Proteins 0.000 description 10
- 102100037108 Vasopressin V2 receptor Human genes 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 238000007726 management method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 101100443272 Arabidopsis thaliana DIR2 gene Proteins 0.000 description 4
- 102100038804 FK506-binding protein-like Human genes 0.000 description 4
- 101001031402 Homo sapiens FK506-binding protein-like Proteins 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000007723 transport mechanism Effects 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 241000208818 Helianthus Species 0.000 description 1
- 235000003222 Helianthus annuus Nutrition 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
Images
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/451—Execution arrangements for user interfaces
- G06F9/452—Remote windowing, e.g. X-Window System, desktop virtualisation
-
- 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/45587—Isolation or security of virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种远程协助方法,适于在计算设备中执行,方法包括:在计算设备中创建容器镜像,容器镜像为空容器镜像;接收远程协助设备的连接请求;当计算设备接受连接请求时,创建计算设备的文件系统;启动容器镜像,并将文件系统挂载到容器镜像;将远程协助设备的远程操作更新到容器镜像;当容器镜像中的远程操作结果符合预设条件时,将远程操作结果更新到计算设备。本发明一并公开了相应的装置、系统、计算设备及存储介质。
Description
技术领域
本发明涉及远程操作技术领域,尤其涉及一种远程协助方法、系统、装置、计算设备及存储介质。
背景技术
随着网络技术的发展,远程协助技术应用越来越多,常用于用户在使用软件、程序测试、环境配置等操作遇见问题,需要相关工作人员远程协助解决时使用,常见的远程协助技术包括:SSH、VNC、RDP和WebRTC等。基于这些技术主要的产品形态有:TeamViewer、VNC、XRDP、向日葵、QQ远程协助、Chrome/Firefox浏览器等,这些技术,都能够实现远程协助功能。
但是,远程协助会给接受协助的用户设备带来安全隐患,上述远程技术均未涉及安全问题,远程协助可能导致用户设备上的关键文件资料或信息被远程协助一方窃取或偷窥,或者当前用户设备环境被远程协助者有意或无意破坏,导致用户设备出现异常。
发明内容
为此,本发明提供了一种远程协助方法、系统、装置、计算设备及存储介质,以力图解决或者至少缓解上面存在的问题。
根据本发明的一个方面,提供一种远程协助方法,适于在计算设备中执行,方法包括:在计算设备中创建容器镜像,容器镜像为空容器镜像;接收远程协助设备的连接请求;当计算设备接受连接请求时,创建计算设备的文件系统;启动容器镜像,并将文件系统挂载到容器镜像;将远程协助设备的远程操作更新到容器镜像;当容器镜像中的远程操作结果符合预设条件时,将远程操作结果更新到计算设备。
可选的,在根据本发明的远程协助方法中,计算设备的文件系统通过overlayFS实现,创建计算设备的文件系统包括:创建文件系统的目录结构,文件系统包括lower dir和upper dir;将计算设备的关键文件挂载到文件系统的lower dir,关键文件为计算设备允许远程协助设备访问的文件。
可选的,在根据本发明的远程协助方法中,还包括:当启动容器镜像时记录容器镜像的启动时间。
可选的,在根据本发明的远程协助方法中,将远程操作结果更新到计算设备包括:根据容器镜像的启动时间和文件系统中的更新文件对计算设备系统中的原文件进行更新。
可选的,在根据本发明的远程协助方法中,根据容器镜像的启动时间和文件系统中的更新文件对计算设备系统中的原文件进行更新包括:若文件系统中和计算设备系统中均存在第一文件,且文件系统中的第一文件的修改时间晚于启动时间,则用文件系统中的第一文件替换计算设备系统中的第一文件;若文件系统中存在第二文件,但计算设备系统中不存在第二文件,且文件系统中的第二文件的修改时间晚于启动时间,则将第二文件复制到计算设备系统中;若计算设备系统中存在第三文件,但文件系统中不存在第三文件,且计算设备系统中的第三文件的更新时间早于启动时间,则将第三文件从计算设备系统中删除。
可选的,在根据本发明的远程协助方法中,容器镜像为docker容器镜像。
根据本发明的又一个方面,提供一种远程协助装置,适于驻留在计算设备中,装置包括:容器镜像管理单元、文件系统管理单元、接口单元,其中,容器镜像管理单元,适于在计算设备中创建容器镜像,其中,容器镜像为空容器镜像,还适于当计算设备接收到远程协助设备的连接请求并接受连接请求时,启动容器镜像,并将文件系统管理单元创建的文件系统挂载到容器镜像;接口单元,适于接收远程协助设备的连接请求,并将远程协助设备的远程操作更新到容器镜像;文件系统管理单元,适于创建计算设备的文件系统,还适于当容器镜像中的远程操作结果符合预设条件时,将容器镜像中的远程操作结果更新到计算设备。
根据本发明的又一个方面,提供一种远程协助系统,包括本地设备和远程协助设备,其中,本地设备,适于执行如上的任一项远程协助方法;远程协助设备,适于发送远程协助连接请求,并通过远程协助技术提供远程操作。
根据本发明的又一个方面,提供一种计算设备,包括:至少一个处理器;以及存储器,存储有程序指令,其中,程序指令被配置为适于由至少一个处理器执行,程序指令包括用于执行如上的任一项远程协助方法的指令。
根据本发明的又一方面,提供一种存储有程序指令的可读存储介质,当程序指令被计算设备读取并执行时,使得计算设备执行如上的任一项远程协助方法。
根据本发明的远程协助方法,通过容器镜像将文件系统隔离,对于远端协助者来说,只能访问容器镜像挂载的文件系统中的内容,保证了用户的数据安全和隐私,同时对于用户的系统文件通过容器镜像进行了隔离,协助者的操作不会直接写入宿主机文件,保证了宿主机的系统安全,用户可以根据操作结果是否符合预设条件选择是否接受,只有在接受时,协助者的操作结果才会写到宿主机计算设备中,保护了用户本地宿主机系统环境的安全。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个实施例的远程协助系统100的示意图;
图2示出了根据本发明一个实施例的计算设备200 的框图;
图3示出了根据本发明一个实施例的远程协助方法300的流程图;
图4示出了根据本发明一个实施例的远程协助装置400的示意图;
图5示出了根据本发明一个实施例的overlayFS的基本架构。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的远程协助系统100的示意图。如图1所示,远程协助系统100包含本地设备110和远程协助设备120(包括120-1、120-2),本地设备110和远程协助设备120通过互联网通信连接。应当指出,图1中的远程协助系统仅是示例性的,在具体实践中,远程协助系统中本地设备110可以选择接收互联网中任意一台远程协助设备的协助。
本地设备110和远程协助设备120都是具备通信、计算和存储功能的设备,可以实现为服务器,也可以是桌面计算机、笔记本等个人配置的计算机。
根据本发明的一个实施例,用户在本地设备110中在进行软件A的调试时遇到无法自行解决的问题,需要远程的软件A的技术支持者(远程协助者)协助解决,则技术支持者可以通过互联网的一台设备(即远程协助设备)远程登录到本地设备110上进行协助。本地设备110为了保护本设备中的文件被偷窥或窃取,通过创建容器镜像隔离远程协助者的操作环境,使远程协助者的操作都发生在容器镜像中,如果本地设备用户接受此次远程操作,再根据容器镜像中的文件对本地设备中的文件进行更新,既能保证本地设备中的无关文件被远程窃取,又保证文件发生不可恢复的更改。
图1中的本地设备110和远程协助设备120均可以通过计算设备实现。图2示出了根据本发明一个实施例的计算设备200的框图。需要说明的是,图2所示的计算设备200仅为一个示例,在实践中,用于实施本发明的远程协助方法的计算设备可以是任意型号的设备,其硬件配置情况可以与图2所示的计算设备200相同,也可以与图2所示的计算设备200不同。实践中用于实施本发明的远程协助方法的计算设备可以对图2所示的计算设备200的硬件组件进行增加或删减,本发明对计算设备的具体硬件配置情况不做限制。
如图2所示,在基本配置202中,计算设备200典型地包括系统存储器206和一个或者多个处理器204。存储器总线208可以用于在处理器204和系统存储器206之间的通信。
取决于期望的配置,处理器204可以是任何类型的处理,包括但不限于:微处理器(µP)、微控制器(µC)、数字信息处理器(DSP)或者它们的任何组合。处理器204可以包括诸如一级高速缓存210和二级高速缓存212之类的一个或者多个级别的高速缓存、处理器核心214和寄存器216。示例的处理器核心214可以包括运算逻辑单元(ALU)、浮点数单元(FPU)、数字信号处理核心(DSP核心)或者它们的任何组合。示例的存储器控制器218可以与处理器204一起使用,或者在一些实现中,存储器控制器218可以是处理器204的一个内部部分。
取决于期望的配置,系统存储器206可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。计算设备中的物理内存通常指的是易失性存储器RAM,磁盘中的数据需要加载至物理内存中才能够被处理器204读取。系统存储器206可以包括操作系统220、一个或者多个应用222以及程序数据224。在一些实施方式中,应用222可以布置为在操作系统上由一个或多个处理器204利用程序数据224执行指令。操作系统220例如可以是Linux、Windows等,其包括用于处理基本系统服务以及执行依赖于硬件的任务的程序指令。应用222包括用于实现各种用户期望的功能的程序指令,应用222例如可以是浏览器、即时通讯软件、软件开发工具(例如集成开发环境IDE、编译器等)等,但不限于此。当应用222被安装到计算设备200中时,可以向操作系统220添加驱动模块。
在计算设备200启动运行时,处理器204会从存储器206中读取操作系统220的程序指令并执行。应用222运行在操作系统220之上,利用操作系统220以及底层硬件提供的接口来实现各种用户期望的功能。当用户启动应用222时,应用222会加载至存储器206中,处理器204从存储器206中读取并执行应用222的程序指令。
计算设备200还包括储存设备232,储存设备232包括可移除储存器236和不可移除储存器238,可移除储存器236和不可移除储存器238均与储存接口总线234连接。
计算设备200还可以包括有助于从各种接口设备(例如,输出设备242、外设接口244和通信设备246)到基本配置202经由总线/接口控制器230的通信的接口总线240。示例的输出设备242包括图形处理单元248和音频处理单元250。它们可以被配置为有助于经由一个或者多个A/V端口252与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外设接口244可以包括串行接口控制器254和并行接口控制器256,它们可以被配置为有助于经由一个或者多个I/O端口258和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备246可以包括网络控制器260,其可以被布置为便于经由一个或者多个通信端口264与一个或者多个其他计算设备262通过网络通信链路的通信。
网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(RF)、微波、红外(IR)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。
在根据本发明的计算设备200中,应用222包括用于执行本发明的远程协助方法300的指令,该指令可以指示处理器204执行本发明的系远程协助方法300。
图3示出了根据本发明一个实施例的远程协助方法300的流程图,方法300适于在计算设备(例如图1所示的计算设备)中执行。如图3所示,方法300始于步骤S310,在本地设备中创建容器镜像,本地设备(即当前计算设备)即为容器镜像的宿主机,本发明中的宿主机即指代当前计算设备。根据本发明的一个实施例,通过一个空文件创建空容器镜像,即容器镜像中不包含任何有效文件。所使用的容器技术可以是docker容器,也可以是其他容器技术,本发明对此不做限制。
随后在步骤S320中,当前计算设备会接收来自远程协助设备的远程协助消息。根据本发明一个实施例,本地计算设备的用户在进行软件B的调试,需要软件B的开发人员的远程协助,软件B的开发人员可以通过远程协助设备向本地设备发送远程协助消息。
若本地设备用户拒绝远程协助,则远程协助结束。
若本地设备用户接受远程协助,则进入步骤S330创建当前计算设备的文件系统。根据本发明的一个实施例,本步骤通过overlayFS实现,overlayFS是一种堆叠文件系统,它依赖并建立在其它的文件系统之上,并不直接参与磁盘空间结构的划分,仅仅将原来底层文件系统中不同的目录进行“合并”,然后向用户呈现。因此对于用户来说,所见到的overlayFS文件系统根目录下的内容就来自挂载时所指定的不同目录的“合集”。图5示出了根据本发明一个实施例的overlayFS的基本架构,其中lower dir目录和upper dir目录为来自底层文件系统的不同目录,用户可以自行指定,内部包含了用户想要合并的文件和目录,merge dir目录为挂载点。当文件系统挂载后,在merge dir下将会同时看到来自各lower dir的File A和upper dir的File B。
在本地计算设备的Linux系统中,本步骤的具体实现过程包括创建目录结构和挂载文件系统两个内容。
其中,创建文件系统的目录结构,以/bin目录为例,首先创建overlayFS目录结构,具体操作命令包括:
mkdir -p OVERLAY_PATH/bin
mkdir -p OVERLAY_PATH/upper
mkdir -p OVERLAY_PATH/work
进而,将本地计算设备的关键文件挂载到文件系统,具体操作命令为:
mount -t overlay overlay -o lowerdir=/bin,upperdir=OVERLAY_PATH/upper,workdir=OVERLAY_PATH/work OVERLAY_PATH/bin
为了让远程协助者能够正确使用操作命令,通常会挂载/bin、/sbin、/etc等基础目录,同时,在挂载文件时只挂载本次协助需要涉及到的用户数据文件;对与本次远程协助无关的数据文件不进行挂载,从而实现了用户数据隔离,保证用户数据的安全。
本实施例中,以/bin为例,为了确保最终挂载之后呈现出来的文件和源路径文件内容一致,挂载之后的OVERLAY_PATH/bin目录内容和/bin目录内容一致,upper dir(即OVERLAY_PATH/upper)为空。
随后进入步骤S340,启动容器镜像,将步骤S330中创建的文件系统挂载到容器镜像。在上述实施例中,OVERLAY_PATH/upper目录为空,从而可以使远程协助者操作的容器环境和宿主机需要进行协助操作时的环境尽可能一致。
随后进入步骤S350,接收远程协助者的协助操作。
在overlayFS文件系统中,upper dir是可读写的目录,当用户通过merge dir向其中一个来自upper dir的文件写入数据,那数据将直接写入upper dir下原来的文件中,删除文件也是同理,而各lower dir则是只读的,在overlayFS挂载后无论如何操作merge目录中对应来自lower dir的文件或目录,lower dir中的内容均不会发生任何的改变,由于lower dir是只读的,那当用户想要往来自lower层的文件添加或修改内容时,overlayFS首先会拷贝一份lower dir中的文件副本到upper dir中,后续的写入和修改操作将会在upper dir下的copy-up的副本文件中进行,lower dir原文件被隐藏。
本实施例中,根据overlayFS的这一特性,远程协助者的操作都更新到了upperdir中,而宿主机中的原文件并没有变换,从而确保远程协助者在容器内的操作不会影响宿主机原始目录的文件发生变化,而只发生在容器中。同时,因为upper dir中最初并没有挂载文件,则最终upper dir中的文件都是远程协助操作更新的文件。
在协助者操作完成时,进入步骤S360,当前设备用户根据远程操作结果是否符合预设条件判断是否接受协助者的操作。
当容器镜像中的远程操作结果符合预设条件时,用户接受此次协助时,进入步骤S370,根据文件系统挂载路径中的更新文件(即upper dir中的文件)以及记载的容器镜像启动时间修改宿主机中的文件。对文件系统路径下的文件和宿主机对应路径的对应文件进行对比,若文件系统中和计算设备系统(即宿主机)中均存在第一文件,且文件系统中的第一文件的修改时间晚于容器镜像的启动时间,则用文件系统中的第一文件替换宿主机中的第一文件。例如:如果OVERLAY_PATH/DIR1/FILE1和/DIR1/FILE1都存在,则对比OVERLAY_PATH/DIR1/FILE1和容器镜像启动时间;如果OVERLAY_PATH/DIR1/FILE1的时间晚于容器启动时间,则可以使用OVERLAY_PATH/DIR1/FILE1覆盖/DIR1/FILE1以使得远程协助者在容器内的操作生效。
根据本发明的一个实施例,若文件系统中存在第二文件,但计算设备系统中不存在第二文件,且文件系统第二文件的修改时间晚于启动时间,则将第二文件复制到计算设备系统中。例如: OVERLAY_PATH/DIR2/FILE2存在,但是/DIR2/FILE2不存在,则对比OVERLAY_PATH/DIR2/FILE2和容器启动时间,如果OVERLAY_PATH/DIR2/FILE2的时间晚于容器启动时间,则可以拷贝OVERLAY_PATH/DIR2/FILE2到/DIR2/FILE2以使得远程协助者在容器内的操作生效。
根据本发明的又一个实施例,若计算设备系统中存在第三文件,但文件系统中不存在第三文件,且第三文件的更新时间早于容器镜像启动时间,则将第三文件从计算设备系统中删除。例如:如果OVERLAY_PATH/DIR3/FILE3不存在,但是/DIR3/FILE3存在,则对比DIR3/FILE3和容器启动时间;如果DIR3/FILE3的时间早于容器启动时间,则说明OVERLAY_PATH/DIR3/FILE3被删除,则可以删除DIR3/FILE3以使得远程协助者在容器内的操作生效。
随后进入步骤S380,解除文件系统挂载,并关闭容器镜像。
根据本发明的一个实施例,在步骤S360中,当容器镜像中的远程操作结果不符合预设条件时,用户拒绝此次协助时,则直接进入步骤S380,解除文件系统挂载,并关闭容器镜像。
根据本发明一个实施例,远程协助也可以由本地设备主动发起,具体可以是SSH、VNC、RDP等远程协助技术中的任意一种技术,本发明对此不做限制。
图4示出了根据本发明一个实施例的远程协助装置400的示意图,如图4所示,装置400包括容器镜像关联单元410、接口单元420和文件系统管理单元430。
容器镜像关联单元410,适于在当前计算设备中创建容器镜像,其中,容器镜像为空白容器镜像,并在接受远程协助设备的连接请求时,启动容器镜像,将文件系统管理单元430创建的文件系统挂载到容器镜像。
接口单元420,适于接受远程协助设备的连接请求,并将远程协助设备的远程操作更新到容器镜像中。
文件系统管理单元430,适于创建当前计算设备的文件系统,还适于将容器镜像中的远程操作结果更新到当前计算设备。
根据本发明的远程协助方法,通过容器镜像将文件系统隔离,对于远端协助者来说,只能访问容器镜像挂载的文件系统中的内容,保证了用户的数据安全和隐私,同时对于用户的系统文件通过容器镜像进行了隔离,协助者的操作不会直接写入宿主机文件,保证了宿主机的系统安全,用户可以根据操作结果是否符合预设条件选择是否接受,只有在接受时,协助者的操作结果才会写到宿主机计算设备中,保护了用户本地宿主机系统环境的安全。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如可移动硬盘、U盘、软盘、CD-ROM或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的远程协助方法。
以示例而非限制的方式,可读介质包括可读存储介质和通信介质。可读存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在可读介质的范围之内。
在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。
Claims (10)
1.一种远程协助方法,适于在计算设备中执行,所述方法包括:
在所述计算设备中创建容器镜像,所述容器镜像为空容器镜像;
接收远程协助设备的连接请求;
当所述计算设备接受所述连接请求时,创建所述计算设备的文件系统;
启动所述容器镜像,并将所述文件系统挂载到所述容器镜像;
将所述远程协助设备的远程操作更新到所述容器镜像;
当所述容器镜像中的远程操作结果符合预设条件时,将所述远程操作结果更新到所述计算设备。
2.如权利要求1所述的方法,其中,所述计算设备的文件系统通过overlayFS实现,所述创建所述计算设备的文件系统包括:
创建所述文件系统的目录结构,所述文件系统包括lower dir和upper dir;
将所述计算设备的关键文件挂载到所述文件系统的lower dir,所述关键文件为所述计算设备允许所述远程协助设备访问的文件。
3.如权利要求1或2所述的方法,还包括:当启动所述容器镜像时记录所述容器镜像的启动时间。
4.如权利要求1或2所述的方法,其中,所述将所述远程操作结果更新到所述计算设备包括:
根据所述容器镜像的启动时间和所述文件系统中的更新文件对所述计算设备系统中的原文件进行更新。
5.如权利要求4所述的方法,其中,所述根据所述容器镜像的启动时间和所述文件系统中的更新文件对所述计算设备系统中的原文件进行更新包括:
若所述文件系统中和所述计算设备系统中均存在第一文件,且所述文件系统中的第一文件的修改时间晚于所述启动时间,则用所述文件系统中的第一文件替换所述计算设备系统中的第一文件;
若所述文件系统中存在第二文件,但所述计算设备系统中不存在所述第二文件,且所述文件系统中的第二文件的修改时间晚于所述启动时间,则将所述第二文件复制到所述计算设备系统中;
若所述计算设备系统中存在第三文件,但所述文件系统中不存在所述第三文件,且所述计算设备系统中的第三文件的更新时间早于所述启动时间,则将所述第三文件从所述计算设备系统中删除。
6.如权利要求1或2所述的方法,其中,所述容器镜像为docker容器镜像。
7.一种远程协助装置,适于驻留在计算设备中,所述装置包括:容器镜像管理单元、文件系统管理单元、接口单元,其中,
容器镜像管理单元,适于在所述计算设备中创建容器镜像,其中,所述容器镜像为空容器镜像,还适于当所述计算设备接收到远程协助设备的连接请求并接受所述连接请求时,启动所述容器镜像,并将所述文件系统管理单元创建的文件系统挂载到所述容器镜像;
接口单元,适于接收远程协助设备的连接请求,并将所述远程协助设备的远程操作更新到所述容器镜像;
文件系统管理单元,适于创建所述计算设备的文件系统,还适于当所述容器镜像中的远程操作结果符合预设条件时,将所述容器镜像中的远程操作结果更新到所述计算设备。
8.一种远程协助系统,包括本地设备和远程协助设备,其中,
本地设备,适于执行如权利要求1-6任一项所述的方法;
远程协助设备,适于发送远程协助连接请求,并通过远程协助技术提供远程操作。
9.一种计算设备,包括:
至少一个处理器;以及
存储器,存储有程序指令,其中,所述程序指令被配置为适于由所述至少一个处理器执行,所述程序指令包括用于执行如权利要求1-6中任一项所述方法的指令。
10.一种存储有程序指令的可读存储介质,当所述程序指令被计算设备读取并执行时,使得所述计算设备执行如权利要求1-6中任一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110619861.8A CN113076170B (zh) | 2021-06-03 | 2021-06-03 | 一种远程协助方法、系统、装置、计算设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110619861.8A CN113076170B (zh) | 2021-06-03 | 2021-06-03 | 一种远程协助方法、系统、装置、计算设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113076170A true CN113076170A (zh) | 2021-07-06 |
CN113076170B CN113076170B (zh) | 2021-09-17 |
Family
ID=76616989
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110619861.8A Active CN113076170B (zh) | 2021-06-03 | 2021-06-03 | 一种远程协助方法、系统、装置、计算设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113076170B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113656148A (zh) * | 2021-08-20 | 2021-11-16 | 北京天融信网络安全技术有限公司 | 一种容器管理的方法、装置、电子设备及可读存储介质 |
CN113703926A (zh) * | 2021-10-29 | 2021-11-26 | 北京海誉动想科技股份有限公司 | Android容器创建方法与装置 |
CN114125014A (zh) * | 2022-01-26 | 2022-03-01 | 南京沁恒微电子股份有限公司 | 一种嵌入式ide远程协助开发调试方法及系统 |
CN114237811A (zh) * | 2021-11-09 | 2022-03-25 | 南京信易达计算技术有限公司 | 一种瘦身客户端服务器虚拟化方法及虚拟瘦身客户端服务器 |
Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000018947U (ko) * | 1999-03-31 | 2000-10-25 | 윤종용 | 화상형성장치의 정착기 |
US20100115532A1 (en) * | 2008-11-05 | 2010-05-06 | C&S Operations, Inc. | Computer System with Controller Kernel and Remote Desktop |
US20130151706A1 (en) * | 2011-12-08 | 2013-06-13 | Microsoft Corporation | Resource launch from application within application container |
CN103729302A (zh) * | 2014-01-02 | 2014-04-16 | 厦门雅迅网络股份有限公司 | 一种避免对flash分区频繁读写的方法 |
US20140258877A1 (en) * | 2013-03-08 | 2014-09-11 | Christopher Balz | Method and Computer Readable Medium for Providing, via Conventional Web Browsing, Browsing Capability Between Remote/Virtual Windows and From Remote/Virtual Windows to Conventional Hypertext Documents |
CN106502905A (zh) * | 2016-10-26 | 2017-03-15 | 腾讯科技(深圳)有限公司 | 一种应用程序的测试方法、装置及系统 |
CN107194261A (zh) * | 2017-05-16 | 2017-09-22 | 安徽三实信息技术服务有限公司 | 一种用于远程主机的安全检查方法及装置 |
WO2018001004A1 (zh) * | 2016-06-27 | 2018-01-04 | 中兴通讯股份有限公司 | 一种基于Docker的云平台控制方法及装置 |
CN107924290A (zh) * | 2015-08-12 | 2018-04-17 | 三星电子株式会社 | 控制文件系统的电子设备及其操作方法 |
CN109582221A (zh) * | 2017-09-28 | 2019-04-05 | 英特尔公司 | 主机计算设备、远程服务器设备、存储系统及其方法 |
CN110472413A (zh) * | 2019-07-26 | 2019-11-19 | Oppo广东移动通信有限公司 | 基于jenkins的设备管理方法、装置、存储介质及电子设备 |
US10521962B1 (en) * | 2018-03-08 | 2019-12-31 | State Farm Mutual Automobile Insurance Company | Method and system for visualizing overlays in virtual environments |
CN110888852A (zh) * | 2019-11-11 | 2020-03-17 | 北京宝兰德软件股份有限公司 | 一种挂载宿主机目录到容器环境中的方法及装置 |
CN111061491A (zh) * | 2019-12-11 | 2020-04-24 | 青岛海洋科学与技术国家实验室发展中心 | 一种基于lxc容器技术的边缘计算网关管理系统及方法 |
US20200142641A1 (en) * | 2017-02-23 | 2020-05-07 | Arrikto Inc. | Multi-platform data storage system supporting containers of virtual storage resources |
US20200387306A1 (en) * | 2019-06-07 | 2020-12-10 | International Business Machines Corporation | Performing proactive copy-on-write for containers |
CN112104597A (zh) * | 2020-07-23 | 2020-12-18 | 广西电网有限责任公司电力科学研究院 | 一种一端多网环境的终端数据隔离方法及装置 |
CN112395586A (zh) * | 2019-08-15 | 2021-02-23 | 奇安信安全技术(珠海)有限公司 | 文件访问的控制方法及装置、系统、存储介质、电子装置 |
CN112416505A (zh) * | 2021-01-22 | 2021-02-26 | 统信软件技术有限公司 | 一种远程控制系统、方法及计算设备 |
CN112486512A (zh) * | 2020-11-25 | 2021-03-12 | 湖南麒麟信安科技股份有限公司 | 基于容器和堆叠文件系统的Linux通用软件适配方法及系统 |
CN112732403A (zh) * | 2021-01-04 | 2021-04-30 | 烽火通信科技股份有限公司 | 一种基于容器的文件管理方法和电子设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102152989B1 (ko) * | 2018-08-13 | 2020-09-07 | 한국과학기술원 | 분산 버전 관리 시스템 기반 공격방어 형식의 해킹 플랫폼 제공 시스템 및 이를 이용한 해킹 대회 제공 방법 |
-
2021
- 2021-06-03 CN CN202110619861.8A patent/CN113076170B/zh active Active
Patent Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000018947U (ko) * | 1999-03-31 | 2000-10-25 | 윤종용 | 화상형성장치의 정착기 |
US20100115532A1 (en) * | 2008-11-05 | 2010-05-06 | C&S Operations, Inc. | Computer System with Controller Kernel and Remote Desktop |
US20130151706A1 (en) * | 2011-12-08 | 2013-06-13 | Microsoft Corporation | Resource launch from application within application container |
US20140258877A1 (en) * | 2013-03-08 | 2014-09-11 | Christopher Balz | Method and Computer Readable Medium for Providing, via Conventional Web Browsing, Browsing Capability Between Remote/Virtual Windows and From Remote/Virtual Windows to Conventional Hypertext Documents |
CN103729302A (zh) * | 2014-01-02 | 2014-04-16 | 厦门雅迅网络股份有限公司 | 一种避免对flash分区频繁读写的方法 |
CN107924290A (zh) * | 2015-08-12 | 2018-04-17 | 三星电子株式会社 | 控制文件系统的电子设备及其操作方法 |
WO2018001004A1 (zh) * | 2016-06-27 | 2018-01-04 | 中兴通讯股份有限公司 | 一种基于Docker的云平台控制方法及装置 |
CN106502905A (zh) * | 2016-10-26 | 2017-03-15 | 腾讯科技(深圳)有限公司 | 一种应用程序的测试方法、装置及系统 |
US20200142641A1 (en) * | 2017-02-23 | 2020-05-07 | Arrikto Inc. | Multi-platform data storage system supporting containers of virtual storage resources |
CN107194261A (zh) * | 2017-05-16 | 2017-09-22 | 安徽三实信息技术服务有限公司 | 一种用于远程主机的安全检查方法及装置 |
CN109582221A (zh) * | 2017-09-28 | 2019-04-05 | 英特尔公司 | 主机计算设备、远程服务器设备、存储系统及其方法 |
US10521962B1 (en) * | 2018-03-08 | 2019-12-31 | State Farm Mutual Automobile Insurance Company | Method and system for visualizing overlays in virtual environments |
US20200387306A1 (en) * | 2019-06-07 | 2020-12-10 | International Business Machines Corporation | Performing proactive copy-on-write for containers |
CN110472413A (zh) * | 2019-07-26 | 2019-11-19 | Oppo广东移动通信有限公司 | 基于jenkins的设备管理方法、装置、存储介质及电子设备 |
CN112395586A (zh) * | 2019-08-15 | 2021-02-23 | 奇安信安全技术(珠海)有限公司 | 文件访问的控制方法及装置、系统、存储介质、电子装置 |
CN110888852A (zh) * | 2019-11-11 | 2020-03-17 | 北京宝兰德软件股份有限公司 | 一种挂载宿主机目录到容器环境中的方法及装置 |
CN111061491A (zh) * | 2019-12-11 | 2020-04-24 | 青岛海洋科学与技术国家实验室发展中心 | 一种基于lxc容器技术的边缘计算网关管理系统及方法 |
CN112104597A (zh) * | 2020-07-23 | 2020-12-18 | 广西电网有限责任公司电力科学研究院 | 一种一端多网环境的终端数据隔离方法及装置 |
CN112486512A (zh) * | 2020-11-25 | 2021-03-12 | 湖南麒麟信安科技股份有限公司 | 基于容器和堆叠文件系统的Linux通用软件适配方法及系统 |
CN112732403A (zh) * | 2021-01-04 | 2021-04-30 | 烽火通信科技股份有限公司 | 一种基于容器的文件管理方法和电子设备 |
CN112416505A (zh) * | 2021-01-22 | 2021-02-26 | 统信软件技术有限公司 | 一种远程控制系统、方法及计算设备 |
Non-Patent Citations (4)
Title |
---|
NAOKI MIZUSAWA ET AL: "A Study on I/O Performance in Highly Consolidated Container-Based Virtualized Environment on OverlayFS with Optimized Synchronization", 《2020 14TH INTERNATIONAL CONFERENCE ON UBIQUITOUS INFORMATION MANAGEMENT AND COMMUNICATION (IMCOM)》 * |
YUAN GAO ET AL: "Applying Docker Swarm Cluster into Software Defined Internet of Things", 《2016 8TH INTERNATIONAL CONFERENCE ON INFORMATION TECHNOLOGY IN MEDICINE AND EDUCATION (ITME)》 * |
宫铭豪等: "基于容器的融媒体微服务架构安全威胁及防护方法", 《广播电视信息》 * |
柯研: "基于PaaS云平台的容器安全研究", 《网络安全与系统可靠性》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113656148A (zh) * | 2021-08-20 | 2021-11-16 | 北京天融信网络安全技术有限公司 | 一种容器管理的方法、装置、电子设备及可读存储介质 |
CN113656148B (zh) * | 2021-08-20 | 2024-02-06 | 北京天融信网络安全技术有限公司 | 一种容器管理的方法、装置、电子设备及可读存储介质 |
CN113703926A (zh) * | 2021-10-29 | 2021-11-26 | 北京海誉动想科技股份有限公司 | Android容器创建方法与装置 |
CN113703926B (zh) * | 2021-10-29 | 2022-03-08 | 北京海誉动想科技股份有限公司 | Android容器创建方法与装置 |
CN114237811A (zh) * | 2021-11-09 | 2022-03-25 | 南京信易达计算技术有限公司 | 一种瘦身客户端服务器虚拟化方法及虚拟瘦身客户端服务器 |
CN114125014A (zh) * | 2022-01-26 | 2022-03-01 | 南京沁恒微电子股份有限公司 | 一种嵌入式ide远程协助开发调试方法及系统 |
CN114125014B (zh) * | 2022-01-26 | 2022-05-03 | 南京沁恒微电子股份有限公司 | 一种嵌入式ide远程协助开发调试方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113076170B (zh) | 2021-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113076170B (zh) | 一种远程协助方法、系统、装置、计算设备及存储介质 | |
EP3678019B1 (en) | Mirror image upgrading method and device | |
US20130117738A1 (en) | Server Upgrades with Safety Checking and Preview | |
JP4453203B2 (ja) | デバイス環境設定システム、デバイス環境設定処理方法及び情報記録媒体 | |
CN111989656A (zh) | 可配置的恢复状态 | |
CN104572439A (zh) | 回归警告方法和系统 | |
US9990192B2 (en) | Remotable project | |
JP2005293015A (ja) | 文書管理サーバ、文書管理システム、文書管理方法、文書管理プログラム及びこの文書管理プログラムを記録した記録媒体 | |
US20110302567A1 (en) | Updating software in an information handling system | |
CN112989427B (zh) | 一种文件保护方法、计算设备及存储介质 | |
CN108196868B (zh) | Bios升级方法和电子设备 | |
US8819657B1 (en) | Method and apparatus for maintaining data consistency in a virtualized application during software update installation | |
JP2002334010A (ja) | 広域ネットワークシステム | |
JP2008077600A (ja) | シンクライアント、シンクライアントシステム、及びプログラム | |
CN114968345A (zh) | 代码处理方法、系统、计算设备及存储介质 | |
WO2009029450A1 (en) | Method of restoring previous computer configuration | |
JP4241884B2 (ja) | 情報処理装置又は情報処理方法並びに記憶媒体 | |
JP7013176B2 (ja) | プログラム、情報処理装置、及び制御方法 | |
JP2009301190A (ja) | 文書処理装置及び文書処理プログラム | |
JP5172585B2 (ja) | オブジェクト・モデルに対するアクセスを制御するシステム、方法、およびプログラム | |
CN114138285B (zh) | 一种应用部署方法、计算设备及可读存储介质 | |
JP2004341840A (ja) | バックアップ方法及びそのシステム並びに復元方法 | |
CN114489739B (zh) | 软件包更新方法、装置与计算设备 | |
JP7289940B2 (ja) | プログラムのセット、記憶媒体、及び情報処理方法 | |
US8868578B2 (en) | Building information technology services from a library of elements |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |