我想在未连接到互联网的 Ubuntu 机器上离线安装一些软件包。我的存储设备上有这些软件包。我可以使用 apt-get 来安装它吗
apt-get 在下载软件包之前会检查缓存目录吗?
答案1
如果您有软件包(.deb
文件),apt-get
这不是最好的工具。阅读man dpkg
并使用dpkg -i
这些文件进行安装.deb
。
答案2
一般来说,我建议使用dpkg -i
,因为waltinator 写道这是一种安全且明智的方法。
但是,如果您有大量的软件包,并且希望通过依赖项管理轻松地管理它们的安装和卸载,则以下方法应该有效:
sudo apt-get -o dir::cache::archives=/path/to/directory/containing/archives/ -o dir::state::lists=/path/to/directory/containing/lists --no-download install your-packages
为了使依赖项管理等正常工作,您可能需要将包元数据(通常存在于/var/lib/apt/lists/
)复制到/path/to/directory/containing/lists
离线计算机上。
您也可以将包和列表直接复制到离线计算机上的默认目录/var/cache/apt/archives/
和/var/lib/apt/lists/
,并跳过选项部分(-o dir::cache::archives=/path/to/directory/containing/archives/ -o dir::state::lists=/path/to/directory/containing/lists
)。