[发明专利]一种软件包管理方法及系统在审
申请号: | 201711371331.6 | 申请日: | 2017-12-19 |
公开(公告)号: | CN109933366A | 公开(公告)日: | 2019-06-25 |
发明(设计)人: | 杨怡 | 申请(专利权)人: | 镇江飞协软件开发有限公司 |
主分类号: | G06F8/76 | 分类号: | G06F8/76 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 212000 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 辅助软件 软件包管理系统 软件包管理 环境变量 加载 兼容 配置文件判断 接收用户 启动命令 软件版本 软件依赖 依赖关系 用户发送 解析器 操作系统 发送 发行 配置 | ||
本发明提供了一种软件包管理方法,启动命令解析器shell,加载配置文;接收用户发送的对软件进行操作的命令,根据配置文件判断该软件是否与其他软件存在依赖关系;其他软件包括辅助软件和非辅助软件;当该软件依赖于辅助软件时,为所述辅助软件设置临时环境变量;加载所述辅助软件,执行所述用户发送的命令;所述辅助软件为与原有软件包管理系统中已有软件版本不同的软件。本发明还提供了一种软件包管理系统和一种兼容多版本的软件包管理系统。本发明技术方案可以兼容各种Linux发行版之前的软件包管理系统,通过设置临时环境变量的方式实现在系统中同一软件的不同版本共存共用,提高操作系统的灵活性。
技术领域
本发明涉及计算机技术领域,尤其涉及一种软件包管理方法及系统。
背景技术
在使用Linux系统时,首先要安装一些必要的软件。目前各种Linux系统的发行版(其中,Linux发行版是基于Linux内核的类Unix操作系统)都有各自的软件包管理系统(Linux系统上管理系统内所有软件的系统),这些软件包管理系统能够使用户方便地进行软件管理。Linux系统中很多软件是协同工作的,比如软件A运行时会使用软件B,一般称为软件A依赖软件B,这种依赖在所有Linux系统都是很常见的。而各个软件是在不断升级的,不断形成新的版本,可能出现软件A的版本1依赖于软件B的版本2的情况。
当前大部分Linux发行版的软件包管理系统只允许当前系统拥有同一软件的同一版本,这是符合大部分情况的。但是,当软件A依赖于软件B的版本2、软件C却又依赖于软件B的版本3时,如果软件B的版本2和版本3之间发生了大的变化,这时在系统中无法同时安装软件B的版本2和版本3,就会导致软件A和软件C无法同时在系统中使用。
目前Linux的一个叫做gentoo的发行版的软件包管理系统portage实现了同一软件不同版本共存于一个系统并能同时使用的功能。Portage中的每一款软件的每个版本都可以是一个slot,portage管理这些slot,从而使同一软件的不同版本能共存于同一系统中。在实际使用时通过建立软连接来切换版本,从而达到同一软件的不同版本共存的目标。但ponage软件包管理系统只适用在gentoo系统,其他Linux发行版有各自的软件包管理系统,不可能都去使用portage软件包管理系统;另外,portage使用软连接的方式切换同一软件的不同版本,使得不能同时使用同一软件的不同版本。
发明内容
本发明针对上述问题,提出了一种软件包管理方法及系统,通过设置临时环境变量,使同一软件的不同版本能够共存于系统中,并能被同时使用。
在一个方面,本发明提供了一种软件包管理方法,主要技术方案如下:
启动命令解析器shell,加载配置文件;
接收用户发送的对软件进行操作的命令,根据所述配置文件判断该软件是否与其他软件存在依赖关系;所述其他软件包括辅助软件和非辅助软件;
当该软件依赖于辅助软件时,为所述辅助软件设置临时环境变量;加载所述辅助软件,执行所述用户发送的命令;所述辅助软件为与原有软件包管理系统中已有软件版本不同的软件。
所述软件包括程序文件和共享库文件。
所述配置文件包括多条记录,记录每个软件在运行时所依赖的其他软件的位置。
所述根据配置文件判断该软件是否与其他软件存在依赖关系,具体为:判断该软件是否依赖于辅助软件,或者判断是否存在其他软件依赖于该软件。
如果存在其他软件依赖于该软件,则向用户发送提示信息,根据用户的反馈判断是否执行所述用户发送的命令。
在执行完所述命令后,还包括:修改所述配置文件。
在另一个方面,本发明提供了一种软件包管理系统,包括多个软件和:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于镇江飞协软件开发有限公司,未经镇江飞协软件开发有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711371331.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种函数调用树的生成方法及装置
- 下一篇:一种指令的发射和验证方法及装置