ubuntu apt-get离线源制作
项目需求中,我们需自动安装Ubuntu系统并全程无网络环境,因此必须定制一个apt离线源,并确保所有依赖项都能下载。经过三四天的资料查找与多次测试,最终达成目标。下面将详细记录实现过程。
操作系统选用ubuntu-18.04.5-server-amd64.iso版本,无网络环境,预装软件包括openssh-server与vim,以方便安装完成后通过xshell进行访问与编辑。
尝试了多组方法,发现网络搜寻的相关解决方案多为抄袭,无法将依赖的依赖项也一并下载。逐一列出失败尝试:
一、仅在系统中没有某包及其依赖时有效,若已预先安装,此方法不再适用。因此,可能导致漏项,即使是新系统也是如此。
二、尝试使用apt-rdepends,虽可递归下载所有需要的包,但会遇到不同包对应的错误提示,如“debconf-2.0”不是固定项,需单独安装,但工作量过大,因此放弃。
三、与apt-rdepends类似的方法,同样未能完全下载所需包。
四、使用aptitude命令,结果仍然存在未下载的包。
在以上失败过程中,多数错误提示提示了依赖包的缺失。最终,通过google搜索关键词“apt download package and dependencies”,找到可用方法。创建指定目录,执行命令将特定软件(如vim)及其依赖项下载至目录内。此操作下载了多个版本的同个包,以满足不同架构的需求。使用dpkg-scanpackages命令建立依赖关系时,发现警告提示了未处理的依赖包问题,导致最后离线源使用中出现错误,归根结底,缺失的依赖包导致安装失败。
使用dpkg-scanpackages命令时,添加参数-m,可确保所有包依赖关系建立,尽管会有重复,但无需额外剔除。打包后,离线包可发送至目标机器上,解压后更新源,即可进行软件安装。
参考链接与资料查找,建议使用google搜索专业内容,确保信息的准确与有效性。
多重随机标签