掌桥专利:专业的专利平台
掌桥专利
首页

一种noVnc环境下用户与ubuntu虚机交互的方法及系统

文献发布时间:2023-06-19 19:28:50


一种noVnc环境下用户与ubuntu虚机交互的方法及系统

技术领域

本发明涉及计算机应用技术领域,具体地说是一种noVnc环境下用户与ubuntu虚机交互的方法及系统。

背景技术

在教学实训平台的开发工作中,会遇到为平台用户提供独立的虚机服务的场景,用户可以在任何一台可以访问互联网环境的机器上访问虚机,完成学习实验任务。noVnc是一个html5 VNC客户端,刚好可以匹配我们的需求。但是在实际的使用中发现,noVnc存在明显的不足,它无法像ssh工具那样可以上传下载文件、共享剪贴板,使用体验不友好。

发明内容

本发明的技术任务是针对以上不足之处,提供一种noVnc环境下用户与ubuntu虚机交互的方法及系统,实现了noVnc环境下用户与虚机的交互,客户端不需要安装任何插件工具,实现文件上传下载,剪贴板共享功能。

本发明解决其技术问题所采用的技术方案是:

一种noVnc环境下用户与虚机交互的方法,基于ssh服务,实现浏览器与虚机之间文件上传下载功能,并实现剪贴板功能;

所述文件上传下载功能,基于ubuntu虚机的ssh服务,借助ssh内含的sftp协议实现文件上传下载接口,浏览器可直接调用后端接口实现文件互传;

所述剪贴板功能,通过剪贴板管理器替代所述ubuntu虚机自带的剪贴板,通过ssh服务,以直接执行shell命令的方式去修改剪贴板内容。通过剪贴板管理器,统一管理剪贴板,可以接口的形式直接修改剪贴板内容,实现浏览器和虚机之间粘贴复制功能。

noVnc是一个html5 VNC客户端,普遍应用在各大云计算、虚拟机控制面板中,用户无需安装各种插件工具,通过浏览器就可以直接访问、操作虚机系统。但是在实际的使用中,用户经常需要上传下载文件,或者复制粘贴命令到虚机中去执行,而这些功能noVnc是不支持的。本方法提出的noVnc环境下用户与ubuntu虚机交互的实现方案,实现了文件上传下载、剪贴板共享功能,提升了用户体验。

进一步的,该方法的具体实现方式如下:

1)、基础环境配置,

在虚机中安装ssh服务,并设置开机启动;

2)、文件上传下载,

基于ssh服务的sftp协议,实现文件传输接口;

3)、剪贴板功能实现,

通过剪贴板管理器替换系统自带的剪贴板后,通过剪贴板管理器实现共享。

优选的,所述剪贴板管理器包括copyQ和ditto。

优选的,所述文件上传下载,通过类库实现;

所述类库为Java中的Jsch包。

进一步的,所述剪贴板功能实现,基于ssh服务,借助Jsch包下的channel去执行命令行管理剪贴板管理器;

优选的,所述剪贴板共享包括修改和读取剪贴板内容。

本发明还要求保护一种noVnc环境下用户与虚机交互的系统,基于ssh服务,实现浏览器与虚机之间文件上传下载功能,直接通过浏览器访问虚机系统,实现互动;

该系统实现上述的noVnc环境下用户与虚机交互的方法。

进一步的,该系统通过剪贴板管理器统一管理剪贴板,以接口的形式直接修改剪贴板内容,实现浏览器与虚机之间粘贴复制的功能。

本发明还要求保护一种noVnc环境下用户与虚机交互的装置,包括:至少一个存储器和至少一个处理器;

所述至少一个存储器,用于存储机器可读程序;

所述至少一个处理器,用于调用所述机器可读程序,执行上述的noVnc环境下用户与虚机交互的方法。

本发明还要求保护计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行上述的noVnc环境下用户与虚机交互的方法。

本发明的一种noVnc环境下用户与虚机交互的方法与现有技术相比,具有以下有益效果:

本方法实现了noVnc环境下用户与虚机的交互,客户端不需要安装任何插件工具,通过浏览器直接访问虚机系统桌面,实现浏览器与虚机间的交互,实现文件上传下载,剪贴板共享功能,提升用户体验。

附图说明

图1是本发明实施例提供的noVnc环境下用户与虚机交互的方法实现流程示图。

具体实施方式

下面结合具体实施例对本发明作进一步说明。

本发明实施例提供一种noVnc环境下用户与虚机交互的方法,基于ssh服务,实现浏览器与虚机之间文件上传下载功能,并实现剪贴板功能;

所述文件上传下载功能,基于ubuntu虚机的ssh服务,借助ssh内含的sftp协议实现文件上传下载接口,浏览器可直接调用后端接口实现文件互传;

所述剪贴板功能,通过剪贴板管理器替代所述ubuntu虚机自带的剪贴板,通过ssh服务,以直接执行shell命令的方式去修改剪贴板内容。通过剪贴板管理器,统一管理剪贴板,可以接口的形式直接修改剪贴板内容,实现浏览器和虚机之间粘贴复制功能。

实现noVnc环境下,无需安装任何插件工具,用户直接通过浏览器访问虚机系统,实现互动。本方法完善noVnc的不足,让用户在通过浏览器直接访问虚机系统桌面的情况下,不需要安装任何插件工具,实现浏览器与虚机间的交互,实现文件上传下载,剪贴板共享功能。

本方法的具体实现方式如下:

1)、基础环境配置,

文件交互和剪贴板共享都是基于ssh服务的,因此需要在虚机中安装ssh服务,并设置开机启动;

由于ubuntu自带的剪贴板无法在不同的连接请求中共享,因此需要一款剪切板管理器替代自带剪贴板,市面上有很多成熟的工具,如copyQ和ditto。

2)、文件上传下载,

基于ssh服务的sftp协议,实现文件传输接口;可以借助成熟的类库去实现功能,如java中的Jsch包。

3)、剪贴板功能实现,

通过剪贴板管理器替换系统自带的剪贴板后,通过剪贴板管理器实现共享。

基于ssh服务,借助Jsch包下的channel去执行命令行管理剪贴板管理器。修改和读取剪贴板内容达到剪贴板共享的效果。

本方法文件上传下载功能,基于ubuntu虚机的ssh服务,借助ssh内含的sftp协议实现文件上传下载接口,浏览器可以直接调用后端接口实现文件互传;

剪贴板功能,ubuntu系统是自带剪贴板的,可以通过ssh服务直接执行shell命令的方式去修改剪贴板内容,但是noVnc连接和ssh连接是两种不同的连接,不同连接之间的剪贴板是不共享的,因此需要借助剪切板管理器替代系统自身的剪贴板功能,然后以ssh的方式去修改剪切板管理器,从而实现剪切板共享功能。

本发明实施例还提供了一种noVnc环境下用户与虚机交互的系统,基于ssh服务,实现浏览器与虚机之间文件上传下载功能,直接通过浏览器访问虚机系统,实现互动;

该系统实现上述的noVnc环境下用户与虚机交互的方法:

1)、基础环境配置,

在虚机中安装ssh服务,并设置开机启动;

由于ubuntu自带的剪贴板无法在不同的连接请求中共享,需要一款剪切板管理器替代自带剪贴板,如copyQ和ditto。

2)、文件上传下载,

基于ssh服务的sftp协议,实现文件传输接口;可以借助成熟的类库去实现功能,如java中的Jsch包。

3)、剪贴板功能实现,

通过剪贴板管理器替换系统自带的剪贴板后,通过剪贴板管理器实现共享。

基于ssh服务,借助Jsch包下的channel去执行命令行管理剪贴板管理器。修改和读取剪贴板内容达到剪贴板共享的效果。

该系统通过剪贴板管理器统一管理剪贴板,以接口的形式直接修改剪贴板内容,实现浏览器与虚机之间粘贴复制的功能。

本发明实施例还提供了一种noVnc环境下用户与虚机交互的装置,包括:至少一个存储器和至少一个处理器;

所述至少一个存储器,用于存储机器可读程序;

所述至少一个处理器,用于调用所述机器可读程序,执行上述实施例所述的noVnc环境下用户与虚机交互的方法。

本发明实施例还提供一种计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行上述实施例中所述的noVnc环境下用户与虚机交互的方法。具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。

在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。

用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。

此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。

此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。

上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基与上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的代码审核手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。

相关技术
  • 一种模拟安卓用户真实系统资源环境的测试方法及系统
  • 超融合环境下提升虚机访问性能的方法及系统
  • 一种云环境下虚机网络连通性监控方法
技术分类

06120115920848