以太坊2.0主网质押教学

以太坊2.0主网质押教学 第1张

本文基于Prysmatic Labs的Prysm客户端,详细解说若何介入以太坊2.0主网质押。主要基于以下几个手艺:

  • Ubuntu v20.04 (LTS) x64 服务

  • Go Ethereum 节点 (Github)

  • Prysmatic Labs ETH 2.0 客户端 — Prysm (代码分支)

  • 浏览器插件加密钱包 MetaMask

提醒:介入质押至少需要32 ETH 以及分外的gas费。在搞清楚之前切记不要向随便地址发送ETH。本教程先容了若何平安地将你的ETH存入存款合约。请切记不要将ETH发送给任何人。

致谢

本教程参考了网上的种种资料,谢谢这些提供资料的贡献者!

谢谢EthStaker治理团队和提供教程的社区成员、Eth2 客户端团队、以及质押社区的辅助和校对。

特别谢谢Eth2 客户端团队和以太坊基金会的研究员。他们经由几年的不懈努力,将我们带到这难以置信的时刻——Eth2.0乐成创世。

免责声明

本文仅供参考,不组成专业建议。作为本教程的作者。我本人不保证文中信息的准确性,对于那些参考了本文举行操作而发生的任何损失概不负责。文末有加倍完整的免责声明,请阅读之后再举行操作。

支持

如需手艺支持,请联系:

  • EthStaker社区是一个以太坊2.0 Staking 社区,资源丰富且十分友好。

Reddit:

https://www.reddit.com/r/ethstaker/

Discord:

https://discord.gg/7z8wzehjrJ

  • Prysm 客户端团队,

Discord:https://discord.gg/GVM5TJwzkU

条件

使用本教程需要对以太坊、ETH、Staking、Linux、MetaMask (Portis或Fortmatic) 有一定的靠山知识。

还需要准备:

Ubuntu 服务器 v20.04 (LTS) amd64 或者一个较新的,在内陆盘算机或云端安装和运行的Ubuntu服务器。

已安装或已设置的浏览器插件加密钱包MetaMask (或Portis、Fortmatic)。一台装有操作系统 (Mac、Windows、Linux等) 和浏览器 (Brave、Safari、FireFox等) 的盘算机。

从测试网到主网

若是你从测试网设置转到主网设置,那么我强烈建议你在一个全新的 (新安装的) 服务器实例上最先。本教程没有对迁徙场景举行测试,以是若是你使用的是此前安装过的测试网软件,那么无法保证你的操作能乐成。

要求

硬件要求是一个比较大的话题。总的来说:一个相对较新的CPU、8GB内存的RAM (16GB更佳)、一个内存至少500GB的SSD (1TB更佳)、稳固的网络(足够快的下载速率以及月度数据额度),这些性能都市让质押历程加倍平安顺畅。

注重:检查你的可用磁盘空间。只管你有一个容量较大的SSD,Ubuntu也会泛起仅剩200GB可用空间的状态。若是你遇到这种情形,请查看附录C —— 扩展逻辑卷。

概览

下面这个简化图表标明晰本篇教程所涉及的局限,标黄的即是本文会笼罩到的部门:

以太坊2.0主网质押教学 第2张

整个流程可以概念化表述为:

  • 天生验证者密钥对和存款数据

  • 准备Ubuntu服务器 (防火墙、平安设置等)

  • 设置一个Eth1 节点并同步Eth1 区块链的数据

  • 设置Prysm客户端并同步Eth1 节点数据

  • 存款并激活验证者密钥对

那我们现在就最先吧!

第1步:天生质押数据

介入质押首先要决议你想要运行的验证者节点的数目,并基于此天生一些数据文件。

注重:若是你的存款数据和验证者密钥对已经天生,可以跳过这一步。

一个验证者节点需要存32 ETH,你的MetaMask钱包里要有响应足够的ETH。好比,若是你设计运行5个验证者节点,你将需要准备160 ETH (32*5) 而且预留一些gas费。存款历程会稍后再解说,下面教人人怎么把装备运行起来。

下载存款工具 (存款CLI)

点击此处下载最新公布的存款下令行界面app (CLI app)。

下载链接:

https://github.com/ethereum/eth2.0-deposit-cli/releases/

以太坊2.0主网质押教学 第3张

在“Assets”那一栏选择与你的装备 (如Windows、Mac、Linux Desktop等) 匹配的版本并下载。

运行存款工具 (Eth2 存款CLI)

解压文件,内里应该有一个二进制文件 (可执行文件)。存款工具天生用于质押的文件和一组助记词。这组助记词需要平安地保留。下面有两种选择:

建议方案:将这份二进制文件复制粘贴到USB驱动器里。毗邻到一台此前从未毗邻过网络的盘算机,将文件复制到盘算机里并最先运行。

不建议方案:在当前使用的盘算机上运行。然则网络毗邻可能会导致你的助记词密钥泄露。若是没有未联网的盘算机,那就在最先运行之前断开网络。

准备好之后,在终端窗口 (或windows的下令提醒符CMD) 中运行这份文件以继续使用下面列出的下令。确定好你要运行的验证者节点的数目之后,用该数字替换 <NumberOfValidators>。好比: --num_validators 2

Linux/Mac:

./deposit new-mnemonic --num_validators <NumberOfValidators> --chain mainnet

Windows:

deposit.exe new-mnemonic --num_validators <NumberOfValidators> --chain mainnet

在你选择的盘算机执行上面的步骤之后,你将被要求建立一个验证者密钥存储库 (validator keystore) 密码,并保留在一个平安的地方。在后面的步骤中,你将需要这个keystore来上传验证者密钥到Prysm的验证者钱包里。

以太坊2.0主网质押教学 第4张

随后会天生一组助记词请保留在一个平安的地方,这至关主要。由于最终你需要助记词来天生提款密钥以提出质押的ETH,而且增添验证者节点时也需要使用助记词。若是你丢失了助记词,就无法将你的资产提出了。

以太坊2.0主网质押教学 第5张

一旦你点击确认已经记好助记词之后,你的验证者密钥对便会天生。

以太坊2.0主网质押教学 第6张

新建立的验证者密钥对和存款数据文件会放置在指定位置。文件夹的内容如下所示:

以太坊2.0主网质押教学 第7张

关于这些文件:

文件 deposit_data-[timestamp].json 包罗验证者公钥和质押存款信息。该文件将用于完成随后的ETH存款历程。

文件 keystore-m...json 包罗经由加密的验证者署名密钥。每一个验证者节点对应一个“keystore-m”。该文件将被导入到Prysm验证者钱包中以备质押时使用。随后需要将这些文件复制粘贴到Ubuntu服务器中。

最后的步骤

现在你已经有了存款数据和密钥存储库文件,接下来就可以设置Ubuntu服务器了。

注重:此时还不能举行存款。

首先完成并验证你的质押设置非常主要。若是你的ETH存款激活了,然则质押设置还没准备好的话,你将会受到怠工责罚。

第2步:毗邻至服务器

使用一个SSH端口,毗邻至你的Ubuntu服务器。若是你用root登录,最好是重新建立一个拥有治理权限的用户账户,由于使用root用户登录存在很大的风险。

注重:若是你不是用root登录的便可以直接跳到第三步。

建立一个新账户。在 <yourusername> 中填入你的用户名,然后设置一个平安系数较高的密码,并输入其他可选信息。

, adduser <yourusername>

通过把新的用户加入sudo群组中,来授予其治理权限。这样用户在下令行前输入sudo,便会以超级用户的权限来执行操作。

, usermod -aG sudo <yourusername>

可选项:若是你使用SSH密钥通过root用户毗邻你的Ubuntu系统,你需要将新建立的账户和root用户的SSH密钥数据组合起来。

, rsync --archive --chown=<yourusername>:<yourusername> ~/.ssh /home/<yourusername>

最后,退出登录你的root账户,然后使用你新建立的用户名<yourusername>登入Ubuntu服务器。

第3步:升级服务器

确保系统更新至最新的软件和平安设置。

$ sudo apt update && sudo apt upgrade$ sudo apt dist-upgrade && sudo apt autoremove$ sudo reboot

第4步:珍爱服务器

平安性十分主要。但由于本文不是针对平安性的指南,所有只列出了一些基础的设置。

修改SSH默认端口

SSH默认端口是端口22,也是易受攻击的矢量,因此可以修改SSH端口来防止攻击。

在1024 — 49151之间选择一个端口号,然后运行以下下令以检索尚未使用的端口号。没有其他显示便意味着该端口号未被使用;显示红色便意味着已被使用,请实验其他端口号。好比:sudo ss -tulpn | grep ':6673'

$ sudo ss -tulpn | grep ':<YourSSHPortNumber>'

确定端口号可用之后,通过升级SSH设置来修改默认端口。

$ sudo nano /etc/ssh/sshd_config

在文件中检索或者添加 (若是没有的话) Port 22 下令行。删掉, (若是有的话) 并在下面的下令行中输入端口号。

Port <YourSSHPortNumber>

参考下方的截图。按CTRL+x 然后选 ‘y’ ,按回车保留并退出。

以太坊2.0主网质押教学 第8张

重新启动 SSH 服务以显示上述所作的修改。

$ sudo systemctl restart ssh

登出并使用你的SSH端口号<YourSSHPortNumber>重新登入。

设置防火墙

Ubuntu 20.04 服务器可以使用默认的 UFW 防火墙来限制接见该服务器的流量,不外要先设置其允许来自 SSH、Go Ethereum、Prysm 的入站流量。

安装 UFW 防火墙

凭据下面的下令行输入以保证在默认情形下安装 UFW。

$ sudo apt install ufw

应用 UFW 默认值

明确地应用默认值,拒绝入站流量,允许出站流量。

$ sudo ufw default deny incoming$ sudo ufw default allow outgoing

Allow SSH 允许 SSH

允许你此前设置的端口号 <YourSSHPortNumber> 的入站流量。SSH 要求 TCP 协议。好比:sudo ufw allow 6673/tcp

$ sudo ufw allow <yourSSHportnumber>/tcp

拒绝 SSH 端口号22

拒绝端口 22/TCP 的入站流量。

注重:当你完成了修改 SSH 默认端口之后再做这一步。

$ sudo ufw deny 22/tcp

允许 Go Ethereum

允许与 Go Ethereum 的对等节点 (端口 30303) 举行点对点 (P2P) 毗邻。若是你使用第三方托管的 Eth1 节点,则可以跳过这一步。

注重:若是你在内陆托管你的Ubuntu服务器,你需要设置你的网络路由以允许来自端口 30303 的入站流量。

$ sudo ufw allow 30303

允许 Prysm 客户端

允许与 Prysm 的对等节点举行点对点毗邻,以便在信标链节点上 (Prysmatic Labs 的默认端口为 13000/TCP 和 12000/UDP) 举行操作。

注重:若是你在内陆托管你的Ubuntu服务器,你需要设置你的网络路由以允许来自端口 13000 和12000 的入站流量。

$ sudo ufw allow 13000/tcp$ sudo ufw allow 12000/udp

开启防火墙并检查是否已按上述步骤准确地设置。

$ sudo ufw enable$ sudo ufw status numbered

查看下面截图以供参考。

以太坊2.0主网质押教学 第9张

第5步:设置定时器

Ubuntu 内置了时间同步,并默认使用 systemd‘s timesyncd 服务举行激活。验证其是否准确运行。

$ timedatectl

激活  NTP service ,运行方式:

$ sudo timedatectl set-ntp on

参考下方的截图:

以太坊2.0主网质押教学 第10张

只能使用单个定时器服务。若是你此前安装过 NTPD,你需要检查此文件是否还存在,若是存在请操作下面的下令行以删除。

$ ntpq -p$ sudo apt-get remove ntp

第6步:设置一个 Eth1 节点

介入质押需要一个 Eth1 节点。你可以选择运行一个内陆 Eth1 节点,也可以使用第三方提供的节点。本教程会详细解说若何运行 Go Ethereum,若是你选择第三方服务的话,可以跳过这一步。

注重:检查你的可用磁盘空间。一个Eth1节点需要也许400GB的存储空间。只管你有一个容量较大的固态硬盘,Ubuntu也可能显示仅剩200GB的可用空间。若是你遇到这种情形,请查看附录C —— 扩展逻辑卷。

安装 Go Ethereum

使用PPA (Personal Package Archives,小我私家安装包存档) 安装Go Ethereum客户端。

$ sudo add-apt-repository -y ppa:ethereum/ethereum$ sudo apt update$ sudo apt install geth

将Go Ethereum作为后台服务来运行,运行该服务需要建立一个账户。此种类型的账户无法登录服务器。

$ sudo useradd --no-create-home --shell /bin/false goeth

为Eth1区块链建立数据目录,用来存储Eth1节点数据。

$ sudo mkdir -p /var/lib/goethereum

设置目录的权限。goeth 账户需要权限来修改该数据目录。

$ sudo chown -R goeth:goeth /var/lib/goethereum

建立一个systemd服务设置文件来对该服务举行设置。

$ sudo nano /etc/systemd/system/geth.service

将下列的服务设置复制粘贴到文档中。

[Unit]Description=Go Ethereum ClientAfter=network.targetWants=network.target[Service]User=goethGroup=goethType=simpleRestart=alwaysRestartSec=5ExecStart=geth --http --datadir /var/lib/goethereum --cache 2048 --maxpeers 30[Install]WantedBy=default.target

需要注重的flags:

flag --http 用来公然与Prysm信标链节点毗邻的一个HTTP端口 (http://localhost:8545)。

flag --cache 指的是内部缓存的巨细,以GB为单元。数值的增减取决于你的可用系统内存。设置 2048 将也许需要使用 4-5 GB的内存。

flag --maxpeers 指的是所毗邻节点的最大数值。节点数目越多,意味着越多的网络数据可用空间。以是记得不要将该数值设置得太低,否则你的Eth1节点将难以保持同步。

参考下方的截图。按CTRL+x 然后选 ‘y’ ,按回车保留并退出。

以太坊2.0主网质押教学 第11张

重新加载 systemd 以显示上述的更改并启动服务。检查状态以确保其准确运行。

$ sudo systemctl daemon-reload$ sudo systemctl start geth$ sudo systemctl status geth

参考下方的截图:

以太坊2.0主网质押教学 第12张

若是你每一步都做对了,它会用绿色字体显示”active (running)"。若是没有显示,你需要倒回去重复上述步骤,修复问题。按Q退出 (此操作不会影响geth服务)。

允许geth服务在系统重启时自动启动。

$ sudo systemctl enable geth

Go Ethereum节点将会最先同步。你可以运行下列下令来追踪历程或检查错误。按“CTRL+c”退出 (此操作不会影响geth服务)。

$ sudo journalctl -fu geth.service

参考下方的截图:

以太坊2.0主网质押教学 第13张

查看同步状态

要检查Eth1节点同步状态,请使用下列下令接见控制台。

geth attach http://127.0.0.1:8545> eth.syncing

若是显示结果是 false ,解释你的同步已完成。若是显示结果是同步数据,解释你仍在同步。作为参考,也许有7亿个已知状态 knownStates.

参考下方的截图

以太坊2.0主网质押教学 第14张

完成时按“CTRL+d”以退出。

检查毗邻的对等节点

要检查你的Eth1节点所毗邻的对等节点,请使用下列下令接见控制台。

geth attach http://127.0.0.1:8545> net.peerCount

对等节点总数 peerCount 不会跨越你所设置的最大对等节点总数 --maxpeers 。若是无法找到需要同步的对等节点,参阅下一部门。

完成后按“CTRL+d”以退出。

添加 bootnodes (可选)

有时可能要花点时间才气找到要同步的对等节点,可以添加bootnodes以改善这种情形。

接见https://gist.github.com/rfikki/a2ccdc1a31ff24884106da7b9e6a7453 获得最新的清单并凭据下列操作修改geth服务:

$ sudo systemctl stop geth$ sudo nano /etc/systemd/system/geth.service

修改 ExecStart 行,添加 --bootnodes flag:在下方罗列出最新的对等点,并以逗号支解。

ExecStart=geth --http --datadir /var/lib/goethereum --cache 2048 --maxpeers 30 --bootnodes "enode://d0b4a09d072b3f021e233fe55d43dc404a77eeaed32da9860cc72a5523c90d31ef9fab7f3da87967bc52c1118ca3241c0eced50290a87e0a91a271b5fac8d0a6@157.230.142.236:30303,enode://5070366042daaf15752fea340e7ffce3fd8fc576ac846034bd551c3eebac76db122a73fe8418804c5070a5e6d690fae133d9953f85d7aa00375d9a4a06741dbc@116.202.231.71:30303"

保留文件之后退出。然后重启服务并考察。

$ sudo systemctl daemon-reload$ sudo systemctl start geth$ sudo journalctl -fu geth.service

注重:需要凭据一系列特定的步骤来更新Geth。更多信息请参见“附录A:更新Geth”。

第7步:下载Prysm

Prysm客户端由两份二进制文件组成:信标链节点和验证者客户端。本步骤将解说若何下载Prysm和那两份二进制文件。

首先,接见

,

欧博会员开户_ALLbet6.com

欢迎进入欧博会员开户(Allbet Game):www.aLLbetgame.us,欧博官网是欧博集团的官方网站。欧博官网开放Allbet注册、Allbe代理、Allbet电脑客户端、Allbet手机版下载等业务。

,

https://github.com/prysmaticlabs/prysm/releases并找到最新公布的Prysm版本。通常在页面的最顶部,好比:

以太坊2.0主网质押教学 第15张

在“Assets”那一栏(若是需要的话点击睁开) 将下载链接复制粘贴至文档beacon-chain-v…-linux-amd64以及文档validator-v…-linux-amd64中。请确保复制的链接是准确的。

以太坊2.0主网质押教学 第16张

操作下列下令来下载这些文件。将下方指令部门的URL改为最新版本的下载链接。

$ cd ~$ sudo apt install curl$ curl -LO https://github.com/prysmaticlabs/prysm/releases/download/v1.0.0/beacon-chain-v1.0.0-linux-amd64$ curl -LO https://github.com/prysmaticlabs/prysm/releases/download/v1.0.0/validator-v1.0.0-linux-amd64

重命名文档并使它们可执行。将他们复制到目录 /usr/local/bin 中,Prysm会在该处运行这些文件。凭据需求修改文档名。

$ mv beacon-chain-v1.0.0-linux-amd64 beacon-chain$ mv validator-v1.0.0-linux-amd64 validator$ chmod +x beacon-chain$ chmod +x validator$ sudo cp beacon-chain /usr/local/bin$ sudo cp validator /usr/local/bin

清算下载的文档。

$ cd ~$ sudo rm beacon-chain && sudo rm validator

注重:需要凭据一系列特定的步骤来更新Prysm。更多信息请参见“附录B:更新Prysm”。

第8步:导入验证者密钥对

导入你在第1步天生的密钥对,以设置Prysm验证者钱包。

复制验证者密钥存储文件

若是你的验证者存储文件 keystore-m…json 不是在你的Ubuntu服务器上天生的,那么你就需要将这些文件复制粘贴到你的内陆目录中。你可以用 USB 把文件拷已往 (若是你的服务器是内陆的),也可以使用平安的FTP (SFTP)。

将文件放置在:

$HOME/eth2deposit-cli/validator_keys。若是需要的话建立文件目录。

将密钥存储文件导入验证者客户端

建立一个目录以存储验证者钱包数据,并授予当前用户接见该目录的权限。当前用户需要接见权限来执行导入。在 <yourusername> 修改登入用户名。

$ sudo mkdir -p /var/lib/prysm/validator$ sudo chown -R <yourusername>:<yourusername> /var/lib/prysm/validator

运行验证者密钥导入历程。你需要提供放置已天生的密钥存储库文件的路径。好比:$HOME/eth2deposit-cli/validator_keys

$ cd /usr/local/bin$ validator accounts import --keys-dir=$HOME/eth2deposit-cli/validator_keys

然后会泛起一些使用条款,你需要输入接受 accept 才气继续下一步。

你将需要提供一个钱包目录,在这里你可以建立新的钱包。输入:/var/lib/prysm/validator

以太坊2.0主网质押教学 第17张

然后建立一个钱包密码并保留在一个平安的地方。稍后你设置验证者时将需要使用这个密码。

以太坊2.0主网质押教学 第18张

接下来你需要提供你在第1步天生的验证者密钥对。

以太坊2.0主网质押教学 第19张

若是输入准确,密钥将被导入。

以太坊2.0主网质押教学 第20张

建立一个钱包密码文件

建立一个文件来保留钱包密码,这样Prysm验证者服务就可以在不知道密码的情形下接见该钱包了。文件命名为:password.txt

$ sudo nano /var/lib/prysm/validator/password.txt

将你的新钱包密码导入文件中,用你的密码替换掉 YourNewWalletPassword 。

参考下方的截图。按CTRL+x 然后选 ‘y’ ,按回车保留并退出。

以太坊2.0主网质押教学 第21张

接下来会讲若何设置验证者目录以及密码文件的接见权限。

现在已经导入乐成而且设置好钱包了。

第9步:设置Prysm信标节点

在这一步,你要把节点作为服务那样来设置并运行,因此若是系统重启,这个历程将自动重新最先。

设置账户和目录

为信标节点的运行建立一个账户。这种账户不能用来登录进入服务器。

$ sudo useradd --no-create-home --shell /bin/false prysmbeacon

为信标节点的数据库建立数据目录和设置权限。

$ sudo mkdir -p /var/lib/prysm/beacon$ sudo chown -R prysmbeacon:prysmbeacon /var/lib/prysm/beacon$ sudo chmod 700 /var/lib/prysm/beacon$ ls -dl /var/lib/prysm/beacon

参考下方的截图。

以太坊2.0主网质押教学 第22张

建立和设置服务

建立一个systemd服务的config文档来设置服务

$ sudo nano /etc/systemd/system/prysmbeacon.service

将下面这段代码复制粘贴到文档里

[Unit]Description=Prysm Eth2 Client Beacon NodeWants=network-online.targetAfter=network-online.target[Service]User=prysmbeaconGroup=prysmbeaconType=simpleRestart=alwaysRestartSec=5ExecStart=/usr/local/bin/beacon-chain --datadir=/var/lib/prysm/beacon --http-web3provider=http://127.0.0.1:8545 --accept-terms-of-use[Install]WantedBy=multi-user.target

需要注重的flags:

--http-web3provider 若是你正在使用一个远程或第三方的Eth1节点,你需要改变这个值。若是你是在内陆建立Eth1节点的,这里不需要改动。

--accept-terms-of-use 需要自动启动服务。使用这个flag示意接受Prysm的使用条款。

参考下方的截图。按 CTRL+x然后'y',按回车保留然后退出。(译注:此处原文无截图)

重新加载systemd以显示更改。

$ sudo systemctl daemon-reload

启动服务并检查,确保准确运行。

$ sudo systemctl start prysmbeacon$ sudo systemctl status prysmbeacon

参考下方的截图

以太坊2.0主网质押教学 第23张

若是你每一步都做对了,它会用绿色字体显示”active (running)"。若是没有显示,你需要倒回去重复上述步骤,修复问题。按Q退出 (不会影响prysmbeacon的服务)。

允许服务随系统重启而自动重启。

$ sudo systemctl enable prysmbeacon

若是Eth2 链处于创世后的状态,Prysm的信标链会最先同步数据。它可能要花几个小时才气完全实现同步。你可以通过运行journalctl 下令来追踪历程或检查错误。按CTRL+c退出 (将不会影响prysmbeacon的服务)

$ sudo journalctl -fu prysmbeacon.service

日志的截位视图会显示以下状态信息。

Nov 27 06:20:48 ETH-STAKER-001 bash[44829]: time="2020-11-27 06:20:48" level=info msg="Processing deposits from Ethereum 1 chain" deposits=1024 genesisValidators=1019 prefix=powchain

当Eth2主网启动,信标链和验证者将自动最先处置数据。

注重:若是你的Eth1节点仍在同步,你将会泛起以下报错信息。当同步完成了,它会自动消逝。

Nov 27 06:16:29 ETH-STAKER-001 bash[44747]: time="2020-11-27 06:16:29" level=error msg="Could not connect to powchain endpoint" error="could not dial eth1 nodes: eth1 node using incorrect chain id, 0 != 1" prefix=powchain

第10步:设置Prysm验证者客户端

在这一步,你需要将你的验证者客户端作为一项后台服务来设置和运行,因此系统重启时这个历程会自动重启。

建立账户和目录

为验证者客户端的运行建立一个账户。这类账户无法登录服务器。

$ sudo useradd --no-create-home --shell /bin/false prysmvalidator

这个验证者数据目录已经在第8步建立了。现在设置权限,使得这个prysmvalidator账户可以修改这个数据目录。

$ sudo chown -R prysmvalidator:prysmvalidator /var/lib/prysm/validator$ sudo chmod 700 /var/lib/prysm/validator$ ls -dl /var/lib/prysm/validator

参考下方的截图。

以太坊2.0主网质押教学 第24张

验证者钱包的password.txt文档在第8步已经建立了。现在设置权限,使得只有prysmvalidator的账户可以读取这个文档。

$ sudo chmod -R 700 /var/lib/prysm/validator/password.txt$ sudo ls -lh /var/lib/prysm/validator/

以太坊2.0主网质押教学 第25张

建立并设置服务

建立一个systemd服务文件来设置服务

$ sudo nano /etc/systemd/system/prysmvalidator.service

将下面这段代码复制粘贴到文档里

[Unit]Description=Prysm Eth2 Validator ClientWants=network-online.targetAfter=network-online.target[Service]User=prysmvalidatorGroup=prysmvalidatorType=simpleRestart=alwaysRestartSec=5ExecStart=/usr/local/bin/validator --datadir=/var/lib/prysm/validator --wallet-dir=/var/lib/prysm/validator --wallet-password-file=/var/lib/prysm/validator/password.txt --graffiti="<yourgraffiti>" --accept-terms-of-use[Install]WantedBy=multi-user.target

需要注重的flag:

--graffiti="<yourgraffiti>" 填上你的涂鸦字串符。出于平安和隐私,应制止使用能唯一辨识你的信息。好比--graffiti "Hello Eth2! From Dominator"

参考下方的截图。按CTRL+x 然后选 ‘y’ ,按回车保留并退出。

以太坊2.0主网质押教学 第26张

重新加载systemd以显示更改。

$ sudo systemctl daemon-reload

开启服务并检查,确保运行准确。

$ sudo systemctl start prysmvalidator$ sudo systemctl status prysmvalidator

参考下方的截图

以太坊2.0主网质押教学 第27张

若是你每一步都做对了,它会用绿色字体显示”active (running)"。若是没有显示,你需要倒回去重复上述步骤,修复问题。按Q退出 (不会影响prysmvalidator的服务)。

允许服务随系统重启而自动重启。

$ sudo systemctl enable prysmvalidator

你可以通过运行journalctl下令来追踪历程或检查错误。按CTRL+c来退出(将不会影响prysmvalidator的服务)

$ sudo journalctl -fu prysmvalidator.service

日志的截位视图会显示以下状态信息。

ETH-STAKER-001 systemd[1]: Started Prysm Eth2 Validator Client.level=warning msg="Running on ETH2 Mainnet" prefix=flagslevel=info msg="Opened validator wallet" keymanager-kind=direct level=info msg="Checking DB" databasePath="/var/lib/prysm/validator" level=info msg="Starting validator node" prefix=node ...level=info msg="Validating for public key" prefix=validator publicKey=0x9072a8f02c18level=info msg="Validating for public key" prefix=validator publicKey=0xaa5ff8b63560level=info msg="Waiting for beacon chain start log from the ETH 1.0 deposit contract" prefix=validatorlevel=info msg="Beacon chain started" genesisTime=2020-12-01 12:00:23 +0000 UTC prefix=validatorlevel=info msg="Waiting for deposit to be observed by beacon node" prefix=validator pubKey=0x9072a8f02c18 status="UNKNOWN_STATUS"

你可以在 beaconcha.in查看你的验证者状态。只需要搜索你的验证者公钥或使用你的MetaMask (或其他)钱包地址举行搜索。你的数据可能要过一段时间才会在网站上显示。

第11步:举行验证者存款

现在你的节点已经设置好并最先运行,你将需要将ETH存入你的验证者节点。

注重:若是你已经提交了你的质押存款,你可以跳过这一步。

这一步是关于将所需的ETH存入Eth2.0的存款合约。不要把ETH发送到存款合约。这需要在浏览器上通过Eth2.0的Launchpad网站启动你的MetaMask (或其他) 钱包。

注重:若是是在创世后举行的话,你需要在你的Eth1节点和信标链都完全同步完之前存入你的存款。若是你不这样做,当你的Eth1节点或信标链在同步时,Prysm会处于怠工状态,而你可能要遭遇怠工责罚。

以太坊2.0 Launchpad:

https://launchpad.ethereum.org/

一直随着屏幕切换点击这些忠告步骤,直到你到达密钥对天生的部门。选择你计划运行的验证者数目。选择一个与你在步骤1中天生的验证者文件数目相匹配的值。

以太坊2.0主网质押教学 第28张

往下转动,看这些内容你是否赞成,然后点击“Continue” (继续)。

以太坊2.0主网质押教学 第29张

你会被要求上传deposit_data-[timestamp].json文档。这个文档你是在步骤1天生的。浏览/选择或拖沓这个文档,然后点击Continue。

以太坊2.0主网质押教学 第30张

毗邻你的钱包。选择MetaMask (或者是其他支持的钱包),登录,选择存有你的ETH的钱包,然后点击Continue。

你的MetaMask余额就会显示出来。若是你选择了主网且你有足够的ETH余额,网站会允许你继续下一步。

以太坊2.0主网质押教学 第31张

然后会泛起一个Summary (总结),显示验证者数和所需的ETH数目。若是你赞成的话就给那些方框打勾,然后点击Continue。

以太坊2.0主网质押教学 第32张

若是你准备好去存款了,点击"Initiate All Transactions" (启动所有买卖)。

以太坊2.0主网质押教学 第33张

当你到了可以确认每笔买卖那一步时,MetaMask (或其他钱包)的窗口会自动弹出。

当所有的买卖都乐成完成时,你的质押也完成了!

恭喜你已经乐成存入你的质押存款了!

查看你的验证者存款状态

新加入的验证者需要等一下 (几个小时到几天不等)才气激活。你可以以下几步来查看你的密钥状态:

1. 复制你的MetaMask (或其他)钱包地址。

2. 前往这里: beaconcha.in/

3. 用你的钱包地址搜索你的密钥。

点进某个验证者详情,每个验证者激活后你会看到在Status那一栏有预估时间。

现在你眼前有一个条正在运作的信标链、一个验证者节点以及你的主网存款。若是以太坊2.0主网处于运行中,一旦你的存款被激活,你将最先事情并赚取收益。

恭喜你:你终于正式成为了一名以太坊质押者!

是时刻来一顿肥宅水狂欢了。

第12步:监测

由于一些还没被解决的平安问题,监测这一部门将在未来补充到这份教程。

结束语及后续建议

谢谢人人给我这个机遇。希望这份教程能帮到人人。

后续步骤:

  • 检查三次所有密钥与密码备份。

  • 重启你的电脑并确保服务都能自动启动。

  • 领会若何升级客户端与服务器软件。

  • 使用htop来监测内陆电脑的资源

  • 熟悉beaconcha.in ,这样你就能监测你的验证者情形,其提供警报功效 (通        过邮件发送,需要注册)和最多3个POAP。

  • 加入 Ethstaker和 Prysm的Discord,注意主要通知。

  • 请在Discord, Twitter, or Reddit分享对这份教程的反馈。

  • 在 Ethstaker 的discord上辅助其他人设置。

  • 用friend link分享这份教程

  • 支持一下:somer.eth

延伸阅读

强烈建议人人从尽可能多的泉源获取信息,另有许多其他资源可以辅助你熟悉若何在Eth2上质押。

若是作者对这些资源还没测试或验证过,而你采用了的话,是要自己负担风险的。

客户端团队的官方文档 Prysm | Lighthouse | Teku | Nimbus

/r/EthStaker Sticky

以太坊2.0客户端的非官方docker环境

若何在Ubuntu上设置Eth2主网验证者系统

指南 | 若何在ETH2主网设置验证者

指南 | ETH2验证者信标链节点的平安最佳实践

质押节点的分外监察

以太坊2.0质押的Telegram服务

Appendix 附录A — Geth更新

若是你需要更新到Geth的最新版本,请按下列步骤:

$ sudo systemctl stop prysmvalidator$ sudo systemctl stop prysmbeacon$ sudo systemctl stop geth$ sudo apt update && sudo apt upgrade$ sudo systemctl start geth$ sudo systemctl status geth , <-- Check for errors$ sudo journalctl -fu geth , <-- Monitor$ sudo systemctl start prysmbeacon$ sudo systemctl status prysmbeacon, <-- Check for errors$ sudo journalctl -fu prysmbeacon.service , <-- Monitor$ sudo systemctl start prysmvalidator$ sudo systemctl status prysmvalidator, <-- Check for errors$ sudo journalctl -fu prysmvalidator.service , <-- Monitor

Appendix 附录B — 更新Prysm

若是你需要更新到Prysm的最新版本,请按下列步骤举行:

首先,前往这里找出最新的Linux公布。在asset部门 (若是需要的话点击睁开)复制下载毗邻到beacon-chain-v…-linux-amd64 和 validator-v…-linux-amd64文档。注主要复制准确的链接。

将下方指令部门的URL改为最新版本的下载链接。

$ cd ~$ sudo apt install curl$ curl -LO https://github.com/prysmaticlabs/prysm/releases/download/v1.0.0/beacon-chain-v1.0.0-linux-amd64$ curl -LO https://github.com/prysmaticlabs/prysm/releases/download/v1.0.0/validator-v1.0.0-linux-amd64

住手Prysm的服务。

$ sudo systemctl stop prysmvalidator$ sudo systemctl stop prysmbeacon

重命名文档使其可执行。复制它们到/usr/local/bin 目录。需要的话修改下方的文档名。

$ mv beacon-chain-v1.0.0-linux-amd64 beacon-chain$ mv validator-v1.0.0-linux-amd64 validator$ chmod +x beacon-chain$ chmod +x validator$ sudo cp beacon-chain /usr/local/bin$ sudo cp validator /usr/local/bin

重启服务并检查错误。

$ sudo systemctl daemon-reload$ sudo systemctl start prysmbeacon$ sudo systemctl status prysmbeacon, <-- Check for errors$ sudo journalctl -fu prysmbeacon.service , <-- Monitor$ sudo systemctl start prysmvalidator$ sudo systemctl status prysmvalidator, <-- Check for errors$ sudo journalctl -fu prysmvalidator.service , <-- Monitor

清算已下载的文档。

$ cd ~$ sudo rm beacon-chain && sudo rm validator

Appendix附录 C — 扩展逻辑卷

许多时刻Ubuntu只预配200GB的较大固态硬盘,导致用户在同步他们的Eth1节点时就耗尽存储空间了。报错信息近似于:

Fatal: Failed to register the Ethereum service: write /var/lib/goethereum/geth/chaindata/383234.ldb: no space left on device

为领会决这个问题,假设你有一个大于200GB的固态硬盘,你可以通过下列步骤为 LVM (逻辑卷治理) 扩大容量。

$ sudo lvdisplay , <-- Check your logical volume size$ sudo lvm > lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv> exit$ sudo resize2fs /dev/ubuntu-vg/ubuntu-lv$ df -h , <-- Check results

这会重新调整你的硬盘至它的最大可用空间。

若是你在这方面需要支持,请在 EthStaker 的Discord上追求辅助。

  • 评论列表:
  •  卡利注册
     发布于 2020-12-13 00:01:17  回复
  • Allbet Gamingwww.allbet8.us欢迎进入欧博平台网站(Allbet Gaming),Allbet Gaming开放欧博平台网址、欧博注册、欧博APP下载、欧博客户端下载、欧博真人游戏(百家乐)等业务。再继续啊
  •  欧博代理
     发布于 2020-12-14 00:03:56  回复
  • 首先,前往这里找出最新的Linux公布。在asset部门 (若是需要的话点击睁开)复制下载毗邻到beacon-chain-v…-linux-amd64 和 validator-v…-linux-amd64文档。注主要复制准确的链接。不是我吹,我能看三天
    •  USDT自动充值
       发布于 2020-12-14 18:33:54  回复
    • 联博统计www.326681.com采用以太坊区块链高度哈希值作为统计数据,联博以太坊统计数据开源、公平、无任何作弊可能性。联博统计免费提供API接口,支持多语言接入。休息会再看
      •  联博
         发布于 2020-12-18 15:49:10  回复
      • 皇冠新现金网平台www.huangguan.us是一个提供皇冠代理APP下载、皇冠会员APP下载、皇冠体育最新登录线路、新2皇冠网址的的体育平台。新皇冠体育官网是多年来值得广大客户信赖的平台,我们期待您的到来!每次都迫不及待看
        •  联博
           发布于 2020-12-25 14:14:33  回复
        • Allbetwww.allbetgame.us欢迎进入欧博亚洲(Allbet Game),Allbet是欧博亚洲的官方网站。欧博亚洲开放Allbet注册、Allbe代理、Allbet电脑客户端、Allbet手机版下载等业务。忠粉有奖励吗
      •  AllbetGmaing客户端下载
         发布于 2020-12-22 00:09:34  回复
      • 湖人本场首发为勒布朗-詹姆斯、丹尼斯-施罗德、肯塔维厄斯-考德威尔-波普、安东尼-戴维斯、马克-加索尔。看得扎心
    •  UG环球代理
       发布于 2020-12-14 19:42:54  回复
    • BCH:嗯,还能继续看
      •  以太坊彩票网
         发布于 2020-12-15 18:30:30  回复
      • 作者:牛七的区块链分析记故事线很完整
        •  USDT钱包支付
           发布于 2020-12-22 19:09:45  回复
        • 欧博开户www.allbetgame.us欢迎进入欧博开户平台(Allbet Game),欧博开户平台开放欧博会员开户、欧博代理开户、欧博电脑客户端下载、欧博手机版下载等业务。我又飘过了~
      •  皇冠足球app
         发布于 2020-12-16 15:51:50  回复
      • 所有这些之所以能够实现,是由于 Hermez 协议在聚合提款买卖中包含了在目的 rollup 上重构 Hermez Layer 2 中的原始转账所需信息,以及对应的账户信息。这可以在目的 Layer 2 中通过电路处置(circuit processing)的方式来实现(若是支持的话)。良心网站,太喜欢了!
      •  皇冠足球
         发布于 2020-12-19 16:43:05  回复
      • 大多数人都已经意识到了在 Layer 1 和 Layer 2 之间举行切换的可用性问题以及因此发生的超高 gas 费的问题。我也想写,求教
      •  欧博客户端下载
         发布于 2020-12-22 12:39:41  回复
      • 都给我看这篇!
        •  Allbet注册
           发布于 2020-12-25 04:25:25  回复
        • Hermez 『协议可以将统一个』 Layer 1 智能合约在 Layer 2 上的目的地址所收到的 Layer 2 转账举行分组和提取。睡前标配
  •  欧博开户
     发布于 2020-12-22 00:01:26  回复
  • USDT支付接口菜包钱包(caibao.it)是使用TRC-20协议的Usdt第三方支付平台。免费提供Usdt钱包支付接口、Usdt自动充值接口、Usdt无需实名寄售回收。菜包Usdt钱包一键生成Usdt钱包、一键调用API接口、一键无实名出售Usdt。我猜没人不喜欢看
  •  Allbet下载
     发布于 2020-12-26 00:02:03  回复
  • Us apple developer accounts for saleAppledeveloper.io is a reputed website selling apple developer account, providing us, China and worldwide developer individual accounts for sale. It's at low price and good quality. Always provides satisfying services!每天晚上必看
    •  AllbetGmaing
       发布于 2020-12-29 22:14:52  回复
    • 皇冠APP下载www.huangguan.us是一个提供皇冠代理APP下载、皇冠会员APP下载、皇冠体育最新登录线路、新2皇冠网址的的体育平台。新皇冠体育官网是多年来值得广大客户信赖的平台,我们期待您的到来!入坑不吃亏,真的
      •  卡利官网
         发布于 2020-12-30 07:01:46  回复
      • UG环球www.allbetgame.us欢迎进入环球UG官网(UG环球),环球UG官方网站:www.ugbet.net开放环球UG网址访问、环球UG会员注册、环球UG代理申请、环球UG电脑客户端、环球UG手机版下载等业务。我很中意这个
        •  欧博allbet注册
           发布于 2020-12-30 17:52:37  回复
        • 通过大规模迁徙,【<『“用”』>】【户】能够像处置 Layer 2 【<『“用”』>】【户】之间的代币转移那〖样处置〗外部 Layer 1 智能合约。交书迷朋友~
        •  联博统计
           发布于 2021-01-07 06:01:21  回复
        • 台湾大强调,坚持产物平安与服务品质是该公司推行的信心与价值,这次配协力平国际召回「Amazing A32」手机举行软体升级以强化资安防护,公司除严肃以对,也将与「力平国际」充实互助,全力协助客户举行后续事宜。千万不要断更啊
  •  环球UG官方网
     发布于 2020-12-27 00:07:15  回复
  • 欧博官网www.allbetgame.us欢迎进入欧博官网(Allbet Game),欧博官网是欧博集团的官方网站。欧博官网开放Allbet注册、Allbe代理、Allbet电脑客户端、Allbet手机版下载等业务。藗/blockquote
    apple developer enterprise account for rentproviding apple enterprise developer accounts for rent, rent your own enterprise account for app signing. with high quality, stable performance and affordable price.忍不住评论一下
    •  欧博亚洲APP下载
       发布于 2020-12-29 15:44:13  回复
    • 联博APIwww.326681.com采用以太坊区块链高度哈希值作为统计数据,联博以太坊统计数据开源、公平、无任何作弊可能性。联博统计免费提供API接口,支持多语言接入。别结局,我还想一直看
      •  皇冠即时比分
         发布于 2021-02-02 23:12:14  回复
      • 戴维斯的因伤缺席,也导致湖人的战绩出现显著下滑的态势。在之前9场没有戴维斯的情形下,湖人战绩仅为3胜6负,这也令紫金军团俨然间损失了同盟顶级强队的底气。每天都来啊,快火
  •  联博
     发布于 2021-01-04 00:00:24  回复
  • 欧博网址开户www.allbet8.us欢迎进入欧博网址(Allbet Gaming),欧博网址开放会员注册、代理开户、电脑客户端下载、苹果安卓下载等业务。没看的都来啊
  •  皇冠官网平台
     发布于 2021-01-06 00:00:12  回复
  • 在 Ethstaker 的discord上辅助其他人设置。很有特点呢
  •  USDT支付
     发布于 2021-01-15 00:04:08  回复
  • 发现了新大陆,好棒!
  •  ALLBET官网官方注册
     发布于 2021-01-22 00:03:06  回复
  • 欧博网址www.allbetgame.us欢迎进入欧博网址(Allbet Gaming),欧博网址开放会员注册、代理开户、电脑客户端下载、苹果安卓下载等业务。这里啥都有啊
  •  环球UG电脑版下载
     发布于 2021-01-27 00:00:33  回复
  • 沉迷网文数日ing……
    •  环球UG网址
       发布于 2021-02-12 04:03:10  回复
    • 亲子主题客房准备印地安露营帐篷、动物抱枕、积木玩具等设施,并赠予4项好礼:民众汤2至4人、自助式早餐4客、玩具乙组、专属儿童知心备品,让小朋友在自己的小天地里放放电,搭配客房内的白磺温泉尤物汤,让全家人一起疗愈身心灵。自去年7月起,北投水美温泉会馆举行浴池、地板等客房更新升级,爸妈也能前往馆内民众汤、烤箱、SPA等设施享受。反正我跪了
  •  欧博官网手机版
     发布于 2021-02-04 00:39:50  回复
  • UG环球www.allbet8.us欢迎进入环球UG官网(UG环球),环球UG官方网站:www.ugbet.net开放环球UG网址访问、环球UG会员注册、环球UG代理申请、环球UG电脑客户端、环球UG手机版下载等业务。厉害了,我的文

添加回复:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。