هذه عملية متقدّمة لا ننصح بها مستخدمي Linux الجدد.
يتيح نظام التشغيل ChromeOS تشغيل رموز عشوائية داخل الأجهزة الافتراضية. هذه هي المستندات الأساسية حول هذا الدعم. للحصول على عرض أكثر سهولة في الاستخدام، يُرجى الاطّلاع على faq.
المتطلبات الأساسية
- تأكَّد من أنّ جهاز ChromeOS يتوافق مع Linux على ChromeOS.
-
تأكَّد من استخدام الإصدار 72 من نظام التشغيل ChromeOS (الإصدار 72 من Chrome أو إصدار أحدث) أو إصدار أحدث (تم طرحه في شباط (فبراير) 2019).
- ابدأ تحديث النظام إذا لزم الأمر وأعِد التشغيل.
- من المفترض أن يعمل هذا الإجراء في القناة الثابتة.
- لا تحتاج إلى تفعيل "وضع مطور البرامج".
- تفعيل حاوية Linux
ميزات وقت التشغيل
من المفترض أن تعمل الميزات التالية عند تشغيل حاوية Linux:
- اتصالات الشبكة الصادرة (IPv4)
- رسومات غير مسرَّعة
- برامج Wayland (الخيار المفضّل، من خلال Sommelier)
- برامج X (التوافق من خلال Sommelier وXWayland)
- مصدر إخراج الصوت في الإصدارات M74 والإصدارات التجريبية للتسجيل/الميكروفون في الإصدارات R79 والإصدارات الأحدث
مميزات مفقودة
- فك ترميز الفيديو على الجهاز
- مقاييس التفاعل
يتّبع فريق ChromeOS نهجًا مدروسًا لطرح الميزات الجديدة من أجل ضمان عدم تعرّض أمان النظام بشكل عام للخطر. يمكنك الاطّلاع على الأسئلة الشائعة حول Crostini للحصول على معلومات أكثر تفصيلاً تغطي معظم المواضيع المتعلقة بتطوير Linux على ChromeOS.
الأمان
على الرغم من أنّ تشغيل الرموز العشوائية يمثّل عادةً خطرًا أمنيًا، يرى فريق ChromeOS أنّ نموذج وقت التشغيل الذي يستخدمه حاوي Linux على ChromeOS يقلّل من هذا الخطر الأمني ويحتويه بشكل كافٍ. الجهاز الافتراضي (VM) هو حدود الأمان، ويُعدّ كل ما بداخله غير موثوق به. تعمل صورة نظام التشغيل الضيف الحالية على جهاز VM أيضًا بنواة مخصّصة ومحسّنة لتعزيز أمان الحاويات، ولكنّها تُعتبر ميزة إضافية وليست أساسية لضمان أمان النظام بشكل عام.
في هذا النموذج، يجب أن يظل باقي نظام التشغيل ChromeOS محميًا من أي رمز عشوائي (خبيث أو غير مقصود) يتم تنفيذه داخل الحاويات في الجهاز الافتراضي.
يتم التواصل مع العالم الخارجي فقط من خلال crosvm، وتتواصل كل قناة مع عمليات فردية (كل منها محمي بشكل كبير).
بيانات المستخدم في الحاوية
مع التحوّل إلى الخدمات السحابية، تؤكّد أساليب التفكير الحالية في مجال الأمان على أنّ الحصول على بيانات اعتماد الحساب (مثل كلمات المرور الخاصة بحسابك على Google أو Facebook) هو أسلوب هجوم أكثر ربحًا من مهاجمة الكمبيوتر المكتبي أو المحمول. وهي ليست خاطئة. لا يحسّن حلّ ChromeOS الحالي للأجهزة الافتراضية/الحاويات هذا الأمر في الوقت الحالي. ببساطة، يتحمّل المستخدم حاليًا مسؤولية أيّ بيانات يتم إدخالها في الحاوية. لذلك، إذا شغّلت حاوية غير آمنة أو تم اختراقها، ثم كتبت كلمات المرور فيها، يمكن سرقتها حتى إذا ظلّ باقي نظام التشغيل ChromeOS آمنًا.
استمرار العملية
لا تستمر العمليات في الأجهزة الافتراضية والحاويات بعد تسجيل الخروج (لأنّها تكون مخزّنة في مساحة التخزين المشفرة الخاصة بالمستخدم) ويتم إيقافها تلقائيًا. كما أنّها لا تبدأ تلقائيًا عند تسجيل الدخول (لتجنُّب الهجمات المستمرة)، ولا يمكن تشغيلها تلقائيًا عند بدء التشغيل (بدون جلسة تسجيل دخول) لأنّه لا يمكن الوصول إليها (بما أنّها في وحدة التخزين المشفرة الخاصة بالمستخدم).
الرموز البرمجية القابلة للتنفيذ والكتابة
يتم تنزيل صورة قرص الجهاز الافتراضي Termina إلى القسم القابل للكتابة والمحتفظ بالحالة، مثل مكوّنات Chrome الأخرى. للتأكّد من عدم تعديل المحتوى، يتم استخدام dm-verity. يعني ذلك أيضًا أنّه لا يمكن تحميل سوى الصور الموقّعة من Google، وأنّ الصورة تكون دائمًا للقراءة فقط.
الهجمات على الأجهزة
تتسبب الثغرات الأمنية Meltdown/Spectre في حدوث مشاكل عند استخدام الأجهزة الافتراضية بشكل آمن. لقد طبّقنا إصلاحات وإجراءات للحدّ من المشاكل للتأكّد من عدم إمكانية مهاجمة الأجهزة الافتراضية لنظام التشغيل المضيف أو الأجهزة الافتراضية الأخرى. لمزيد من التفاصيل، يُرجى الاطّلاع على صفحة موقع wiki لنظام التشغيل Chromium حول حالة الثغرات الأمنية Meltdown وSpectre لأجهزة ChromeOS.
مراحل النشاط
بعد تفعيل حاوية Linux (التي تتولّى تثبيت جميع المكوّنات الضرورية الأخرى، مثل Termina)، يصبح النظام جاهزًا للاستخدام.
على الرغم من إمكانية تثبيت هذه المكوّنات، لن يبدأ تشغيل أي منها على الفور. عند تسجيل الخروج، يتم إغلاق كل شيء وإيقافه، وعند تسجيل الدخول، لا تتم إعادة تشغيل أي شيء تلقائيًا.
عند تشغيل تطبيق Terminal أو أي تطبيق آخر من تطبيقات Linux يبدأ الحاوية، ولم يتم تشغيل الحاوية الرئيسية بعد، سيتم تشغيل جهاز Termina الظاهري تلقائيًا، وسيتم تشغيل حاوية Linux التلقائية على ChromeOS (المعروفة أيضًا باسم Crostini) في هذا الجهاز. يتيح لك ذلك الاتصال بالحاوية عبر SSH أو SFTP (من خلال تطبيق "الملفات").
عند إغلاق جميع التطبيقات المرئية، لا يتم إيقاف الجهاز الظاهري أو الحاويات. يمكنك إيقافها وبدءها يدويًا، بالإضافة إلى إنشاء المزيد من الحاويات غير الحاوية التلقائية.
الاحتفاظ بالبيانات
ستبقى جميع الآلات الافتراضية والحاويات التي تم إنشاؤها والبيانات داخل هذه الحاويات محفوظة خلال جلسات المستخدمين (تسجيل الخروج/تسجيل الدخول). ويتم الاحتفاظ بها في مساحة التخزين المشفّرة نفسها لكل مستخدم كما هو الحال مع بقية بيانات المتصفّح.
إذا تم إيقاف جهاز افتراضي أو حاوية أو إغلاقهما بشكل غير سليم (مثل انقطاع التيار الكهربائي)، قد يتم فقدان البيانات ويجب استردادها مثل أي شيء آخر في النظام.
دعم الجهاز
على الرغم من أنّ الهدف هو إتاحة استخدام Linux على ChromeOS مع جميع أجهزة Chromebook، إلا أنّ ميزات النواة والأجهزة المطلوبة تحدّ من إمكانية نشرها. ركّز الفريق على أمان النظام وثباته أثناء إعادة نقل الميزات التي يكون ذلك منطقيًا فيها. هذا مجال نعمل على تحسينه باستمرار.
متاحة الآن
للاطّلاع على قائمة بالأجهزة المتوافقة حاليًا، يُرجى الرجوع إلى أنظمة التشغيل Chrome المتوافقة مع Linux.
متطلبات الأجهزة
مع أنّه لا يوجد حاليًا حدّ أدنى لمقدار ذاكرة الوصول العشوائي أو مساحة التخزين أو سرعة وحدة المعالجة المركزية المطلوبة لتشغيل حاوية Linux على ChromeOS، كلّما زاد مقدار كلّ منها، كان أداء النظام أفضل.
مع ذلك، ستحتاج إلى وحدة معالجة مركزية (CPU) تتوافق مع المحاكاة الافتراضية للأجهزة. على منصات x86، يتوفّر هذا بأسماء عديدة. تشير Intel إلى هذه الميزة باسم VT-x وVMX. تشير AMD إلى ذلك باسم AMD-V وSVM.
أنظمة BayTrail
لا تتضمّن أجهزة Chromebook التي تستخدم BayTrail من Intel ميزة VT-x. مع أنّ وحدة المعالجة المركزية هذه تتضمّن عادةً VMX، لا يتضمّن الإصدار المتوفّر في أجهزة Chromebook هذه الميزة، وبالتالي لن يكون متوافقًا أبدًا.
يمكنك البحث في قائمة الأجهزة العامة عن BayTrail ضمن عمود Platform لمعرفة ما إذا كانت لوحة ما متوافقة.
النواة القديمة
لا نخطّط لإتاحة الإصدار 3.14 من Linux أو الإصدارات الأقدم. وتتطلّب هذه الإصدارات نقلًا عكسيًا للميزات الجديدة التي تكون شاملة وغالبًا ما تكون تدخّلية. على سبيل المثال:
يمكنك البحث في قائمة الأجهزة المتاحة للجميع عن أرقام الإصدارات الأقل من 3.14 ضمن العمود Kernel لمعرفة ما إذا كانت اللوحة متوافقة.
وحدات المعالجة المركزية ARM بسرعة 32 بت
يصعب تشغيل الأجهزة الافتراضية على وحدات المعالجة المركزية ARM ذات 32 بت، كما أنّ هذه العملية غير معيارية وتتطلّب التنسيق مع البرامج الثابتة. للأسف، لم يتم ضبط الإضافات في البرامج الثابتة لنظام التشغيل ChromeOS. وبالتالي، لا تتوافق هذه الأنظمة.
يمكنك البحث في قائمة الأجهزة العامة عن arm ضمن عمود Kernel ABI لمعرفة ما إذا كانت لوحة ما متوافقة.