Nắm tay bạn tham gia cam kết mạng chính Ethereum 2.0
nguồn|someresat.medium.com

nguồn|
Ubuntu v20.04 (LTS) x64 server UbuntuDựa trên ứng dụng khách Teku của ConsenSys, bài viết này giải thích chi tiết cách tham gia cam kết mạng chính Ethereum 2.0. Chủ yếu dựa trên các công nghệ sau:
Go Ethereum Node (code branch) Go Ethereumnút (chi nhánh mã)
ConsenSyschi nhánh mãchi nhánh mã)
Ví tiền mã hóa plugin trình duyệtMetaMask
Cảm ơn
Cảm ơn
Hướng dẫn này đề cập đến các tài liệu khác nhau trên Internet, cảm ơn những người đóng góp đã cung cấp tài liệu!
Hướng dẫn này đề cập đến các tài liệu khác nhau trên Internet, cảm ơn những người đóng góp đã cung cấp tài liệu!EthStakertri ân
tiêu đề cấp đầu tiên
từ chối trách nhiệm
tiêu đề cấp đầu tiên
ủng hộ
Để được hỗ trợ kỹ thuật, vui lòng liên hệ:
Cộng đồng EthStaker là một cộng đồng đặt cược Ethereum 2.0, giàu tài nguyên và rất thân thiện.
Reddit:https://www.reddit.com/r/ethstaker/
Discord:https://discord.gg/7z8wzehjrJ
tiêu đề cấp đầu tiênhttps://discord.gg/trQ378WCp4
tình trạng
tình trạng
Ngoài ra cần chuẩn bị:
Máy chủ Ubuntu v20.04 (LTS) AMD64Máy chủ Ubuntu v20.04 (LTS) AMD64
Hoặc một máy chủ Ubuntu mới hơn được cài đặt và chạy trên máy tính cục bộ của bạn hoặc trên đám mây.
Việc chạy một máy tính cục bộ giúp phân quyền, bởi vì nếu một nhà cung cấp đám mây gặp sự cố, tất cả các nút được lưu trữ trên nhà cung cấp đó cũng sẽ gặp sự cố.MetaMaskĐã cài đặt hoặc định cấu hình plugin trình duyệt Ví tiền điện tử
(hoặc Portis, Fortmatic). Máy tính có hệ điều hành (Mac, Windows, Linux, v.v.) và trình duyệt (Brave, Safari, FireFox, v.v.).
tiêu đề cấp đầu tiên
Yêu cầu
Yêu cầu
tiêu đề cấp đầu tiên
Tổng quan
Sơ đồ đơn giản hóa sau đây cho biết phạm vi của hướng dẫn này và những sơ đồ màu vàng là những phần được đề cập trong bài viết này:

Toàn bộ quá trình có thể được khái niệm hóa như sau:
Toàn bộ quá trình có thể được khái niệm hóa như sau:
Tạo cặp khóa trình xác thực và dữ liệu tiền gửi
Chuẩn bị máy chủ Ubuntu (tường lửa, cài đặt bảo mật, v.v.)
Thiết lập nút Eth1 và đồng bộ hóa dữ liệu của chuỗi khối Eth1
Hãy bắt đầu ngay bây giờ!
Hãy bắt đầu ngay bây giờ!
tiêu đề cấp đầu tiên
Bước 1: Tạo dữ liệu cầm cố
Việc tham gia đặt cược bắt đầu bằng việc quyết định có bao nhiêu nút trình xác thực bạn muốn chạy và tạo một số tệp dữ liệu dựa trên đó.
Một nút xác thực cần ký gửi 32 ETH và bạn phải có đủ ETH trong ví MetaMask của mình. Ví dụ: nếu bạn dự định chạy 5 nút trình xác thực, bạn sẽ cần chuẩn bị 160 ETH (32*5) và dự trữ một số phí gas. Quá trình gửi tiền sẽ được giải thích sau và phần sau đây sẽ hướng dẫn bạn cách chạy thiết bị.
nhấp chuột
nhấp chuộtđâyđây
Tải xuống bản phát hành mới nhất của ứng dụng Giao diện dòng lệnh gửi tiền (ứng dụng CLI).https://github.com/ethereum/eth2.0-deposit-cli/releases/

Trong cột "Tài sản", chọn phiên bản phù hợp với thiết bị của bạn (chẳng hạn như Windows, Mac, Linux Desktop, v.v.) và tải xuống.
tiêu đề phụ
Chạy công cụ gửi tiền (CLI ký gửi ETH)
Giải nén tệp, phải có một tệp nhị phân (có thể thực thi) bên trong. Công cụ gửi tiền tạo một tệp để đặt cược và một tập hợp các cụm từ hạt giống. Bộ ghi nhớ này cần được lưu giữ an toàn. Có hai lựa chọn dưới đây:
Giải pháp được đề xuất: Sao chép và dán tệp nhị phân này vào ổ USB. Kết nối với máy tính chưa từng kết nối Internet trước đó, sao chép tệp vào máy tính và bắt đầu chạy.
Không nên dùng: Chạy trên máy tính bạn đang sử dụng. Nhưng các kết nối mạng có thể dẫn đến rò rỉ khóa ghi nhớ của bạn. Nếu bạn không có máy tính không kết nối mạng thì hãy ngắt kết nối mạng trước khi bắt đầu chạy.Khi bạn đã sẵn sàng, hãy chạy tệp này trong cửa sổ đầu cuối (hoặc CMD trên cửa sổ) để tiếp tục sử dụng các lệnh được liệt kê bên dưới. Khi bạn đã xác định số lượng nút trình xác thực mà bạn muốn chạy, hãy thay thế số đó bằng
Linux/Mac:
./deposit new-mnemonic --num_validators --chain mainnet
Windows:
deposit.exe new-mnemonic --num_validators --chain mainnet
. Ví dụ: --num_validators 2

Sau khi thực hiện các bước trên trên máy tính bạn chọn, bạn sẽ được yêu cầu tạo mật khẩu kho khóa xác thực và giữ nó ở nơi an toàn. Trong bước sau, bạn sẽ cần kho khóa này để tải khóa trình xác thực lên ví trình xác thực của Teku.

Một tập hợp các cụm từ ghi nhớ sẽ được tạo ra, điều rất quan trọng là bạn phải giữ chúng ở nơi an toàn. Bởi vì cuối cùng, bạn cần bản ghi nhớ để tạo khóa rút tiền để rút ETH đã cam kết và bạn cũng cần sử dụng bản ghi nhớ khi thêm các nút trình xác thực. Nếu bạn mất cụm từ gốc, không có cách nào để rút tài sản của bạn.

Khi bạn nhấp để xác nhận rằng bạn đã ghi nhớ bản ghi nhớ, cặp khóa trình xác thực của bạn sẽ được tạo.

Cặp khóa trình xác nhận mới được tạo và tệp dữ liệu tiền gửi sẽ được đặt ở vị trí đã chỉ định. Nội dung của thư mục như sau:
Giới thiệu về các tệp này:
· Tệp keystore-m...json chứa khóa ký xác thực được mã hóa. Mỗi nút trình xác thực tương ứng với một "kho khóa-m". Tệp này sẽ được nhập vào ví xác thực Teku để sử dụng khi đặt cược. Các tệp này sau đó cần được sao chép và dán vào máy chủ Ubuntu.
tiêu đề phụ
bước cuối cùng
Bây giờ bạn đã có dữ liệu tiền gửi và các tệp kho khóa, đã đến lúc thiết lập máy chủ Ubuntu của bạn.
Điều rất quan trọng là phải hoàn thành và xác minh thiết lập đặt cược của bạn trước. Nếu tiền gửi ETH của bạn được kích hoạt nhưng thiết lập đặt cược chưa sẵn sàng, bạn sẽ bị phạt vì tội phá hoại.
tiêu đề cấp đầu tiên
Bước 2: Kết nối với máy chủ
Sử dụng cổng SSH, kết nối với máy chủ Ubuntu của bạn. Nếu bạn đã đăng nhập với quyền root, tốt nhất là tạo lại tài khoản người dùng với quyền quản trị, vì đăng nhập với quyền root rất rủi ro.
Lưu ý: Nếu bạn chưa đăng nhập với quyền root, bạn có thể bỏ qua bước 3 trực tiếp.Tạo tài khoản mới. hiện hữu
# adduser
Điền tên người dùng của bạn vào , đặt mật khẩu có hệ số bảo mật cao và nhập các thông tin tùy chọn khác.
# usermod -aG sudo
Cấp đặc quyền quản trị cho người dùng mới bằng cách thêm nó vào nhóm sudo. Theo cách này, người dùng nhập sudo trước dòng lệnh và thao tác sẽ được thực hiện với quyền của siêu người dùng.
# rsync --archive --chown=: ~/.ssh /home/
Đăng nhập vào máy chủ Ubuntu.Đăng nhập vào máy chủ Ubuntu.
chữ
Đảm bảo hệ thống được cập nhật lên phần mềm và cài đặt bảo mật mới nhất.
$ sudo apt update && sudo apt upgrade$ sudo apt dist-upgrade && sudo apt autoremove
$ sudo reboot
Bảo mật là rất quan trọng. Nhưng vì bài viết này không phải là hướng dẫn về bảo mật nên chỉ liệt kê một số cài đặt cơ bản.
Bảo mật là rất quan trọng. Nhưng vì bài viết này không phải là hướng dẫn về bảo mật nên chỉ liệt kê một số cài đặt cơ bản.
tiêu đề phụ
Sửa đổi cổng mặc định SSH
Cổng mặc định của SSH là cổng 22, đây cũng là một vectơ dễ bị tấn công, vì vậy cổng SSH có thể được sửa đổi để ngăn chặn các cuộc tấn công.
$ sudo ss -tulpn | grep ':'
Chọn một số cổng trong khoảng 1024 - 49151 và chạy lệnh sau để truy xuất số cổng không sử dụng. Không có gì khác có nghĩa là số cổng không được sử dụng; màu đỏ có nghĩa là nó đang được sử dụng, hãy thử một số cổng khác. Ví dụ: sudo ss -tulpn | grep ':6673'
$ sudo nano /etc/ssh/sshd_config
Sau khi xác định rằng số cổng khả dụng, hãy sửa đổi cổng mặc định bằng cách cập nhật cài đặt SSH.
Port
Truy xuất hoặc thêm (nếu không có) dòng lệnh Cổng 22 trong tệp. Bỏ dấu # (nếu có) và nhập số cổng vào dòng lệnh bên dưới.

Tham khảo ảnh chụp màn hình bên dưới. Nhấn CTRL+x và chọn 'y', nhấn Enter để lưu và thoát.
$ sudo systemctl restart ssh
Khởi động lại dịch vụ SSH để hiển thị các thay đổi đã thực hiện ở trên.tiêu đề phụ
cấu hình tường lửa
cấu hình tường lửa
Các máy chủ Ubuntu 20.04 có thể sử dụng tường lửa UFW mặc định để hạn chế lưu lượng truy cập vào máy chủ, nhưng trước tiên hãy đặt nó để cho phép lưu lượng truy cập vào từ SSH, Go Ethereum, Teku.
Cài đặt tường lửa UFW
$ sudo apt install ufw
Nhập dòng lệnh bên dưới để đảm bảo rằng UFW được cài đặt theo mặc định.
Áp dụng mặc định một cách rõ ràng, từ chối lưu lượng truy cập vào và cho phép lưu lượng truy cập ra.
$ sudo ufw default deny incoming$ sudo ufw default allow outgoing
cho phép ssh
cho phép sshCho phép số cổng bạn đã đặt trước đó
$ sudo ufw allow /tcp
của lưu lượng truy cập vào. SSH yêu cầu giao thức TCP. Ví dụ: sudo ufw allow 6673/tcp
Từ chối cổng SSH số 22
LƯU Ý: Thực hiện bước này sau khi bạn đã hoàn tất việc sửa đổi cổng mặc định của SSH.
$ sudo ufw deny 22/tcp
Cho phép sử dụng Ethereum
Cho phép kết nối ngang hàng (P2P) với các đồng nghiệp Go Ethereum (cổng 30303). Bạn có thể bỏ qua bước này nếu sử dụng nút Eth1 do bên thứ ba lưu trữ.
Lưu ý: Nếu bạn đang lưu trữ cục bộ máy chủ Ubuntu của mình, bạn sẽ cần định cấu hình bộ định tuyến mạng của mình để cho phép lưu lượng truy cập vào từ cổng 30303.
$ sudo ufw allow 30303
Lưu ý: Nếu bạn đang lưu trữ cục bộ máy chủ Ubuntu của mình, bạn sẽ cần định cấu hình bộ định tuyến mạng của mình để cho phép lưu lượng truy cập vào từ cổng 30303.
Cho phép ứng dụng khách Teku
Cho phép kết nối ngang hàng với Teku cho các hoạt động trên các nút chuỗi đèn hiệu (cổng 9000).
$ sudo ufw allow 9000
Lưu ý: Nếu bạn đang lưu trữ cục bộ máy chủ Ubuntu của mình, bạn sẽ cần định cấu hình bộ định tuyến mạng của mình để cho phép lưu lượng truy cập vào từ cổng 9000.
$ sudo ufw enable$ sudo ufw status numbered
Tham khảo ảnh chụp màn hình bên dưới.

tiêu đề cấp đầu tiên
Bước 5: Định cấu hình Bộ hẹn giờ
$ timedatectl
Ubuntu được tích hợp đồng bộ hóa thời gian và được kích hoạt theo mặc định bằng cách sử dụng dịch vụ đồng bộ hóa thời gian của systemd. Xác minh rằng nó đang hoạt động một cách chính xác.
$ sudo timedatectl set-ntp on
Để kích hoạt dịch vụ NTP, hãy chạy:

Chỉ có thể sử dụng một dịch vụ hẹn giờ duy nhất. Nếu bạn đã cài đặt NTPD trước đó, bạn cần kiểm tra xem tệp này có còn tồn tại không và nếu nó tồn tại, vui lòng thao tác dòng lệnh sau để xóa nó.
$ ntpq -p$ sudo apt-get remove ntp
tiêu đề cấp đầu tiên
Bước 6: Thiết lập nút Eth1
tiêu đề phụ
Cài đặt Go Ethereum
Cài đặt Go Ethereum
$ sudo add-apt-repository -y ppa:ethereum/ethereum$ sudo apt update
$ sudo apt install geth
Tạo một thư mục dữ liệu cho chuỗi khối Eth1 để lưu trữ dữ liệu nút Eth1.
$ sudo useradd --no-create-home --shell /bin/false goeth
Tạo một thư mục dữ liệu cho chuỗi khối Eth1 để lưu trữ dữ liệu nút Eth1.
$ sudo mkdir -p /var/lib/goethereum
Đặt quyền của thư mục. Tài khoản goeth cần có quyền sửa đổi thư mục dữ liệu.
$ sudo chown -R goeth:goeth /var/lib/goethereum
Tạo tệp cấu hình dịch vụ systemd để định cấu hình dịch vụ.
$ sudo nano /etc/systemd/system/geth.service
Sao chép và dán cấu hình dịch vụ sau vào tài liệu.
[Unit]Description=Go Ethereum Client
After=network.target
Wants=network.target[Service]
User=goeth
Group=goeth
Type=simple
Restart=always
RestartSec=5
ExecStart=geth --http --datadir /var/lib/goethereum --cache 2048 --maxpeers 30[Install]
WantedBy=default.target
Sao chép và dán cấu hình dịch vụ sau vào tài liệu.flags:
cần chú ýhttp://localhost:8545)。
--http được sử dụng để hiển thị một cổng HTTP để kết nối với các nút chuỗi đèn hiệu Teku (
--cache đề cập đến kích thước của bộ đệm trong tính bằng GB. Giá trị tăng hoặc giảm tùy thuộc vào bộ nhớ hệ thống khả dụng của bạn. Cài đặt 2048 sẽ sử dụng khoảng 4-5 GB bộ nhớ.
--maxpeers đề cập đến số lượng tối đa các đồng nghiệp được kết nối. Số lượng nút càng lớn thì càng có nhiều không gian cho dữ liệu mạng. Vì vậy, hãy nhớ đừng đặt giá trị này quá thấp, nếu không các nút Eth1 của bạn sẽ gặp khó khăn trong việc đồng bộ hóa.

Tham khảo ảnh chụp màn hình bên dưới. Nhấn CTRL+x và chọn 'y', nhấn Enter để lưu và thoát.
$ sudo systemctl daemon-reload$ sudo systemctl start geth
$ sudo systemctl status geth
Tham khảo ảnh chụp màn hình bên dưới:

Nếu bạn đã làm mọi thứ đúng, nó sẽ hiện "đang hoạt động (đang chạy)" bằng phông chữ màu xanh lá cây". Nếu nó không hiển thị, bạn cần quay lại và lặp lại các bước trên để khắc phục sự cố. Nhấn Q để thoát (thao tác này sẽ không ảnh hưởng đến dịch vụ geth).
Cho phép dịch vụ geth tự động khởi động khi khởi động lại hệ thống.
$ sudo systemctl enable geth
Cho phép dịch vụ geth tự động khởi động khi khởi động lại hệ thống.
$ sudo journalctl -fu geth.service
Tham khảo ảnh chụp màn hình bên dưới:

tiêu đề phụ
Kiểm tra trạng thái đồng bộ hóa
geth attach http://127.0.0.1:8545> eth.syncing
Để kiểm tra trạng thái đồng bộ hóa nút Eth1, hãy sử dụng lệnh sau để truy cập bảng điều khiển.
Nếu nó hiển thị false , quá trình đồng bộ hóa của bạn đã hoàn tất. Nếu thông báo Đồng bộ hóa dữ liệu, điều đó có nghĩa là bạn vẫn đang đồng bộ hóa. Để tham khảo, có khoảng 700-800 triệu Bang đã biết.

Nhấn "CTRL+d" khi hoàn tất để thoát.
tiêu đề phụ
Kiểm tra các đồng nghiệp được kết nối
geth attach http://127.0.0.1:8545> net.peerCount
Để kiểm tra nút Eth1 của bạn được kết nối với nút ngang hàng nào, hãy sử dụng lệnh sau để truy cập bảng điều khiển.
Nhấn "CTRL+d" khi hoàn tất để thoát.
tiêu đề phụ
Thêm mã khởi động (tùy chọn)https://gist.github.com/rfikki/a2ccdc1a31ff24884106da7b9e6a7453Đôi khi có thể mất một lúc để tìm một đồng nghiệp để đồng bộ hóa, có thể thêm mã khởi động để cải thiện tình hình. truy cập
$ sudo systemctl stop geth$ sudo nano /etc/systemd/system/geth.service
Sửa đổi dòng ExecStart để thêm cờ --bootnodes: Liệt kê các nút ngang hàng mới nhất bên dưới, được phân tách bằng dấu phẩy.
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"
Lưu file và thoát. Sau đó khởi động lại dịch vụ và xem.
$ sudo systemctl daemon-reload$ sudo systemctl start geth
$ sudo journalctl -fu geth.service
Lưu ý: Có một số bước cụ thể cần được tuân theo để cập nhật Geth. Xem "Phụ lục A: Cập nhật Geth" để biết thêm thông tin.
tiêu đề cấp đầu tiên
Bước 7: Tải xuống Teku
Ứng dụng khách Teke bao gồm hai tệp nhị phân: nút chuỗi đèn hiệu và ứng dụng khách trình xác thực. Bước này sẽ giải thích cách tải xuống các tệp nhị phân Teku.Lân đâu tơi thăm

https://github.com/ConsenSys/teku/releases và tìm phiên bản Teku được phát hành mới nhất. Thông thường ở đầu trang, ví dụ:

Chọn "phân phối nhị phân" trong cột "Tải xuống".

Sau đó sao chép và dán liên kết tải xuống vào tệp "teku-…tar.gz". Vui lòng đảm bảo rằng liên kết được sao chép là chính xác.
Chạy các lệnh sau để tải xuống các tệp này. Thay đổi URL trong phần hướng dẫn bên dưới thành liên kết tải xuống phiên bản mới nhất. 。
$ cd ~$ sudo apt install curl
$ curl -Lo teku-20.11.0.tar.gz https://bintray.com/consensys/pegasys-repo/download_file?file_path=teku-20.11.0.tar.gz
Lưu ý cú pháp là curl -Lo
$ tar xvf teku-20.11.0.tar.gz$ sudo cp -a teku-20.11.0 /usr/local/bin/teku
Trích xuất các tệp nhị phân từ kho lưu trữ và sao chép chúng vào thư mục /usr/local/bin nơi ứng dụng khách Teku sẽ chạy chúng. Sửa đổi tên tập tin theo yêu cầu.
$ sudo apt install default-jre
Cài đặt các tệp cần thiết để chạy Java.
$ cd ~$ sudo rm teku-20.11.0.tar.gz
$ sudo rm -r teku-20.11.0
LƯU Ý: Có một số bước cụ thể cần được tuân theo để cập nhật Teku. Xem "Phụ lục B: Cập nhật Teku" để biết thêm thông tin.
tiêu đề cấp đầu tiên
Nhập cặp khóa trình xác thực để định cấu hình Teku.
tiêu đề phụ
Sao chép tệp kho khóa trình xác thựcNếu tệp lưu trữ trình xác thực của bạn keystore-m...json không được tạo trên máy chủ Ubuntu của bạn, thì bạn sẽ cần sao chép-dán các tệp này vào thư mục cục bộ của mình. Bạn có thể sao chép tệp qua USB (nếu máy chủ của bạn là cục bộ) hoặc sử dụng。
Đặt tệp tại: $HOME/eth2deposit-cli/validator_keys. Tạo thư mục tập tin nếu cần thiết.
tiêu đề phụ
Nhập tệp kho khóa vào trình xác thực
$ sudo mkdir -p /var/lib/teku$ sudo cp -a /$HOME/eth2deposit-cli/validator_keys /var/lib/teku
Tạo một thư mục để lưu trữ các khóa trình xác thực và sao chép qua thư mục validator_keys chứa tệp keystore-m...json.
$ cd /var/lib/teku/validator_keys$ ls
$ sudo rm
tiêu đề phụ

Tạo tài liệu mật khẩu trình xác thực
Tạo tài liệu mật khẩu trình xác thực
Teku yêu cầu tệp mật khẩu để truy cập từng tài khoản trình xác thực trong khi chạy và tự động khởi động lại dịch vụ.
Mỗi tệp keystore-m...json yêu cầu một tệp mật khẩu tương ứng. Bước này là bắt buộc ngay cả khi mật khẩu cho mỗi tài khoản trình xác nhận giống nhau. Việc đặt tên cho tệp mật khẩu cần khớp với tệp keystore-m...json tương ứng.
$ ls /var/lib/teku/validator_keys
Nhận danh sách các tài liệu lưu trữ mật khẩu
Đối với mỗi tệp keystore_m*.json, hãy tạo một tệp mật khẩu có cùng tên.Trước khi bạn thực hiện lệnh tiếp theo, hãy bắt đầu với
$ sudo nano /var/lib/teku/validator_keys/.txt
Đặt tên cho tài liệu json này. Đừng quên thêm .txt vào cuối. Ví dụ: sudo nano /var/lib/teku/validator_keys/keystore-m_12381_3600_0_0_0–1606351647.txt
Trong tệp txt, thay thế mật khẩu kho khóa bằng YourKeystorePasswordForThisValidator (mật khẩu bạn đã cung cấp khi tạo tệp trình xác thực ở bước 1)

Tham khảo ảnh chụp màn hình bên dưới. Nhấn CTRL+x rồi 'y', nhấn enter để lưu và thoát.
Lặp lại các bước trên cho từng tệp *.json cho đến khi mỗi tệp json có tệp txt chứa mật khẩu lưu trữ khóa tương ứng.

LƯU Ý: Không nên có tệp *deposit_data-\*.json*. Nếu có, xóa nó đi. Nó sẽ gây ra lỗi vì Teku sẽ nghĩ rằng nó có tệp mật khẩu tương ứng.
tiêu đề cấp đầu tiên
tiêu đề phụ
Thiết lập tài khoản và thư mục
tiêu đề phụ
$ sudo useradd --no-create-home --shell /bin/false teku
Đặt quyền
Đặt quyền
$ sudo chown -R teku:teku /var/lib/teku$ ls -dl /var/lib/teku
Đặt quyền thư mục. Tài khoản Teku cần được ủy quyền nếu muốn sửa đổi thư mục dữ liệu (/var/lib/teku) đã tạo ở bước trước.

Tham khảo ảnh chụp màn hình bên dưới.
$ sudo chmod -R 700 /var/lib/teku/validator_keys$ sudo ls -lh /var/lib/teku/validator_keys
Tham khảo ảnh chụp màn hình bên dưới.

tiêu đề phụ
Tạo tệp cấu hình dịch vụ systemd để định cấu hình dịch vụ
$ sudo nano /etc/systemd/system/teku.service
Sao chép và dán mã dưới đây vào tài liệu
[Unit]Description=Teku Eth2 Client
Wants=network-online.target
After=network-online.target[Service]
User=teku
Group=teku
Type=simple
Restart=always
RestartSec=5
Environment="JAVA_OPTS=-Xmx2g"
ExecStart=/usr/local/bin/teku/bin/teku --data-base-path=/var/lib/teku --eth1-endpoint=http://localhost:8545 --validator-keys=/var/lib/teku/validator_keys:/var/lib/teku/validator_keys --rest-api-enabled=true --rest-api-docs-enabled=true --metrics-enabled --validators-graffiti=""[Install]
WantedBy=multi-user.target
Sao chép và dán mã dưới đây vào tài liệuflags:
cần chú ý
Môi trường=”JAVA_OPTS=-Xmx2g” giới hạn kích thước heap là 2GB, vì vậy Teku chạy với khoảng 3–3,5GB tổng bộ nhớ khả dụng.
--validators-graffiti=""--eth1-endpoint Nếu bạn đang sử dụng nút Eth1 từ xa hoặc bên thứ ba, hãy thay đổi giá trị này. Nếu bạn đã tạo cục bộ nút Eth1 này thì không cần thay đổi."Hello Eth2! From Dominator"。
Tham khảo ảnh chụp màn hình bên dưới. Nhấn CTRL+x và chọn 'y', nhấn Enter để lưu và thoát.

Tải lại systemd để hiển thị các thay đổi.
$ sudo systemctl daemon-reload
Lưu ý: Nếu bạn đang chạy nút Eth1 cục bộ (xem bước 6), bạn nên đợi cho đến khi nút được đồng bộ hóa hoàn toàn trước khi bắt đầu dịch vụ Teku. Kiểm tra tiến độ tại đây: *sudo journalctl -fu geth.service*
Bắt đầu dịch vụ và kiểm tra để đảm bảo dịch vụ đang chạy chính xác.
$ sudo systemctl start teku$ sudo systemctl status teku
Tham khảo ảnh chụp màn hình bên dưới

Nếu bạn đã làm mọi thứ đúng, nó sẽ hiện "đang hoạt động (đang chạy)" bằng phông chữ màu xanh lá cây". Nếu nó không hiển thị, bạn cần quay lại và lặp lại các bước trên để khắc phục sự cố. Nhấn Q để thoát (sẽ không ảnh hưởng đến dịch vụ của teku).
Cho phép dịch vụ tự động khởi động lại khi hệ thống khởi động lại.
$ sudo systemctl enable teku
Cho phép dịch vụ tự động khởi động lại khi hệ thống khởi động lại.
$ sudo journalctl -fu teku.service
Nếu chuỗi Eth2 ở trạng thái sau khi tạo, thì chuỗi báo hiệu Teku sẽ bắt đầu đồng bộ hóa dữ liệu. Có thể mất vài giờ để đồng bộ hóa hoàn toàn. Bạn có thể theo dõi tiến trình hoặc kiểm tra lỗi bằng cách chạy lệnh journalctl. Nhấn CTRL+c để thoát (sẽ không ảnh hưởng đến dịch vụ của teku)
Nov 26 21:00:50 ETH-STAKER-001 teku[41629]: 21:00:50.573 INFO - Eth1 tracker successfully caught up to chain headNov 26 21:10:49 ETH-STAKER-001 teku[41629]: 21:10:49.010 INFO - 4 days 14 hours 49 minutes 34 seconds until genesis time is reached. Peers: 74
Chế độ xem nhật ký bị cắt ngắn hiển thị thông tin trạng thái sau.
Khi mạng chính Eth2 khởi chạy, chuỗi đèn hiệu và trình xác thực sẽ tự động bắt đầu xử lý dữ liệu.beaconcha.inKiểm tra trạng thái chứng nhận của bạn. Chỉ cần tìm kiếm khóa công khai của trình xác thực hoặc sử dụng địa chỉ ví MetaMask (hoặc địa chỉ khác) của bạn để tìm kiếm. Có thể mất một thời gian để dữ liệu của bạn xuất hiện trên trang web.
tiêu đề cấp đầu tiên
Bước 10: Gửi tiền cho Trình xác thực
Bây giờ nút của bạn đã được thiết lập và chạy, bạn sẽ cần gửi ETH vào nút trình xác thực của mình.
LƯU Ý: Nếu bạn đã gửi tiền đặt cọc, bạn có thể bỏ qua bước này
Bước này nói về việc gửi ETH cần thiết vào hợp đồng ký gửi của Eth2.0. Không gửi ETH vào hợp đồng tiền gửi. Điều này yêu cầu khởi chạy ví MetaMask (hoặc ví khác) của bạn thông qua trang web Eth2.0 Launchpad trên trình duyệt.
LƯU Ý: Nếu thực hiện sau khi khởi tạo, bạn sẽ cần gửi tiền trước khi cả nút Eth1 và chuỗi đèn hiệu của bạn được đồng bộ hóa hoàn toàn. Nếu bạn không làm như vậy, Teku sẽ ở trạng thái phá hoại trong khi nút Eth1 hoặc chuỗi đèn hiệu của bạn đang đồng bộ hóa và bạn có thể phải chịu hình phạt phá hoại.https://launchpad.ethereum.org/
Tiếp tục nhấp qua các bước cảnh báo khi màn hình chuyển tiếp cho đến khi bạn đến phần tạo cặp khóa. Chọn số lượng trình xác thực bạn định chạy. Chọn một giá trị khớp với số lượng tệp chứng nhận mà bạn đã tạo ở bước 1.

Cuộn xuống để xem bạn có đồng ý với nội dung không, sau đó nhấp vào "Tiếp tục".

Cuộn xuống để xem bạn có đồng ý với nội dung không, sau đó nhấp vào "Tiếp tục".

Bạn sẽ được yêu cầu tải lên tệp Deposit_data-[timestamp].json. Tài liệu này bạn đã tạo ở bước 1. Duyệt/chọn hoặc kéo và thả tài liệu, sau đó nhấp vào Tiếp tục.
Kết nối ví của bạn. Chọn MetaMask (hoặc bất kỳ ví được hỗ trợ nào khác), đăng nhập, chọn ví chứa ETH của bạn và nhấp vào Tiếp tục.

Số dư MetaMask của bạn sẽ được hiển thị. Nếu bạn chọn mạng chính và bạn có đủ số dư ETH, trang web sẽ cho phép bạn tiến hành bước tiếp theo.

Nếu bạn đã sẵn sàng nạp tiền, hãy nhấp vào"Initiate All Transactions"(bắt đầu tất cả các giao dịch).

Khi bạn đến điểm mà bạn có thể xác nhận từng giao dịch, cửa sổ MetaMask (hoặc ví khác) sẽ tự động bật lên.
Khi tất cả các giao dịch được hoàn thành thành công, cổ phần của bạn đã hoàn tất!

Kiểm tra trạng thái của khoản tiền gửi xác thực của bạn
Kiểm tra trạng thái của khoản tiền gửi xác thực của bạn
Những người xác thực mới tham gia sẽ cần đợi (vài giờ đến vài ngày) để kích hoạt. Bạn có thể kiểm tra trạng thái khóa của mình bằng cách thực hiện theo các bước sau:
Những người xác thực mới tham gia sẽ cần đợi (vài giờ đến vài ngày) để kích hoạt. Bạn có thể kiểm tra trạng thái khóa của mình bằng cách thực hiện theo các bước sau:
Sao chép địa chỉ ví MetaMask (hoặc khác) của bạn.beaconcha.in/
Đến đây:

Tìm kiếm khóa của bạn với địa chỉ ví của bạn

Nhấp vào thông tin chi tiết của người xác minh và sau khi mỗi người xác minh được kích hoạt, bạn sẽ thấy thời gian ước tính trong cột Trạng thái.
Bây giờ bạn có một chuỗi đèn hiệu đang hoạt động, một nút xác thực và tiền gửi trên mạng chính của bạn trước mặt bạn. Nếu mạng chính Ethereum 2.0 hoạt động, sau khi khoản tiền gửi của bạn được kích hoạt, bạn sẽ bắt đầu làm việc và kiếm tiền.
Đó là thời gian cho một lễ hội nước nhà béo.
tiêu đề cấp đầu tiên
Bước 11: Giám sát
Do một số vấn đề bảo mật chưa được giải quyết, giám sát sẽ được thêm vào hướng dẫn này trong tương lai.
Kết luận và đề xuất tiếp theo
Cảm ơn tất cả các bạn đã cho tôi cơ hội này. Hy vọng hướng dẫn này có thể giúp bạn.
Bước tiếp theo:
- Kiểm tra ba lần tất cả các bản sao lưu khóa và mật khẩu.
- Khởi động lại máy tính của bạn và đảm bảo các dịch vụ tự khởi động.
- Học cách nâng cấp phần mềm client và server.
- Sử dụng htop để theo dõi tài nguyên của máy tính cục bộbeaconcha.in- thân thuộc, cho phép bạn theo dõi trình xác nhận của mình, cung cấp cảnh báo (được gửi qua email, yêu cầu đăng ký) và tối đa。
- tham gia vàoEthstakerVàTekuVà
Discord, hãy theo dõi các thông báo quan trọng.Discord、 Twitter- vui lòng tạiReddit,hoặc
Chia sẻ phản hồi của bạn về hướng dẫn này.Ethstaker- hiện hữu
Giúp đỡ những người khác thiết lập sự bất hòa.friend link- sử dụng
- Hỗ trợ: somer.eth
tiêu đề cấp đầu tiên
đọc thêm
Bạn nên lấy thông tin từ càng nhiều nguồn càng tốt và có nhiều tài nguyên khác có thể giúp bạn làm quen với việc đặt cược trên Eth2.
Nếu các tác giả chưa kiểm tra hoặc xác minh các nguồn này, bạn tự chịu rủi ro khi sử dụng chúng.Prysm | Lighthouse | Teku | Nimbus
- - Tài liệu chính thức từ nhóm khách hàng
- Môi trường docker không chính thức dành cho khách hàng Ethereum 2.0
- Cách thiết lập hệ thống xác thực Eth2 Mainnet trên Ubuntu
- Hướng dẫn | Cách thiết lập trình xác thực trên mạng chính ETH2
- Hướng dẫn | Các phương pháp hay nhất về bảo mật cho các nút chuỗi Beacon của Trình xác thực ETH2
- Dịch vụ Telegram được cam kết bởi Ethereum 2.0 https://9elements.com/blog/ethereum-2-0-2/)
tiêu đề cấp đầu tiên
Nếu bạn cần cập nhật lên phiên bản Geth mới nhất, hãy làm theo các bước sau:
$ sudo systemctl stop teku$ 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 teku
$ sudo systemctl status teku # <-- Check for errors
$ sudo journalctl -fu teku.service # <-- Monitor
tiêu đề cấp đầu tiên
Phụ lục B - Cập nhật Teku
Đầu tiên, đi đếnđâyđây"binary distribution"Tìm hiểu về các bản phát hành Linux mới nhất. Trong cột Tải xuống, nhấp vào
. Sau đó sao chép liên kết tải xuống vào tệp teku-…tar.gz. Đảm bảo rằng bạn đã sao chép đúng liên kết.
$ cd ~$ sudo apt install curl
$ curl -Lo teku-20.11.0.tar.gz https://bintray.com/consensys/pegasys-repo/download_file?file_path=teku-20.11.0.tar.gz
Thay đổi URL trong phần hướng dẫn bên dưới thành liên kết tải xuống phiên bản mới nhất.
$ sudo systemctl stop teku
Dừng dịch vụ khách hàng Teku.
$ tar xvf teku-20.11.0.tar.gz$ sudo rm -r /usr/local/bin/teku # <-- Remove the old files
$ sudo cp -a teku-20.11.0 /usr/local/bin/teku
Trích xuất các tệp nhị phân từ kho lưu trữ và sao chép /usr/local/bin vào thư mục. Sửa đổi tên URL nếu cần.
$ sudo systemctl start teku$ sudo systemctl status teku # <-- Check for errors
$ sudo journalctl -fu teku.service # <-- Monitor
Làm sạch tài liệu đề xuất. Sửa đổi tên tài liệu nếu cần thiết.
$ cd ~$ sudo rm teku-20.11.0.tar.gz
$ sudo rm -r teku-20.11.0
tiêu đề cấp đầu tiên
Phụ lục C - Mở rộng Khối logic
Fatal: Failed to register the Ethereum service: write /var/lib/goethereum/geth/chaindata/383234.ldb: no space left on device
Nhiều lần Ubuntu chỉ cung cấp trước các ổ SSD 200 GB lớn hơn, khiến người dùng hết dung lượng lưu trữ khi đồng bộ hóa các nút Eth1 của họ. Thông báo lỗi tương tự như:LVMĐể giải quyết vấn đề này, giả sử bạn có ổ cứng thể rắn lớn hơn 200 GB, bạn có thể sử dụng các bước sau để
$ 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
(Quản lý Khối lượng Hợp lý) Để mở rộng dung lượng:
Thao tác này sẽ thay đổi kích thước ổ cứng của bạn thành dung lượng tối đa có sẵn.EthStakerYêu cầu trợ giúp trên Discord.
tiêu đề cấp đầu tiên
Bài viết này (hướng dẫn) chỉ dành cho mục đích thông tin và không phải là lời khuyên chuyên nghiệp. Tác giả không đảm bảo tính chính xác, chất lượng, đầy đủ, kịp thời và sẵn có của bất kỳ thông tin nào trong bài viết. Tất cả thông tin ở đây được cung cấp "nguyên trạng" mà không có bảo đảm dưới bất kỳ hình thức nào và có thể thay đổi mà không cần thông báo trước. Tác giả từ chối mọi bảo đảm rõ ràng, ngụ ý và theo luật định dưới bất kỳ hình thức nào, bao gồm bảo đảm về tính chính xác, kịp thời, đầy đủ hoặc phù hợp của nội dung bài viết cho bất kỳ mục đích nào. Tác giả cũng không chịu trách nhiệm cho bất kỳ thiệt hại trực tiếp, gián tiếp, ngẫu nhiên, do hậu quả hoặc bất kỳ thiệt hại nào khác phát sinh từ việc sử dụng tài liệu này hoặc dựa trên thông tin được trình bày ở đây. Điều này bao gồm bất kỳ thương tích cá nhân, gián đoạn kinh doanh, mất khả năng sử dụng, mất dữ liệu, mất lợi nhuận hoặc bất kỳ tổn thất tiền tệ nào khác, cho dù trong hợp đồng, sơ suất hoặc sử dụng sai mục đích khác, ngay cả khi tác giả đã được thông báo về khả năng đó.
Tài khoản chính thức: Trạm Trung Quốc ETH
Tài khoản chính thức: Trạm Trung Quốc ETH


