一些背景:我是一个项目的维护者,该项目gnupg2作为框架的一部分使用PGP 公钥加密数据,因此如果我们的服务器遭到破坏,则无法读取数据,我的 CI 脚本一直运行良好,直到今天我收到一条奇怪的错误消息:
设备的 ioctl 不合适
我通过将以下行添加到我的 CI 脚本(有效)来解决此问题
export GPG_TTY=$(tty)
Run Code Online (Sandbox Code Playgroud)
但是我现在遇到了一个问题,它只是随机抛出错误:
构建 skey 数组时出错:没有这样的文件或目录
有谁知道为什么会发生此错误或找不到哪个文件或目录?我在网上发现以下目录可能丢失或权限无效,但它似乎没有做任何事情:
$ mkdir -p ~/.gnupg/private-keys-v1.d
$ chmod 700 ~/.gnupg/private-keys-v1.d
Run Code Online (Sandbox Code Playgroud)
以下是我的 CI 跑步者的输出:
$ export GPG_TTY=$(tty)
$ apt-get update
Get:1 http://security.debian.org/debian-security stretch/updates InRelease [94.3 kB]
Get:3 http://security.debian.org/debian-security stretch/updates/main amd64 Packages [440 kB]
Ign:2 http://cdn-fastly.deb.debian.org/debian stretch InRelease
Get:4 http://cdn-fastly.deb.debian.org/debian stretch-updates InRelease [91.0 kB]
Get:5 http://cdn-fastly.deb.debian.org/debian stretch Release [118 kB]
Get:6 http://cdn-fastly.deb.debian.org/debian stretch Release.gpg [2434 B]
Get:7 http://cdn-fastly.deb.debian.org/debian stretch-updates/main amd64 Packages [12.1 kB]
Get:8 http://cdn-fastly.deb.debian.org/debian …Run Code Online (Sandbox Code Playgroud)