جبالي CLI

Jabali CLI هي واجهة إدارية كاملة الميزات للوحة التحكم والوكيل المتميز. استخدمها للأتمتة ومهام الخادم والنسخ الاحتياطي والترحيل والصيانة التشغيلية.

موقع التشغيل

قم بتشغيل جميع الأوامر من جذر المستودع:

cd /var/www/jabali

المساعدة والخيارات العامة

jabali --help
jabali --help-full
jabali --version

خيارات عامة:

  • -h, --help عرض المساعدة
  • --help-full عرض قائمة الأوامر الكاملة
  • -v, --version عرض الإصدار
  • -y, --yes تأكيد المطالبات تلقائيًا
  • -q, --quiet وضع الصمت

إدارة المستخدمين

الأوامر:

jabali user list
jabali user create <username> [--email=<email>] [--password=<password>]
jabali user show <username>
jabali user delete <username>
jabali user password <username> [--password=<password>]
jabali user suspend <username>
jabali user unsuspend <username>

ملاحظات:

  • user create ينشئ مستخدم نظام من خلال الوكيل ومستخدم لوحة في قاعدة البيانات.
  • user password يحدّث كلمة مرور اللوحة وكلمة مرور مستخدم النظام.

إدارة المجال

الأوامر:

jabali domain list [--user=<username>]
jabali domain create <domain> --user=<username>
jabali domain show <domain>
jabali domain delete <domain>
jabali domain enable <domain>
jabali domain disable <domain>

ملاحظات:

  • domain create يطلق توفير الوكيل ثم ينشئ سجل اللوحة.

إدارة الخدمة

الأوامر:

jabali service list
jabali service status <service>
jabali service start <service>
jabali service stop <service>
jabali service restart <service>
jabali service enable <service>
jabali service disable <service>

تشمل الخدمات برامج الخدمة المشتركة وأي إصدارات PHP-FPM مثبتة.

أدوات WordPress

الأوامر:

jabali wp list <username>
jabali wp install <username> <domain> [--title=<title>] [--admin=<user>] [--email=<email>] [--password=<pass>]
jabali wp scan <username>
jabali wp import <username> <path>
jabali wp delete <username> <site_id> [--files] [--database]
jabali wp update <username> <site_id>

ملاحظات:

  • wp install ستقوم بإنشاء كلمة مرور إذا لم يتم توفير واحدة.
  • wp scan يكتشف تثبيتات WordPress الموجودة تحت اسم مستخدم.

أدوات قاعدة البيانات (MariaDB)

الأوامر:

jabali db list [--user=<username>]
jabali db create <db_name> [--user=<username>]
jabali db delete <db_name>
jabali db users [--user=<username>]
jabali db user-create <username> [--password=<password>] [--host=<host>]
jabali db user-delete <username> [--host=<host>]

ملاحظات:

  • db list الافتراضي هو admin ما لم --user متوفر.
  • يقوم إنشاء المستخدم بالتحقق من صحة تعقيد كلمة المرور إذا تم توفيرها.

البريد الإلكتروني (صناديق البريد)

الأوامر:

jabali mail list [--domain=<domain>]
jabali mail create <email> [--password=<password>] [--quota=<mb>]
jabali mail delete <email>
jabali mail password <email> [--password=<password>]
jabali mail quota <email> <size_mb>
jabali mail domains

ملاحظات:

  • mail domains يسرد المجالات التي تم تمكين البريد فيها وحالة DKIM.

النسخ الاحتياطية (المستخدمون + الخادم)

النسخ الاحتياطية المحلية ونسخ المستخدمين

jabali backup list [--user=<user>]
jabali backup user-list <user>
jabali backup create <user> [--type=full|incremental] [--output=<path>] [--incremental-base=<path>]
[--domains=a,b] [--databases=a,b] [--mailboxes=a,b]
[--no-files] [--no-databases] [--no-mailboxes] [--no-dns] [--no-ssl]
jabali backup restore <path> [<user>]
[--user=<user>] [--domains=a,b] [--databases=a,b] [--mailboxes=a,b]
[--no-files] [--no-databases] [--no-mailboxes] [--no-dns] [--no-ssl]
jabali backup info <path>
jabali backup verify <path>
jabali backup delete <file|id> [--user=<user>]

النسخ الاحتياطية للخادم

jabali backup server [--type=full|incremental] [--users=u1,u2] [--dest=<id>]
jabali backup server-list

سجل النسخ الاحتياطية (قاعدة البيانات)

jabali backup history [--limit=<n>] [--status=<status>] [--type=<type>]
jabali backup show <id>

جداول النسخ الاحتياطي

jabali backup schedules
jabali backup schedule-create --name=<name> [--frequency=daily|weekly] [--time=HH:MM]
[--retention=<n>] [--dest=<id>] [--backup-type=full|incremental]
[--no-files] [--no-databases] [--no-mailboxes] [--no-dns]
jabali backup schedule-run <id>
jabali backup schedule-enable <id>
jabali backup schedule-disable <id>
jabali backup schedule-delete <id>

وجهات النسخ الاحتياطي

jabali backup destinations
jabali backup dest-add --type=sftp --name=<name> --host=<host> --user=<user> [--password=<pass>] [--port=22] [--path=/backups]
jabali backup dest-add --type=nfs --name=<name> --host=<host> --path=<remote-path> [--mount=/mnt/backup]
jabali backup dest-add --type=s3 --name=<name> --bucket=<name> --key=<access-key> --secret=<secret-key> [--region=us-east-1] [--path=prefix]
jabali backup dest-test <id>
jabali backup dest-delete <id>

ترحيل cPanel

الأوامر:

jabali cpanel analyze <file> [--timeout=600]
jabali cpanel restore <file> <user>
[--no-files] [--no-databases] [--no-emails] [--no-ssl]
[--log=/path/to/log.jsonl] [--analyze] [--timeout=7200]
jabali cpanel fix-permissions <file>

ملاحظات:

  • cpanel restore يتطلب وجود مستخدم اللوحة ومستخدم النظام بالفعل.
  • --analyze يقوم بتشغيل التحليل وإعادة استخدام النتائج قبل الاستعادة.

معلومات النظام

الأوامر:

jabali system info
jabali system status
jabali system hostname [<new-hostname>]
jabali system disk
jabali system memory

التحكم في الوكيل

الأوامر:

jabali agent status
jabali agent start
jabali agent stop
jabali agent restart
jabali agent ping
jabali agent log [--lines=<n>]

إصدارات PHP

الأوامر:

jabali php list
jabali php install <version>
jabali php uninstall <version>
jabali php default [<version>]
jabali php status

ملاحظات:

  • php default بدون إصدار، يتم طباعة الإصدار الافتراضي الحالي.

جدار الحماية (UFW)

الأوامر:

jabali firewall status
jabali firewall enable
jabali firewall disable
jabali firewall rules
jabali firewall allow <port>
jabali firewall deny <port>
jabali firewall delete <rule_number>

شهادات SSL

الأوامر:

jabali ssl check [<domain>] [--issue-only] [--renew-only]
jabali ssl issue <domain> [--force]
jabali ssl renew <domain>
jabali ssl status <domain>
jabali ssl list

أمثلة على سير العمل

إضافة مستخدم جديد ومجال جديد

jabali user create demo --email=demo@example.com
jabali domain create example.com --user=demo
jabali ssl issue example.com

إنشاء نسخة احتياطية للمستخدم والتحقق منها

jabali backup create demo --type=full
jabali backup verify /home/demo/backups/demo_2026-02-04_120000.tar.gz

تشغيل ترحيل cPanel

jabali cpanel analyze /var/backups/jabali/cpanel-migrations/site.tar.gz
jabali cpanel restore /var/backups/jabali/cpanel-migrations/site.tar.gz demo