制作本地apt源离线安装

制作本地apt源离线安装
1、背景及概述
1.1、背景

最近在做的一个项目,但linux工作环境无法联网,却又需要下载安装相关软件,需要把多个开源包打在一起形成一个安装包供其他人使用,这就面临一个问题,开源包依赖很多的linux依赖库,同时不能保证外部使用环境一定联网,稳妥的办法就是把所有依赖包都打到安装包中,此时便需要制作ubuntu的apt本地源。

1.2、概述

   基本思路是在有网的计算机下载某软件(以cgroup为例)依赖,把依赖deb复制到离线计算机,配置本地源,然后进行安装。

2、制作本地apt源
2.1、在联网计算机上下载某软件依赖包

sudo apt-get -d install cgroup-bin(该指令只下载该软件包及其依赖,不会安装)

sudo apt-get install cgroup-bin (该指令除了下载该软件包及其依赖,还会安装)

下载的cgroup依赖包存放在/var/cache/apt/archives目录。该文件内还有其他软件的依赖包,因为我们并不知道cgroup的依赖包有哪些,所以在后续的依赖包打包时姑且将这个文件下的所有包都给打包。

2.2、生成依赖包本地索引

以/home/debs为根目录,创建archives目录,将上一步下载的软件包和依赖包复制到/home/debs/archives目录下。在/home/debs目录,生成本地索引:

mkdir -p /home/debs/archives

cp /var/cache/apt/archives/*.deb /home/debs/archives/

cd /home/debs

dpkg-scanpackages archives /dev/null | gzip > archives/Packages.gz

cd …/

chmod 777 -R debs

其中,dpkg-scanpackages命令的作用为创建一个描述文件,描述当前文件夹中有哪些依赖包以及依赖包之间的依赖关系。现在debs文件夹中的内容为依赖包+描述文件Packages.gz。此时debs就是一个可用的本地源

3、离线安装
3.1、离线包复制

复制debs文件到目标离线计算机,如/data/debs,debs目录下是archives目录。

3.2、配置本地源

   配置本地源之前先备份配置文件。

mv /etc/apt/sources.list /etc/apt/sources.list.bak

然后在离线计算机上,在/etc/apt/sources.list文件增加离线源路径。

deb [trusted=yes] file:///data/debs /archives/

其中,本地源不含签名,增加[trusted=yes]是信任本地源。

3.3、更新源并安装

sudo apt-get update,此时apt源即指向我们的本地源

sudo apt-get install cgroup-bin,安装cgroup库,此时便可以安装成功

  • 7
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值