gnupg: Bắt lỗi khi cố gpg --gen-key


8

Tôi đã thử xóa thư mục .gnupg của mình nhưng lỗi lại.

Tôi nhận được điều này:

gpg: lookup_hashtable failed: eof
gpg: lookup_hashtable failed: eof
gpg: upd_hashtable: read failed: eof
gpg: trust record 2, type 12: write failed: eof
gpg: Error: The trustdb is corrupted.
gpg: You may try to re-create the trustdb using the commands:
gpg:   cd ~/.gnupg
gpg:   gpg2 --export-ownertrust > otrust.tmp
gpg:   rm trustdb.gpg
gpg:   gpg2 --import-ownertrust < otrust.tmp
gpg: If that does not work, please consult the manual

Tôi đã thử làm theo lời khuyên bị lỗi và điều đó cũng không hiệu quả. Đã thử Googling vấn đề nhưng không có gì cho "lookup_hastable".

Tôi cũng đã cài đặt cá ngựa và có các khóa ssh của tôi được lưu trữ trong cá ngựa. Có thể có sự kết án đang xảy ra với cá ngựa?

Tôi đang chạy gpg --gen-keytừ tài khoản người dùng bình thường của mình và không cố làm bất cứ điều gì lạ mắt: chỉ cần tạo khóa gpg tiêu chuẩn.


Bạn đã làm theo hướng dẫn từ thông báo lỗi?
Timothy Truckle

1
Phiên bản GnuPG này là gì? Có một trường hợp gpg-agentchạy đang can thiệp, và điều đó có thể cần phải bị giết?
Kusalananda

2
Chạygpg --fix-trustdb
GAD3R

1
Tôi đã có gpg-đại lý đang chạy. Tôi đã giết nó và cố gắng tạo một khóa khác: cùng một vấn đề. Sau đó, tôi đã xóa thư mục ~ / .gnupg của mình và nó hoạt động! Tôi sẽ thử khởi động lại để xem liệu gpg-agent có quay lại để ngăn tôi lại không. Cảm ơn!
bitofagoob

2
gpg-agentsẽ tự động bắt đầu khi thực hiện các thao tác chính với GnuPG 2.1, như thường lệ. Vấn đề là do bạn đang sử dụng hai phiên bản GnuPG khác nhau cùng một lúc, hoặc có điều gì khác đã sửa đổi nội dung của .gnupgthư mục theo cách gpg-agentbị nhầm lẫn. Khi xóa .gnupgthư mục, việc chạy gpg-agentkhông biết đến nó. Đó là rất nhiều kiểu giải thích "vẫy tay".
Kusalananda

Câu trả lời:


2

Tôi đã phải đối mặt với một vấn đề tương tự với lookup_hashtable không thành công do Unknown system errorthay vào đó.

Tôi đoán nó đã xảy ra sau khi nhập khóa riêng thông qua gpg (chứ không phải gpg2) bằng cách sử dụng gpg --allow-secret-key-import --import private.key

Sau khi thiết lập mức độ tin cậy sau bài đăng này , lỗi đã biến mất.


Cảm ơn, nó đã giúp! Tôi nghĩ là một phần của lệnh nó đang sử dụng rm, nó sẽ thất bại nếu nó tương tác "rm -i"
kumar

0

Tôi đã từng gặp vấn đề tương tự. Điều quan trọng cần nhận ra, là có hai phiên bản chính của GnuPG ('cổ điển' và 'ổn định', và cũng có 'hiện đại' 2.1): gpggpg2(trên Fedora Core, chúng được cung cấp theo gói gnupggnupg2tương ứng).

Tôi đã tìm kiếm trên Internet về trustdbrộng rãi, loại bỏ ~/.gnupg, nhưng có thể tìm thấy rất ít thông tin và điều đó không giúp ích gì.

Vì trong kho hệ điều hành của tôi có phiên bản cũ gpg, tôi đã tải xuống một bản 'hiện đại' gpgtừ trang web chính thức. Có một vấn đề với libgrypt, tôi cần cài đặt phiên bản thư viện mới hơn gpgđể hoạt động. Khi tôi làm thủ công, hệ thống của tôi đã từ chối khởi động. Tôi nghĩ rằng tôi sẽ sửa nó sớm, nhưng bây giờ tôi làm việc từ một máy tính xách tay khác.

Cuối cùng tôi nhận ra rằng có một gói gnupg2và tôi đã sử dụng lệnh gpg2thay vì gpg. Điều đó làm việc hoàn hảo. Bạn có thể đặt một bash alias gpg=gpg2trong .bash_profilenếu bạn muốn quên đi tất cả các con số.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.