এটি একটি উন্নত প্রক্রিয়া যা আমরা নতুন লিনাক্স ব্যবহারকারীদের জন্য সুপারিশ করি না।
ChromeOS VM- এর ভেতরে ইচ্ছামত কোড চালানো সমর্থন করে। এটি সেই সমর্থনের নিম্ন-স্তরের ডকুমেন্টেশন; আরও ব্যবহারকারী-বান্ধব দৃশ্যের জন্য, FAQ দেখুন।
পূর্বশর্ত
- নিশ্চিত করুন যে আপনার ChromeOS ডিভাইসটি ChromeOS-এ Linux সমর্থন করে
- নিশ্চিত করুন যে আপনি ChromeOS রিলিজ ৭২ (M72+) বা তার পরবর্তী ভার্সন (ফেব্রুয়ারী ২০১৯ সালে প্রকাশিত) ব্যবহার করছেন।
- প্রয়োজনে সিস্টেম আপডেট শুরু করুন এবং রিবুট করুন।
- এটি স্থিতিশীল চ্যানেলে কাজ করা উচিত।
- আপনার এটিকে ডেভেলপার মোডে রাখার দরকার নেই ।
- লিনাক্স কন্টেইনার সক্ষম করুন
রানটাইম বৈশিষ্ট্য
আপনার লিনাক্স কন্টেইনার চালানোর সময় নিম্নলিখিত বৈশিষ্ট্যগুলি কাজ করবে বলে আশা করা উচিত:
- আউটবাউন্ড নেটওয়ার্ক সংযোগ (IPv4)।
- অপ্রচলিত গ্রাফিক্স।
- ত্বরিত গ্রাফিক্স (OpenGL এর মাধ্যমে)।
- ওয়েল্যান্ড প্রোগ্রাম (পছন্দসই; সোমেলিয়ারের মাধ্যমে)।
- X প্রোগ্রাম ( Sommelier এবং XWayland এর মাধ্যমে সামঞ্জস্য)।
- M74+ ছবিতে অডিও আউটপুট এবং R79+ ছবিতে পরীক্ষামূলক ক্যাপচার/মাইক্রোফোন ।
অনুপস্থিত বৈশিষ্ট্য
আমরা অনেক কম-ঝুলন্ত ফল তৈরির কাজ করছি। এর কয়েকটি স্পষ্ট উদাহরণ হল:
- ভিডিও হার্ডওয়্যার ডিকোডিং।
- আইএমই গুলি ।
যদিও আরও অনেক বিষয় বিবেচনা করা হচ্ছে, তবুও সামগ্রিক সিস্টেমের নিরাপত্তা যাতে বিঘ্নিত না হয় তা নিশ্চিত করার জন্য ChromeOS টিম নতুন বৈশিষ্ট্যগুলি চালু করার জন্য একটি পরিমাপিত পদ্ধতি গ্রহণ করে। ChromeOS ডেভেলপমেন্টের উপর Linux সম্পর্কিত বেশিরভাগ বিষয় সম্পর্কে আরও বিস্তারিত তথ্যের জন্য Crostini FAQ দেখুন।
নিরাপত্তা
যদিও এবিলিট্রিবিলি কোড চালানো সাধারণত একটি নিরাপত্তা ঝুঁকি, ChromeOS টিম বিশ্বাস করে যে ChromeOS কন্টেইনারে Linux দ্বারা ব্যবহৃত রানটাইম মডেলটি যথেষ্ট পরিমাণে সেই নিরাপত্তা ঝুঁকি কমিয়ে দেয় এবং ধারণ করে। ভার্চুয়াল মেশিন (VM) হল নিরাপত্তা সীমানা, এবং এর ভিতরের সবকিছু অবিশ্বস্ত বলে বিবেচিত হয়। বর্তমান VM গেস্ট ইমেজটি কন্টেইনারগুলির নিরাপত্তা আরও উন্নত করার জন্য একটি কাস্টম-হার্ডেনড কার্নেলও চালাচ্ছে, তবে সামগ্রিক সিস্টেম সুরক্ষা নিশ্চিত করার জন্য এটি নির্ভর করার চেয়ে এটি একটি চমৎকার বৈশিষ্ট্য হিসাবে বিবেচিত হয়।
এই মডেলে, ChromeOS সিস্টেমের বাকি অংশ VM-এর ভিতরের কন্টেইনারের ভিতরে চলমান যেকোনও ধরণের কোড (দূষিত বা দুর্ঘটনাজনিত) থেকে সুরক্ষিত থাকা উচিত।
বাইরের জগতের সাথে একমাত্র যোগাযোগ হল crosvm এর মাধ্যমে, এবং প্রতিটি চ্যানেল পৃথক প্রক্রিয়ার সাথে কথা বলে (যার প্রতিটিই ব্যাপকভাবে স্যান্ডবক্সযুক্ত)।
কন্টেইনারে ব্যবহারকারীর ডেটা
ক্লাউড পরিষেবার দিকে ঝুঁকে পড়ার সাথে সাথে, বর্তমান নিরাপত্তা চিন্তাভাবনা এই সত্যটি তুলে ধরে যে অ্যাকাউন্টের শংসাপত্র (যেমন আপনার গুগল/ফেসবুক পাসওয়ার্ড ) পাওয়া আপনার ডেস্কটপ বা ল্যাপটপ আক্রমণ করার চেয়ে বেশি লাভজনক আক্রমণ ভেক্টর। এগুলি ভুল নয়। বর্তমান ভিএম/কন্টেইনার ChromeOS সমাধান বর্তমানে এই ক্ষেত্রে উন্নতি করে না। স্পষ্টতই, কন্টেইনারে প্রবেশ করা যেকোনো কিছু বর্তমানে ব্যবহারকারীর দায়িত্ব। সুতরাং, যদি আপনি একটি অনিরাপদ বা আপোস করা কন্টেইনার চালান এবং তারপরে আপনার পাসওয়ার্ডগুলি কন্টেইনারে টাইপ করেন, তবে ChromeOS সিস্টেমের বাকি অংশ সুরক্ষিত থাকা সত্ত্বেও সেগুলি চুরি হতে পারে।
প্রক্রিয়ার স্থায়িত্ব
VM এবং কন্টেইনারের প্রসেসগুলি লগআউটের পরেও টিকে থাকে না (কারণ তারা ব্যবহারকারীর এনক্রিপ্ট করা স্টোরেজে থাকে) এবং স্বয়ংক্রিয়ভাবে বন্ধ হয়ে যায়। এগুলি লগইন করার সময় স্বয়ংক্রিয়ভাবে শুরু হয় না (ক্রমাগত আক্রমণ এড়াতে), এবং বুট করার সময় স্বয়ংক্রিয়ভাবে চালানো যায় না (লগইন সেশন ছাড়া) কারণ এগুলি অ্যাক্সেসযোগ্য হবে না (কারণ তারা ব্যবহারকারীর এনক্রিপ্ট করা স্টোরেজে থাকে)।
এক্সিকিউটেবল এবং লিখনযোগ্য কোড
টার্মিনা ভিএম ডিস্ক ইমেজটি অন্যান্য ক্রোম কম্পোনেন্টের মতো লেখার যোগ্য স্টেটফুল পার্টিশনে ডাউনলোড করা হয়। কন্টেন্ট যাতে পরিবর্তন না হয় তা নিশ্চিত করার জন্য, dm-verity ব্যবহার করা হয়। এর অর্থ হল শুধুমাত্র Google দ্বারা স্বাক্ষরিত ছবিগুলি লোড করা যেতে পারে এবং ছবিটি সর্বদা কেবল পঠনযোগ্য।
হার্ডওয়্যার আক্রমণ
নিরাপদে VM ব্যবহারের ক্ষেত্রে Meltdown/Spectre দুর্বলতাগুলির প্রভাব রয়েছে। VM যাতে হোস্ট সিস্টেম বা অন্যান্য VM-এ আক্রমণ করতে না পারে তা নিশ্চিত করার জন্য আমরা সমাধান এবং প্রশমন প্রয়োগ করেছি। আরও বিস্তারিত জানার জন্য ChromeOS ডিভাইসের জন্য Meltdown এবং Spectre দুর্বলতার অবস্থা সম্পর্কে Chromium OS উইকি পৃষ্ঠাটি দেখুন।
জীবনচক্র
একবার আপনি লিনাক্স কন্টেইনারটি সক্রিয় করলে (যা টার্মিনার মতো অন্যান্য সমস্ত প্রয়োজনীয় উপাদান ইনস্টল করার যত্ন নেয়), সিস্টেমটি ব্যবহারের জন্য প্রস্তুত।
এই উপাদানগুলি ইনস্টল করা থাকলেও, কিছুই তাৎক্ষণিকভাবে চলতে শুরু করে না। যখন আপনি লগ আউট করেন, তখন সবকিছু বন্ধ হয়ে যায় এবং বন্ধ হয়ে যায়, এবং যখন আপনি লগ ইন করেন, তখন কিছুই স্বয়ংক্রিয়ভাবে পুনরায় চালু হয় না।
যখন আপনি টার্মিনাল অ্যাপ, অথবা অন্য কোনও Linux অ্যাপ চালান যা কন্টেইনারটি শুরু করে, এবং এর প্যারেন্ট কন্টেইনারটি এখনও চালু না থাকে, তখন Termina VM স্বয়ংক্রিয়ভাবে শুরু হবে এবং ChromeOS কন্টেইনারে (যা Crostini নামেও পরিচিত) ডিফল্ট Linux চালু হবে। এটি আপনাকে SSH বা SFTP (Files অ্যাপের মাধ্যমে) এর মাধ্যমে কন্টেইনারের সাথে সংযোগ করতে দেয়।
যখন আপনি সমস্ত দৃশ্যমান অ্যাপ্লিকেশন বন্ধ করেন, তখন VM/কন্টেইনারগুলি বন্ধ হয় না। আপনি যদি চান, আপনি ম্যানুয়ালি সেগুলি বন্ধ করে চালু করতে পারেন, পাশাপাশি কেবল ডিফল্টটির চেয়ে আরও বেশি কন্টেইনার তৈরি করতে পারেন।
ডেটা স্থায়িত্ব
তৈরি করা সমস্ত ভিএম এবং কন্টেইনার, এবং সেই কন্টেইনারগুলির মধ্যে থাকা ডেটা, ব্যবহারকারীর সেশন (লগআউট/লগইন) জুড়ে থাকবে। এগুলি ব্রাউজারের বাকি ডেটার মতো একই প্রতি-ব্যবহারকারী এনক্রিপ্ট করা স্টোরেজে রাখা হবে।
যদি কোনও ভিএম বা কন্টেইনার অকারণে বন্ধ হয়ে যায় বা বন্ধ হয়ে যায় (যেমন পাওয়ার লস), তাহলে ডেটা হারিয়ে যেতে পারে এবং সিস্টেমের অন্য যেকোনো কিছুর মতো পুনরুদ্ধারের প্রয়োজন হতে পারে।
ডিভাইস সাপোর্ট
যদিও ChromeOS-এ Linux-কে সমস্ত Chromebook-এর সাথে কাজ করার ইচ্ছা রয়েছে, প্রয়োজনীয় কার্নেল এবং হার্ডওয়্যার বৈশিষ্ট্যগুলি এটি কোথায় স্থাপন করা যেতে পারে তা সীমাবদ্ধ করে। দলটি সিস্টেম সুরক্ষা এবং স্থিতিশীলতার উপর দৃষ্টি নিবদ্ধ করেছে এবং যেখানে এটি যুক্তিসঙ্গত সেখানে বৈশিষ্ট্যগুলিকে ব্যাকপোর্ট করেছে। এটি চলমান প্রচেষ্টার একটি ক্ষেত্র।
এখন সমর্থিত
বর্তমানে সমর্থিত ডিভাইসের তালিকার জন্য, অনুগ্রহ করে Linux সমর্থনকারী ChromeOS সিস্টেমগুলি দেখুন।
হার্ডওয়্যারের প্রয়োজনীয়তা
যদিও বর্তমানে ChromeOS কন্টেইনারে Linux চালানোর জন্য ন্যূনতম পরিমাণ RAM, স্টোরেজ, বা CPU গতির প্রয়োজন নেই, তবুও আপনার কাছে যত বেশি RAM থাকবে, সিস্টেমটি তত ভালো পারফর্ম করবে।
যাইহোক, আপনার এমন একটি CPU প্রয়োজন হবে যা হার্ডওয়্যার ভার্চুয়ালাইজেশন সমর্থন করে। x86 প্ল্যাটফর্মগুলিতে, এর অনেক নাম রয়েছে। ইন্টেল এটিকে VT-x এবং VMX হিসাবে উল্লেখ করে। AMD এটিকে AMD-V এবং SVM হিসাবে উল্লেখ করে।
বেট্রেল সিস্টেম
ইন্টেলের বেট্রেইল ব্যবহারকারী ক্রোমবুকগুলিতে ভিটি-এক্স অন্তর্ভুক্ত থাকে না। যদিও এই সিপিইউতে সাধারণত ভিএমএক্স অন্তর্ভুক্ত থাকে, ক্রোমবুকগুলিতে এই রূপটি থাকে না, এবং তাই, দুর্ভাগ্যবশত, কখনও সমর্থিত হবে না।
Platform কলামের অধীনে BayTrail এর জন্য আমাদের পাবলিক ডিভাইস তালিকা অনুসন্ধান করে আপনি কোনও বোর্ড সমর্থিত কিনা তা দেখতে পারেন।
পুরাতন কার্নেল
Linux 3.14 বা তার আগের সংস্করণ সমর্থন করার কোনও পরিকল্পনা নেই। এর জন্য নতুন বৈশিষ্ট্যগুলির ব্যাকপোর্ট প্রয়োজন যা ব্যাপক এবং প্রায়শই আক্রমণাত্মক। উদাহরণস্বরূপ:
Kernel কলামের অধীনে 3.14 এর কম সংস্করণ নম্বরের জন্য আমাদের পাবলিক ডিভাইস তালিকা অনুসন্ধান করে আপনি কোনও বোর্ড সমর্থিত কিনা তা খুঁজে পেতে পারেন।
৩২-বিট এআরএম সিপিইউ
৩২-বিট ARM CPU-এর অধীনে ভার্চুয়াল মেশিন চালানো কঠিন, অ-মানক, এবং ফার্মওয়্যারের সাথে সমন্বয় প্রয়োজন। দুর্ভাগ্যবশত, ChromeOS ফার্মওয়্যার এক্সটেনশনগুলি কনফিগার না করার প্রবণতা দেখায়। তাই, এই সিস্টেমগুলি সমর্থিত নয়।
Kernel ABI কলামের অধীনে arm এর জন্য আমাদের পাবলিক ডিভাইস তালিকা অনুসন্ধান করে আপনি কোনও বোর্ড সমর্থিত কিনা তা খুঁজে পেতে পারেন।