ubuntu手动离线下载并更新apt依赖包
最近要离线编译一个服务,但是这个需要更新一些系统组件,无奈之下只能先将需要更新的组件离线下载更新了.
下载依赖包
我在类似的系统上先连网编译了一下,确定了需要更新的包
将会同时安装下列软件:
cpp-7 g++-7 gcc-7 gcc-7-base gcc-8-base libasan4 libcilkrts5 libgcc-7-dev libisl19 libmpx2 libstdc++-7-dev libubsan0
建议安装:
gcc-7-locales g++-multilib g++-7-multilib gcc-7-doc libstdc++6-7-dbg gcc-7-multilib libgcc1-dbg libgomp1-dbg libitm1-dbg
libatomic1-dbg libasan4-dbg liblsan0-dbg libtsan0-dbg libubsan0-dbg libcilkrts5-dbg libmpx2-dbg libquadmath0-dbg libstdc++-7-doc
下列【新】软件包将被安装:
cpp-7 g++ g++-7 gcc-7 gcc-7-base gcc-8-base libasan4 libcilkrts5 libgcc-7-dev libisl19 libmpx2 libstdc++-7-dev libubsan0
升级了 0 个软件包,新安装了 13 个软件包,要卸载 0 个软件包,有 22 个软件包未被升级。
需要下载 32.6 MB 的归档。
解压缩后会消耗 113 MB 的额外空间。
获取:1 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 gcc-8-base amd64 8.4.0-1ubuntu1~18.04 [18.7 kB]
获取:2 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 gcc-7-base amd64 7.5.0-3ubuntu1~18.04 [18.3 kB]
获取:3 http://mirrors.aliyun.com/ubuntu bionic/main amd64 libisl19 amd64 0.19-1 [551 kB]
获取:4 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 cpp-7 amd64 7.5.0-3ubuntu1~18.04 [8,591 kB]
获取:5 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 libasan4 amd64 7.5.0-3ubuntu1~18.04 [358 kB]
获取:6 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 libubsan0 amd64 7.5.0-3ubuntu1~18.04 [126 kB]
获取:7 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 libcilkrts5 amd64 7.5.0-3ubuntu1~18.04 [42.5 kB]
获取:8 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 libmpx2 amd64 8.4.0-1ubuntu1~18.04 [11.6 kB]
获取:9 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 libgcc-7-dev amd64 7.5.0-3ubuntu1~18.04 [2,378 kB]
获取:10 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 gcc-7 amd64 7.5.0-3ubuntu1~18.04 [9,381 kB]
获取:11 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 libstdc++-7-dev amd64 7.5.0-3ubuntu1~18.04 [1,471 kB]
获取:12 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 g++-7 amd64 7.5.0-3ubuntu1~18.04 [9,697 kB]
获取:13 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 g++ amd64 4:7.4.0-1ubuntu2.3 [1,568 B]
已下载 32.6 MB,耗时 4秒 (8,566 kB/s)
正在选中未选择的软件包 gcc-8-base:amd64。
(正在读取数据库 ... 系统当前共安装有 198191 个文件和目录。)
准备解压 .../00-gcc-8-base_8.4.0-1ubuntu1~18.04_amd64.deb ...
正在解压 gcc-8-base:amd64 (8.4.0-1ubuntu1~18.04) ...
正在选中未选择的软件包 gcc-7-base:amd64。
准备解压 .../01-gcc-7-base_7.5.0-3ubuntu1~18.04_amd64.deb ...
正在解压 gcc-7-base:amd64 (7.5.0-3ubuntu1~18.04) ...
正在选中未选择的软件包 libisl19:amd64。
准备解压 .../02-libisl19_0.19-1_amd64.deb ...
正在解压 libisl19:amd64 (0.19-1) ...
正在选中未选择的软件包 cpp-7。
准备解压 .../03-cpp-7_7.5.0-3ubuntu1~18.04_amd64.deb ...
正在解压 cpp-7 (7.5.0-3ubuntu1~18.04) ...
正在选中未选择的软件包 libasan4:amd64。
准备解压 .../04-libasan4_7.5.0-3ubuntu1~18.04_amd64.deb ...
正在解压 libasan4:amd64 (7.5.0-3ubuntu1~18.04) ...
正在选中未选择的软件包 libubsan0:amd64。
准备解压 .../05-libubsan0_7.5.0-3ubuntu1~18.04_amd64.deb ...
正在解压 libubsan0:amd64 (7.5.0-3ubuntu1~18.04) ...
正在选中未选择的软件包 libcilkrts5:amd64。
准备解压 .../06-libcilkrts5_7.5.0-3ubuntu1~18.04_amd64.deb ...
正在解压 libcilkrts5:amd64 (7.5.0-3ubuntu1~18.04) ...
正在选中未选择的软件包 libmpx2:amd64。
准备解压 .../07-libmpx2_8.4.0-1ubuntu1~18.04_amd64.deb ...
正在解压 libmpx2:amd64 (8.4.0-1ubuntu1~18.04) ...
正在选中未选择的软件包 libgcc-7-dev:amd64。
准备解压 .../08-libgcc-7-dev_7.5.0-3ubuntu1~18.04_amd64.deb ...
正在解压 libgcc-7-dev:amd64 (7.5.0-3ubuntu1~18.04) ...
正在选中未选择的软件包 gcc-7。
准备解压 .../09-gcc-7_7.5.0-3ubuntu1~18.04_amd64.deb ...
正在解压 gcc-7 (7.5.0-3ubuntu1~18.04) ...
正在选中未选择的软件包 libstdc++-7-dev:amd64。
准备解压 .../10-libstdc++-7-dev_7.5.0-3ubuntu1~18.04_amd64.deb ...
正在解压 libstdc++-7-dev:amd64 (7.5.0-3ubuntu1~18.04) ...
正在选中未选择的软件包 g++-7。
准备解压 .../11-g++-7_7.5.0-3ubuntu1~18.04_amd64.deb ...
正在解压 g++-7 (7.5.0-3ubuntu1~18.04) ...
正在选中未选择的软件包 g++。
准备解压 .../12-g++_4%3a7.4.0-1ubuntu2.3_amd64.deb ...
正在解压 g++ (4:7.4.0-1ubuntu2.3) ...
正在设置 gcc-7-base:amd64 (7.5.0-3ubuntu1~18.04) ...
正在设置 libasan4:amd64 (7.5.0-3ubuntu1~18.04) ...
正在设置 gcc-8-base:amd64 (8.4.0-1ubuntu1~18.04) ...
正在设置 libmpx2:amd64 (8.4.0-1ubuntu1~18.04) ...
正在设置 libisl19:amd64 (0.19-1) ...
正在设置 libcilkrts5:amd64 (7.5.0-3ubuntu1~18.04) ...
正在设置 libubsan0:amd64 (7.5.0-3ubuntu1~18.04) ...
正在设置 cpp-7 (7.5.0-3ubuntu1~18.04) ...
正在设置 libgcc-7-dev:amd64 (7.5.0-3ubuntu1~18.04) ...
正在设置 libstdc++-7-dev:amd64 (7.5.0-3ubuntu1~18.04) ...
正在设置 gcc-7 (7.5.0-3ubuntu1~18.04) ...
正在设置 g++-7 (7.5.0-3ubuntu1~18.04) ...
正在设置 g++ (4:7.4.0-1ubuntu2.3) ...
update-alternatives: 使用 /usr/bin/g++ 来在自动模式中提供 /usr/bin/c++ (c++)
正在处理用于 man-db (2.9.1-1) 的触发器 ...
正在处理用于 libc-bin (2.31-0ubuntu9.1) 的触发器 ...
方法1:直接查找
从阿里云国内镜像地址下载需要的deb
https://mirrors.aliyun.com/ubuntu/pool/main
获取:1 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 gcc-8-base amd64 8.4.0-1ubuntu1~18.04 [18.7 kB]
下载的是 gcc-8-base
,架构 amd64
版本 8.4.0-1ubuntu1~18.04
- 进入
g/gcc-8/
- 下载 gcc-8-base_8.4.0-1ubuntu1~18.04_amd64.deb
方法2:在阿里云查找
若是方法1找不到(有些文件不是根据名字放置的...天知道真实位置在哪里)
获取:5 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 libasan4 amd64 7.5.0-3ubuntu1~18.04 [358 kB]
位置不在/l有关的位置中
- 打开 https://developer.aliyun.com/packageSearch?word=cpp
- 设置查询条件
- 若是有对应的版本直接下载
- 若是没有对应的版本,将鼠标移动到下载按钮上,在左下角会显示文件下载的位置,找到这个文件的下载路径
- 在方法1的查找地址中找到链接需要的版本(案例上的这个是在gcc-7中,若是其他的版本的可能在 gcc-8等版本中,需要进去找找看)
方法3:网络查找
若是使用方法1,方法2还是找不到,就需要百度了
获取:13 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 g++ amd64 4:7.4.0-1ubuntu2.3 [1,568 B]
- 然后在方法1中的地址中就能找到这个包了
安装
在deb放置的文件夹中运行命令,就会更新了
sudo dpkg -i *.deb
本来尝试按照上面的顺序一个个运行deb的,结果发现后面的设置部分无法处理.
直接运行上面的命令就会自动配置并且更新了