3 คะแนน โดย GN⁺ 2024-11-30 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • ผู้เขียนเป็นฟรีแลนซ์ที่ปรึกษาด้าน OpenBSD, FreeBSD, Linux และ Qubes OS แต่ช่วงหลังได้ออกจาก OpenBSD และไม่ได้ใช้อีกต่อไป
  • ยอมรับคุณค่าของ OpenBSD และเข้าใจความสำคัญของการมีอยู่ของมัน แต่ตอนนี้มันไม่สอดคล้องกับความต้องการส่วนตัวอีกแล้ว

ปัญหา

  • ความเข้ากันได้ของฮาร์ดแวร์
    • ไม่มีการรองรับ Bluetooth
    • การรองรับ gamepad มีข้อจำกัด: บางโปรแกรมและ gamepad บางรุ่นไม่รองรับ
    • ปัญหาอายุแบตเตอรี่/ความร้อน/การใช้พลังงาน: ใช้พลังงานสูงกว่า OS อื่นอย่างเห็นได้ชัด
  • ความเข้ากันได้ของซอฟต์แวร์
    • จำเป็นต้องเรียนรู้เทคโนโลยีใหม่ในสาย DevOps เช่น OCI container, machine learning เป็นต้น
    • แต่การรัน virtual machine บน OpenBSD มีข้อจำกัดมาก: ใช้ได้แค่คอร์เดียว/ประสิทธิภาพต่ำจนทำให้โฟกัสกับงานได้ยาก
    • ในงานที่ปรึกษา บางครั้งจำเป็นต้อง รันซอฟต์แวร์ปิดซอร์ส ซึ่งบน VM ไม่มีปัญหา แต่บน OpenBSD กลับยุ่งยาก แถมประสิทธิภาพก็แย่
  • ความน่าเชื่อถือ
    • ผู้เขียนไม่พอใจกับระบบไฟล์ของ OpenBSD อย่างมาก และรู้สึกว่าเชื่อถือไม่ได้
      • เมื่อนำมาใช้เป็นเดสก์ท็อป มีอาการล่มบ่อยและข้อมูลสูญหายจนทนไม่ไหว
    • อาจเป็นปัญหาความเข้ากันได้ของฮาร์ดแวร์ก็ได้ เพราะเมื่อก่อนบน ThinkPad T400 ไม่เคยมีปัญหา แต่บนฮาร์ดแวร์บางรุ่นกลับเกิด kernel panic และอาการค้าง
      • ThinkPad X395, t470, t480, Ryzen 5600X + AMD GPU
    • OS ที่ข้อมูลสูญหายบ่อยนั้นใช้งานต่อได้ยาก
    • ดูเหมือนคนอื่นจะใช้งานได้เสถียรดี แต่ผู้เขียนไม่เข้าใจว่าทำไมตัวเองถึงเจอปัญหาล่มบ่อยขนาดนี้

ย้ายไป Linux

  • ผู้เขียนย้ายงานส่วนใหญ่จาก OpenBSD ไปทำบน Qubes OS แล้ว (ยกเว้นการเล่นเกม)
    • ใช้ Fedora virtual machine (โดยเฉลี่ยรัน VM พร้อมกันราว 20 เครื่อง)
    • วิธีนี้ให้ความปลอดภัยที่ดีกว่า OpenBSD: แยกงานตามบริบทได้
  • ระดับความพึงพอใจเพิ่มขึ้นจากฟีเจอร์ต่อไปนี้ที่มีใน Linux:
    • namespace: ฟีเจอร์สำหรับจำกัดขอบเขตของโปรเซส เป็นพื้นฐานของการรัน container และสร้างสภาพแวดล้อมแยกที่ทรงพลังกว่า chroot มาก
    • cgroups: kernel subsystem สำหรับติดตามการใช้ทรัพยากร ช่วยตรวจดูการใช้ network, I/O, CPU และ memory ได้อย่างแม่นยำ จึงมีประโยชน์มากสำหรับผู้ดูแลระบบในการหาสาเหตุของการใช้ทรัพยากร
    • systemd: มีฟีเจอร์ที่เป็นประโยชน์อย่าง journald, timer และความสามารถในการเขียนสคริปต์ แม้อาจมีเส้นโค้งการเรียนรู้ในช่วงแรก แต่หน้า manual จัดทำไว้ดี
    • การบีบอัด swap: ใช้อัลกอริทึมบีบอัด lz4 เพื่อประหยัดหน่วยความจำพร้อมให้ประสิทธิภาพ swap ที่รวดเร็วมาก โดยทั่วไปได้อัตราการบีบอัดราว 3:1 หรือ 4:1
    • storage backend แบบสมัยใหม่: ใช้ LVM, btrfs, ZFS ฯลฯ เพื่อเพิ่มประสิทธิภาพ ความน่าเชื่อถือ และความยืดหยุ่นได้สูงสุด โดยเฉพาะการบีบอัดข้อมูลแบบโปร่งใสที่ช่วยเก็บข้อมูลได้มากขึ้นบนฮาร์ดแวร์เดิม (หากข้อมูลบีบอัดได้)
    • Flatpak: รันอยู่ใน namespace แยกอิสระ และถูกจำกัดไม่ให้เข้าถึงทั้งระบบไฟล์ทั้งหมด สามารถ rollback ไปเวอร์ชันก่อนหน้า หรือใช้ความสามารถอื่นเพิ่มเติมได้
    • auditd: เครื่องมือสำคัญในสภาพแวดล้อมด้านความปลอดภัย สามารถบันทึก log การเข้าถึงหรือแก้ไขไฟล์เฉพาะได้ ซึ่งเป็นฟีเจอร์ที่ OpenBSD ไม่มี
    • SELinux: แม้มักถูกปิดใช้งานในช่วงตั้งค่าเริ่มต้น แต่เป็นกลไกความปลอดภัยที่ทรงพลังมากซึ่งช่วยลดความเสี่ยงของช่องโหว่ได้ทั้งคลาส
  • เมื่อต้องใช้เดสก์ท็อปเพื่อการเล่นเกม ผู้เขียนใช้ Fedora Silverblue ซึ่งให้ทั้งการอัปเกรดที่เสถียรและความหลากหลายของซอฟต์แวร์

สรุป

  • ผู้เขียนเลิกใช้ OpenBSD เพราะเกิด อาการล่มบ่อยและข้อมูลสูญหาย
  • ประสิทธิภาพที่ไม่เพียงพอและประสิทธิผลในการทำงานที่ลดลงทำให้ไม่เหมาะกับงานส่วนตัว
  • อย่างไรก็ตาม ผู้เขียนยังมองในแง่บวกต่อการที่ผู้ใช้ OpenBSD ชื่นชอบความเรียบง่ายและความโปร่งใสของระบบ
    • โดยเฉพาะจุดที่ผู้ใช้สามารถเข้าใจการทำงานภายในของระบบได้ ถือเป็นข้อดีที่โดดเด่นของ OpenBSD (และ NetBSD อาจคล้ายกัน)
  • ต่อจากนี้ก็ยังจะ สนับสนุน OpenBSD ในกรณีที่มันเหมาะสม
  • เมื่อต้องมีส่วนร่วมกับซอฟต์แวร์โอเพนซอร์ส ก็จะตรวจสอบความเข้ากันได้กับ OpenBSD และยังเปิดโอกาสสำหรับการกลับไปใช้ OpenBSD หากจำเป็น

1 ความคิดเห็น

 
GN⁺ 2024-11-30
ความคิดเห็นบน Hacker News
  • NetBSD ไม่มีความสามารถด้าน GPU computing และ DRM บนเบราว์เซอร์ก็ใช้งานไม่สะดวก จึงใช้ macOS แทน ระบบไม่ควรล่มหรือเกิด panic และไม่ควรมีการสูญหายของข้อมูลหรือความเสียหายของไฟล์ซิสเต็ม จึงมองว่า OpenBSD ควรให้ความสำคัญกับเสถียรภาพมากกว่าความปลอดภัย

  • น่าเสียดายที่ Solène Rapenne ย้ายงาน แต่เธอได้มีส่วนช่วยทีม OpenBSD อย่างมาก ช่วงหลังได้เจอ panic บน OpenBSD 7.6 จนข้อมูลสูญหาย แต่ก็ยังจะใช้ OpenBSD เพื่อทดสอบสิ่งที่พัฒนาบน Linux ต่อไป

  • ชอบวิธีแจกจ่ายซอฟต์แวร์ของ Flatpak แต่ก็ยังมีช่องโหว่ด้านความปลอดภัยอยู่

  • OpenBSD ใช้งานหลักสำหรับเซิร์ฟเวอร์ ดังนั้นการรองรับ Bluetooth หรือ gamepad จึงไม่ใช่เรื่องสำคัญลำดับต้น

  • OpenBSD เหมาะกับการใช้เป็น network firewall และไฟล์คอนฟิกก็เข้าใจได้ง่าย

  • ได้เรียนรู้อะไรมากมายจาก Solène ในฟอรัม Qubes OS แม้ OpenBSD จะมีเสน่ห์ในเชิงปรัชญา แต่ก็ไม่เหมาะกับกรณีการใช้งานส่วนตัว

  • ตอนใช้ OpenSuse พบว่ารองรับ filesystem snapshot ได้ยอดเยี่ยม และใช้ Flatpak มาเติมเต็มส่วนที่ยังขาดได้

  • เมื่อใช้ virtualization บน OpenBSD ประสิทธิภาพแย่มากและเจอปัญหาใหญ่

  • ไม่ค่อยเจอปัญหาข้อมูลสูญหายเพราะมี journaling file system จึงคิดว่างานด้าน data integrity จะเป็นประโยชน์ต่อความปลอดภัยมากกว่า

  • กำลังผิดหวังกับ rootless container บน Linux และคิดว่าจะลองใช้ Incus กับ Firecracker

  • ปัญหาหลักของ Solène คือ VM hosting และปัญหาไฟล์ซิสเต็ม จึงคิดว่าถ้ามี VM hosting ที่ดีกว่านี้ ก็น่าจะแก้ปัญหาด้านความปลอดภัยและการรองรับฮาร์ดแวร์ได้