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

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

我想知道如何在不使用 dpkg 等包管理器的情况下安装 .deb 包。可以这样做吗?我必须编辑哪些文件?或者每个包是否有独特的过程?

答案1

你可以使用以下方法解压 .deb 包

ar x your_package.deb

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

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

control.tar.gz包含元数据和一些脚本:由 dpkg 在解包前、解包后preinst运行。在删除软件包时,在删除程序文件之前和之后运行。data.tar.gzpostinstprermpostrm

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

你为什么要这么做?

答案2

为什么你需要这么做?

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

话虽如此,你手动解压.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

但再次强调一下,这并不值得推荐,而且很有可能导致安装失败。

相关内容