背景
ubuntu下,使用apt-get在线安装某些模块十分的简单,与之相对,想要离线安装某一些功能包往往会产生很多问题,包括并不限于依赖等,同时也有安装包获取困难,版本不对等问题,这里提供一个通用解决方案。
1,准备
准备一台与想要离线安装的系统完全相同的可联网系统环境,可采用虚拟机的方式准备。
联网
2,方案
①正常使用apt-get install 来安装所需功能,这里采用ubuntu16.04LTS下安装docker作为例子
sudo apt-get install docker
sudo snap install docker
sudo apt-get install docker.io
②安装完毕后,不要关闭电脑,直接到/var/cache/apt/archives下拷贝所有的deb包
示例拷贝安装包如下:
root@sinovel-VirtualBox:/home/sinovel/archives# ls
bridge-utils_1.5-9ubuntu1_amd64.deb
cgroupfs-mount_1.2_all.deb
containerd_1.2.6-0ubuntu1~16.04.6+esm1_amd64.deb
docker_1.5-1_amd64.deb
docker.io_18.09.7-0ubuntu1~16.04.7_amd64.deb
git_1%3a2.7.4-0ubuntu1.10_amd64.deb
git-man_1%3a2.7.4-0ubuntu1.10_all.deb
liberror-perl_0.17-1.2_all.deb
libseccomp2_2.5.1-1ubuntu1~16.04.1_amd64.deb
pigz_2.3.1-2_amd64.deb
runc_1.0.0~rc7+git20190403.029124da-0ubuntu1~16.04.4_amd64.deb
ubuntu-fan_0.12.8~16.04.3_all.deb
③将拷贝的安装包拷贝到离线目标服务器上,使用dpkg -i *.deb这样的命令逐个进行安装,如果预见报错就先安装其他安装包,其他安装包安装完成后,再安装之前失败的安装包,直到全部安装完成即可。
示例一共尝试了三轮,最后安装顺序为文章来源:https://www.toymoban.com/news/detail-572542.html
sudo dpkg -i bridge-utils_1.5-9ubuntu1_amd64.deb
sudo dpkg -i docker_1.5-1_amd64.deb
sudo dpkg -i ubuntu-fan_0.12.8~16.04.3_all.deb
sudo dpkg -i liberror-perl_0.17-1.2_all.deb
sudo dpkg -i libseccomp2_2.5.1-1ubuntu1~16.04.1_amd64.deb
sudo dpkg -i pigz_2.3.1-2_amd64.deb
sudo dpkg -i cgroupfs-mount_1.2_all.deb
sudo dpkg -i git-man_1%3a2.7.4-0ubuntu1.10_all.deb
sudo dpkg -i git_1%3a2.7.4-0ubuntu1.10_amd64.deb
sudo dpkg -i runc_1.0.0~rc7+git20190403.029124da-0ubuntu1~16.04.4_amd64.deb
sudo dpkg -i containerd_1.2.6-0ubuntu1~16.04.6+esm1_amd64.deb
sudo dpkg -i docker.io_18.09.7-0ubuntu1~16.04.7_amd64.deb
短短三个步骤,都是我的血泪……文章来源地址https://www.toymoban.com/news/detail-572542.html
到了这里,关于ubuntu下获取apt-get离线安装包的通用方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!