如何在其他类似Unix的操作系统中使用ArchLinux的Pacman软件包管理器
Pacman和Arch用户存储库(AUR)这是我在过去几年中坚持使用Arch Linux的两个主要原因。
从开始使用Arch Linux的那一天起,我就不再经常使用其他Linux发行版。
我将不时仅在Virtualbox上尝试其他Linux发行版,以测试不同的应用程序/工具。
由于我整天都在使用Arch LInux,因此有时我会忘记或者混淆Pacman的用法与其他发行版的软件包管理器(例如APT,DNF和YUM等)。
如果我们像我一样,那么我对我们来说是个好消息。
向Pacapt打招呼,Pacapt是一些Unices的类似于Arch的pacman包管理器。
Pacapt实际上是针对不同软件包管理器(例如YUM,DNF,APT和Zypper等)的包装脚本。
使用Pacapt,我们可以使用pacman命令作为Arch Linux下的安装,更新,升级,删除软件包的方式。
其他类似Unix的操作系统。
也就是说,我们无需记住不同操作系统的各种命令/选项。
Pacapt将最常用的Pacman命令带到许多其他类似Unix的操作系统中。
请注意,并非本地软件包管理器的所有选项都已移植。
Pacapt工具仅提供一个非常基本的界面来搜索,安装,删除软件包和/或者更新系统。
安装Pacapt
请记住,Pacapt不应安装在基于Arch的系统上。
另外,在FreeBSD和Alpine Linux上,请先安装bash软件包。
Pacapt可以通过两种方式安装。
从GitHub下载稳定的脚本,并将其放在PATH中,如下所示。
$sudo wget -O /usr/local/bin/pacapt https://github.com/icy/pacapt/raw/ng/pacapt
$sudo chmod 755 /usr/local/bin/pacapt
$sudo ln -sv /usr/local/bin/pacapt /usr/local/bin/pacman || true
在某些系统上,当sudo执行命令时/usr/local/bin不在搜索路径中。
在这种情况下,我们可能想改用/usr/bin/pacman或者/usr/bin/pacapt。
或者,我们可以从Pival81存储库安装Pacapt,如下所示。
在CentOS 7上,以root用户身份运行以下命令:
# cd /etc/yum.repos.d/ # wget https://download.opensuse.org/repositories/home:Pival81/CentOS_7/home:Pival81.repo # yum install pacapt
在CentOS 6上,以root用户身份运行以下命令:
# cd /etc/yum.repos.d/ # wget https://download.opensuse.org/repositories/home:Pival81/CentOS_6/home:Pival81.repo # yum install pacapt
对于Debian 8.0,以root用户身份运行以下命令:
# wget -nv https://download.opensuse.org/repositories/home:Pival81/Debian_8.0/Release.key -O Release.key # apt-key add - < Release.key # echo 'deb http://download.opensuse.org/repositories/home:/Pival81/Debian_8.0//' > /etc/apt/sources.list.d/pacapt.list # apt-get update # apt-get install pacapt
在Fedora 25上,以root用户身份运行以下命令:
# dnf config-manager --add-repo https://download.opensuse.org/repositories/home:Pival81/Fedora_25/home:Pival81.repo # dnf install pacapt
在Fedora 24上,以root用户身份运行以下命令:
# dnf config-manager --add-repo https://download.opensuse.org/repositories/home:Pival81/Fedora_24/home:Pival81.repo # dnf install pacapt
在openSUSE Tumbleweed上,以root用户身份运行以下命令:
# zypper addrepo https://download.opensuse.org/repositories/home:Pival81/openSUSE_Tumbleweed/home:Pival81.repo # zypper refresh # zypper install pacapt
在openSUSE Leap 42.2上,以root用户身份运行以下命令:
# zypper addrepo https://download.opensuse.org/repositories/home:Pival81/openSUSE_Leap_42.2/home:Pival81.repo # zypper refresh # zypper install pacapt
在RHEL 7上以root用户身份运行以下命令:
# cd /etc/yum.repos.d/ # wget https://download.opensuse.org/repositories/home:Pival81/RHEL_7/home:Pival81.repo # yum install pacapt
在RHEL 6上以root用户身份运行以下命令:
# cd /etc/yum.repos.d/ # wget https://download.opensuse.org/repositories/home:Pival81/RHEL_6/home:Pival81.repo # yum install pacapt
在xUbuntu 16.04上运行以下命令:
$wget -nv https://download.opensuse.org/repositories/home:Pival81/xUbuntu_16.04/Release.key -O Release.key $sudo apt-key add - < Release.key $sudo sh -c "echo 'deb http://download.opensuse.org/repositories/home:/Pival81/xUbuntu_16.04//' > /etc/apt/sources.list.d/pacapt.list" $sudo apt-get update $sudo apt-get install pacapt
在其他Linux发行版中使用ArchLinux的Pacman软件包管理器
使用pacapt的典型语法是:
$pacapt <option(s)> <operation(s)> <package(s)>
我们也可以使用“ pacman”代替“ pacapt”,如下所示。
$pacman <option(s)> <operation(s)> <package(s)>
现在让我们看一些例子。
要在RHEL,CentOS上安装软件包,例如vim,我们使用:
# yum install vim
正确的?
并且,要在基于Debian的系统上安装vim,我们使用:
$sudo apt-get install vim
确实!这就是我们使用本机软件包管理器执行安装的方式。
现在,这是没有必要的!
例如,要安装vim软件包CentOS服务器,只需运行:
# pacman -S vim
此命令将自动调用“ yum install vim”命令并在CentOS系统上安装vim编辑器。
简而言之,pacapt脚本允许我们使用pacman代替Apt,DNF,Zypper,Yum和其他流行的软件包管理器,因此安装软件包非常容易!我们无需记住不同发行版的命令。
可以使用同一命令在安装了pacapt的任何Linux系统上安装vim编辑器。
知道了?
伟大的!如果我们已经熟悉Pacman,则知道如何使用它来安装,更新,升级和删除软件包。
以下是当前支持的选项的列表。
要列出所有已安装的软件包,请运行:
# pacman -Q
要显示软件包的变更日志:
# pacman -Qc <package>
要打印打印包状态:
# pacman -Qi <package>
列出软件包的文件:
# pacman -Ql <package>
要列出在任何安装源中均不可用的已安装软件包:
# pacman -Qm
要查询提供特定文件的软件包:
# pacman -Qo <file>
要查询软件包文件(不要使用软件包数据库):
# pacman -Qp <file>
要搜索已安装的软件包:
# pacman -Qs <package>
要安装软件包,请运行:
# pacman -S <package-name>
要搜索软件包:
# pacman -Ss <package>
要升级系统:
# pacman -Su
要更新软件包数据库:
# pacman -Syy
要更新软件包数据库,然后升级系统:
# pacman -Syu
删除软件包:
# pacman -R <package>
要删除旧的下载程序包:
# pacman -Sc
要删除所有下载的软件包:
# pacman -Scc
清理变体文件。
# pacman -Sccc
要下载软件包但不安装它们:
# pacman -Sw <package>
要查看所有可用的操作,请运行:
# pacman -P pacapt: available operations: Q Qi Qs Ql Qo Qp Qc Qu Qm Rs R Si Suy Su Sy Ss Sc Scc Sccc S U Sii
有关更多详细信息,请参阅帮助部分。
# pacman -h