搭建本地APT源需先在服务器创建目录并安装apt-mirror,配置mirror.list同步官方源,通过Apache提供HTTP服务,客户端修改sources.list指向本地源并更新,确保防火墙开放80端口,定期同步保持软件包最新。

在内网环境或离线环境中,搭建本地APT源可以极大方便Debian/Ubuntu系统的软件包管理。通过本地源,多台机器可从局域网内的服务器安装和更新软件,无需每台都联网下载。以下是搭建APT本地源的完整步骤。
准备本地源目录
选择一台服务器作为本地APT源主机,先创建用于存放软件包的目录:
mkdir -p /opt/apt-mirror
你可以将此目录挂载为NFS或通过HTTP服务共享给其他机器。
使用apt-mirror同步官方源
安装apt-mirror工具:
apt install apt-mirror
编辑配置文件/etc/apt/mirror.list,配置需要同步的源。示例:
- set base_path /opt/apt-mirror
- set mirror_path $base_path/mirror
- set skel_path $base_path/skel
- set var_path $base_path/var
- set cleanscript $var_path/clean.sh
- deb http://archive.ubuntu.com/ubuntu focal main restricted universe multiverse
- deb http://archive.ubuntu.com/ubuntu focal-updates main restricted universe multiverse
- deb http://security.ubuntu.com/ubuntu focal-security main restricted universe multiverse
- end
注意:根据你的Ubuntu版本(如focal、jammy)调整发行版名称。
保存后运行同步命令:
apt-mirror
首次同步耗时较长,完成后所有软件包将存放在/opt/apt-mirror/mirror目录中。
启用本地HTTP服务
安装Apache或其他Web服务器来提供HTTP访问:
apt install apache2
创建软链接,将镜像目录映射到Web路径:
ln -s /opt/apt-mirror/mirror/archive.ubuntu.com/ubuntu /var/www/html/ubuntu
此时其他机器可通过http://your-server-ip/ubuntu访问源。
客户端配置本地源
在需要使用本地源的客户端上,备份原sources.list:
cp /etc/apt/sources.list /etc/apt/sources.list.bak
编辑/etc/apt/sources.list,替换内容为:
- deb http://your-server-ip/ubuntu focal main restricted universe multiverse
- deb http://your-server-ip/ubuntu focal-updates main restricted universe multiverse
- deb http://your-server-ip/ubuntu focal-security main restricted universe multiverse
保存后运行apt update,应能正常获取包列表。
基本上就这些。只要服务端同步完成并正确提供HTTP访问,客户端配置后即可使用本地APT源进行安装和升级。定期运行apt-mirror可保持源的更新。不复杂但容易忽略权限和路径问题。确保防火墙允许80端口访问。基本上就这些。










