Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบ >> Linux

Fedora Silverblue อาจเป็นอนาคตของ Linux: เหตุผลที่ว่า

มั่นใจว่าผู้ใช้ Linux มานานหลายคนเคยได้ยิน Fedora Silverblue สำหรับมือใหม่ Fedora Silverblue เป็น immutable variant ของ Fedora Workstation หมายถึง core operating system เหมือนกันทุกการติดตั้ง Fedora Silverblue และเป็น read-only คุณเปลี่ยนไม่ได้ ไม่ว่าจะพยายามแค่ไหน

ประโยชน์อธิบายดีในเอกสาร Silverblue ของ Fedora Project: "Immutable design ของ Silverblue มีเจตนาทำให้มันเสถียรกว่า น้อย bug กว่า และทดสอบ/พัฒนาได้ง่ายกว่า สุดท้าย immutable design ยังทำให้เป็น platform ยอดเยี่ยมสำหรับ containerized apps และ container-based software development ในแต่ละกรณี apps และ containers แยกจาก host system เพิ่มความเสถียรและความน่าเชื่อถือ" นี่คือหลายเหตุผลที่ฉันเชื่อ Fedora Silverblue อาจเป็นอนาคตของ Linux

Fedora Silverblue เป็น Immutable

Immutable Operating Systems พบได้บ่อยกว่าที่คิด ทั้ง 2 "mainstream" *nix based OS คือ macOS และ Chrome OS เป็น immutable ในบางรูปแบบ นี่เป็นตัวเลือกดีสำหรับผู้ที่ติดปัญหา mutable OS แตกเสมอ

ลักษณะ immutable ยังส่งเสริม containerized applications ตัวอย่าง Flatpaks เป็นวิธีหลักติดตั้งแอปบน Silverblue และ layering RPM packages บน base system เป็น last resort หากหา Flatpak หรือ containerized application ไม่เจอ

Atomic OS Upgrades

Atomic OS upgrades หมายถึงต่างจาก Linux systems อื่น คุณไม่ upgrade single packages ทีละตัว คุณ upgrade entire OS image นี่คือสิ่งที่ต้องเกิดขึ้นเพื่อติดตั้ง non-containerized software

ใช้คำสั่ง rpm-ostree ติดตั้ง RPM package ที่ต้องการ และจะสร้าง bootable root filesystem ใหม่ หมายถึง previous bootable root file system ยังคงสมบูรณ์ และคุณ reboot กลับเข้า previous image ได้หากมีอะไรผิด

ฟังก์ชันนี้คล้าย snapshotting system ด้วย Btrfs, ZFS, หรือ LVM แต่ Fedora เป็นระบบที่ยากต่อการ integrate ZFS Grub options ที่มีกับ OSTree เป็น quality-of-life improvement ที่ยินดีต้อนรับ

OSTree และ rpm-ostree

OSTree เป็น technology ที่ขับเคลื่อน composing, updating, และ deployment ของ bootable roots ใหม่ใน Silverblue คุณนึกได้ว่า "Git for OS binaries" ระบบน่าสนใจมากสำหรับจัดการ OS binaries และอนุญาตให้แยก system space และ user space ที่กล่าวมาก่อน

rpm-ostree เป็นระบบรวม package management จาก RPM และ image management จาก OSTree เข้าด้วยกัน ระบบที่ให้คุณ layer RPMs ทับ base Silverblue image RPMs ส่วนใหญ่จาก Fedora ติดตั้งได้ผ่าน rpm-ostree และการ integrate RPM กับ OSTree ช่วยให้ package manager และ image manager ทำงานร่วมกัน

ตัวอย่างประโยชน์: RPMs ที่คุณ layer ทับ base image updated และ controlled แยกจาก base image คุณ upgrade Firefox เวอร์ชันต่างๆ และ reboot เข้า bootable root ใหม่ แต่ถ้า image upgrade ไปไม่ดี คุณ roll back กลับ previous image และยังคง Firefox เวอร์ชันใหม่ไว้ มันเป็น layer แยกจาก OS image และ rpm-ostree เป็น tool หนึ่งจัดการทั้งคู่

OSTree, Flatpak, และ Toolbox Layering

ฉันกล่าว "layers" ใน Silverblue ตลอดบทความ หมายถึง Silverblue แยกเป็น multiple distinct spaces ที่ทำงานร่วมกันทำให้ OS ทำงาน Base immutable OS image เป็น layer หนึ่ง และแต่ละ RPM ที่ layer ทับสร้าง layer ใหม่กับ bootable root เดียวกันแต่ RPM packages ใหม่ทับบนสุด ทั้งหมดเป็น OSTree layers

แยกจากทั้งหมดนั้น คุณมี Flatpaks ที่ layer ทับกัน และ isolated จาก OSTree layers ทั้งหมด สุดท้ายคุณมีอีก layer แยกชื่อ Toolboxes ซึ่งก็คือ Fedora Workstation root filesystems ที่ layer ทับ OSTree layers ที่คุณสามารถใช้ DNF ทดสอบซอฟต์แวร์ และเข้าถึง one-time use tools เช่น ลองซอฟต์แวร์จาก Copr repos หรือทดสอบซอฟต์แวร์ที่เขียนเองโดยไม่ต้อง reboot เข้า deployment ใหม่ของ Silverblue คุณใช้ Fedora Workstation versions ต่างๆ ได้ ใช้ประโยชน์จาก features ใหม่หรือเก่าจาก Workstation ในการทดสอบ Toolboxes มากเกินไปจะครอบคลุมในพื้นที่นี้ ดูวิดีโอต่อไปเพื่อเรียนรู้เพิ่มเติม

ทำไม Silverblue จึงเป็นอนาคต?

ฉันรู้ว่ามากมายนี้ดูเหมือนสำหรับ developers แต่ใช้เป็น laptop หรือ desktop workstation OS ก็เป็นตัวเลือก viable ด้วย layering แค่ packages ที่จำเป็น เช่น libvirt และ KVM virtualization tools อื่นๆ และใช้ Flatpaks และ toolboxes สร้าง containerized workflow คุณใช้ Silverblue ได้สูงสุด มี learning curve แต่ส่วนใหญ่จะคุ้นเคยสำหรับผู้ใช้ Fedora Workstation ที่ชอบ Flatpaks

เช็ค Fedora content อื่นของเรา: วิธี upgrade เป็น Fedora 32, จัดการ Fedora system ด้วย Cockpit, และความแตกต่างระหว่าง RHEL, CentOS, และ Fedora