نظرة عامة
- إحصاءات الماسترنود
- حمّل PirateCash Core من GitHub, تحضير المحفظة
- استبدل إلى PirateCash، ثم انقلها إلى محفظتك، وبعدها أرسل لنفسك بالضبط 10 000 PIRATE
- إنشاء Linux Droplet
- الاتصال بـ Droplet عبر PuTTY لنظام Windows أو Terminal لنظام Mac
- تعديل ملفات إعداد الماسترنود
حمّل PirateCash Core من GitHub, تحضير المحفظة
- فك ضغط ملف PirateCash Core إلى المكان الذي تختاره. ستشغل المحفظة من هذا المكان.
- شفّر محفظتك: Settings -> Encrypt Wallet. اختر كلمة مرور، اكتبها، ثم أعد تشغيل المحفظة.
- نسخ احتياطي للمحفظة: File -> Backup Wallet
استبدل أي عملة إلى 10 000 PIRATE
استبدل ما لا يقل عن 10 001 PIRATE.
تحتاج إلى عنوان يحتوي بالضبط على 10 000 لتشغيل ماسترنود.
ملاحظة: أنت تستبدل أكثر لأن:
- المنصات تفرض رسوما على السحب
- عند إرسال 10 000 PIRATE إلى نفسك، توجد رسوم معاملة صغيرة.
- أنشئ عنوان استلام: Receive -> New address، ثم أرسل PIRATE من المنصة إلى محفظتك.
- أنشئ عنوانا إضافيا لـ PirateCash: Receive -> New address، واجعل تسمية هذا العنوان mn1.
- انسخ هذا العنوان، اضغط تبويب Send، ثم الصقه في سطر “Pay To:”.
- اكتب 10000 في حقل Amount، ثم اضغط Send.
إنشاء droplet لينكس على DigitalOcean
- سجّل لإنشاء حساب، ثم أنشئ “droplet” جديدا، وهو مصطلح Digital Ocean
- اختر Ubuntu 26.04 (LTS)
- اختر 2 GB/1vCPU، وهو كاف وبسعر 12 دولارا شهريا فقط
- اختر أي منطقة مركز بيانات تفضلها. أنشئها!
- دوّن عنوان IP الخاص بـ droplet
- تحقق من بريدك الإلكتروني للحصول على كلمة مرور root الأولية لـ VPS
الوصول إلى droplet الخاص بك
ادخل إلى VPS عبر PuTTY، فهذا يسمح لك بنسخ الأوامر ولصقها في VPS. وحدة الويب لن تفعل ذلك. يمكن لمستخدمي Mac استخدام Terminal: Launchpad -> Search -> Terminal -> Type: ssh root@IP
- حمّل PuTTY وثبته
- الإعدادات الافتراضية مناسبة. اكتب عنوان IP في خانة Host، واكتب اسما للجلسة، واضغط Save لسهولة الوصول لاحقا. اضغط Open للاتصال.
- سجّل الدخول كـ root. ابحث عن بريد DigitalOcean الذي يحتوي على كلمة المرور الافتراضية. انسخ كلمة المرور والصقها. يمكنك اللصق في PuTTY بزر الفأرة الأيمن. ملاحظة: عند اللصق، ستكون كلمة المرور غير مرئية. فقط اضغط Enter.
- عند أول تسجيل دخول، سيُطلب منك اختيار كلمة مرور جديدة. اكتبها.
إنشاء ملف Swap:
fallocate -l 1G /swapfile chmod 600 /swapfile mkswap /swapfile swapon /swapfile echo "/swapfile none swap sw 0 0" >> /etc/fstab
إعداد ملف تكوين الماسترنود
- ادخل إلى وحدة RPC: Window –> Console
- اكتب: bls generate
- بعد إنشاء مفتاح BLS، أسهل طريقة لإعداد العقدة هي استخدام السكربت من مستودع masternode الخاص بنا.
الإعداد التلقائي من مستودع masternode
- اشتر 10,001 PIRATE، مثلا من PancakeSwap.
- إذا كانت لديك توكنات بالفعل، فاستبدلها بعملة PIRATE الأصلية عبر @piratecash_bot.
- شغّل خادما لدى مزود استضافة، مثلا عبر رابط الاستضافة هذا.
- ادخل إلى الخادم عبر SSH.
- استنسخ المستودع: https://github.com/piratecash/masternode.
- أنشئ مفتاح BLS في PirateCash باستخدام bls generate. ضع قيمة secret في masternodeblsprivkey=xxx داخل /home/pirate/.piratecore/piratecash.conf في Docker أو في /opt/node/piratecash/piratecash.conf على نظام المضيف.
- شغّل ./install_masternode.sh للإعداد التلقائي.
- أعد تشغيل Docker.
- فعّل الماسترنود عبر PirateCash Core، ثم تابع خطوات التفعيل أدناه.
تحديث ماسترنود تلقائية موجودة
استخدم هذا القسم إذا كنت قد ثبّت العقدة سابقا من مستودع masternode. الملف piratecash-main/piratecash.conf داخل المستودع هو قالب فقط؛ إعدادات العقدة الفعلية موجودة في /opt/node/piratecash/piratecash.conf.
- اتصل بالخادم عبر SSH وانتقل إلى مجلد المستودع، وغالبا يكون ~/masternode.
- نفّذ git pull. إذا أخبرك Git أن التغييرات المحلية في piratecash-main/piratecash.conf ستُستبدل، فتأكد أولا أنك لم تحفظ قيما مهمة فقط في ملف القالب هذا.
- إذا كانت القيم موجودة بالفعل في /opt/node/piratecash/piratecash.conf، فتخلص من تعديل القالب المحلي بالأمر git checkout -- piratecash-main/piratecash.conf.
- نفّذ git pull مرة أخرى لتنزيل الملفات الجديدة، بما في ذلك update_masternode.sh.
- نفّذ ./update_masternode.sh. يحدّث السكربت إعداد Docker، ويحافظ على بيانات Corsa RPC أو ينشئها، ويكتبها في .env و/opt/node/piratecash/piratecash.conf، ثم يعيد بناء الحاويات وتشغيلها.
cd ~/masternode git status git checkout -- piratecash-main/piratecash.conf git pull ./update_masternode.sh
بعد انتهاء السكربت، تحقق من أن الحاويات تعمل:
docker compose ps
إذا كنت قد عدّلت ملف القالب داخل المستودع عمدا فقط، فانسخ تلك القيم قبل git checkout -- ثم أعد تطبيقها في /opt/node/piratecash/piratecash.conf بعد التحديث.
- الخيار الثاني: الإعداد اليدوي. هذه الطريقة أكثر تعقيدا؛ استخدمها فقط إذا كنت لا تريد استخدام سكربت الإعداد التلقائي.
-
انتقل إلى Droplet ويرجى تحميل الأرشيف
wget https://github.com/piratecash/piratecash/releases/download/v19.0.0-pirate/piratecashcore-19.0.0-x86_64-pc-linux-gnu.tar.bz2
bzip2 -dc piratecashcore-19.0.0-x86_64-pc-linux-gnu.tar.bz2 | tar -x
- أنشئ الدليل mkdir ~/.piratecore
-
أنشئ الملف ~/.piratecore/piratecash.conf بالمحتوى التالي:
rpcuser=XXXXXXXXXXXXX rpcpassword=XXXXXXXXXXXXXXXXXXXXXXXXXXXX corsarpcuser=XXXXXXXXXXXXX corsarpcpassword=XXXXXXXXXXXXXXXXXXXXXXXXXXXX corsarpcport=46464 rpcallowip=127.0.0.1 server=1 rest=1 listen=1 txindex=1 listenonion=0 daemon=1 maxconnections=700 masternodeblsprivkey=ХХХХХХХХХХХХХХХХХХХ externalip=XXX.XXX.XXX.XXX
استبدل الحقول المعلّمة بـ XXXXXXX كما يلي:
rpcuser: أدخل أي سلسلة من الأرقام أو الحروف، ولا يُسمح بالرموز الخاصة
rpcpassword: أدخل أي سلسلة من الأرقام أو الحروف، ولا يُسمح بالرموز الخاصة
corsarpcuser: أدخل اسم مستخدم RPC لخدمة corsa-chat المحلية
corsarpcpassword: أدخل كلمة مرور RPC لخدمة corsa-chat المحلية
corsarpcport: استخدم منفذ RPC المكوّن لـ corsa-chat؛ القيمة الافتراضية 46464
externalip: هذا هو عنوان IP الخاص بـ VPS
يرجى ملء حقل masternodeblsprivkey عبر تنفيذ الأمر bls generate في وحدة التحكم، ثم إعادة تشغيل ديمون piratecashd.
-
قبل تشغيل PirateCash Core، حمّل وشغّل ديمون Corsa. استخدم نفس قيم اسم مستخدم وكلمة مرور RPC الموجودة في corsarpcuser وcorsarpcpassword داخل piratecash.conf:
wget https://github.com/piratecash/corsa/releases/download/v0.42-alpha/corsa-linux-amd64.tar.bz2
bzip2 -dc corsa-linux-amd64.tar.bz2 | tar -x
nohup env \ CORSA_LISTEN_ADDRESS=:64646 \ CORSA_BOOTSTRAP_PEERS=65.108.204.190:64646 \ CORSA_RPC_HOST=127.0.0.1 \ CORSA_RPC_PORT=46464 \ CORSA_RPC_USERNAME=XXXXXXXXXXXXX \ CORSA_RPC_PASSWORD=XXXXXXXXXXXXXXXXXXXXXXXXXXXX \ ./corsa-node > corsa-node.log 2>&1 &
بعد تشغيل Corsa، شغّل ديمون PirateCash. - ابدأ الديمون: ./piratecashd
-
متطلب corsa-chat في PirateCash Core v19
بدءا من PirateCash Core v19، يجب على الماسترنود أيضا تشغيل عقدة corsa-chat/Corsa محلية على الخادم نفسه. يقوم الإعداد التلقائي في مستودع masternode بإعداد PirateCash Core وcorsa-chat معا. هذا المتطلب موضح في PIP-0001.
-
اضغط Window -> Console لفتح وحدة التحكم. اكتب الأمر التالي في وحدة التحكم لإنشاء عنوان PirateCash جديد للضمان:
getnewaddress MN1
-
لإرسال 10,000 PIRATE إلى هذا العنوان عبر @piratecash_bot، تحتاج إلى الذهاب إلى قائمة 💵 Balance → PirateCash → 📤 Withdraw️ أو تنفيذ الأمر /withdraw_pirate.
-
بعد اكتمال المعاملة، يجب استخراج مفاتيح مختلفة مرتبطة بها لاستخدامها لاحقا في ملف التكوين ومعاملة التسجيل. تعمل معاملة التسجيل هذه كإثبات، إذ تسجل الإعداد على البلوكشين وتضمن إدراج الماسترنود في القائمة الحتمية. يرجى تنفيذ masternode outputs

-
تحضير معاملة ProRegTx
أولا، نحتاج إلى الحصول على عنوان جديد غير مستخدم من المحفظة ليكون عنوان مفتاح المالك (ownerKeyAddr). هذا ليس العنوان نفسه الذي يحتوي على ضمان 10,000 PIRATE. أنشئ عنوانا جديدا كما يلي:
getnewaddress owner_key
-
يمكن استخدام هذا العنوان أيضا كعنوان مفتاح التصويت (votingKeyAddr). بدلا من ذلك، يمكنك تحديد عنوان يقدمه مندوب التصويت الذي تختاره، أو ببساطة إنشاء عنوان مفتاح تصويت جديد كما يلي:
getnewaddress voting_key
-
بعد ذلك، أنشئ أو اختر عنوانا موجودا لاستلام مدفوعات ماسترنود المالك (payoutAddress). يمكن أيضا استخدام عنوان خارجي عن المحفظة:
getnewaddress masternode_payouts

-
قد تحتاج أيضا إلى إنشاء وتمويل عنوان آخر كمصدر لرسوم المعاملة (feeSourceAddress). إذا اخترت عنوان دفع خارجي، يجب تحديد عنوان مصدر للرسوم:
getnewaddress pay_fees
-
سنقوم الآن بتحضير معاملة ProRegTx خاصة غير موقعة باستخدام الأمر protxregister_prepare. صيغة الأمر هي
protx register_prepare collateralHash collateralIndex ipAndPort ownerKeyAddr operatorPubKey votingKeyAddr operatorReward payoutAddress feeSourceAddress
افتح محرر نصوص مثل notepad لتحضير هذا الأمر. استبدل كل وسيط كما يلي:
collateralHash: txid الخاص بمعاملة تمويل ضمان 10,000 PIRATE
collateralIndex: فهرس خرج معاملة تمويل 10,000 PIRATE
ipAndPort: عنوان IP ومنفذ الماسترنود بصيغة x.x.x.x:63636
ownerKeyAddr: عنوان PirateCash الجديد الذي تم إنشاؤه أعلاه لعنوان المالك/التصويت
operatorPubKey: مفتاح BLS العام الذي تم إنشاؤه أعلاه أو المقدم من خدمة الاستضافة
votingKeyAddr: عنوان PirateCash الجديد الذي تم إنشاؤه أعلاه، أو عنوان مندوب يستخدم للتصويت على المقترحات
operatorReward: نسبة مكافأة الكتلة المخصصة للمشغل كدفعة
payoutAddress: عنوان PirateCash جديد أو موجود لاستلام مكافآت ماسترنود المالك
feeSourceAddress: عنوان يستخدم لتمويل رسوم ProTx. سيتم استخدام payoutAddress إذا لم يتم تحديده.

-
توقيع معاملة ProRegTx
سنوقّع الآن محتوى حقل signMessage باستخدام المفتاح الخاص لعنوان الضمان كما هو محدد في collateralAddress. لاحظ أن هذه الخطوة لا تتطلب اتصالا بالإنترنت، ما يعني أن المحفظة يمكن أن تبقى منفصلة عن الإنترنت في التخزين البارد لتوقيع الرسالة. في هذا المثال سنستخدم PirateCash Core مرة أخرى، لكن يمكن أيضا استخدام وظيفة التوقيع في محفظة أجهزة. صيغة الأمر هي:
signmessage collateralAddress signMessage

-
إرسال الرسالة الموقعة
سنرسل الآن معاملة ProRegTx الخاصة إلى البلوكشين لتسجيل الماسترنود. يجب إرسال هذا الأمر من محفظة PirateCash Core تحتوي على رصيد في feeSourceAddress أو payoutAddress، لأن هناك رسوم معاملة قياسية. صيغة الأمر هي:
protx register_submit tx sig
tx: المعاملة المتسلسلة التي أُعيدت سابقا في حقل tx من أمر protx register_prepare
sig: الرسالة الموقعة بمفتاح الضمان من أمر signmessage

-
تم تسجيل الماسترنود الخاص بك الآن، وسيظهر في Deterministic Masternode List بعد تعدين المعاملة في كتلة.

PirateCash Sentinel
لم يعد إعداد Sentinel مطلوبا للماسترنود الجديدة. سيتم deprecated دعم Sentinel في PirateCash Core v20، لذلك لا تحتاج إلى تثبيت Sentinel أو إعداد مهمة cron الخاصة به.