Sysget-流行软件包管理器的前端

时间:2020-03-21 11:47:22  来源:igfitidea点击:

向Sysget是类Unix操作系统中流行的软件包管理器的前端。
我们不需要了解每个软件包管理器就可以完成诸如安装,更新,升级和删除软件包之类的基本工作。
只要记住每个类Unix操作系统上的每个程序包管理器的语法。
Sysget是用于程序包管理器的包装器脚本,它是用C++编写的。

使用Sysget,我们可以执行各种基本的软件包管理操作,包括以下内容:

  • 安装软件包
  • 更新软件包
  • 升级包,
  • 搜索软件包,
  • 删除软件包,
  • 删除孤儿包,
  • 更新数据库,
  • 升级系统
  • 清除程序包管理器缓存。

给Linux学习者的重要说明:

Sysget不会取代软件包管理器,并且绝对不适合所有人。
如果我们是新手,经常切换到新的Linux操作系统,Sysget可能会有所帮助。
它只是包装脚本,可以帮助发行者(或者新Linux用户)在使用不同Linux发行版中的不同软件包管理器来学习安装,更新,升级,搜索和删除软件包的新命令时感到沮丧。

如果我们是Linux管理员或者发烧友,想了解Linux的内部知识,则应该坚持使用发行版的软件包管理器并学习如何使用它。

安装Sysget

安装sysget很简单。
转到发布页面并下载最新的Sysget二进制文件,然后如下所示进行安装。

在撰写本教程时,最新版本为1.2.

$sudo wget -O /usr/local/bin/sysget https://github.com/emilengler/sysget/releases/download/v1.2/sysget
$sudo mkdir -p /usr/local/share/sysget
$sudo chmod a+x /usr/local/bin/sysget

Sysget用法

Sysget命令与APT软件包管理器基本相同,因此对于新手来说应该很容易使用。

首次运行Sysget时,将要求我们选择要使用的程序包管理器。
因为我在Ubuntu上,所以我选择apt-get。

我们必须根据运行的发行版选择正确的软件包管理器。
例如,如果我们使用的是Arch Linux,请选择pacman。
对于CentOS,选择yum。
对于FreeBSD,选择pkg。

万一我们分配了错误的程序包管理器,则可以使用以下命令来设置新的程序包管理器:

$sudo sysget set yum
Package manager changed to yum

只要确保我们已选择本地软件包管理器即可。

现在,我们可以像使用本机软件包管理器一样执行软件包管理操作。

要安装软件包,例如Emacs,只需运行:

$sudo sysget install emacs

上面的命令将调用本地程序包管理器(在我的情况下为“ apt-get”)并安装给定的程序包。

同样,要删除软件包,只需运行:

$sudo sysget remove emacs

更新软件存储库(数据库)

$sudo sysget update

搜索特定的软件包

$sudo sysget search emacs

升级单个包

$sudo sysget upgrade emacs

升级所有软件包

$sudo sysget upgrade

删除所有孤立的包

$sudo sysget autoremove

清除程序包管理器缓存

$sudo sysget clean

有关更多详细信息,请参阅帮助部分:

$sysget help
Help of sysget
sysget [OPTION] [ARGUMENT]
search [query]      search for a package in the resporitories
install [package]  install a package from the repos
remove [package] removes a package
autoremove          removes not needed packages (orphans)
update                 update the database
upgrade               do a system upgrade
upgrade [package] upgrade a specific package
clean                     clean the download cache
set [NEW MANAGER] set a new package manager

请记住,不同Linux发行版中的所有程序包管理器的sysget语法都是相同的。
我们无需记住每个软件包管理器的命令。

同样,我必须告诉我们Sysget不能替代软件包管理器。
它只是类Unix系统中流行的软件包管理器的包装,并且仅执行基本的软件包管理操作。