Làm cách nào để tạo lại /etc/apt/trustdb.gpg trên Debian?


9

Giả sử một tệp bị xóa (hoặc bị hỏng) tệp sau.

/etc/apt/trustdb.gpg

Làm thế nào để tái tạo nó?

Câu trả lời:


9

Tôi tìm thấy 2 phương pháp này để làm điều đó. Cách đầu tiên có vẻ như là cách an toàn nhất để làm điều đó.

Phương pháp số 1 - sử dụng apt

$ sudo -i
$ apt-get clean
$ cd /var/lib/apt
$ mv lists lists.old
$ mkdir -p lists/partial
$ apt-get clean
$ apt-get update

Phương pháp # 2 - khóa apt

Bạn có thể sử dụng lệnh này để nhận lệnh apt-keytạo tương ứng gpgđể tải xuống khóa thích hợp cho Canonical.

$ sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 40976EAF437D05B5
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /etc/apt/secring.gpg --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --recv-keys --keyserver keyserver.ubuntu.com 40976EAF437D05B5
gpg: requesting key 437D05B5 from hkp server keyserver.ubuntu.com
gpg: key 437D05B5: "Ubuntu Archive Automatic Signing Key <ftpmaster@ubuntu.com>" 25 new signatures
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg: new signatures: 25

Chuyện gì đang xảy ra vậy?

Bạn có thể theo dõi một chút về phương thức thứ hai nếu bạn sử dụng lệnh này:

$ sudo -i
$ bash -x apt-key update |& less
+ set -e
+ unset GREP_OPTIONS
++ mktemp
+ SECRETKEYRING=/tmp/tmp.ZhVikJSB3s
+ trap 'rm -f '\''/tmp/tmp.ZhVikJSB3s'\''' 0 HUP INT QUIT ILL ABRT FPE SEGV PIPE TERM
+ GPG_CMD='gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.ZhVikJSB3s'
++ id -u
+ '[' 0 -eq 0 ']'
++ apt-config shell TRUSTDBDIR Dir::Etc/d
+ eval 'TRUSTDBDIR='\''/etc/apt/'\'''
...

Lệnh này cũng có thể được sử dụng, như một người dùng thông thường, không phải root! :

$ apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 40976EAF437D05B5                             Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.kZ1TEwcI5s --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --recv-keys --keyserver keyserver.ubuntu.com 40976EAF437D05B5
gpg: requesting key 437D05B5 from hkp server keyserver.ubuntu.com
gpg: error writing keyring `/etc/apt/trusted.gpg': file write error
gpg: key 437D05B5: "Ubuntu Archive Automatic Signing Key <ftpmaster@ubuntu.com>" 26 new signatures
gpg: error reading `[stream]': file write error
gpg: Total number processed: 0
gpg:         new signatures: 26

Người giới thiệu


Tại sao keyserver.ubuntu.comcho Debian?
Pandya
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.