目的:给一台无法连接网络的服务器(机器A)部署apt离线源
方案:准备一台和此离线的服务器(机器A)相同系统版本的服务器(机器B)
在 机器B 上下载好需要下载的各种服务并打包,然后上传到 机器A 上进行部署
机器B上的操作
#创建一个目录如下:
mkdir -p /opt/offline-packages/archives
cd /opt/offline-packages/archives
#执行如下命令会将vim的递归依赖都下载到/opt/offline-packages/archives目录内:
sudo apt-get download $(apt-cache depends --recurse --no-recommends --no-suggests --no-conflicts --no-breaks --no-replaces --no-enhances vim | grep "^\w" | sort -u)
注:vim后可跟多个包,同时下载
#建立依赖的命令
cd /opt/offline-packages
sudo dpkg-scanpackages -m . /dev/null | gzip -9c > Packages.gz
cp Packages.gz ./archives
#带上-m,会将所有包全部建立依赖关系到 Packages.gz中,如此会有重复,但无需剔除重复的包
#最后打包供其他服务器使用
tar -zcvf offline-apt-packages.tar.gz offline-packages