โครงการ Linux From Scratch
(linuxfromscratch.org)-
แนะนำ Linux From Scratch
- Linux From Scratch (LFS) เป็นโครงการที่ให้คำแนะนำแบบทีละขั้นตอนเพื่อสร้างระบบลินุกซ์แบบกำหนดเองโดยใช้ซอร์สโค้ดล้วน
- องค์กร LFS ประกอบด้วยโครงการย่อยหลายโครงการ
-
โครงการย่อยหลัก
- LFS (Linux From Scratch): ภารกิจหลักที่เป็นรากฐานของโครงการอื่นทั้งหมด
- BLFS (Beyond Linux From Scratch): ให้แนวทางในการขยายการติดตั้ง LFS ที่เสร็จสมบูรณ์แล้ว เพื่อให้ปรับแต่งและใช้งานได้มากขึ้น
- ALFS (Automated Linux From Scratch): มีเครื่องมือสำหรับทำให้การบิลด์ LFS และ BLFS เป็นอัตโนมัติและจัดการได้ง่ายขึ้น
- Hints: ชุดเอกสารสำหรับปรับปรุงระบบ LFS ด้วยวิธีที่ไม่ได้รวมอยู่ในหนังสือ LFS หรือ BLFS
- Patches: ทำหน้าที่เป็นคลังกลางสำหรับแพตช์ทั้งหมดที่เป็นประโยชน์ต่อผู้ใช้ LFS
- LFS Editor's Guide: เอกสารที่อธิบายกระบวนการพัฒนา LFS
- Museum: เก็บสำเนาของ LFS และ BLFS เวอร์ชันเก่า
-
สรุปโดย GN⁺
- Linux From Scratch เป็นโครงการที่ช่วยให้ผู้ใช้สร้างระบบลินุกซ์ได้โดยตรงจากซอร์สโค้ด จึงมีประโยชน์สำหรับผู้ที่ต้องการเข้าใจระบบลินุกซ์อย่างลึกซึ้ง
- โครงการนี้รองรับการสร้างระบบแบบกำหนดเอง การทำงานอัตโนมัติ และการขยายระบบ ผ่านโครงการย่อยที่หลากหลาย
- LFS อาจน่าสนใจเป็นพิเศษสำหรับนักพัฒนาหรือผู้ดูแลระบบที่ต้องการเรียนรู้หลักการทำงานของลินุกซ์
- โครงการที่มีลักษณะคล้ายกันคือ Gentoo Linux ซึ่งเป็นลินุกซ์ดิสทริบิวชันแบบอิงซอร์ส
1 ความคิดเห็น
ความเห็นบน Hacker News
ระหว่างที่ลองทำ LFS ก็สงสัยว่าถ้าใช้ NixOS จะสามารถทำ LFS ให้เสร็จด้วยแนวทางแบบ Nix ได้หรือไม่ ด้วยความเป็น declarative ของ Nix จึงสามารถเก็บบันทึกทุกขั้นตอนไว้อย่างชัดเจน และเมื่อเกิดปัญหาก็สามารถตามหาสาเหตุแล้วแก้ไขได้ โปรเจ็กต์นี้ช่วยให้เข้าใจ Linux, การบูตสแตรป, การคอมไพล์ข้ามแพลตฟอร์ม, และ Nix ได้ดีขึ้นมาก หากกลับมาทำโปรเจ็กต์ LFS บนพื้นฐาน Nix อีกครั้ง ก็อยากจัดระเบียบหลายเรื่อง เช่น การตั้งค่าเคอร์เนลและการจัดการสิทธิ์หลังการบิลด์ ตัดเรื่องความซับซ้อนของ Nix ออกไปแล้ว LFS ก็ยังเป็นสิ่งที่น่าแนะนำสำหรับคนที่อยากเข้าใจว่าระบบทำงานอย่างไร
ประสบการณ์จากการติดตั้ง LFS และ Gentoo ช่วยในการเรียนรู้เกี่ยวกับคอมพิวเตอร์และ Linux ได้มาก ตอนเรียนมัธยมปลายเคยพิมพ์หนังสือ LFS ออกมาเพื่อใช้ที่บ้าน
เคยลองทำขั้นตอน LFS หลายครั้ง แต่สุดท้ายมันก็กลายเป็นแค่การคัดลอกคำสั่งลงเทอร์มินัล เลยหมดแรงจูงใจไป อยากรู้ว่ามีใครเคยรู้สึกแบบเดียวกันไหม
ลองทำ LFS หลังจากใช้ Gentoo มาก่อน ใช้เวลานานพอสมควรแต่ก็ถือว่าค่อนข้างง่าย ผู้คนใน IRC ช่วยเหลือดีมาก ความสนใจใน Linux ยังช่วยให้ประหยัดค่าใช้จ่ายด้านคลาวด์ได้ด้วย แม้ Linux จะค่อย ๆ หายไปในหมู่วิศวกรซอฟต์แวร์รุ่นใหม่ แต่ในกลุ่มคนรุ่นใหม่ที่ชื่นชอบเทคโนโลยีก็ยังคงมีชีวิตอยู่
อีกโปรเจ็กต์หนึ่งที่แนะนำสำหรับคนที่ชอบ LFS คือ Buildroot โดย Buildroot ใช้ Kconfig เพื่อสร้างคอนฟิกสำหรับสร้างระบบ Embedded Linux แพ็กเกจต่าง ๆ เขียนด้วย GNU Make และสามารถบิลด์แพ็กเกจด้วยเครื่องมือที่หลากหลายได้ ใช้งานได้ตั้งแต่ดิสโทร Embedded Linux ไปจนถึงแอปพลิเคชันสำหรับบูตผ่านเครือข่ายเพื่อรองรับการ provisioning แบบอัตโนมัติขนาดใหญ่
LFS เป็นวิธีที่สนุกในการสำรวจส่วนประกอบที่รวมกันเป็นดิสโทร Linux เคยลองอยู่หลายครั้งก่อนจะย้ายไปใช้ Gentoo และมันช่วยให้เข้าใจอิสระในการเลือกรายละเอียดของระบบปฏิบัติการได้ดีขึ้น
อยากเรียนรู้ผ่าน LFS มาตลอด 20 ปี ปีนี้กำลังเรียน Lisp อยู่และสนุกมาก
ความสนุกของ LFS อยู่ที่การบิลด์และติดตั้งซอฟต์แวร์ที่ต้องการทีละตัว การบิลด์ดิสโทรที่ใช้งานได้จริงขึ้นมา "จากศูนย์" น่าจะเป็นเรื่องที่สนุกมาก
LFS และ Cross Linux from Scratch มีบทบาทสำคัญในการบูตสแตรปดิสโทร Linux แบบปรับแต่งเองสำหรับอุปกรณ์ embedded
สงสัยว่า "BSD from scratch" จะมีหน้าตาเป็นอย่างไร Linux ประกอบขึ้นจากหลายส่วน แต่ BSD เป็นที่รู้กันว่าได้รับการออกแบบมาตั้งแต่ต้น เลยอยากรู้ว่าการสร้างระบบสมัยใหม่อย่าง Fuchsia ขึ้นมาตั้งแต่ศูนย์จะมีหน้าตาแบบไหน