Tho*_*mas 4 encryption gentoo command-line pipe gnupg
我正在尝试通过从中提取数据/dev/random
然后使用 GPG 对其进行加密来生成密钥来锁定我的驱动器(使用 DM-Crypt 和 LUKS)。
在我使用的指南中,它建议使用以下命令:
dd if=/dev/random count=1 | gpg --symmetric -a >./[drive]_key.gpg
Run Code Online (Sandbox Code Playgroud)
如果您在没有管道的情况下执行此操作,并为其提供一个文件,它会弹出一个 (n?)curses 提示,让您输入密码。但是,当我输入数据时,它会重复以下消息四次并冻结在那里:
pinentry-curses: no LC_CTYPE known assuming UTF-8
Run Code Online (Sandbox Code Playgroud)
它还说can't connect to '/root/.gnupg/S.gpg-agent': File or directory doesn't exist
,但是我假设这与它没有任何关系,因为即使输入来自文件它也会显示出来。
所以我想我的问题归结为:有没有办法强制 gpg 从命令行接受密码,或者以其他方式让它工作,或者我是否必须将数据写入/dev/random
临时文件,然后加密那个文件?(据我所知,这应该没问题,因为我在 LiveCD 上执行此操作并且尚未创建交换,因此应该无法将其写入磁盘。)
ser*_*aut 12
确保您拥有 tty:
# ls -l $(tty)
crw--w----. 1 foo tty 136, 0 Mar 1 16:53 /dev/pts/0
# chown root $(tty)
Run Code Online (Sandbox Code Playgroud)
设置 GPG_TTY:
# export GPG_TTY=$(tty)
Run Code Online (Sandbox Code Playgroud)
gpg/pinentry 应该在这些步骤之后工作。
归档时间: |
|
查看次数: |
4872 次 |
最近记录: |