在 Debian Buster 上通過 apt-get 安裝乙太坊時出現問題
我想執行一個 geth 全節點(具有快速同步模式)以便能夠使用 JSON RPC。我有一個基於 VMWare 的 vm 設置,據我所知,它符合所有要求。領域。固定IP地址。磁碟空間。記憶體。作品。
現在這是一個基於 Buster (10) 的 Debian 系統,核心為 4.19,在模擬 x86_64 上。
uname -a
給你Linux hostname 4.19.0-13-amd64 #1 SMP Debian 4.19.160-2 (2020-11-28) x86_64 GNU/Linux
現在我想通過 apt-get 安裝乙太坊,以便能夠自動更新它,而不必總是手動執行此操作。我在安裝源時遇到了一些問題,因為無論出於何種原因沒有導入 ppa-keys。無論如何,現在一切都設置好了:
$ ls -l /etc/apt/sources.list.d/ | grep eth -rw-r--r-- 1 root root 144 Jan 11 17:19 ethereum-ubuntu-ethereum-hirsute.list -rw-r--r-- 1 root root 140 Jan 11 17:04 ethereum-ubuntu-ethereum-hirsute.list.save
和
$ apt-key list /etc/apt/trusted.gpg ## truncated pub rsa1024 2014-02-10 [SC] 2A51 8C81 9BE3 7D2C 2031 944D 1C52 189C 923F 6CA9 uid [ unknown] Launchpad PPA for Ethereum ## truncated
我通過
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 2A518C819BE37D2C2031944D1C52189C923F6CA9
(啟動板站點的密鑰 ID)實現了這一點,現在我的apt-get update
作品沒有任何錯誤:$ sudo apt-get update ## truncated Hit:5 http://ppa.launchpad.net/ethereum/ethereum/ubuntu hirsute InRelease ## truncated Reading package lists... Done
然而,當嘗試安裝
ethereum
(或包,,,geth
左右ethereum-unstable
)時,我收到消息“無法找到包”:$ sudo apt-get install ethereum Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package ethereum
編輯:這裡也跟著這個:https://linuxconfig.org/install-packages-from-an-ubuntu-ppa-on-debian-linux,但結果相同:“無法定位…”
任何人都知道如何解決這個問題?
好吧,事實證明這是 Ubuntu 和 Debian 的不兼容。很難說到底是什麼使它起作用,但這是我所做的:
- 為較舊的 Ubuntu 版本重置乙太坊的 ppa 源:
focal
而不是hirsute
:deb http://ppa.launchpad.net/ethereum/ethereum/ubuntu focal main deb-src http://ppa.launchpad.net/ethereum/ethereum/ubuntu focal main
- 接下來的問題是,buster 在 2.19 版本中提供了 glibc6,而需要 2.32。我通過將
testing
儲存庫包含在以下內容中來解決此問題sources.list
:deb http://ftp.us.debian.org/debian testing main contrib non-free
然後(重新)安裝軟體包
build-essential
以及一般apt-get update && apt-get upgrade
此解決方案的缺點:大量依賴項已升級為“測試”版本。無論如何,到目前為止,一切似乎都執行良好。
所以 - 有人有更好/“更安全”的方式嗎?