الصورة من قبل بيرو Kalimero على Unsplash

كيفية تشغيل مضيف Codius الخاص بك

واحصل على أموال مقابل القيام بذلك!

إعداد مضيف Codius

في النظام البيئي للبرنامج الذكي الذي تنشئه Codius ، يتم إنشاء علاقة بين المضيفين والمطورين تسمح بوفرة من خيارات الاستضافة للمطور وتسمح للمضيف باستلام الدفع لاستضافة الكود المذكور. بالنسبة إلى مضيف Codius الطموح ، سيوضح هذا المنشور الخطوات اللازمة لإطلاق واحد لأنفسهم.

المتطلبات الأساسية

يجب أن يكون لديك خادم لتشغيل Codius ، والذي يجب أن يفي بالمواصفات التالية:

  • CentOS 7. يفترض هذا البرنامج التعليمي أنك تستخدم CentOS 7 وهذا هو نظام التشغيل الوحيد المدعوم رسميًا في الوقت الحالي. نحن نعمل على تقديم تعليمات لتوزيعات Linux الأخرى.
  • x86 - 64 العمارة. تحتاج إلى معالج 64 بت حديث. لسوء الحظ ، ARM غير معتمد حتى الآن.
  • دعم المحاكاة الافتراضية. سيعمل مضيف Codius على تشغيل العقود على شكل VM ، لذلك تحتاج إلى معالج يدعم المحاكاة الافتراضية. لحسن الحظ ، فإن معظم المعالجات الحديثة تفعل.
  • المعدن العاري (مستحسن). يمكنك الحصول على مثيلات معدنية عارية من خدمات مثل Packet و AWS. ستعمل VM أيضًا ، إذا كانت تدعم المحاكاة الافتراضية المتداخلة. لكنها ستكون أقل كفاءة.
  • الوصول إلى الجذر. ستقوم بتثبيت البرنامج.
  • على الأقل 2 غيغابايت من الذاكرة ، من الناحية المثالية أكثر. سيستخدم كل عقد 512 ميغابايت من الذاكرة. بالإضافة إلى ذلك ، ستحتاج إلى بعض الذاكرة لنظام التشغيل المضيف نفسه.

بالإضافة إلى الخادم ، فأنت بحاجة إلى:

  • محفظة XRP. يوجد دعم لأنظمة الدفع الأخرى قيد التنفيذ ، لكن XRP هو أفضل رهان لك. يدير Codius مثيل محلي من Moneyd من أجل معالجة المدفوعات. لاحظ أن محفظتك تحتاج إلى تمويل ، أي أن تحتوي على 36 XRP على الأقل. على وجه التحديد ، تحتاج المحفظة إلى 16 XRP بالإضافة إلى احتياطيها الحالي. أيضًا ، لا يمكن استخدام المحفظة التي تستخدمها هنا مع أي مثيل آخر من Moneyd.
  • مجال: يجب أن يكون لديك نطاق خاص بك والذي سيكون بمثابة اسم المضيف العام لمضيف Codius الخاص بك. مثلا codius.example.com
    إذا كنت تريد تشغيل مضيفات Codius متعددة ضمن نفس المجال ، فيمكنك ترقيمها فقط ، مثل codius1.example.com أو codius2.example.com ، إلخ.

التكوين الأساسي

في هذا البرنامج التعليمي ، نفترض أنك الجذر. إذا قمت بتسجيل الدخول كمستخدم آخر ، فقم بتشغيل sudo su للتبديل إلى المستخدم الجذر.

قبل أن نبدأ ، نحتاج إلى التأكد من تكوين اسم مضيف نظامنا بشكل صحيح. قم بتشغيل الأمر التالي واستبدال codius.example.com باسم مضيف Codius.

hostnamectl set-hostname codius.example.com

نحتاج الآن إلى التأكد من تعيين اسم المضيف بشكل صحيح عن طريق تشغيل uname -n. يجب أن يطبع هذا اسم المضيف الذي قمت بتعيينه للتو:

$ uname -n
codius.example.com

يرجى التأكد من أن هذا الأمر يعرض اسم المضيف الصحيح لأننا سنستخدمه في بعض النصوص في وقت لاحق من هذا البرنامج التعليمي.

التركيب

Codius هو plaform مضيف مفتوح المصدر ، تم إنشاؤه بواسطة Interledger. مع ذلك ، يمكن للمستخدمين تشغيل البرامج على الخوادم في أي مكان في العالم ودفع ثمنها باستخدام أي عملة. يعلمك هذا البرنامج التعليمي كيفية إنشاء مضيف Codius الخاص بك والبدء في كسب لاستضافة رمز المطورين الآخرين في XRP.

يتكون مضيف Codius من ثلاثة أجزاء: hyperd و moneyd و codiusd. يتعامل Hyperd مع المحاكاة الافتراضية ، ويتيح Moneyd دفعات Interledger ، ويكشف Codiusd نقاط النهاية للقائمين بالتحميل لإرسال الكود الخاص بهم إلى المضيف.

يتكون مضيف Codius من ثلاثة مكونات رئيسية:

  • Hyperd - يعالج الافتراضية وعزل الأجهزة من التعليمات البرمجية
  • Moneyd - يسمح بإرسال واستلام المدفوعات على Interledger
  • Codiusd - يعرض نقاط النهاية التي تسمح للمطورين بتحميل الشفرة إلى المضيف وإطلاق القرون لهم.

تثبيت Hyperd

يسمح Hyperd للمضيف بتشغيل التعليمات البرمجية التي تم تحميلها في جراب معزول عن طريق الأجهزة ، والذي يقوم بعد ذلك بتخصيص حاويات للرمز الذي تم تحميله عند استدعائه.

SSH في خادم CentOS الخاص بك وتثبيت الحزم التالية:

yum install -y gcc-c ++ make
curl -sSl https://codius.s3.amazonaws.com/hyper-bootstrap.sh | سحق

سيؤدي هذا إلى تثبيت جميع تبعيات RPM الخاصة بنا على NodeJS و hyperd ، وكذلك إعادة توجيه المنافذ تلقائيًا من أجهزة قرنة hyperd. ستطلق أيضًا hyperd وتتيح لك استخدام واجهة سطر الأوامر hypercli.

تثبيت Moneyd

Moneyd هو برنامج خفي يسمح للمضيف بإرسال واستقبال المدفوعات عبر Interledger. في هذا الإعداد ، سيتم تثبيته وتكوينه لإجراء عمليات دفع باستخدام XRP ، لكن يجري تشغيل المكونات الإضافية لـ Ethereum وغيرها من المجموعات الرئيسية. راقب القائمة الحالية للوصلات الصاعدة.

حليقة - صامتة - موقع https://rpm.nodesource.com/setup_10.x | باش -
يم تثبيت -y nodejs
yum install -y https://codius.s3.amazonaws.com/moneyd-xrp-4.0.0-1.x86_64.rpm

في هذه المرحلة ، ستحتاج إلى إعداد XRP Secret الخاص بك.

اكسب moneyd: تكوين
# سيُطلب منك إدخال السر الخاص بك هنا
systemctl بدء moneyd-xrp

يمكنك تأكيد حالة البرنامج الخفي مع حالة systemctl moneyd-xrp

تثبيت Codiusd

Codiusd هو مكون من جانب الخادم في Codius ، حيث يكشف نقاط النهاية التي تسمح للمستخدمين بتحميل الكود وتوفير الحاويات لهم. ويقوم أيضًا بإرسال طلبات إلى القرون التي يستضيفها حاليًا.

يم تثبيت -Y بوابة
تثبيت npm -g codiusd --unsafe-perm

أخيرًا ، قم بإنشاء ملف يسمى codiusd.service بالمحتويات التالية في / etc / systemd / system:

[وحدة]
وصف = Codiusd
بعد = network.target nss-lookup.target
[الخدمات]
ExecStart = / usr / bin / npm start
البيئة = "DEBUG = *"
البيئة = "CODIUS_PUBLIC_URI = الشبكي: //codius.example.com"
البيئة = "CODIUS_XRP_PER_MONTH = 10"
WorkingDirectory = / البيرة / ليب / node_modules / codiusd
إعادة تشغيل = دائما
StandardOutput = سيسلوغ
StandardError = سيسلوغ
SyslogIdentifier = codiusd
العضو = الجذر
مجموعة = الجذر
[تثبيت]
WantedBy = multi-user.target

ثم نحتاج إلى تعديل هذا الملف لاستخدام اسم المضيف الفعلي لدينا.

sed -i s / codius.example.com / `uname -n` / g /etc/systemd/system/codiusd.service

بدلاً من ذلك ، يمكنك سحب ملف المثال وحفظه في أمر واحد:

curl -sSl https://codius.s3.amazonaws.com/codiusd.service | sed s / codius.example.com / `uname -n` /> /etc/systemd/system/codiusd.service

لبدء codiusd ، يمكنك تشغيل الأوامر التالية:

systemctl تمكين codiusd
systemctl بدء codiusd

سيتم تشغيل خادم codiusd الخاص بك الآن على المنفذ 3000. يمكن تحميل البيانات عبر نقاط النهاية على هذا العنوان.

يمكنك التحقق من حالة الخادم مع الأمر codiusd حالة systemctl الأمر

إعداد المجال

لإعداد نطاقك للاستخدام مع Codius ، ستقوم بتنفيذ الخطوات التالية:

  • أضف سجلات DNS التي تشير إلى مضيف Codius
  • طلب شهادة TLS wildcard من Let’s Encrypt
  • إعداد وكيل عكس nginx

إضافة سجلات DNS

من أجل تشغيل Codius ، نحتاج إلى اسم مضيف أساسي لمضيف Codius الخاص بنا ونحتاج إلى أي نطاقات فرعية للإشارة إلى مضيفنا أيضًا. على سبيل المثال ، إذا كان المجال الخاص بك هو example.com ، فأنت بحاجة إلى توجيه codius.example.com إلى مضيف Codius ، بما في ذلك أي نطاقات فرعية مثل xyz.codius.example.com.

لتحقيق ذلك ، نقوم بإنشاء سجلين A:

codius.example.com. 300 IN A 203.0.113.1
* .codius.example.com. 300 IN A 203.0.113.1

استبدل codius.example.com باسم مضيف Codius و 203.0.113.1 بعنوان IP الخاص بمضيف Codius.

تأكد من أنه يمكنك اختبار اتصال مضيف Codius الخاص بك تحت اسم مضيفه الجديد:

$ ping -c 1 codius.example.com
PING codius.example.com (203.0.113.1) 56 (84) بايت من البيانات.
64 بايت من 203.0.113.1 (203.0.113.1): icmp_seq = 1 ttl = 48 time = 4.13 ms
--- codius.example.com إحصائيات ping ---
إرسال الحزم 1 ، تلقى 1 ، فقدان الحزمة 0٪ ، الوقت 0ms
rtt min / avg / max / mdev = 4.131 / 4.131 / 4.131 / 0.000 ms

وتأكد من إمكانية الوصول إليه لأي مجال فرعي تعسفي أيضًا:

$ ping -c 1 foobar.codius.example.com
PING foobar.codius.example.com (203.0.113.1) 56 (84) بايت من البيانات.
64 بايت من 203.0.113.1 (203.0.113.1): icmp_seq = 1 ttl = 48 time = 3.72 m
--- foobar.codius.example.com إحصائيات ping ---
إرسال الحزم 1 ، تلقى 1 ، فقدان الحزمة 0٪ ، الوقت 0ms
rtt min / avg / max / mdev = 3.722 / 3.722 / 3.722 / 0.000 ms

لاحظ أنه في كلتا الحالتين ، تم حل اسم المضيف إلى عنوان IP لمضيف Codius لدينا ، 203.0.113.1.

الآن وبعد أن أصبح مضيفنا قابلاً للوصول ، نحن على استعداد لطلب شهادة TLS.

طلب شهادة Wildcard

الشهادات تستخدم لتكون باهظة الثمن. لحسن الحظ ، في هذه الأيام يمكنك الحصول على خدمات مجانية من Let’s Encrypt. يرجى النظر في التبرع لهذه الخدمة الرائعة:

  • التبرع لـ ISRG / دعنا تشفير: https://letsencrypt.org/donate
  • التبرع ل EFF: https://eff.org/donate-le

سأتبرع بمبلغ 25 دولار في الوقت الحالي. مقابلتك هنا في بعض الشيء.

طيب الظهر؟ هيا بنا نبدأ.

أولاً ، نحتاج إلى تنزيل certbot وتثبيت بعض التبعيات:

يم تثبيت -Y بوابة
بوابة استنساخ https://github.com/certbot/certbot
مؤتمر نزع السلاح certbot
بوابة الخروج v0.23.0
./certbot-auto -n -os-package-only
./tools/venv.sh
ln-s `pwd` / venv / bin / certbot / usr / local / bin / certbot

الآن نحن مستعدون لطلب شهادة لدينا. فقط قم بتشغيل هذا الأمر واتبع التعليمات.

certbot -d `uname -n` -d * .`uname -n` - يدوي - التحديات المفضلة dns-01 - server https://acme-v02.api.letsencrypt.org/directory certonly

سوف Certbot:

  • نطلب منك عنوان البريد الإلكتروني الخاص بك
  • اطلب منك الموافقة على شروط الخدمة لـ Let's Encrypt
  • أسألك عما إذا كنت تريد الحصول على رسائل مهمة غير مرغوب فيها من EFF
  • أسألك عما إذا كنت موافقًا على تسجيل IP الخاص بك علنًا
  • اطلب منك إضافة سجل TXT لـ _acme-challenge.codius.example.com
  • اطلب منك إضافة سجل TXT ثاني لـ _acme-challenge.codius.example.com
    إذا كنت تستخدم AWS ، فما عليك سوى إضافة السجلين كخطوط منفصلة كما هو موضح هنا.

هام: تحتاج إلى إضافة كلا السجلين كسجلات TXT منفصلة. عندما تستعلم عن TXT _acme-challenge.codius.example.com ، يجب أن ترى شيئًا مثل هذا:

$ حفر TXT _acme-challenge.codius.example.com
؛؛ - >> HEADER << - شفرة التشغيل: QUERY ، rcode: NOERROR ، id: 64965
؛؛ أعلام: qr rd ra؛ سؤال: 1 ، الإجابة: 2 ، السلطة: 2 ، إضافة: 4
؛؛ قسم السؤال:
؛؛ _acme-challenge.codius.example.com. في TXT
؛؛ قسم الإجابات:
_acme-challenge.codius.example.com. 300 في TXT "QwHjEBqK2RBhk5XyjriHPmjf2h2Ijettgy4BpwdVNlY"
_acme-challenge.codius.example.com. 300 في TXT "YOMfcUWwPsW5hs2vl5AE / CRPg5m5BH7ORjEaUJReK4U"

إذا قمت بكل شيء بشكل صحيح ، فيجب أن تتلقى رسالة مثل:

ملاحظات هامة:
 - تهانينا! تم حفظ شهادتك وسلسلتك على:
   /etc/letsencrypt/live/codius.example.com/fullchain.pem
   تم حفظ ملف المفتاح الخاص بك في:
   /etc/letsencrypt/live/codius.example.com/privkey.pem
   ستنتهي صلاحية الشهادة في 2018-09-04. للحصول على جديد أو قرص
   إصدار هذه الشهادة في المستقبل ، ببساطة قم بتشغيل certbot
   مرة أخرى. لتجديد * كافة * شهاداتك بشكل تفاعلي ، قم بتشغيل
   "certbot تجديد"
 - إذا كنت تحب Certbot ، فيرجى التفكير في دعم عملنا من خلال:
   التبرع ل ISRG / دعونا تشفير: https://letsencrypt.org/donate
   التبرع ل EFF: https://eff.org/donate-le

إذا وصلت إلى هذا الحد ، اعطِ نفسك على الظهر. الجزء الصعب قد انتهى!

لاحظ أن شهادتك صالحة فقط لمدة 90 يومًا. سنغطي كيفية إعداد التجديد التلقائي في برنامج تعليمي في المستقبل.

إعداد Nginx

نحتاج الآن إلى إعداد Nginx والذي سيكون بمثابة وكيل عكسي لمضيف Codius الخاص بنا. ستتلقى Nginx أي حركة مرور واردة وتحيلها إلى Codiusd.

تتمثل الخطوة الأولى لتثبيت Nginx على CentOS 7 في تمكين مستودع EPEL:

يم تثبيت -Y epel-release

ثم يمكننا تثبيت Nginx نفسه.

yum تثبيت -y nginx
systemctl تمكين nginx
صدى "إرجاع 301 https: // $ host $ request_uri؛ ' > /etc/nginx/default.d/ssl-redirect.conf
openssl dhparam -out /etc/nginx/dhparam.pem 2048

لتكوين Nginx كوكيل عكسي لـ Codius ، قم بإنشاء ملف باسم /etc/nginx/conf.d/codius.conf بالمحتويات التالية:

تعيين $ http_upgrade $ connection_upgrade {
  الترقية الافتراضية ؛
  '' $ http_connection؛
}
الخادم {
  الاستماع 443 SSL.
  ssl_certificate /etc/letsencrypt/live/codius.example.com/fullchain.pem؛
  ssl_certificate_key /etc/letsencrypt/live/codius.example.com/privkey.pem؛
  ssl_protocols TLSv1.2؛
  ssl_prefer_server_ciphers on؛
  ssl_dhparam /etc/nginx/dhparam.pem؛
  ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512: DHE-RSA-AES256-GCM-SHA512: ECDHE-RSA-AES256-GCM-SHA384: DHE-RSA-AES256-GCM-SHA384:
  ssl_ecdh_curve secp384r1 ؛
  ssl_session_timeout 10m؛
  ssl_session_cache شارك: SSL: 10m ؛
  ssl_session_tickets متوقف ؛
  ssl_stapling on؛
  ssl_stapling_verify ؛
  محلل 1.1.1.1 1.0.0.1 صالحة = 300s ؛
  resolver_timeout 5s ؛
  add_header Strict-Transport-Security "max-age = 63072000؛ includeSubDomains؛ preload"؛
  add_header X-Frame-Options DENY؛
  add_header X-Content-Type-Options nosniff؛
  add_header X-XSS-Protection "1؛ mode = block"؛
  موقعك / {
    proxy_pass http://127.0.0.1:3000 ؛
    proxy_set_header Host $ host؛
    proxy_set_header X-Forwarded-For $ remote_addr؛
    proxy_set_header ترقية $ http_upgrade؛
    proxy_set_header Connection $ connection_upgrade؛
    proxy_buffering قبالة ؛
  }
}

مرة أخرى ، نحتاج إلى استبدال example.codius.com باسم المضيف الفعلي:

sed -i s / codius.example.com / `uname -n` / g /etc/nginx/conf.d/codius.conf

نحتاج إلى التأكد من تعيين SElinux للسماح لـ Nginx بالعمل كوكيل:

setsebool -P httpd_can_network_connect 1

لا تقلق إذا أخبرك أن SElinux معطل. في هذه الحالة ، الأمر أعلاه غير مطلوب ولكنه أيضًا لا يؤذي أي شيء.

أخيرًا ، نحتاج إلى بدء تشغيل Nginx:

systemctl بدء إنجن إكس

افتح المنفذ 443 في Firewalld

قد يأتي نظامك مع جدار حماية مثبت مسبقًا. إذا وجدت أنه لا يمكنك الوصول إلى https://codius.example.com لمضيفك ، فجرب هذا الأمر لفتح المنفذ 443:

جدار الحماية كمد - المنطقة = العامة - إضافة منفذ = 443 / برنامج التعاون الفني - دائم

انت انتهيت!

يجب أن تكون قادرًا الآن على زيارة https://codius.example.com/version (استبدل codius.example.com باسم مضيفك) وشاهد الإخراج مشابهًا لهذا:

{"name": "Codiusd (JavaScript)" ، "version": "1.0.3"}

هذا هو! مضيف Codius الخاص بك قيد التشغيل. سيحاول الاتصال تلقائيًا بشبكة Codius وإخبار المضيفين الآخرين بوجودها.

إذا واجهت أي مشكلة ، فالرجاء التأرجح بواسطة دردشة Gitter. سنكون هناك للمساعدة!

استكشاف الأخطاء وإصلاحها

502 مدخل غير صالح

إذا حاولت الوصول إلى https://codius.example.com وكنت تتلقى هذا الخطأ ، فهذا يعني أن nginx الخاص بك غير قادر على الاتصال بـ codiusd الخاص بك. تحقق من الخطأ في /var/log/nginx/error.log.

connect () إلى 127.0.0.1:3000 فشل (13: تم رفض الإذن) أثناء الاتصال بـ upstream

إذا رأيت a13: تم رفض الإذن كما هو موضح أعلاه ، فإن الجاني المحتمل هو SElinux. قم بتشغيل الأمر التالي:

setsebool -P httpd_can_network_connect 1

قضية أخرى شائعة هي أن Codiusd لا يستمع:

فشل الاتصال () (111: تم رفض الاتصال) أثناء الاتصال بـ upstream

في هذه الحالة ، تحقق من العمليات التي تستمع إلى netstat -tulpn:

نتستت-تولبن
اتصالات الإنترنت النشطة (الخوادم فقط)
Proto Recv-Q Send-Q العنوان المحلي ، العنوان ، الدولة ، اسم البرنامج ، معرف العملية / البرنامج
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1 / systemd
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 33155 / nginx: master
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2093 / sshd
tcp 0 0 127.0.0.1:3000 0.0.0.0:* LISTEN 47079 / node
tcp 0 0 169.254.77.68:7768 0.0.0.0:* LISTEN 47079 / node
tcp 0 0 127.0.0.1:7768 0.0.0.0:* LISTEN 19651 / node
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2017 / master
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 33155 / nginx: master
tcp6 0 0 ::: 111 ::: * الاستماع 1 / systemd
tcp6 0 0 ::: 80 ::: * LISTEN 33155 / nginx: master
tcp6 0 0 ::: 22 ::: * الاستماع 2093 / sshd
tcp6 0 0 :: 1: 25 ::: * LISTEN 2017 / master
UDP 0 0 0.0.0.0:111 0.0.0.0:* 20975 / rpcbind
UDP 0 0 127.0.0.1:323 0.0.0.0:* 1344 / chronyd
UDP 0 0 0.0.0.0:798 0.0.0.0:* 20975 / rpcbind
udp6 0 0 ::: 111 ::: * 20975 / rpcbind
udp6 0 0 :: 1: 323 ::: * 1344 / chronyd
udp6 0 0 ::: 798 ::: * 20975 / rpcbind

إذا كنت لا ترى 127.0.0.1:7768 ، فهذا يعني أن Moneyd لا يستمع. انتقل إلى قسم "عدم الاستماع إلى Moneyd" أدناه.

إذا رأيت 127.0.0.1:3000 ، لكنك لا ترى 127.0.0.1:3000 ، هذا يعني أن Moneyd يستمع لكن Codiusd لا. انتقل إلى "Codiusd not listen" أدناه.

إذا رأيت 127.0.0.1:3000 ولكن لا تزال تحصل على 111: تم رفض الاتصال ، فمن المحتمل أن يكون ذلك مشكلة في جدار الحماية. تأكد من تشغيل هذه الأوامر لتكوين جدار الحماية بشكل صحيح:

جدار الحماية كمد - المنطقة = العامة - إضافة منفذ = 443 / برنامج التعاون الفني - دائم
جدار الحماية كمد - المنطقة = العامة - إضافة منفذ = 7768 / برنامج التعاون الفني - دائم
جدار الحماية كمد - تحميل

Moneyd لا يستمع

تحقق مما إذا كان Moneyd الخاص بك يعمل:

systemctl حالة moneyd-xrp

إذا كان قيد التشغيل ، فحاول إيقافه وتشغيله في وضع التصحيح:

systemctl وقف moneyd-xrp
DEBUG = * moneyd xrp: start

إذا رأيت أخطاء وتحتاج إلى مساعدة في فهم ما يجري ، فلا تتردد في طلب المساعدة من Gitter. المشكلة الأكثر شيوعًا هي عدم كفاية الأموال في محفظة XRP الخاصة بك. تحتاج إلى 16 XRP بالإضافة إلى الاحتياطي. الاحتياطي يعتمد على الحساب. للحصول على حساب جديد تمامًا ، يبلغ 20 XRP ولكنه يزداد كلما استخدمت ميزات XRP Ledger مختلفة. للتأكد من ذلك ، يمكنك إرسال 16 XRP أكثر إلى المحفظة ، وإعادة تشغيل Moneyd ومعرفة ما إذا كان ذلك يحل المشكلة.

بمجرد أن تبدأ Moneyd في سطر الأوامر ، أوقفه (Ctrl + C) وقم بتشغيله كخدمة مرة أخرى:

systemctl بدء moneyd-xrp

Codiusd لا يستمع

في هذه الحالة ، تحقق من تشغيل Codiusd:

حالة systemctl codiusd

يمكنك محاولة إعادة تشغيله:

systemctl إعادة تشغيل codiusd

أو تحقق من سجلات أي معلومات مفيدة:

journalctl -t codiusd -n 200

إذا رأيت أخطاء وتحتاج إلى مساعدة في فهم ما يجري ، فلا تتردد في طلب المساعدة من Gitter.