অনেক অভিজ্ঞ লিনাক্স ইউজার Fedora Silverblue-র কথা শুনে থাকবেন। অপরিচিতদের জন্য, Fedora Silverblue হলো Fedora Workstation-এর একটি ইমিউটেবল ভেরিয়েন্ট। এর মানে হচ্ছে কোর অপারেটিং সিস্টেম Fedora Silverblue-এর প্রতিটি ইনস্টলেশনের মতো একই, এবং এটি রিড-অনলি। আপনি কত কষ্ট করলেও এটাকে পরিবর্তন করতে পারবেন না।
সুবিধাগুলো Fedora Project Silverblue ডকুমেন্টেশনে ভালোভাবে ব্যাখ্যা করেছে: "Silverblue-এর ইমিউটেবল ডিজাইন এর উদ্দেশ্য হচ্ছে এটাকে আরও স্থিতিশীল, কম বাগ-প্রোন, এবং টেস্ট ও ডেভেলপমেন্টের জন্য সহজ করা। চূড়ান্ত, Silverblue-এর ইমিউটেবল ডিজাইন এটাকে কন্টেইনারাইজড অ্যাপস এবং কন্টেইনার-ভিত্তিক সফটওয়ার ডেভেলপমেন্টের জন্য একটি চমৎকার প্ল্যাটফর্মও করে তোলে। প্রতিটি কেসে, অ্যাপস এবং কন্টেইনার হোস্ট সিস্টেম থেকে আলাদা রাখা হয়, যা স্থিতিশীলতা এবং विश्वসনীয়তা উন্নত করে।" এই অনেক কারণেই আমি বিশ্বাস করি Fedora Silverblue লিনাক্সের ভবিষ্যৎ হতে পারে।
Fedora Silverblue ইমিউটেবল
ইমিউটেবল অপারেটিং সিস্টেম আপনার চেয়ে বেশি কমন। দুটি "মেনস্ট্রিম" *nix ভিত্তিক OS, সেগুলো হলো macOS এবং Chrome OS, দুটোই যেনে কোনো কিছুভাবে ইমিউটেবল। এটি তাদের জন্য একটি চমৎকার অপশন যারা সবসময় মিউটেবল OS ব্রেক হওয়ার সমস্যায় পড়ে থাকেন।
ইমিউটেবল স্বভাবও কন্টেইনারাইজড অ্যাপ্লিকেশনকে প্রমোট করে। উদাহরণস্বরূপ, Flatpak-গুলো Silverblue-এ অ্যাপ্লিকেশন ইন্সটল করার প্রাইমারি পদ্ধতি, এবং বেস সিস্টেমের ওপর RPM প্যাকেজ লেয়ার করা হচ্ছে লাস্ট রিসোর্ট যদি আপনি Flatpak বা অন্য কন্টেইনারাইজড অ্যাপ্লিকেশন না পান।
Atomic OS আপগ্রেড
Atomic OS আপগ্রেড মানে অন্য লিনাক্স সিস্টেমের মতো, আপনি এক এক করে সিঙ্গেল প্যাকেজ আপগ্রেড করবেন না। আপনি পুরো OS ইমেজ আপগ্রেড করবেন। এটি হলো যা হবেই নন-কন্টেইনারাইজড সফটওয়ার ইন্সটল করার জন্য।
আপনি rpm-ostree কমান্ড ব্যবহার করবেন যেকোনো RPM প্যাকেজ ইন্সটল করার জন্য, এবং সেটা একটি নতুন বুটেবল রুট ফাইলসিস্টেম তৈরি করবে। এর মানে আপনার পূর্বের বুটেবল রুট ফাইলসিস্টেম এখনো ইনট্যাক্ট, এবং আপনি কিছু ভুল হলে সেটাতে রিবুট করে ফিরে যেতে পারেন।
এটি Btrfs, ZFS, বা LVM এবং অন্যান্য উপলব্ধ টুলস ব্যবহার করে সিস্টেম স্ন্যাপশট করার মতো একটি ফাংশন, কিন্তু Fedora-তে ZFS ইন্টিগ্রেট করা কঠিন হওয়ায়, OSTree-র সাথে উপলব্ধ Grub অপশনগুলো একটি স্বাগতযোগ্য কোয়ালিটি-অফ-লাইফ উন্নতি।
OSTree এবং rpm-ostree
OSTree হলো वो টেকনোলজি যা Silverblue-এ নতুন বুটেবল রুট কম্পোজ, আপডেট, এবং ডিপ্লয় করতে শক্তি দেয়। আপনি এটাকে "Git for OS binaries" ভাবতে পারেন। এটি OS বাইনারি ম্যানেজ করার একটি খুব চমৎকার সিস্টেম, এবং এটি সিস্টেম স্পেস এবং ইউজার স্পেস আলাদা করার অনুমতি দেয় যা আমি আগে বললাম।
rpm-ostree একটি সিস্টেম যা RPM-র প্যাকেজ ম্যানেজমেন্ট এবং OSTree-র ইমেজ ম্যানেজমেন্ট কাম্বাইন করে একটি সিস্টেমে যেটা আপনাকে RPM-গুলো বেস Silverblue ইমেজের ওপর লেয়ার করতে দেয়। Fedora-এর অধিকাংশ RPM rpm-ostree দিয়ে ইন্সটলযোগ্য, এবং RPM-কে OSTree-র সাথে ইন্টিগ্রেট করা প্যাকেজ ম্যানেজার এবং ইমেজ ম্যানেজারকে একসাথে কাজ করতে সাহায্য করে।
এটার সুবিধার একটি উদাহরণ হচ্ছে যে, বেস ইমেজের ওপর আপনি যেসব RPM লেয়ার করেন সেগুলো বেস ইমেজ থেকে আলাদা আপডেট ও কন্ট্রোল হয়, তাই আপনি Firefox-এর একটি ভিন্ন ভার্সনে আপগ্রেড করে নতুন বুটেবল রুটে রিবুট করতে পারেন। কিন্তু যদি যেকোনো কারণে ইমেজ আপগ্রেড খুব ভালো না হয়, তবে আপনি পূর্বের ইমেজে রোল ব্যাক করতে পারেন এবং সবচেয়ে নতুন ভার্সনের Firefox রাখতে পারেন। এটি OS ইমেজ থেকে একটি আলাদা লেয়ার, এবং rpm-ostree একটি টুল যা দুটোই ম্যানেজ করে।
OSTree, Flatpak, এবং Toolbox লেয়ারিং
এই আর্টিকেলে আমি "লেয়ার" শব্দটি বারবার ব্যবহার করেছি। এর মানে হচ্ছে Silverblue একাধিক, স্বতন্ত্র স্পেসে ভাগ করা হয়েছে যা সব মিলে OS কে কাজ করতে সাহায্য করে। বেস, ইমিউটেবল OS ইমেজ একটি লেয়ার, এবং আপনি যেসব RPM বেস ইমেজের ওপর লেয়ার করেন সেগুলো প্রতিটি একই বুটেবল রুট지만 নতুন RPM প্যাকেজ লেয়ার করা একটি নতুন লেয়ার তৈরি করে। এগুলো সব OSTree লেয়ার।
এগুলো থেকে আলাদা, আপনার কাছে Flatpak-গুলো রয়েছে, যেগুলো একে অপরের ওপর লেয়ার করে এবং OSTree লেয়ারগুলোর থেকে সম্পূর্ণ আইসোলেটেড। চূড়ান্ত, আপনার কাছে আরেকটি আলাদা লেয়ার রয়েছে Toolboxes নামে, যা আসলেই Fedora Workstation রুট ফাইলসিস্টেম OSTree লেয়ারগুলোর ওপর লেয়ার করা যেখানে আপনি DNF ব্যবহার করে সফটওয়ার টেস্ট করতে পারেন এবং এককালীন টুল অ্যাক্সেস করতে পারেন, যেমন Copr রিপো থেকে সফটওয়ার ট্রাই করা, বা আপনার লেখা সফটওয়ার টেস্ট করা Silverblue-এর নতুন ডিপ্লয়মেন্টে রিবুট না করে। আপনি Fedora Workstation-এর ভিন্ন ভার্সন ব্যবহার করতে পারেন, তাই আপনি Workstation-এ নতুন বা পুরনো ফিচার আপনার টেস্টিং-এ ব্যবহার করতে পারেন। Toolboxes এই জায়গায় কভার করা সম্ভব নয়। আপনি নিচের ভিডিও দেখে আরও জানতে পারেন।
Silverblue কেন ভবিষ্যৎ?
আমি জানি এখানেক ক développement-কেন্দ্রিক মনে হচ্ছে। তবে, এটাকে ল্যাপটপ বা ডেস্কটপ ওয়ার্কস্টেশন OS হিসেবে ব্যবহার করাও একটি খুব ভালো অপশন। শুধু প্রয়োজনীয় প্যাকেজগুলো লেয়ার করে, যেমন libvirt এবং অন্যান্য KVM ভার্চুয়ালাইজেশন টুল, এবং Flatpak ও toolbox ব্যবহার করে একটি কন্টেইনারাইজড ওয়ার্কফ্লো তৈরি করে, আপনি Silverblue-কে এর পূর্ণ সম্ভাবনায় ব্যবহার করছেন। একটা লার্নিং কর্ভ রয়েছে, কিন্তু এর অধিকাংশ Fedora Workstation ইউজারদের কাছে খুব পরিচিত লাগবে যারা Flatpak পছন্দ করেন।
আমাদের অন্যান্য Fedora কন্টেন্ট চেক করতে ভুলবেন না, যার মধ্যে Fedora 32-এ আপগ্রেড করার পদ্ধতি, Cockpit দিয়ে Fedora সিস্টেম ম্যানেজ করা, এবং RHEL, CentOS, এবং Fedora-এর পার্থক্য শিখুন।