[發明專利]一種軟件包管理方法及系統有效
申請號: | 201310361851.4 | 申請日: | 2013-08-19 |
公開(公告)號: | CN103425512A | 公開(公告)日: | 2013-12-04 |
發明(設計)人: | 王少佳;宋懷明;苗艷超;劉新春;邵宗有 | 申請(專利權)人: | 曙光信息產業股份有限公司 |
主分類號: | G06F9/445 | 分類號: | G06F9/445 |
代理公司: | 北京新知遠方知識產權代理事務所(普通合伙) 11397 | 代理人: | 張艷 |
地址: | 300384 天津市西青區華*** | 國省代碼: | 天津;12 |
權利要求書: | 查看更多 | 說明書: | 查看更多 |
摘要: | |||
搜索關鍵詞: | 一種 軟件包 管理 方法 系統 | ||
技術領域
本發明涉及計算機技術領域,尤其涉及一種軟件包管理方法及系統。
背景技術
在使用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,加載配置文件;
接收用戶發送的對軟件進行操作的命令,根據所述配置文件判斷該軟件是否與其他軟件存在依賴關系;所述其他軟件包括輔助軟件和非輔助軟件;
當該軟件依賴于輔助軟件時,為所述輔助軟件設置臨時環境變量;加載所述輔助軟件,執行所述用戶發送的命令;所述輔助軟件為與原有軟件包管理系統中已有軟件版本不同的軟件。
所述軟件包括程序文件和共享庫文件。
所述配置文件包括多條記錄,記錄每個軟件在運行時所依賴的其他軟件的位置。
所述根據配置文件判斷該軟件是否與其他軟件存在依賴關系,具體為:判斷該軟件是否依賴于輔助軟件,或者判斷是否存在其他軟件依賴于該軟件。
如果存在其他軟件依賴于該軟件,則向用戶發送提示信息,根據用戶的反饋判斷是否執行所述用戶發送的命令。
在執行完所述命令后,還包括:修改所述配置文件。
在另一個方面,本發明提供了一種軟件包管理系統,包括多個軟件和:
接收單元,用于接收用戶發送的對軟件進行操作的命令;
配置文件,用于記錄所述軟件在運行時所依賴的其他軟件的位置;
判斷單元,用于根據所述配置文件判斷該軟件是否與其他軟件存在依賴關系;所述其他軟件包括輔助軟件和非輔助軟件;所述輔助軟件為與原有軟件包管理系統中已有軟件版本不同的軟件;
命令解析器shell,用于當該軟件依賴于輔助軟件時,為所述輔助軟件設置臨時環境變量;加載所述輔助軟件,執行所述用戶發送的命令。
所述接收單元具體用于接收用戶對程序文件或共享庫文件進行操作的命令。
所述判斷單元具體用于根據配置文件判斷該軟件是否依賴于輔助軟件,或者判斷是否存在其他軟件依賴于該軟件。
所述命令解析器shell還用于,當存在其他軟件依賴于該軟件時,向用戶發送提示信息,并根據用戶的反饋執行相應操作。
還包括配置文件修改單元,用于在執行完所述命令后,還包括:修改所述配置文件。
本發明還提供了一種兼容多版本的軟件包管理系統,包括上述軟件包管理系統以及原有軟件包管理系統。
本發明通過設置臨時環境變量的方式,使得同一軟件的不同版本共存以及被同時依賴使用,而且本發明所提供的軟件包管理系統可以兼容各種Linux發行版之前的軟件包管理系統,提高了操作系統的軟件靈活性。
附圖說明
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于曙光信息產業股份有限公司,未經曙光信息產業股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310361851.4/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:事件響應方法和電子設備
- 下一篇:電子設備及其信息處理方法