無法取得以下的密鑰 ID 的公鑰: 1397BC53640DB551 [論壇 - 新手村]


正在瀏覽:   1 名遊客


 到底部   前一個主題   下一個主題  [無發表權] 請登錄或者註冊



無法取得以下的密鑰 ID 的公鑰: 1397BC53640DB551
會員一級
註冊日期:
2015/3/25 21:41
所屬群組:
已註冊使用者
等級: 3
HP : 0 / 70
MP : 8 / 1693
EXP: 83
離線
今天打算update一下就看到這一行

無法取得以下的密鑰 ID 的公鑰: 1397BC53640DB551

請問這是甚麼意思呢

我的ubuntu版本是14.04

2016/4/28 21:45
應用擴展 工具箱
回覆: 無法取得以下的密鑰 ID 的公鑰: 1397BC53640DB551
管理員
註冊日期:
2011/3/11 6:32
所屬群組:
討論區管理群
等級: 44
HP : 216 / 1084
MP : 1088 / 38744
EXP: 38
離線
缺少 Google Chrome 軟體來源驗證用 GPG 公鑰,請重新上官網抓 Google Chrome Debian 軟體包重新安裝即可

2016/4/28 22:45
本篇發表文章以「創用CC BY 3.0 或更新之台灣地區版本」授權條款釋出,如何使用敬請參考
 Creative Commons — 姓名標示 3.0 台灣 — CC BY 3.0 TW
 http://creativecommons.org/licenses/by/3.0/tw/

「你不懂的東西就不要亂講,被懂得人看破手腳就算了,騙不懂的人誤導別人,還要別人把你當成大師,這就真的是說不過去了。」
 by Allen Own
 出處 http://www.plurk.com/p/i4uogm

自由知識創作平台介紹
 https://docs.google.com/document/d/1MGG6lW_0qCgH4U785R-IwSc_INdoBGej1l-JxiA4gPE
如何建立新的自由知識創作平台文件
 https://docs.google.com/document/d/11NdzOW2lGYksfyQIcPMPye5tlmj1J0QTkgPTmQvIvKA
應用擴展 工具箱
回覆: 無法取得以下的密鑰 ID 的公鑰: 1397BC53640DB551
會員三級
註冊日期:
2006/1/11 0:33
所屬群組:
已註冊使用者
等級: 12
HP : 0 / 280
MP : 57 / 14236
EXP: 21
離線
gpg --recv-keys 1397BC53640DB551
gpg --export -armor 1397BC53640DB551 |sudo apt-key add -

2016/4/28 23:54
這個站可以廢了, 很愛言論審核, 發廢文亂回答答錯的卻很快就審核通過
應用擴展 工具箱
回覆: 無法取得以下的密鑰 ID 的公鑰: 1397BC53640DB551
會員三級
註冊日期:
2008/9/16 22:00
所屬群組:
已註冊使用者
等級: 15
HP : 0 / 351
MP : 86 / 15095
EXP: 5
離線
重新安裝結果也一樣
奇怪老是Google Chrome這個出問題

2016/4/28 23:55
應用擴展 工具箱
回覆: 無法取得以下的密鑰 ID 的公鑰: 1397BC53640DB551
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 37
HP : 0 / 901
MP : 671 / 29267
EXP: 6
離線
對於套件key的問題還沒深究,先貼兩篇參考文件,我在「這裡」有紀錄這兩個連結。


* https://help.ubuntu.com/community/SecureApt
* https://wiki.debian.org/SecureApt


============================================

下面摘錄debian那篇,不知道是不是有解法,因為我沒有這個情形不知道怎麼測試,我還在研究怎麼重現這個狀況。



If apt gives a warning like this:

-----------------------------------
W: There are no public key available for the following key IDs:
A70DAF536070D3A1
-----------------------------------

This means that the archive has begun to be signed by a new key, which your system does not know about. In this example, the new key is a dedicated key that will be used to sign the release of Debian 4.0. Since the archive was still signed by another key that apt knows about, this is just a warning, and once the system is fed the new key (by upgrading the debian-archive-keyring package), the warning will go away.



============================================

另外裡面有列幾個指令,可以當關鍵字,查詢debian那篇文章來閱讀,或是從頭閱讀也行


$ sudo apt-key list




$ sudo apt-key update




$ man apt-key

============================================


PS: 對這部份,目前我完全沒有概念,只是提供線索,讓各位先有關鍵字去開使探索。




2016/4/29 0:31
應用擴展 工具箱
回覆: 無法取得以下的密鑰 ID 的公鑰: 1397BC53640DB551
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 37
HP : 0 / 901
MP : 671 / 29267
EXP: 6
離線
關於「Google Chrome」的問題,除了之前「這裡」和「這裡」討論到的。


關於key,可以參考下面步驟探究


下載deb檔


$ wget -c https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb



執行下面指令,解開「Control」和「Maintainer Scripts」。


$ dpkg -e google-chrome-stable_current_amd64.deb



就會看到一個資料夾「DEBIAN/」


$ tree DEBIAN/



顯示


DEBIAN/
├── control
├── postinst
├── postrm
└── prerm

0 directories, 4 files




觀看「DEBIAN/postinst」,找尋「apt-key」


$ grep apt-key DEBIAN/postinst -A 36



就看到類似下面的內容


APT_KEY="`which apt-key 2> /dev/null`"
if [ -x "$APT_KEY" ]; then
"$APT_KEY" add - >/dev/null 2>&1 <<KEYDATA
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.2.2 (GNU/Linux)

...略...



上面指令查到的內容,
可以對照「這篇」提到指令「wget -q -O - https://dl.google.com/linux/linux_signing_key.pub」得到的內容。


「DEBIAN/postinst」,這個檔的內容,
如果你有安裝好「google-chrome-stable_current_amd64.deb 」這個套件的話,
也可以在「/var/lib/dpkg/info/google-chrome-stable.postinst」找到。

「google-chrome-stable_current_amd64.deb 」的套件名稱應該是「google-chrome-stable」

執行


$ dpkg -I google-chrome-stable_current_amd64.deb | grep Package:



顯示


Package: google-chrome-stable



-------------------------------------------

或是觀看「DEBIAN/control」

執行


$ grep Package: DEBIAN/control



或是執行


$ cat DEBIAN/control | grep Package:



顯示跟上面一樣


Package: google-chrome-stable



=================================================

另外通常也會在「/etc/apt/sources.list.d/」產生一個「source list」,一樣可以在「DEBIAN/postinst」找到

執行


$ grep '"deb' DEBIAN/postinst



顯示


REPOCONFIG="deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main"
REPOCONFIGREGEX="deb (\[arch=[^]]*\bamd64\b[^]]*\][[:space:]]*) https?://dl.google.com/linux/chrome/deb/ stable main"



------------------------------------------------------

執行


$ grep APT_SOURCESDIR DEBIAN/postinst



顯示


APT_SOURCESDIR="$APTDIR$APTETC$(apt_config_val 'Dir::Etc::sourceparts')"
SOURCELIST="$APT_SOURCESDIR/google-chrome.list"
SOURCELIST="$APT_SOURCESDIR/google-chrome.list"
if [ -d "$APT_SOURCESDIR" ]; then
rm -f "$APT_SOURCESDIR/google-chrome.list" \
"$APT_SOURCESDIR/google-chrome-stable.list"
SOURCELIST="$APT_SOURCESDIR/google-chrome.list"


2016/4/29 1:00
應用擴展 工具箱
回覆: 無法取得以下的密鑰 ID 的公鑰: 1397BC53640DB551
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 37
HP : 0 / 901
MP : 671 / 29267
EXP: 6
離線
備份連結

=====================================


使用「1397BC53640DB551」當關鍵字來查詢,

可以查到幾篇「參考文章」,以下是連結。

* http://ubuntuforums.org/showthread.php?t=2322420
* https://www.reddit.com/r/linux4noobs/comments/4grdo7/an_error_occurred_w_there_is_no_public_key/d2k4ucy
* http://askubuntu.com/questions/520718/no-public-key-available-while-upgrading-using-update-manager


使用「ubuntu package signing key」當關鍵字來查詢,

可以查到幾篇「參考文章」,以下是連結。

* https://www.google.com/linuxrepositories/
* https://wiki.ubuntu.com/KeySigningParty
* https://en.wikipedia.org/wiki/Web_of_trust


=================================================

## 方法 1

執行


$ sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 1397BC53640DB551


執行下面指令,觀看有那些key


$ sudo apt-key list | grep google -A 2 -B 2



顯示


pub 1024D/7FAC5991 2007-03-08
uid Google, Inc. Linux Package Signing Key <linux-packages-keymaster@google.com>
sub 2048g/C07CB649 2007-03-08

pub 4096R/D38B4796 2016-04-12
uid Google Inc. (Linux Packages Signing Authority) <linux-packages-keymaster@google.com>
sub 4096R/640DB551 2016-04-12 [expires: 2019-04-12]



測試


$ sudo apt-get update



步驟到了上面就解決了,下面提供刪除key的指令範例

執行


$ sudo apt-key del 7FAC5991



執行 


$ sudo apt-key del D38B4796



把這個key刪除,就可以重現樓主遇到的情況了

-------------------------------------------

## 方法二


$ wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -



-------------------------------------------

## 方法三

把「/etc/apt/sources.list.d/google-chrome.list」移走,
或是把裡面的「deb」和「deb-src」那幾行註解。

這個方法比較不建議,
因為在「sudo apt-get update」就不會知道「Chrome」有新的版本。

不過這也是其中一種解法,
當其他方式都不能解決,
而希望「sudo apt-get update」可以順利進行,就可以使用。



$ sudo mv /etc/apt/sources.list.d/google-chrome.list ~/Documents/


2016/4/29 2:46
應用擴展 工具箱
回覆: 無法取得以下的密鑰 ID 的公鑰: 1397BC53640DB551
會員三級
註冊日期:
2008/9/16 22:00
所屬群組:
已註冊使用者
等級: 15
HP : 0 / 351
MP : 86 / 15095
EXP: 5
離線
wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -

問題終於解決了,3Q

2016/4/29 15:00
應用擴展 工具箱


 [無發表權] 請登錄或者註冊


可以查看帖子.
不可發帖.
不可回覆.
不可編輯自己的帖子.
不可刪除自己的帖子.
不可發起投票調查.
不可在投票調查中投票.
不可上傳附件.
不可不經審核直接發帖.