1. 离线环境,真的那么可怕吗?
很多朋友一听到“离线环境”就头大,尤其是刚接触Ubuntu或者Linux的朋友。想象一下,新装的系统,没有网络,想装个软件,apt install 敲下去,屏幕上一片“无法连接”的错误,瞬间就懵了。这种感觉我太懂了,早些年我在一些对安全要求极高的企业内网、或者是在一些物理隔离的研发环境里做技术支持,天天跟这种“信息孤岛”打交道。那时候,每次要部署新服务或者更新软件,都是一场“物流”与“脑力”的双重考验——得先在能上网的机器上把东西“备齐货”,再像蚂蚁搬家一样挪过去。
但说实话,摸清楚门道之后,你会发现Ubuntu的离线软件管理,不仅不可怕,反而有种“一切尽在掌握”的踏实感。它不像Windows那样,离了网很多安装程序就抓瞎。Ubuntu的包管理系统(APT)在设计之初就考虑到了离线安装的场景,它所有的操作都围绕着清晰的文件结构展开。核心逻辑就两步:在有网的地方“采购”和“打包”,在没网的地方“拆包”和“上架”。整个过程,你完全清楚每一个软件包(就是那些以.deb结尾的文件)从哪来、到哪去、怎么装。
所以,这篇文章就是为你准备的,无论你是运维工程师需要管理成百上千台内网服务器,还是开发者需要在隔离环境中搭建测试平台,甚至只是个人用户想在断网的笔记本上折腾点东西。我会带你走一遍从下载、缓存、打包到安装的全流程,把每个步骤掰开揉碎了讲,保证你读完就能上手,彻底告别对离线环境的恐惧。咱们不搞那些虚的理论,就讲实实在在的命令和操作,以及我踩过的那些坑。
2. 战前准备:认识你的“弹药库”和“工具箱”
工欲善其事,必先利其器。在开始“搬运”软件之前,我们得先搞清楚两个核心概念:软件包缓存目录和包管理命令。这就像打仗前,你得知道弹药库在哪,手里的枪怎么用。
2.1 核心目录:/var/cache/apt/archives
这是整个离线操作中最关键的一个目录,没有之一。你可以把它理解为一个本地软件仓库或者下载缓存中心。当你使用 apt-get install 或者 apt install 命令时,系统默认就会把所有下载好的 .deb 安装包文件放在这里。即使安装完成了,这些包文件通常也会保留在这里(除非你手动清理),这就为我们离线操作提供了原材料。
怎么查看它?很简单,打开终端,输入:
ls -lh /var/cache/apt/archives/
你会看到一堆 .deb 文件,每个文件就是一个软件包。-lh 参数是为了用更易读的方式(比如显示文件大小)列出详情。
一个重要提示:默认情况下,apt 会在安装成功后自动清理这个目录里的旧版本包文件,这是为了节省磁盘空间。但这个“自动清理”会断送我们离线安装的“粮草”。所以,我们通常需要修改一个配置来禁止它。编辑APT的配置文件:
sudo nano /etc/apt/apt.conf.d/10periodic
或者
sudo nano /etc/apt/a


3187

被折叠的 条评论
为什么被折叠?



