Debian 10 reprepro

安装 gnupg reprepro

sudo apt install -y gnupg reprepro

创建 GPG 密钥

gpg --full-gen
gpg (GnuPG) 2.2.12; Copyright (C) 2018 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

请选择您要使用的密钥类型:
   (1) RSA 和 RSA (默认)
   (2) DSA 和 Elgamal
   (3) DSA(仅用于签名)
   (4) RSA(仅用于签名)
您的选择是? 
RSA 密钥的长度应在 1024 位与 4096 位之间。
您想要使用的密钥长度?(3072) 
请求的密钥长度是 3072 位
请设定这个密钥的有效期限。
         0 = 密钥永不过期
      <n>  = 密钥在 n 天后过期
      <n>w = 密钥在 n 周后过期
      <n>m = 密钥在 n 月后过期
      <n>y = 密钥在 n 年后过期
密钥的有效期限是?(0) 
密钥永远不会过期
这些内容正确吗? (y/N) y

GnuPG 需要构建用户标识以辨认您的密钥。

真实姓名: 123456
电子邮件地址: 123456@qq.com
注释: 
您选定了此用户标识:
    “123456 <123456@qq.com>”

更改姓名(N)、注释(C)、电子邮件地址(E)或确定(O)/退出(Q)? o
我们需要生成大量的随机字节。在质数生成期间做些其他操作(敲打键盘
、移动鼠标、读写硬盘之类的)将会是一个不错的主意;这会让随机数
发生器有更好的机会获得足够的熵。

gpg: /root/.gnupg/trustdb.gpg:建立了信任度数据库
gpg: 密钥 2E39C9D9A984D19C 被标记为绝对信任
gpg: 目录‘/root/.gnupg/openpgp-revocs.d’已创建
gpg: 吊销证书已被存储为‘/root/.gnupg/openpgp-revocs.d/190FC0E324E3DE84F505DF2E2E39C9D9A984D19C.rev’
公钥和私钥已经生成并被签名。

pub   rsa3072 2022-07-23 [SC]
      190FC0E324E3DE84F505DF2E2E3
uid                      123456 <123456@qq.com>
sub   rsa3072 2022-07-23 [E]

列出系统中的 GPG 密钥

gpg --list-keys
gpg: 正在检查信任度数据库
gpg: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: 深度:0  有效性:  1  已签名:  0  信任度:0-,0q,0n,0m,0f,1u
/root/.gnupg/pubring.kbx
------------------------
pub   rsa3072 2022-07-23 [SC]
      190FC0E324E3DE84F505DF2E2E3
uid           [ 绝对 ] 123456 <123456@qq.com>
sub   rsa3072 2022-07-23 [E]

创建站点仓库目录

mkdir -p data/www/repo/key data/www/repo/conf data/www/repo/deb

导出 GPG 公钥到站点仓库

gpg --armor --export 190FC0E324E3DE84F505DF2E2E3 > data/www/repo/key

查看公钥

cat data/www/repo/key/public.key 

-----BEGIN PGP PUBLIC KEY BLOCK-----
......
OQMwxy6rMe8P3fz1PqKp3uyWyuyndUZ8ZKou7l
nrk=
=iDv0
-----END PGP PUBLIC KEY BLOCK-----

配置仓库信息 vim data/www/repo/conf/distributions

Origin: mydeb
Suite: stable
Codename: mydeb # 这是debian10的代号,可以随便叫,记住就行,之后经常用到
Version: 1.0
Architectures: amd64 source  # 拉取构架和源码(不要源码去掉source就行)
Components: main contrib non-free
UDebComponents: main contrib non-free
Description: this is a test repo  # 描述信息
SignWith: 190FC0E324E3DE84F505DF2E2E3
#Update:  # update 配置信息,用于从上游仓库更新

重要的配置字段解释:

字段说明
Origin库的名字, 如 mydeb
Label库的标签, 如 mydeb
Suite套件类型,stable 或 unstable
Codename版本的代号,对应/etc/apt/source.list中URL的相关字段,非常重要 !!!!!!
Version发布版本,如 1.0
Architectures仓库中deb包支持的架构,包括i386,amd64,mips64,sw_64 source。需要根据实现情况填写,支持什么架构添加什么架构
Components仓库中deb包的组件类型,包括 main,contrib,non-free
UDebComponents包括 main,contrib,non-free
Description描述
SignWithgpg公钥GPG Key-ID,如 190FC0E324E3DE84F505DF2E2E3
Updateupdate 配置信息,用于从上游仓库更新

 将包导入仓库:

reprepro -b ${DEB_PATH} includedeb ${codename} xxx.deb
如:
reprepro -b  data/www/repo/ includedeb mydeb nginx_1.14.2-2+deb10u4_all.deb

查看仓库列表

reprepro -b ${DEB_PATH} list ${codename} xxx.deb
如:
reprepro -b  data/www/repo  list mydeb

>>>:
mydeb|main|amd64: nginx 1.14.2-2+deb10u4

删除指定的包

reprepro -b ${DEB_PATH} remove ${codename} xxx.deb
如:
reprepro -b  data/www/repo remove mydeb nginx

>>>:
Exporting indices...
Deleting files no longer referenced...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值