ชุมชน Linux ถกเถียงอนาคตของมาตรฐาน File System Hierarchy ขณะที่การพัฒนา FHS 4.0 ดำเนินต่อไป

ทีมชุมชน BigGo
ชุมชน Linux ถกเถียงอนาคตของมาตรฐาน File System Hierarchy ขณะที่การพัฒนา FHS 4.0 ดำเนินต่อไป

ชุมชน Linux กำลังมีส่วนร่วมในการอภิปรายอย่างเข้มข้นเกี่ยวกับทิศทางอนาคตของ Filesystem Hierarchy Standard ( FHS ) ขณะที่งานพัฒนาเวอร์ชัน 4.0 กำลังดำเนินไป การถกเถียงมุ่งเน้นไปที่วิธีการจัดระเบียบไฟล์และไดเร็กทอรีของ Linux distributions สมัยใหม่ โดยเฉพาะอย่างยิ่งการพิจารณาว่าแนวทางของ systemd ควรกลายเป็นมาตรฐานใหม่หรือไม่

อิทธิพลที่เพิ่มขึ้นของ systemd ต่อการจัดระเบียบไฟล์

ประเด็นที่ก่อให้เกิดการโต้เถียงมากที่สุดหมุนรอบบทบาทของ systemd ในการกำหนดโครงสร้างระบบไฟล์ สมาชิกชุมชนแบ่งออกเป็นสองฝ่ายว่า FHS ใหม่ควรอิงตามสิ่งที่ systemd ใช้งานจริงในปัจจุบัน หรือควรสร้างมาตรฐานอิสระที่ systemd ต้องปฏิบัติตาม ความตึงเครียดนี้ได้สร้างสถานการณ์ที่ซับซ้อนซึ่งนักพัฒนาซอฟต์แวร์ปฏิบัติตามพฤติกรรมจริงของ systemd มากกว่าข้อกำหนดที่เป็นเอกสาร

ความไม่สอดคล้องกันนี้ปรากฏชัดในตัวอย่างการใช้งานจริง ในขณะที่คู่มือ file-hierarchy ของ systemd แนะนำตำแหน่งไฟล์บางแห่ง แต่ซอฟต์แวร์ตัวจริงกลับคาดหวังไฟล์ในตำแหน่งที่แตกต่างกัน สิ่งนี้ทำให้โปรแกรมอื่นๆ ต้องปรับตัวให้เข้ากับการใช้งานจริงของ systemd มากกว่าเอกสารประกอบ ซึ่งสร้างช่องว่างระหว่างทฤษฎีและการปฏิบัติ

การเปรียบเทียบมาตรฐานระบบไฟล์:

  • FHS (Filesystem Hierarchy Standard): มาตรฐานการจัดระเบียบไฟล์แบบดั้งเดิมของ Linux
  • systemd file-hierarchy(7): ข้อกำหนดสมัยใหม่โดยโครงการ systemd
  • BSD hier(7): ลำดับชั้นแบบ Unix ที่ใช้โดยระบบ BSD
  • สิ่งที่น่าสังเกต: ไดเรกทอรี /opt หายไปจากข้อกำหนดของ systemd

ความขัดแย้งเรื่องไดเร็กทอรี /opt

จุดอภิปรายสำคัญอีกประการหนึ่งเกี่ยวข้องกับไดเร็กทอรี /opt ที่เป็นที่ถกเถียง ซึ่งเอกสาร file hierarchy ของ systemd ไม่ได้กล่าวถึงอย่างเด่นชัด ไดเร็กทอรีนี้มีประวัติที่ซับซ้อนในระบบ Linux โดยเดิมต้องการตัวระบุของบริษัทสำหรับไดเร็กทอรีย่อยที่ถูกต้อง นักพัฒนาหลายคนมองว่ามันเป็นที่ทิ้งขยะสำหรับซอฟต์แวร์ที่ไม่เข้ากับที่อื่นในระบบไฟล์

มันไม่ควรทำอะไรจนกว่าผู้ใช้จะบอกว่าไฟล์ควรอยู่ที่ไหน มันเป็นโปรแกรมที่ไม่ได้แพ็กเกจ ไม่มีที่ไหนที่สมเหตุสมผลในการวางมันที่ไม่มีโอกาสสูงในการขัดแย้งกับสิ่งอื่น

การถกเถียงนี้เน้นคำถามที่กว้างขึ้นเกี่ยวกับที่ที่ซอฟต์แวร์จากบุคคลที่สามควรถูกติดตั้ง และวิธีจัดการโปรแกรมที่ไม่ได้มาผ่านตัวจัดการแพ็กเกจอย่างเป็นทางการ

ความท้าทายของการแจกจ่ายแพ็กเกจสมัยใหม่

การอภิปรายได้ขยายไปรวมถึงวิธีที่รูปแบบแพ็กเกจสมัยใหม่อย่าง Flatpak , Snap และ AppImage ส่งผลต่อการจัดระเบียบระบบไฟล์แบบดั้งเดิม แนวทางแบบคอนเทนเนอร์เหล่านี้สำหรับการแจกจ่ายซอฟต์แวร์ท้าทายความจำเป็นของมาตรฐานลำดับชั้นไฟล์ที่เข้มงวด เนื่องจากแอปพลิเคชันกลายเป็นแบบครบครันในตัวเองมากขึ้น

สมาชิกชุมชนบางส่วนตั้งคำถามว่าแนวทางดั้งเดิมในการจัดระเบียบระบบไฟล์ยังคงมีความเกี่ยวข้องหรือไม่ เมื่อซอฟต์แวร์เซิร์ฟเวอร์ทำงานในคอนเทนเนอร์มากขึ้น และแอปพลิเคชันเดสก์ท็อปใช้รูปแบบแพ็กเกจแบบ sandbox

รูปแบบการแจกจ่าย Package หลัก:

  • Flatpak: ใช้หลักสำหรับแอปพลิเคชันเดสก์ท็อป มีประโยชน์จำกัดสำหรับซอฟต์แวร์ระบบ
  • Snap: ใช้โดย Ubuntu สำหรับ system daemon และ kernel image รวมถึงซอฟต์แวร์เซิร์ฟเวอร์
  • AppImage: รูปแบบแอปพลิเคชันแบบพกพา
  • Containers: ถูกใช้งานมากขึ้นสำหรับการติดตั้งซอฟต์แวร์ฝั่งเซิร์ฟเวอร์

ความกังวลเกี่ยวกับการพัฒนามาตรฐาน

ส่วนสำคัญของชุมชนแสดงความสงสัยเกี่ยวกับการย้ายการพัฒนา FHS ไปอยู่ภายใต้ freedesktop.org นักวิจารณ์กังวลเกี่ยวกับประวัติการพัฒนามาตรฐานขององค์กรและกลัวว่าการตัดสินใจสำคัญอาจไม่ได้รับข้อมูลจากชุมชนอย่างเหมาะสม

การถกเถียงสะท้อนความแตกต่างทางปรัชญาที่ลึกซึ้งเกี่ยวกับวิธีที่ Linux ควรพัฒนาและใครควรมีอิทธิพลต่อมาตรฐานระบบพื้นฐาน

มองไปข้างหน้า

ขณะที่การพัฒนา FHS 4.0 ดำเนินต่อไป ชุมชนเผชิญกับความท้าทายในการสร้างสมดุลระหว่างความเข้ากันได้แบบย้อนหลังกับความต้องการสมัยใหม่ การอภิปรายเผยให้เห็นความตึงเครียดระหว่างการรักษาหลักการ Unix แบบดั้งเดิมและการปรับตัวให้เข้ากับวิธีการแจกจ่ายซอฟต์แวร์ร่วมสมัย

ผลลัพธ์น่าจะมีอิทธิพลต่อวิธีที่ Linux distributions จัดระเบียบไฟล์เป็นเวลาหลายปีข้างหน้า ทำให้การถกเถียงของชุมชนเหล่านี้มีความสำคัญเป็นพิเศษต่อทิศทางอนาคตของระบบนิเวศ

อ้างอิง: Finding a text editor to file