这绝不是一个完整或详尽的答案-我之前的海报已经给出了一些非常好的要点,我只想加2美分。另一件事-我从未真正习惯过apt / dpkg。在我看来,它似乎总是过于复杂,我对yum / rpm非常满意。
pacman非常易于使用,这是一个优点和缺点-您可以在一个下午学习使用它(放在一边打包软件包)-它使用了大多数直观且完整的软件包管理功能,但是-这虽然很大,但是-这是非常不灵活的。
如果设计人员事先没有想到某个功能,那么您就大为困惑。
一些示例:pacman中没有本地版本控制。如果要降级软件包版本,则必须下载该特定的软件包版本,然后使用-U(升级)选项从文件安装。它非常适合始终在系统上使用最先进的软件包。
没有真正的内部缓存清除/完全重建。如果(由于网络问题)软件包下载已损坏,例如,在-Syu期间,错误消息虽然准确无误,但没有多大用处-即使“冗长”的冗长性和调试信息打开,也不会查明损坏的软件包,并且-Syyc数量不会真正清除缓存并重新下载软件包。好消息是-Sc会让您知道下载的软件包在哪里,因此您可以简单地删除有问题的软件包(如果可以找出是哪个软件包)或所有软件包,然后重新启动-Syu。
pacman与dkms的集成也有些问题-在安装新内核时,我一直在dkms中遇到错误。在新内核上使用dkms build && dkms安装可以顺利进行,但是pacman不会提供任何信息,无论为什么dkms在内核升级期间失败(我怀疑它从未通过新内核的正确路径,只是让dkms使用默认值) (当前正在运行)内核,但版本错误。
关于它的灵活性的另一个轶事-如前所述,我习惯于rpm / yum。如果我的系统上有文件,并且我想知道哪个文件包拥有该文件,我可以运行yum提供的/ path / to / file并获取所有可以放置该文件的包-即使没有安装它们。如果文件是手动放置的,现在我希望安装一个软件包-它会重命名新的软件包(添加扩展名.rpmnew),然后让我选择要使用的软件包。
pacman只是错误地指出一个文件已经存在,但是带有一条完全不相关的错误消息-它抱怨文件“ true”所有者与当前安装的“ filesystems”软件包之间的冲突,就好像它也是同一文件的所有者一样。而且,它主要针对本地安装的信息-尝试获取尚未安装的软件包的信息(例如文件列表和所有权)不太直观。
简而言之-它不如yum和dpkg那样成熟,这也使其相对易于使用,这也使其易于使用。