我有一个客户的应用程序工作stream程依赖于gnupg(gpg)。 他们的系统最近从gnupg版本1的CentOS 5.x迁移到了gnupg版本2的CentOS 6.5。
虽然在testing阶段应该注意到这个变化,但是开发人员却错过了这个变化,现在应用程序被打破了。
是否有任何选项可以在EL6系统上运行gnupg的旧版本? 似乎没有一个明显的解决scheme,那么我怎么能回到以前的版本的function?
问题的本质似乎围绕着代理人的gpg2要求。 从手册页;)
--no-use-agent This is dummy option. gpg2 always requires the agent.
相关的命令string是:
# cat /home/db1/.passphrase | gpg --no-tty --passphrase-fd 0 --output xxx.TXT --decrypt xxx.pgp
答复是:
无法连接到`/home/jsmith/.gnupg/S.gpg-agent':没有这样的文件或目录
有以下帮助:
pinentry-curses:没有LC_CTYPE已知 – 假设UTF-8
您仍然可以在Fedora中安装gnupg (v1)软件包,所以它也可以在CentOS中使用。 你可以在Fedora中同时安装gnupg和gnupg2。
或者,为了让gpg2能够运行,你需要使用--batch选项。(即,– --passphrase*选项可以实际执行任何操作)。