
خادمي الآن هاتف: CMF Phone 1 بديلاً عن خادم VPS
استبدل أحد هواة الاستضافة الذاتية خادم Hetzner VPS صغيراً بهاتف CMF Phone 1 بعد فتح جذره: Termux وDebian داخل chroot وCloudflare Tunnel — مع كل المقايضات.
استبدل أحد هواة الاستضافة الذاتية خادم Hetzner VPS صغيراً بهاتف كان يرقد بلا استخدام في درج. ويشرح الكاتب في تدوينة مفصّلة كيف فتح جذر CMF Phone 1 وحوّله إلى الجهاز الذي يشغّل بنيته التحتية الشخصية: متصفح عن بُعد، وتطبيق لتتبّع المالية، وخدمة لمشاركة الشاشة، وعدد من تطبيقات الويب الصغيرة.
لماذا هاتف؟
بدأ الانتقال كمشكلة تكلفة. كان الخادم رخيصاً لكن موارده تنفد كلما كان لمتصفح Chrome، المستخدم في مشروع المتصفح عن بُعد Surf، عمل حقيقي؛ وحلّت الأجهزة ذات المعالج المخصص ذلك لكنها باهظة الثمن لمتصفح شخصي. ولم يكن تجميع جهاز جديد مناسباً في وقته لأن أسعار ذاكرة DRAM مرتفعة. أما الهاتف الموجود فلديه ثماني أنوية ARM وذاكرة 8 غيغابايت وذاكرة فلاش 128 غيغابايت وWi-Fi 6 ومودم 5G وبطارية مدمجة تتصرف كمزود طاقة احتياطي صغير.
من postmarketOS إلى Termux
انتهت المحاولة الأولى — تثبيت postmarketOS — بشاشة إقلاع وشاشة سوداء، مع وسم Wi-Fi والبلوتوث وتسريع العتاد كمعطّلة. وتطلّب استعادة نظام Nothing OS الأصلي أداة فلاش خاصة بويندوز؛ شغّلها الكاتب أولاً داخل QEMU ثم انتقل إلى تثبيت ويندوز حقيقي، وبدا الهاتف في لحظة ما مقفلاً بالكامل. والدرس: لدى أندرويد أصلاً تعريفات عاملة لكل العتاد. وفي المحاولة الثانية أُبقي نظام أندرويد الأصلي واستُخدم Termux كبيئة مضيفة: OpenSSH وrunit وCaddy وCloudflared وTailscale، إضافة إلى Termux:Boot الذي يشغّل الخدمات بعد إعادة التشغيل. ويقوم ملف تعريف أندرويد يُدار بـ Ansible بتثبيت قفل استيقاظ، وتعطيل وضعي الخمول الخفيف والعميق، وإعفاء التطبيقات المطلوبة من قيود الخلفية، وإبقاء Wi-Fi وشبكة Tailscale كـ VPN دائم قيد التشغيل.
proot ثم chroot حقيقي
عملت التطبيقات، التي تُشحن كصور Linux ARM64 OCI، في البداية تحت proot-distro؛ وهو لا يحتاج جذراً ولا نواة خاصة، لكنه يعترض عمليات الملفات والعمليات في مساحة المستخدم. ولم يتمكن عبء المتصفح الحساس للتأخير من الوصول إلى المعالج بكفاءة بهذه الطريقة، ففتح الكاتب جذر الهاتف لتركيب نظام ملفات Debian نفسه والدخول إليه عبر chroot حقيقي. تُثبَّت الصور ببصمة digest، ويتحقق Ansible منها ويثبّتها؛ وينشئ مساعد جذري مساحة تركيب خاصة ويخفض الصلاحيات. لا يوجد Docker ولا مترجم على الهاتف.
حركة الدخول والتجوال والنتيجة
تُعرض خدمات HTTP عبر Cloudflare Tunnel — الاتصال صادر فقط، لذا لا حاجة إلى قواعد دخول على الموجّه، وعند نقل الهاتف إلى شبكة أخرى يعيد النفق الاتصال ببساطة. أما متصفح Surf عن بُعد، الذي ينهي TLS بنفسه ويرتبط به جهاز iPad قديم، فيلفّ تدفق TLS داخل WebSocket عادي للعبور عبر النفق؛ وبحسب قياسات الكاتب يضيف ذلك نحو رحلة شبكة إضافية واحدة، وكان اتصال iPad حوالي 60 ميلي ثانية. وتعرض خدمة لوحة معلومات أصلية المعالج والذاكرة والتخزين والبطارية والحرارة وإمكانية الوصول على العنوان dash.cmf عبر الشبكة المحلية أو tailnet. خلاصة الكاتب: هذا معقول تماماً لعدد محدود من الخدمات الشخصية إن توفر هاتف ARM64 يمكن فتح جذره — لكن ليس للبيانات التي لا بديل لها من دون نسخ احتياطية آلية خارج الجهاز.
SiTech — تطوير ويب مدعوم بالذكاء الاصطناعي
نبني مواقع سريعة وعصرية وندمج الذكاء الاصطناعي في سير عمل الشركات. لديك مشروع أو سؤال؟ يسعدنا مساعدتك.