dpkg 报告软件包 icaclient 错误

dpkg 报告软件包 icaclient 错误

不久前,我安装了 icaclient(它是 Citrix 的一个客户端)。我不记得我做了什么来让它工作,但那真是令人精疲力竭。我不得不安装一些甚至在 ubuntu(12.04)上都不可用的旧软件包,最后我使用了一些旧 rpm 中的东西。

无论如何,客户端现在或多或少可以正常工作,但我在安装或更新某些东西时总是收到 dpkg 错误。(翻译的)错误消息如下:

dpkg:处理 icaclient:i386 (--configure) 时出错:子进程安装后安装脚本返回错误代码 2

我只是想告诉 dpkg 忽略这个或删除这个安装后脚本,但我不知道该怎么做。

谢谢!

答案1

只需安装版本 12.0 而不是 12.1。它(仍然)在 Citrix 站点 (http://www.citrix.com/site/SS/downloads/details.asp?downloadId=2316611&productId=1689163) 上可用,并且运行良好。

或者你可以提取该包:

dpkg -x icaclient_12.1.0_amd64.deb /some/folder
mkdir /some/folder/DEBIAN
dpkg -e icaclient_12.1.0_amd64.deb /some/folder/DEBIAN
vi /some/folder/DEBIAN/postinst

在第 2648 行中,将双引号之间的文本 ("i[0-9]86") 更改为 "[0-9,x]86",然后运行以下命令:

dpkg -b /some/folder

它将纠正 postinst 脚本中的错误,该脚本试图找出处理器的架构。然后,“dpkg -b /some/folder”将重新编译(构建)该包。您现在需要做的就是安装重新编译的包,它将以您用于提取它的文件夹命名。我只是不知道 Citrix 为什么还没有这样做,因为这是一个相对较旧的错误,并且有一个非常简单的解决方案。

如果你对做脏活不感兴趣,那就下载我修改过的版本吧https://dl.dropbox.com/u/3207848/icaclient_12.1.0_amd64.deb

希望我能帮上忙!

答案2

对我来说也有效,但我在 64 位系统上使用的是 32 位客户端。

icaclient-12.1.0_i386.deb

程序相同。

答案3

首先,请在终端中尝试以下操作:

sudo 能力更新
sudo aptitude-f 安装

如果不起作用,那么您可能需要尝试:

sudo dpkg --force 全部 --remove

如果这些都帮不了你,那我有个坏消息。没有办法跳过安装后脚本。Debian 的官方政策是编辑脚本以返回非终端错误,或者修复脚本。

相关内容