理想情况下,我想指定架构和 Ubuntu 版本并下载该包的所有依赖项,然后将它们带到另一台计算机。
我知道 apt-get download.... 如果架构和版本匹配,它就可以正常工作。我确实看到了架构修饰符,但没有看到版本修饰符。
如能得到任何帮助或指出如何使用 aptitude 或其他包工具来实现这一点,我将不胜感激。
即使我可以将一个 .deb 带到目标计算机并列出所有具体的依赖项……这也确实可以解决问题。
答案1
尝试使用dpkg-离线. 安装 bzr,然后:
bzr branch lp:dpkg-offline
其中包含一个教程和一个自述文件。
假设您想在 Ubuntu 14.04 amd64 系统上安装 git,即使您的系统是 12.04 i386,您也可以:
- 下载 ubuntu-14.04-desktop-amd64.iso 映像
- 跑步
dpkg-offline ubuntu-14.04-desktop-amd64.iso git
- 您将获得一个可传输到目标系统的 tar.gz,它将包含种子包 (git) 及其所有依赖项。它还包括一个用于添加本地存储库的帮助脚本,因此您可以使用它
apt-get
来安装包。
免责声明:我编写了 dpkg-offline。
答案2
也许您想创建一个本地存储库?
为此,您应该从公共存储库下载所有软件包并将其保存在我们的本地 Ubuntu 服务器硬盘中。
如果是的话,程序如下:
首先安装主要应用程序:
sudo su
apt-get update
apt-get install apt-mirror apache2
现在在您的硬盘上创建一个目录来保存所有软件包:
sudo su
mkdir /localrepo
现在,打开文件 /etc/apt/mirror.list 并进行如下所示的更改:
sudo su
nano /etc/apt/mirror.list
############# config ##################
#
set base_path /localrepo
#
# set mirror_path $base_path/mirror
# set skel_path $base_path/skel
# set var_path $base_path/var
# set cleanscript $var_path/clean.sh
# set defaultarch <running host architecture>
# set postmirror_script $var_path/postmirror.sh
# set run_postmirror 0
set nthreads 20
set _tilde 0
#
############# end config ##############
deb http://archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse
#deb http://archive.ubuntu.com/ubuntu trusty-proposed main restricted universe multiverse
#deb http://archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse
#deb-src http://archive.ubuntu.com/ubuntu trusty-proposed main restricted universe multiverse
#deb-src http://archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse
clean http://archive.ubuntu.com/ubuntu
Control + O,保存文件。Control + X,关闭 nano
在上面的配置文件中,您可以根据您使用的 32 位和 64 位架构和发行版添加 Ubuntu 源列表。
保存配置文件后,使用以下命令填充您的存储库:
sudo su
apt-mirror
您需要每周运行此命令以获取新的软件/更新。
要在客户端进行配置,只需打开客户端系统文件 /etc/apt/sources.list 并添加本地存储库路径:
sudo su
nano /etc/apt/sources.list
##########################
deb http://10.120.1.2/ubuntu trusty universe
deb http://10.120.1.2/ubuntu trusty main restricted
deb http://10.120.1.2/ubuntu trusty-updates main restricted
##########################
这里 10.120.1.2 是你的 Ubuntu 服务器 IP 地址
Control + O,保存文件。Control + X,关闭 nano
客户端无需连接到互联网即可下载软件包。
客户端将从您的 Ubuntu 本地存储库获取所有软件包。