如何在不使用包管理器的情况下安装包?

我想知道如何在不使用dpkg等软件包管理器的情况下安装.deb软件包。 是否有可能做到这一点? 我需要编辑哪些文件? 或者每个包装都有独特的程序吗?

您可以使用解压缩.deb包

ar x your_package.deb 

每个.deb包都包含两个文件control.tar.gzdata.tar.gz

data.tar.gz包含所有程序的文件。

control.tar.gz包含元数据和一些脚本: preinst由dpkg运行,然后解preinst data.tar.gz ,解包postinst 。 在删除程序文件之前删除postrm并在此之后运行postrm

很可能这个脚本不能在非Debian系统上运行,但它们可能包含运行以使程序运行所需的代码。

你为什么要这样做?

你为什么需要这样做?

.deb文件包含要在文件系统中的特定位置解压缩的文件,包括配置文件,以及在安装,升级和删除软件包之前和之后要执行的一些脚本。 如果未能运行相应的步骤导致borked安装,如果文件不在包管理器控制之下,则很难恢复。 此外,运行脚本可能需要一些由程序包管理器设置的环境,并且可能很难手动复制。

也就是说,您可以手动解压缩.deb文件:

 ar x file.deb 

这将留下三个文件:control.tar.gz,data.tar.gz和debian-binary。 这两个tarball包含控制文件,校验和和脚本(control.tar.gz)以及要在文件系统上解压缩的实际文件(data.tar.gz)。 您可以通过解压缩和分析这些文件来获得所需的内容。

有关.deb包格式的更多信息,请访问: http : //en.wikipedia.org/wiki/Deb_%28file_format%29

但要再次强调这一点,这并不是真的值得推荐的,你很有可能最终得到一个borked安装。