我需要为 Linux 服务器安装离线软件包。这是一项令人厌恶的任务,因为它总是输出我想要安装的软件包需要其他几个软件包。
请问我该如何解决这个问题?问候
答案1
你可以尝试dpkg-离线:
dpkg-offline 可从一组已知软件包(如基础安装)开始获取软件包的依赖项,获取这些 .debs 并将它们打包成 tarball。非常适合离线安装“种子”软件包。
首先在启动板上分支项目:
bzr branch lp:dpkg-offline
dpkg_offline 教程
假设您想要创建一个 tarball,其中包含git
在 Ubuntu 12.04 服务器系统上安装所需的所有依赖项。
一旦你有了dpkg_offline
,请确保你已经安装了所需的依赖项:
sudo apt-get install genisoimage mtools squashfs-tools apt-utils curl
安装完成后,获取种子 .iso 映像::
wget http://releases.ubuntu.com/precise/ubuntu-12.04.4-server-amd64.iso
现在您已准备好进行安装。运行以下命令:
./dpkg_offline ubuntu-12.04.4-server-amd64.iso "git"
第一个参数是种子 iso,而第二个参数是要安装的软件包列表。必须使用引号,以便将第二个“东西”视为整个列表。当然,它是不是如果您只有一个种子包,则这是必要的。
如果该过程成功完成,则 tarball 将留在当前目录中。名称将编码种子 ISO、创建日期和已安装的基本软件包:
apt-repo-ubuntu-12.04.4-server-amd64.iso-20131213-git_13a1.7.9.5-1_amd64.tar.gz
如果出现故障,dpkg_offline
将告诉您发生故障的原因并向您指出可能包含有关故障的更多详细信息的日志文件。此文件将位于临时目录中;dpkg_offline
通常会清理此目录,但如果出现故障,它将保持原样以供分析。