请输入您要查询的百科知识:

 

词条 pacman
释义

简介

Pacman 是一个 软件包管理器, 作为 ArchLinux发行版的一部分. 它最早由 Arch Linux 的 Judd Vinet开发. Pacman 可以解决安装过程中的依赖问题,自动下载并且安装所有需要的软件包。Pacman包管理器是Arch Linux的一大亮点。它将一个简单的二进制包格式和易用的构建系统结合了起来。Pacman使得简单的管理与自定义软件包成为了可能,而不论他们来自于官方的Arch软件库或是用户自己创建的。

用法

要完全了解pacman可以做什么,请阅读man pacman。下面只是一个可执行操作的小示范。

安装和删除包

安装和升级软件包前,先让本地的包数据库和远程的软件仓库同步是个好习惯。

pacman -Syu

或者

pacman --sync --refresh

安装或者升级单个软件包,或者一列软件包(包含依赖包),使用如下命令:

pacman -S package_name1 package_name2

有时候在不同的软件仓库中,一个软件包有多个版本(比如extra和testing)。你可以选择一个来安装:

pacman -S extra/package_name

pacman -S testing/package_name

你也可以在一个命令里同步包数据库并且安装一个软件包:

pacman -Sy package_name

删除单个软件包,保留其全部已经安装的依赖关系

pacman -R package_name

删除指定软件包,及其所有没有被其他已安装软件包使用的依赖关系:

pacman -Rs package_name

升级系统

Pacman能够只用一个指令来升级系统中所有已安装的包。升级的时间取决于你的系统有多新。

pacman -Su

当然,最好做法的是将升级系统和同步仓库数据合成为一条指令:

pacman -Syu

查询包数据库

Pacman 可以用 -Q 标志搜索和查询本地包数据库。见

pacman -Q --help

或者更详细的 pacman(8) manpage。同步数据库可以用 -S 标志搜索和查询。或者见刚提及的 manpage 或者

pacman -S --help

查看详情。

其它用法

Pacman是个非常广泛的包管理工具,这里只是它的一些其它主要特性。

下载包而不安装它:

pacman -Sw package_name

安装一个本地包(不从源里):

pacman -U /path/to/package/package_name-version.pkg.tar.gz

完全清理包缓存(/var/cache/pacman/pkg):

pacman -Scc

重安装包(那些因为依赖关系问题而无法先删除的包):

pacman -Sf package_name

要了解更详细的参数开关可以pacman --help或者man pacman。

配置

Pacman的配置文件位于/etc/pacman.conf。关于配置文件的进一步信息可以用man pacman.conf查看。

常用选项

常用选项都在[options]段。阅读man手册或者查看缺省的pacman.conf可以获得有关信息和用途。

软件仓库

你可以在/etc/pacman.conf和/etc/pacman.d/里定义使用哪些仓库。它们可以直接在里面定义或者从其它文件里包含进来。下面是有许多镜像的官方软件仓库的一个范例。由于需要节流所以要避免使用ftp.archlinux.org。

[repository-name]

Server = ftp://server.net/repo

[core]

# Add your preferred servers here, they will be used first

Include = /etc/pacman.d/core

编辑:从pacman 3.1开始,所有软件仓库将会使用包含了'$repo'变量的同一个文件/etc/pacman.d/mirrorlist。这可以降低镜像列表的臃肿,无须维护太多的镜像列表。

[core]

# Add your preferred servers here, they will be used first

Include = /etc/pacman.d/mirrorlist

[extra]

# Add your preferred servers here, they will be used first

Include = /etc/pacman.d/mirrorlist

[community]

# Add your preferred servers here, they will be used first

Include = /etc/pacman.d/mirrorlist

n.b. 使用testingunstable仓库的时候要谨慎。

错误

如果你遇到这样的错误信息 not found in sync db 这很可能是因为软件仓库设置不正确导致不能定位软件包。

图形前端

现在已经由很多可用的pacman GUI 图形前端。

Gnome/Gtk2界面

GtkPacman

采用python语言书写,使用PyGTK2 开发的pacman 图形前端,简单、强大、高速、稳定。可以参看AUR包明细。

KDE/Qt界面

Shaman

Shaman是多功能的 Qt 4 前端,基于libalpm。查询和检索都比pacman快,可定制性也很强。它扩展了pacman一系列功能,图形化的设置,以及ABS的支持,能够胜任包管理器的所有功能。可以参看AUR包明细。

状态栏通知

alunn

alunn是一个archlinux发行版简洁的系统提示程序。无论何时,当pacman有新的包更新或者Archlinux主页有新闻出现时会提示你。点击系统提示icon可以更新系统或者阅读Archlinux主页新闻。可以参看AUR包详情。

pacman-notifier

使用Ruby语言和GTK开发。在系统托盘显示一个icon,当有新的包时会弹出提示(使用libnotify)。可以参看AUR包详情。

pacupdate

Pacupdate是一个用来通知用户Archlinux系统更新的小程序,如果 pacupdate发现有更新,就会在系统托盘中显示通知。可以参看AUR包详情。

ZenMan

提示系统更新的系统提示,用于GTK/GNOME/zenity/libnotify。 可以参看AUR包详情。

pacmangame

一个单机小游戏。以FLASH格式出现。游戏内容为:一个小"C"吃点来得分,并且吃了光点后能吃追杀的敌人。所有的光点吃完胜利。

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2025/1/9 22:47:01