如何使用命令行dpkg选项来解压conf并跳过postinst脚本

8

我需要运行dpkg install,解压conf文件,但跳过运行postinst脚本(如果它包含在deb文件中)。

我尝试将SHELL变量更改为/usr/bin/true,但那没有起作用。有其他的想法吗?


你的真正目标是什么?只是想从归档文件中获取配置文件吗?你可以尝试将 /bin/sh 创建为指向 /usr/bin/true 的符号链接。但要小心不要将自己锁在系统外! - Martin Höller
@MartinHöller 我的目标是在不运行任何postinit脚本的情况下运行apt-get install。基本上,我有一堆为不同架构构建的软件包,我想要安装它们。它们无法在我正在安装它们的系统上运行(存在不同的架构问题等),因此我想跳过运行任何后初始化脚本。 - StephenG
1个回答

7
根据其手册,dpkg没有禁用脚本执行的命令行选项。但是,您可以使用以下命令(取自来自 Ubuntu 论坛上的此答案)实现您想要的效果:
apt-get download <package>
sudo dpkg --unpack <package>*.deb
sudo rm /var/lib/dpkg/info/<package>.postinst -f
sudo dpkg --configure <package>
sudo apt-get install -yf #To fix dependencies

不是真正的答案,实际上并没有使用dpkg命令行选项来实现不运行postinit脚本。 - StephenG

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接