软件中心无法安装或删除软件

软件中心无法安装或删除软件

我有 Ubuntu 12.10,当我尝试使用软件中心安装新软件时,安装失败并显示以下错误消息:

Authentication Error
Software cannot be installed or removed because the authentication service is not
available.(org.freedesktop.PolicyKit.Error.Failed:("system-bus-name",
{name:1.475}).org.debian.apt.install-or-remove-packages

这是我以前没有遇到过的新问题!有什么建议吗?

答案1

此实例问题的可能是由错误导致的;我建议考虑将其报告为 PolicyKit 中的错误。

然而,无论是否存在错误,都可能发生此问题,例如,由于手动更改 PolicyKit 配置(或卸载)而导致。因此,值得在这里回答一下。

发生这种情况是因为 PolicyKit 服务未运行。以下是解决此问题的几种方法:

确保安装了必要的 PolicyKit 包。

打开终端(++ Ctrl)并运行:AltT

sudo apt-get update && sudo apt-get install policykit-1 policykit-1-gnome

然后重新启动并查看问题是否已解决。(注销并重新登录可能解决问题。

gksu使用/gksudo而不是 PolicyKit运行软件中心。

如果这不起作用,您仍然可以通过解决该问题来运行软件中心。PolicyKit是授权用户(通常是管理员)可以执行以下操作的一种方式root在典型配置的 Ubuntu 系统中,但这不是唯一方法。sudo另一个

对于图形程序,直接运行它们sudo通常就可以了(例如托马斯的回答)。 但它是不建议,主要是因为它可能导致非 root 用户的配置文件归 root 所有

  • 对于不在用户主目录中存储配置文件的图形程序来说,这无关紧要。但大多数程序都会这样做,软件中心也不例外。(它使用~/.config/software-center~您的主目录在哪里。)

因此建议使用非图形前端:gksu/gksudo,或者(如果你正在运行Ubuntukdesudo

因此,按Alt+F2并运行:

gksu software-center

在 Unity 中运行 gksu 软件中心。

(这适用于所有桌面环境,而不仅仅是 Unity,尽管在其他环境中看起来有所不同。)

然后系统会提示你输入密码。输入密码后,软件中心将以 身份运行root

请注意,这是有点不同与软件中心通常运行的方式不同。通常,它以普通用户身份运行,并使用 PolicyKit 以 root 身份执行操作正是需要的时候gksu。让它使用/gksudokdesudo做到这一点并非易事。

但按root通常方式运行它可以正常工作并且不会出现任何问题。

root其他图形实用程序也可以像图形前端一样运行sudo

问题本身似乎与软件中心无关——任何使用 PolicyKit 的程序都会失败。有些程序,比如users-admin无法成功运行root。但大多数都可以。以下是一些常用实用程序的操作方法:

  • 软件源gksu software-properties-gtk
    (在 Kubuntu 中kdesudo software-propertiies-kde:)

  • 软件更新程序(称为更新管理器在 12.10 之前)— gksu update-manager
    (但是,如果您只是想正常安装更新,那么您可能无需成为 root 即可执行此操作,因为有一个单独的服务允许这样做。)

  • 系统设置...gksu gnome-control-center

答案2

这只是因为你忘记运行 policykit。运行 gnome-session-properties 并选择 PolicyKit,然后重新登录。

相关内容