Skip to content

طرفية Linux الخادم

طرفية Ubuntu كاملة مباشرة في المتصفح — ليست محاكاة، ليست WebContainer، ليست WSL. إنها حاوية Docker معزولة لكل مستخدم تشغل Ubuntu 22.04 مع bash و apt و sudo و سلسلة أدواتك بأكملها (Node، Python، Go، إلخ) و roqueos-cli مثبت مسبقًا للتحكم في سطح مكتب RoqueOS مباشرة من shell.

طرفية مع htop يعمل

ما يميزه

  • 🐧 Ubuntu 22.04 حقيقي مع نواة Linux الخاصة بالمضيف (ليست محاكاة)
  • 👤 معزول لكل مستخدم — كل تسجيل دخول له حاوية خاصة، home دائم، عمليات منفصلة
  • 🔐 Sudo بدون كلمة مرور داخل الحاوية (أنت root لبيئتك، دون التأثير على الآخرين)
  • 💾 Home دائم في وحدة تخزين Docker — موجود في /data/roqueos/users/<your-id>/، يبقى بين الجلسات
  • 🛠️ حزم مثبتة مسبقًا: Node.js 22، Python 3، Go، Rust toolchain، Git، curl، wget، htop، vim، nano، jq، build-essential
  • 🌐 الوصول إلى الشبكة كامل — يمكنه تشغيل خادم HTTP، تنزيل الملفات، الاتصال بـ DB خارجي
  • 🤖 roqueos-cli مثبت مسبقًا — يستدعي سطح مكتب RoqueOS (الإشعارات، فتح التطبيقات، إنشاء الملف)

كيفية الفتح

Launchpad → Terminal. أول مرة تستغرق ~5 ثوانٍ لـ spin up للحاوية (بعد ذلك فوري). عدة حالات OK — افتح بقدر ما تحتاج.

حالات الاستخدام الحقيقية

نص صيانة سريع:

bash
# تنظيف /tmp من السجلات القديمة + الإخطار عند الانتهاء
find /tmp -name "*.log" -mtime +7 -delete
roqueos-cli notify "التنظيف OK" "تمت إزالة السجلات الأقدم من 7 أيام"

إعداد مشروع جديد:

bash
cd ~/projects
git clone https://github.com/your/project
cd project
yarn install
yarn dev &  # تشغيل في الخلفية
roqueos-cli open-url "http://localhost:5173"  # افتح في Roque Browser

Cron للمراقبة:

bash
crontab -e
# الصق:
0 9 * * * df -h | awk '$5+0 > 80 {system("roqueos-cli notify \"القرص ممتلئ\" \"" $6 " " $5 "\"")}'

خط أنابيب مخصص:

bash
# تدفق سجل الخادم + تنبيه تلقائي إذا ظهر "ERROR"
docker logs -f roqueos-server 2>&1 | \
  grep --line-buffered ERROR | \
  xargs -I{} roqueos-cli notify "خطأ RoqueOS" "{}"

roqueos-cli — التحكم في سطح المكتب من shell

نفس CLI الذي يستخدمه RoqueClaw. شغل roqueos-cli --help في Terminal لرؤية المرجع الكامل — إنه مصدر الحقيقة.

الإجراءات الـ 6 القانونية:

roqueos-cli notify       <title> <message>      # إشعار على سطح المكتب
roqueos-cli open-app     <appId>                # افتح تطبيقًا (finder, vscode, browser, إلخ)
roqueos-cli open-url     <url>                  # افتح URL في Roque Browser
roqueos-cli create-file  <path>                 # أنشئ ملفًا بقراءة المحتوى من stdin
roqueos-cli run-terminal <command>              # نفذ أمرًا + أرجع stdout
roqueos-cli show-dialog  <message> [--type X]   # نموذج confirm/alert/info

أمثلة عملية:

bash
# إشعار
roqueos-cli notify "العنوان" "الرسالة"

# افتح تطبيق RoqueOS
roqueos-cli open-app finder

# افتح URL في Roque Browser
roqueos-cli open-url "https://github.com"

# أنشئ ملفًا في Finder (يقرأ stdin)
echo "ملاحظات الاجتماع..." | roqueos-cli create-file "/home/user/notes/reuniao.md"

# نفذ أمرًا + أرجع الإخراج كإشعار
roqueos-cli run-terminal "df -h"

# نموذج تأكيد (ينتظر الاستجابة)
roqueos-cli show-dialog "حذف 50GB من السجلات القديمة؟" --type confirm

يستخدم الصيغة وسائط موضعية (وليس علامات --title/--message). إذا كانت نسخة CLI الخاصة بك مختلفة، فقم بتحديثها عبر apt-get install --reinstall roqueos-cli داخل الحاوية.

التوثيق الكامل: RoqueClaw + CLI.

نظام ملفات مشترك

الملفات في /home/user/ في Terminal هي نفسها التي تظهر في Finder و VS Code. كل شيء متزامن:

  • احفظ الكود في VS Code → يظهر في ls Terminal
  • أنشئ مجلدًا في Finder → cd يعمل في Terminal
  • wget يقوم بالتنزيل في Terminal → يظهر في Finder في Roque Browser

Terminal + Finder جنبًا إلى جنب يظهران نفس نظام الملفات

موارد الحاوية

الموردالافتراضي
ذاكرة RAM2 GB (قابل للتكوين عبر env CONTAINER_MEMORY_LIMIT)
CPU2 نواة مشتركة
القرصوحدة تخزين Docker مخصصة
الشبكةBridge roqueos-network (يصل إلى حاويات الخادم الأخرى)
الصورةroqueribeiro1988/roqueos-server-ubuntu:latest (Ubuntu 22.04)

اختصارات xterm.js

الاختصارالإجراء
Ctrl+Shift+Cنسخ التحديد
Ctrl+Shift+Vلصق
Ctrl+Shift++ / Ctrl+-زيادة/تقليل حجم الخط
Ctrl+Shift+Fالبحث في المخزن المؤقت
Ctrl+L (bash)امسح الطرفية
Ctrl+Dتسجيل الخروج / إغلاق shell
Ctrl+Rبحث عكسي في سجل bash

دعم إدخال اللمس على الهاتف المحمول أصلاً (xterm.js يكتشف).

الاستمرارية بين الجلسات

/home/user/ (وأي مجلدات فرعية) تستمر بين إغلاق التطبيق، إعادة تشغيل الحاوية، تحديثات RoqueOS Server (install.sh --update). تفقد فقط إذا حذفت يدويًا وحدة تخزين Docker roqueos-userdata-<uid> أو أعدت إنشاء الخادم من الصفر (docker compose down -v).

تثبيت حزم إضافية

bash
sudo apt update
sudo apt install -y <package>

تبقى الحزم في حاوية المستخدم الخاص بك — لا يراها المستخدمون الآخرون على نفس الخادم. ممارسة جيدة: لاحظ في /home/user/.bashrc الحزم التي قمت بتثبيتها لإعادة تثبيتها إذا تم إعادة إنشاء الحاوية يومًا ما.

الفرق مع xterm مباشرة / WSL

الجانبRoqueOS TerminalWSL / xterm محلي
الإعداد0 ثانية (قيد التشغيل بالفعل)تثبيت Linux + dist + setup
الوصولأي متصفح مسجل دخولجهازك فقط
متعدد الأجهزة✅ الجوال يصل إلى نفس home
الاستمراريةوحدة تخزين Docker للخادمقرص محلي
العزلحاوية per-userمشترك
الأداءتأخير الخادم↔المتصفحأصلي

انظر أيضًا