مرکزی مواد پر جائیں

Raspberry Pi 4 پر ایتھیریم نوڈ چلائیں

کلائنٹس
ایگزیکیوشن لیئر
کنسینسس لیئر
نوڈز
درمیانی
ایتھیریم آن آرم
10 جون، 2022
10 منٹ کی پڑھائی

Ethereum on Arm ایک کسٹم لینکس امیج ہے جو Raspberry Pi کو ایتھیریم نوڈ میں تبدیل کر سکتا ہے۔

Ethereum on Arm کا استعمال کرتے ہوئے Raspberry Pi کو ایتھیریم نوڈ میں تبدیل کرنے کے لیے، درج ذیل ہارڈویئر تجویز کیا جاتا ہے:

  • Raspberry 4 (ماڈل B 8GB)، Odroid M1 یا Rock 5B (8GB/16GB RAM) بورڈ
  • MicroSD کارڈ (کم از کم 16 GB کلاس 10)
  • کم از کم 2 TB SSD USB 3.0 ڈسک یا USB ٹو SATA کیس کے ساتھ SSD۔
  • پاور سپلائی
  • ایتھرنیٹ کیبل
  • پورٹ فارورڈنگ (مزید معلومات کے لیے کلائنٹس دیکھیں)
  • ہیٹ سنک اور پنکھے کے ساتھ ایک کیس
  • USB کی بورڈ، مانیٹر اور HDMI کیبل (micro-HDMI) (اختیاری)

ARM پر ایتھیریم کیوں چلائیں؟

ARM بورڈز بہت سستے، لچکدار، اور چھوٹے کمپیوٹرز ہیں۔ یہ ایتھیریم نوڈز چلانے کے لیے بہترین انتخاب ہیں کیونکہ انہیں سستے داموں خریدا جا سکتا ہے، اس طرح کنفیگر کیا جا سکتا ہے کہ ان کے تمام وسائل صرف نوڈ پر مرکوز ہوں، جس سے وہ موثر بنتے ہیں، یہ کم بجلی استعمال کرتے ہیں اور جسمانی طور پر چھوٹے ہوتے ہیں اس لیے یہ کسی بھی گھر میں آسانی سے فٹ ہو سکتے ہیں۔ نوڈز کو شروع کرنا بھی بہت آسان ہے کیونکہ Raspberry Pi کے MicroSD کو بغیر کسی سافٹ ویئر کو ڈاؤن لوڈ یا بلڈ کیے، پہلے سے تیار کردہ امیج کے ساتھ آسانی سے فلیش کیا جا سکتا ہے۔

یہ کیسے کام کرتا ہے؟

Raspberry Pi کے میموری کارڈ کو پہلے سے تیار کردہ امیج کے ساتھ فلیش کیا جاتا ہے۔ اس امیج میں ایتھیریم نوڈ چلانے کے لیے درکار ہر چیز موجود ہوتی ہے۔ فلیش شدہ کارڈ کے ساتھ، صارف کو صرف Raspberry Pi کو آن کرنا ہوتا ہے۔ نوڈ چلانے کے لیے درکار تمام پروسیسز خود بخود شروع ہو جاتے ہیں۔ یہ اس لیے کام کرتا ہے کیونکہ میموری کارڈ میں لینکس پر مبنی آپریٹنگ سسٹم (OS) ہوتا ہے جس کے اوپر سسٹم لیول کے پروسیسز خود بخود چلتے ہیں جو یونٹ کو ایتھیریم نوڈ میں تبدیل کر دیتے ہیں۔

ایتھیریم کو مقبول Raspberry Pi لینکس OS "Raspbian" کا استعمال کرتے ہوئے نہیں چلایا جا سکتا کیونکہ Raspbian اب بھی 32-بٹ آرکیٹیکچر استعمال کرتا ہے جس کی وجہ سے ایتھیریم صارفین کو میموری کے مسائل کا سامنا کرنا پڑتا ہے اور کنسینسس کلائنٹس 32-بٹ بائنریز کو سپورٹ نہیں کرتے۔ اس پر قابو پانے کے لیے، Ethereum on Arm کی ٹیم نے "Armbian" نامی مقامی 64-بٹ OS پر منتقلی کی۔

امیجز تمام ضروری اقدامات کا خیال رکھتی ہیں، ماحول کو ترتیب دینے اور SSD ڈسک کو فارمیٹ کرنے سے لے کر ایتھیریم سافٹ ویئر کو انسٹال کرنے اور چلانے کے ساتھ ساتھ بلاک چین سنکرونائزیشن شروع کرنے تک۔

ایگزیکیوشن اور کنسینسس کلائنٹس پر نوٹ

Ethereum on Arm امیج میں پہلے سے تیار کردہ ایگزیکیوشن اور کنسینسس کلائنٹس بطور سروسز شامل ہیں۔ ایک ایتھیریم نوڈ کے لیے دونوں کلائنٹس کا مطابقت پذیر (synced) اور چلنا ضروری ہے۔ آپ کو صرف امیج ڈاؤن لوڈ اور فلیش کرنے اور پھر سروسز شروع کرنے کی ضرورت ہے۔ امیج میں درج ذیل ایگزیکیوشن کلائنٹس پہلے سے لوڈ ہوتے ہیں:

  • Geth
  • Nethermind
  • Besu

اور درج ذیل کنسینسس کلائنٹس:

  • Lighthouse
  • Nimbus
  • Prysm
  • Teku

آپ کو چلانے کے لیے ہر ایک میں سے ایک کا انتخاب کرنا چاہیے - تمام ایگزیکیوشن کلائنٹس تمام کنسینسس کلائنٹس کے ساتھ مطابقت رکھتے ہیں۔ اگر آپ واضح طور پر کسی کلائنٹ کا انتخاب نہیں کرتے ہیں، تو نوڈ اپنے ڈیفالٹس - Geth اور Lighthouse - پر واپس چلا جائے گا اور بورڈ کے آن ہونے پر انہیں خود بخود چلائے گا۔ آپ کو اپنے راؤٹر پر پورٹ 30303 کھولنا ہوگا تاکہ Geth پیئرز کو تلاش کر سکے اور ان سے جڑ سکے۔

امیج ڈاؤن لوڈ کرنا

Raspberry Pi 4 ایتھیریم امیج ایک "پلگ اینڈ پلے" امیج ہے جو خود بخود ایگزیکیوشن اور کنسینسس کلائنٹس دونوں کو انسٹال اور سیٹ اپ کرتی ہے، انہیں ایک دوسرے سے بات کرنے اور ایتھیریم نیٹ ورک سے جڑنے کے لیے کنفیگر کرتی ہے۔ صارف کو صرف ایک سادہ کمانڈ کا استعمال کرتے ہوئے ان کے پروسیسز کو شروع کرنے کی ضرورت ہے۔

Ethereum on Arm (opens in a new tab) سے Raspberry Pi امیج ڈاؤن لوڈ کریں اور SHA256 ہیش کی تصدیق کریں:

1# ڈاؤن لوڈ کی گئی امیج والی ڈائریکٹری سے
2shasum -a 256 ethonarm_22.04.00.img.zip
3# ہیش کا آؤٹ پٹ یہ ہونا چاہیے: fb497e8f8a7388b62d6e1efbc406b9558bee7ef46ec7e53083630029c117444f

نوٹ کریں کہ Rock 5B اور Odroid M1 بورڈز کے لیے امیجز Ethereum-on-Arm کے ڈاؤن لوڈز پیج (opens in a new tab) پر دستیاب ہیں۔

MicroSD کو فلیش کرنا

Raspberry Pi کے لیے استعمال ہونے والے MicroSD کارڈ کو پہلے ڈیسک ٹاپ یا لیپ ٹاپ میں داخل کیا جانا چاہیے تاکہ اسے فلیش کیا جا سکے۔ پھر، درج ذیل ٹرمینل کمانڈز ڈاؤن لوڈ کی گئی امیج کو SD کارڈ پر فلیش کر دیں گی:

1# مائیکرو ایس ڈی کارڈ کا نام چیک کریں
2sudo fdisk -l
3
4>> sdxxx

نام کو درست کرنا واقعی اہم ہے کیونکہ اگلی کمانڈ میں dd شامل ہے جو کارڈ پر امیج کو پش کرنے سے پہلے اس کے موجودہ مواد کو مکمل طور پر مٹا دیتا ہے۔ جاری رکھنے کے لیے، زپ شدہ امیج والی ڈائرکٹری میں جائیں:

1# ان زپ کریں اور امیج کو فلیش کریں
2unzip ethonarm_22.04.00.img.zip
3sudo dd bs=1M if=ethonarm_22.04.00.img of=/dev/<sdxx> conv=fdatasync status=progress

کارڈ اب فلیش ہو چکا ہے، اس لیے اسے Raspberry Pi میں داخل کیا جا سکتا ہے۔

نوڈ شروع کریں

Raspberry Pi میں SD کارڈ داخل کرنے کے بعد، ایتھرنیٹ کیبل اور SSD کو جوڑیں اور پھر پاور آن کریں۔ OS بوٹ ہو جائے گا اور خود بخود پہلے سے کنفیگر شدہ کام انجام دینا شروع کر دے گا جو Raspberry Pi کو ایتھیریم نوڈ میں تبدیل کرتے ہیں، بشمول کلائنٹ سافٹ ویئر کو انسٹال اور بلڈ کرنا۔ اس میں ممکنہ طور پر 10-15 منٹ لگیں گے۔

ایک بار جب سب کچھ انسٹال اور کنفیگر ہو جائے، تو ssh کنکشن کے ذریعے یا اگر بورڈ کے ساتھ مانیٹر اور کی بورڈ منسلک ہے تو براہ راست ٹرمینل کا استعمال کرتے ہوئے ڈیوائس میں لاگ ان کریں۔ لاگ ان کرنے کے لیے ethereum اکاؤنٹ استعمال کریں، کیونکہ اس کے پاس نوڈ شروع کرنے کے لیے درکار اجازتیں ہیں۔

1User: ethereum
2Password: ethereum

ڈیفالٹ ایگزیکیوشن کلائنٹ، Geth، خود بخود شروع ہو جائے گا۔ آپ درج ذیل ٹرمینل کمانڈ کا استعمال کرتے ہوئے لاگز چیک کر کے اس کی تصدیق کر سکتے ہیں:

1sudo journalctl -u geth -f

کنسینسس کلائنٹ کو واضح طور پر شروع کرنے کی ضرورت ہوتی ہے۔ ایسا کرنے کے لیے، پہلے اپنے راؤٹر پر پورٹ 9000 کھولیں تاکہ Lighthouse پیئرز کو تلاش کر سکے اور ان سے جڑ سکے۔ پھر lighthouse سروس کو فعال اور شروع کریں:

1sudo systemctl enable lighthouse-beacon
2sudo systemctl start lighthouse-beacon

لاگز کا استعمال کرتے ہوئے کلائنٹ کو چیک کریں:

1sudo journalctl -u lighthouse-beacon

نوٹ کریں کہ کنسینسس کلائنٹ چند منٹوں میں مطابقت پذیر (sync) ہو جائے گا کیونکہ یہ چیک پوائنٹ سنک کا استعمال کرتا ہے۔ ایگزیکیوشن کلائنٹ زیادہ وقت لے گا - ممکنہ طور پر کئی گھنٹے، اور یہ اس وقت تک شروع نہیں ہوگا جب تک کہ کنسینسس کلائنٹ پہلے ہی سنکنگ مکمل نہ کر لے (اس کی وجہ یہ ہے کہ ایگزیکیوشن کلائنٹ کو سنک کرنے کے لیے ایک ہدف کی ضرورت ہوتی ہے، جو سنک شدہ کنسینسس کلائنٹ فراہم کرتا ہے)۔

Geth اور Lighthouse سروسز کے چلنے اور سنک ہونے کے ساتھ، آپ کا Raspberry Pi اب ایک ایتھیریم نوڈ ہے! ایتھیریم نیٹ ورک کے ساتھ تعامل کرنے کا سب سے عام طریقہ Geth کے جاوا اسکرپٹ کنسول کا استعمال کرنا ہے، جسے پورٹ 8545 پر Geth کلائنٹ کے ساتھ منسلک کیا جا سکتا ہے۔ Curl جیسے ریکوئسٹ ٹول کا استعمال کرتے ہوئے JSON آبجیکٹس کے طور پر فارمیٹ کی گئی کمانڈز جمع کرانا بھی ممکن ہے۔ Geth کی دستاویزات (opens in a new tab) میں مزید دیکھیں۔

Geth کو Grafana ڈیش بورڈ پر میٹرکس رپورٹ کرنے کے لیے پہلے سے کنفیگر کیا گیا ہے جسے براؤزر میں دیکھا جا سکتا ہے۔ زیادہ جدید صارفین ipaddress:3000 پر جا کر، user: admin اور passwd: ethereum پاس کر کے اپنے نوڈ کی صحت کی نگرانی کے لیے اس فیچر کا استعمال کرنا چاہیں گے۔

ویلیڈیٹرز

کنسینسس کلائنٹ میں اختیاری طور پر ایک ویلیڈیٹر بھی شامل کیا جا سکتا ہے۔ ویلیڈیٹر سافٹ ویئر آپ کے نوڈ کو کنسینسس میں فعال طور پر حصہ لینے کی اجازت دیتا ہے اور نیٹ ورک کو کرپٹو اکنامک سیکیورٹی فراہم کرتا ہے۔ آپ کو اس کام کے لیے ETH میں انعام دیا جاتا ہے۔ ویلیڈیٹر چلانے کے لیے، آپ کے پاس پہلے 32 ETH ہونے چاہئیں، جنہیں ڈپازٹ کنٹریکٹ میں جمع کرانا ضروری ہے۔ ڈپازٹ لانچ پیڈ (opens in a new tab) پر مرحلہ وار گائیڈ پر عمل کر کے کیا جا سکتا ہے۔ یہ کام ڈیسک ٹاپ/لیپ ٹاپ پر کریں، لیکن کیز (keys) نہ بنائیں — یہ براہ راست Raspberry Pi پر کیا جا سکتا ہے۔

Raspberry Pi پر ایک ٹرمینل کھولیں اور ڈپازٹ کیز بنانے کے لیے درج ذیل کمانڈ چلائیں:

1sudo apt-get update
2sudo apt-get install staking-deposit-cli
3cd && deposit new-mnemonic --num_validators 1

(یا ایئر گیپڈ مشین پر چلانے کے لیے staking-deposit-cli (opens in a new tab) ڈاؤن لوڈ کریں، اور deposit new-mnemnonic کمانڈ چلائیں)

میمونک (mnemonic) فریز کو محفوظ رکھیں! مندرجہ بالا کمانڈ نے نوڈ کے کی اسٹور میں دو فائلیں بنائیں: ویلیڈیٹر کیز اور ایک ڈپازٹ ڈیٹا فائل۔ ڈپازٹ ڈیٹا کو لانچ پیڈ میں اپ لوڈ کرنے کی ضرورت ہے، اس لیے اسے Raspberry Pi سے ڈیسک ٹاپ/لیپ ٹاپ پر کاپی کیا جانا چاہیے۔ یہ ssh کنکشن یا کسی دوسرے کاپی/پیسٹ طریقہ کا استعمال کرتے ہوئے کیا جا سکتا ہے۔

ایک بار جب ڈپازٹ ڈیٹا فائل لانچ پیڈ چلانے والے کمپیوٹر پر دستیاب ہو جائے، تو اسے لانچ پیڈ اسکرین پر + پر ڈریگ اور ڈراپ کیا جا سکتا ہے۔ ڈپازٹ کنٹریکٹ میں ٹرانزیکشن بھیجنے کے لیے اسکرین پر دی گئی ہدایات پر عمل کریں۔

واپس Raspberry Pi پر، ایک ویلیڈیٹر شروع کیا جا سکتا ہے۔ اس کے لیے ویلیڈیٹر کیز کو امپورٹ کرنے، انعامات جمع کرنے کے لیے ایڈریس سیٹ کرنے، اور پھر پہلے سے کنفیگر شدہ ویلیڈیٹر پروسیس کو شروع کرنے کی ضرورت ہوتی ہے۔ ذیل کی مثال Lighthouse کے لیے ہے—دیگر کنسینسس کلائنٹس کے لیے ہدایات Ethereum on Arm کی دستاویزات (opens in a new tab) پر دستیاب ہیں:

1# ویلیڈیٹر کیز امپورٹ کریں
2lighthouse account validator import --directory=/home/ethereum/validator_keys
3
4# ریوارڈ ایڈریس سیٹ کریں
5sudo sed -i 's/<ETH_ADDRESS>' /etc/ethereum/lighthouse-validator.conf
6
7# ویلیڈیٹر شروع کریں
8sudo systemctl start lighthouse-validator

مبارک ہو، اب آپ کے پاس Raspberry Pi پر ایک مکمل ایتھیریم نوڈ اور ویلیڈیٹر چل رہا ہے!

مزید تفصیلات

اس صفحہ نے Raspberry Pi کا استعمال کرتے ہوئے Geth-Lighthouse نوڈ اور ویلیڈیٹر سیٹ اپ کرنے کے طریقہ کار کا جائزہ پیش کیا۔ مزید تفصیلی ہدایات Ethereum-on-Arm کی ویب سائٹ (opens in a new tab) پر دستیاب ہیں۔

آراء کی تعریف کی جاتی ہے

ہم جانتے ہیں کہ Raspberry Pi کا ایک بہت بڑا یوزر بیس ہے جو ایتھیریم نیٹ ورک کی صحت پر بہت مثبت اثر ڈال سکتا ہے۔ براہ کرم اس ٹیوٹوریل کی تفصیلات میں جائیں، ٹیسٹ نیٹس پر چلانے کی کوشش کریں، Ethereum on Arm کا GitHub چیک کریں، اپنی رائے دیں، مسائل (issues) اور پل ریکوئسٹس (pull requests) اٹھائیں اور ٹیکنالوجی اور دستاویزات کو آگے بڑھانے میں مدد کریں!

حوالہ جات

  1. https://ubuntu.com/download/raspberry-pi (opens in a new tab)
  2. https://wikipedia.org/wiki/Port_forwarding (opens in a new tab)
  3. https://prometheus.io (opens in a new tab)
  4. https://grafana.com (opens in a new tab)
  5. https://forum.armbian.com/topic/5565-zram-vs-swap/ (opens in a new tab)
  6. https://geth.ethereum.org (opens in a new tab)
  7. https://nethermind.io (opens in a new tab)
  8. https://www.hyperledger.org/projects/besu (opens in a new tab)
  9. https://github.com/prysmaticlabs/prysm (opens in a new tab)
  10. https://lighthouse.sigmaprime.io (opens in a new tab)
  11. https://docs.ethswarm.org/ (opens in a new tab)
  12. https://raiden.network (opens in a new tab)
  13. https://ipfs.io (opens in a new tab)
  14. https://status.im (opens in a new tab)
  15. https://vipnode.org (opens in a new tab)

صفحہ کی آخری اپ ڈیٹ: 26 فروری، 2026

کیا یہ ٹیوٹوریل مددگار تھا؟