อ่าน 6 นาที
ออเรนจ์เอฟเอส
OrangeFS เป็น ระบบไฟล์แบบขนานโอ เพนซอร์ส ซึ่งเป็น ระบบไฟล์เสมือนแบบขนาน (PVFS) รุ่นต่อไป ระบบ ไฟล์แบบขนาน เป็น ระบบไฟล์แบบกระจาย ประเภทหนึ่ง...
ออเรนจ์เอฟเอส
| ออเรนจ์เอฟเอส | |
|---|---|
| ผู้เขียนต้นฉบับ | มหาวิทยาลัยเคล็มสัน , ห้องปฏิบัติการแห่งชาติอาร์กอนและหน่วยงานอื่นๆ ในชุมชน |
| นักพัฒนา | บริษัท Omnibond, มหาวิทยาลัย Clemson , ห้องปฏิบัติการแห่งชาติ Argonneและสมาชิกชุมชน |
| ปล่อย | 2011 |
| เวอร์ชันเสถียร | OrangeFS 2.10.1 / 9 กันยายน 2025 เคอร์เนล Linux 5.13 + |
| เขียนเป็น | ซี |
| ระบบปฏิบัติการ | ลินุกซ์ |
| ใบอนุญาต | แอลจีพีแอล |
| เว็บไซต์ | www.orangefs.org |
| ที่เก็บข้อมูล | github.com/waltligon/orangefs |
OrangeFSเป็นระบบไฟล์แบบขนานโอเพนซอร์ส ซึ่งเป็น ระบบไฟล์เสมือนแบบขนาน (PVFS) รุ่นต่อไป ระบบ ไฟล์แบบขนาน เป็น ระบบไฟล์แบบกระจายประเภทหนึ่ง ที่กระจายข้อมูลไฟล์ไปยังเซิร์ฟเวอร์หลายเครื่อง และช่วยให้สามารถเข้าถึงพร้อมกันได้โดยงานหลายงานของแอปพลิเคชันแบบขนาน OrangeFS ได้รับการออกแบบมาเพื่อใช้ใน การประมวลผลแบบคลัสเตอร์ขนาดใหญ่และถูกใช้งานโดยบริษัท มหาวิทยาลัย ห้องปฏิบัติการแห่งชาติ และสถานที่ที่คล้ายคลึงกันทั่วโลก[ 1 ] [ 2 ] [ 3 ] [ 4 ]
เวอร์ชันและคุณสมบัติ
2.8.5
- โครงสร้างพื้นฐานการสื่อสารระหว่างเซิร์ฟเวอร์
- ตัวเลือก SSD สำหรับการจัดเก็บข้อมูลเมตาแบบกระจาย
- รองรับไคลเอ็นต์ Windows อย่างสมบูรณ์
- การจำลองแบบสำหรับไฟล์ที่ไม่สามารถเปลี่ยนแปลงได้
2.8.6
- อินเทอร์เฟซโดยตรงสำหรับแอปพลิเคชัน
- การแคชไคลเอ็นต์สำหรับอินเทอร์เฟซโดยตรงที่มีความสอดคล้องของระบบเดียวแบบหลายกระบวนการ
- การเปิดตัวครั้งแรกของ webpack ที่รองรับWebDAVและ S3 ผ่านโมดูล Apache [ 5 ]
2.8.7
- การอัปเดต การแก้ไข และการปรับปรุงประสิทธิภาพ
2.8.8
- การอัปเดต แก้ไขข้อผิดพลาด และปรับปรุงประสิทธิภาพ รองรับ Hadoop โดยตรง ผ่านJNI shim และรองรับเคอร์เนล Linux รุ่นใหม่กว่า
2.9
- เมตาเดต้าแบบกระจายสำหรับรายการไดเร็กทอรี[ 6 ]
- ระบบรักษาความปลอดภัยตามความสามารถใน 3 โหมด
- ระบบรักษาความปลอดภัยมาตรฐาน
- ระบบรักษาความปลอดภัยแบบใช้กุญแจ
- ระบบรักษาความปลอดภัยแบบใช้ใบรับรองพร้อมรองรับอินเทอร์เฟซLDAP
- เอกสารเพิ่มเติม
2.10
- แก้ไขข้อบกพร่องและปรับเปลี่ยนโครงสร้างเพื่อรองรับระบบปฏิบัติการรุ่นล่าสุด
- ไคลเอ็นต์เคอร์เนลหลักของ Linux เป็นวิธีการเข้าถึงหลักสำหรับ Linux ส่วนโมดูลเคอร์เนลนอกโครงสร้างหลักนั้นเลิกใช้งานแล้ว
- ไคลเอนต์ OrangeFS สำหรับ Windows ได้รับการอัปเดตแล้ว
ประวัติศาสตร์
OrangeFS เกิดขึ้นจากการพัฒนาต่อยอดจาก PVFS2 ดังนั้นประวัติความเป็นมาส่วนใหญ่จึงมีความเกี่ยวเนื่องกับ PVFS ประวัติความเป็นมาอันยาวนานกว่ายี่สิบปีของ OrangeFS สรุปไว้ในไทม์ไลน์ด้านล่างนี้
สาขาการพัฒนาคือทิศทางการพัฒนาใหม่ สาขา OrangeFS เริ่มต้นขึ้นในปี 2550 เมื่อผู้นำในชุมชนผู้ใช้ PVFS2 พบว่า:
- หลายคนพอใจกับเป้าหมายการออกแบบของ PVFS2 และต้องการให้คงไว้ซึ่งความเปลี่ยนแปลงเพียงเล็กน้อยเพื่อความเสถียรในอนาคต
- บางคนมองว่า PVFS2 เป็นรากฐานในการสร้างชุดเป้าหมายการออกแบบใหม่ทั้งหมดสำหรับแอปพลิเคชันขั้นสูงในอนาคต
นี่จึงเป็นเหตุผลว่าทำไม OrangeFS จึงมักถูกกล่าวถึงว่าเป็น PVFS2 รุ่นต่อไป
- พ.ศ. 2536
- ระบบไฟล์เสมือนแบบขนาน (Parallel Virtual File System หรือ PVFS) ได้รับการพัฒนาโดย Walt Ligon และ Eric Blumer ภายใต้ทุนสนับสนุนจาก NASA เพื่อศึกษาแบบแผนการรับส่งข้อมูล (I/O patterns) ของโปรแกรมแบบขนาน PVFS เวอร์ชัน 0 มีพื้นฐานมาจากระบบไฟล์แบบขนาน Vesta ที่พัฒนาขึ้นที่ศูนย์วิจัย Thomas J. Watson ของ IBM และชื่อของมันมาจากกระบวนการพัฒนาเพื่อให้ทำงานบนเครื่องเสมือนแบบขนาน (Parallel Virtual Machine หรือ PVM)
- พ.ศ. 2537
- Rob Ross ได้เขียนโปรแกรม PVFS ใหม่ให้ใช้ TCP/IP ซึ่งแตกต่างอย่างมากจากการออกแบบ Vesta ดั้งเดิม PVFS เวอร์ชัน 1 มีเป้าหมายสำหรับคลัสเตอร์ของเวิร์กสเตชัน DEC Alpha บน FDDI ซึ่งเป็นเครือข่ายรุ่นก่อนหน้าของ Fast Ethernet PVFS มีข้อดีเหนือกว่า Vesta อย่างมากในด้านการจัดตารางเวลาการอ่านเขียนดิสก์ในขณะที่ไคลเอนต์หลายรายเข้าถึงไฟล์เดียวกัน
- ปลายปี 1994
- ศูนย์การบินอวกาศก็อดดาร์ด (Goddard Space Flight Center) เลือกใช้ PVFS เป็นระบบไฟล์สำหรับ Beowulf รุ่นแรก (ซึ่งเป็นการใช้งานคอมพิวเตอร์แบบขนานบนระบบลินุกซ์ในยุคแรกๆ) ลิกอนและรอสส์ได้ทำงานร่วมกับนักพัฒนาหลักของ GSFC รวมถึง โทมัส สเตอร์ลิง, โดนัลด์ เบคเกอร์, แดน ริดจ์ และเอริค เฮนดริกส์ ตลอดหลายปีต่อมา
- พ.ศ. 2540
- PVFS ถูกปล่อยออกมาในรูปแบบซอฟต์แวร์โอเพนซอร์ส
- 1999
- ลิกอนเสนอให้พัฒนา PVFS เวอร์ชันใหม่ โดยเริ่มแรกพัฒนาขึ้นที่มหาวิทยาลัยเคล็มสัน การออกแบบเสร็จสมบูรณ์ด้วยความร่วมมือจากผู้มีส่วนร่วมจากเคล็มสัน ห้องปฏิบัติการแห่งชาติอาร์กอน และศูนย์ซูเปอร์คอมพิวเตอร์โอไฮโอรวมถึงการมีส่วนร่วมที่สำคัญจากฟิล คาร์นส์ นักศึกษาปริญญาเอกที่เคล็มสัน
- 2003
- PVFS2 เปิดตัวแล้ว โดยมีคุณสมบัติเด่น ได้แก่ เซิร์ฟเวอร์อ็อบเจ็กต์ เมตาเดตาแบบกระจาย การรองรับเซิร์ฟเวอร์เมตาเดตาหลายตัว มุมมองไฟล์ที่ใช้ MPI (Message Passing Interface โปรโตคอลที่ปรับให้เหมาะสมสำหรับการประมวลผลประสิทธิภาพสูง) สำหรับเครือข่ายหลายประเภท และสถาปัตยกรรมที่ยืดหยุ่นเพื่อการทดลองและการขยายที่ง่ายดาย PVFS2 กลายเป็นโครงการ "ชุมชนเปิด" โดยได้รับการสนับสนุนจากมหาวิทยาลัยและบริษัทต่างๆ ทั่วโลก
- 2548
- PVFS เวอร์ชัน 1 ถูกยกเลิกแล้ว PVFS2 ยังคงได้รับการสนับสนุนจาก Clemson และ Argonne ในช่วงไม่กี่ปีที่ผ่านมา ผู้มีส่วนร่วมหลายท่าน (โดยเฉพาะอย่างยิ่งนักออกแบบและนักพัฒนาหลักสูตร) ได้ปรับปรุงประสิทธิภาพของ PVFS อย่างต่อเนื่อง
- 2007
- ห้องปฏิบัติการแห่งชาติอาร์กอนเลือกใช้ PVFS2 สำหรับซูเปอร์คอมพิวเตอร์ IBM Blue Gene/P ซึ่งได้รับการสนับสนุนจากกระทรวงพลังงานของสหรัฐอเมริกา
- 2008
- ลิกอนและคนอื่นๆ ที่เคล็มสันเริ่มสำรวจความเป็นไปได้สำหรับ PVFS รุ่นต่อไปในแผนงานที่รวมถึงความต้องการที่เพิ่มขึ้นของการประมวลผลแบบคลัสเตอร์ในภาคธุรกิจ ขณะที่พวกเขาเริ่มพัฒนาส่วนขยายเพื่อรองรับไดเร็กทอรีขนาดใหญ่ที่มีไฟล์ขนาดเล็ก การปรับปรุงด้านความปลอดภัย และความสามารถในการสำรองข้อมูล เป้าหมายหลายอย่างเหล่านี้ขัดแย้งกับการพัฒนา Blue Gene ด้วยลำดับความสำคัญที่แตกต่างกัน โค้ดต้นฉบับของ PVFS จึงถูกแบ่งออกเป็นสองสาขา สาขาสำหรับแผนงานใหม่กลายเป็น "Orange" เพื่อเป็นเกียรติแก่สีประจำโรงเรียนเคล็มสัน และสาขาสำหรับระบบเดิมถูกตั้งชื่อว่า "Blue" เนื่องจากเป็นระบบแรกที่ติดตั้งโดยลูกค้าที่อาร์กอน OrangeFS กลายเป็นแบรนด์ระบบเปิดใหม่เพื่อเป็นตัวแทนของระบบไฟล์เสมือนรุ่นใหม่นี้ โดยเน้นที่ความปลอดภัย การสำรองข้อมูล และการใช้งานที่หลากหลายยิ่งขึ้น
- ฤดูใบไม้ร่วง ปี 2010
- OrangeFS กลายเป็นสาขาหลักของ PVFS และ Omnibond เริ่มให้บริการสนับสนุนเชิงพาณิชย์สำหรับ OrangeFS/PVFS โดยคำขอคุณสมบัติใหม่จากลูกค้าที่ชำระค่าบริการจะได้รับความสำคัญสูงสุดในการพัฒนา มีการเปิดตัว OrangeFS เวอร์ชันใช้งานจริงครั้งแรก
- ฤดูใบไม้ผลิ ปี 2554
- OrangeFS เวอร์ชัน 2.8.4 เปิดตัวแล้ว
- กันยายน 2554
- OrangeFS เพิ่มไคลเอ็นต์สำหรับ Windows
- กุมภาพันธ์ 2555
- OrangeFS เวอร์ชัน 2.8.5 เปิดตัวแล้ว
- มิถุนายน 2555
- OrangeFS เวอร์ชัน 2.8.6 เปิดตัวแล้ว โดยนำเสนอประสิทธิภาพที่ได้รับการปรับปรุง ไคลเอนต์บนเว็บ และไลบรารีอินเทอร์เฟซโดยตรง แพ็กเกจ OrangeFS Web ใหม่นี้ให้การสนับสนุนแบบบูรณาการสำหรับ WebDAV และ S3
- มกราคม 2556
- OrangeFS เวอร์ชัน 2.8.7 เปิดตัวแล้ว
- พฤษภาคม 2556
- OrangeFS พร้อมใช้งานแล้วบนAmazon Web Services marketplace OrangeFS เวอร์ชัน 2.9 เบต้าพร้อมใช้งานแล้ว โดยเพิ่มโหมดความปลอดภัยใหม่สองโหมดและอนุญาตให้กระจายรายการไดเร็กทอรีไปยังเซิร์ฟเวอร์ข้อมูลหลายเครื่องได้
- เมษายน 2557
- OrangeFS เวอร์ชัน 2.8.8 เปิดตัวพร้อมเพิ่ม การรองรับ mmap แบบใช้ร่วมกัน และการรองรับ JNI สำหรับแอปพลิเคชันในระบบนิเวศของ Hadoop โดยรองรับการทดแทน HDFS โดยตรง
- พฤศจิกายน 2557
- OrangeFS เวอร์ชัน 2.9.0 เปิดตัวแล้ว โดยเพิ่มการรองรับเมตาเดตาแบบกระจายสำหรับรายการในไดเร็กทอรีโดยใช้อัลกอริธึมแฮชที่ขยายได้ซึ่งจำลองมาจาก giga+ และความสามารถในการรักษาความปลอดภัยพื้นฐานที่เข้ากันได้กับ POSIX รุ่นก่อนหน้า โดยรองรับหลายโหมด
- มกราคม 2558
- OrangeFS เวอร์ชัน 2.9.1 เปิดตัวแล้ว
- มีนาคม 2558
- OrangeFS เวอร์ชัน 2.9.2 เปิดตัวแล้ว
- มิถุนายน 2558
- OrangeFS เวอร์ชัน 2.9.3 เปิดตัวแล้ว
- พฤศจิกายน 2558
- OrangeFS ถูกรวมอยู่ใน CloudyCluster เวอร์ชัน 1.0 บน AWS แล้ว
- พฤษภาคม 2559
- OrangeFS รองรับใน Linux Kernel 4.6 [ 7 ] [ 8 ] [ 9 ] [ 10 ]
- ตุลาคม 2560
- เวอร์ชัน 2.9.6 วางจำหน่ายแล้ว
- มกราคม 2561
- 2.9.7 เผยแพร่แล้ว OrangeFS rpm จะถูกรวมอยู่ในการแจกจ่ายFedora [ 11 ]
- กุมภาพันธ์ 2562
- CloudyCluster เวอร์ชัน 2 เปิดตัวบน AWS Marketplace พร้อมฟีเจอร์ OrangeFS
- มิถุนายน 2562
- CloudyCluster เวอร์ชัน 2 เปิดตัวบน GCP โดยใช้ OrangeFS
- กรกฎาคม 2562
- OreangeFS ถูกรวมเข้ากับแคชเพจของ Linux ในเคอร์เนล Linux 5.2 [ 12 ]
- มกราคม 2020
- การแก้ไขชั่วคราวของ OrangeFS สำหรับปัญหาการเขียนหลังจากเปิดไฟล์ ได้ถูกรวมเข้ากับเคอร์เนล Linux เวอร์ชัน 5.5 แล้ว
- สิงหาคม 2563
- แพทช์เคอร์เนลกลับไปเป็นเวอร์ชัน 5.4lts ที่แก้ไขปัญหาเกี่ยวกับขนาดบล็อกที่ไม่เป็นมาตรฐาน
- กันยายน 2020
- เวอร์ชัน 2.9.8 วางจำหน่ายแล้ว
- มิถุนายน 2564
- เคอร์เนล Linux 5.13: การอ่านล่วงหน้าของ OrangeFS ในเคอร์เนล Linux ได้รับการปรับปรุงใหม่เพื่อใช้ประโยชน์จากตรรกะ xarray และ readahead_expand ใหม่ ซึ่งช่วยปรับปรุงประสิทธิภาพการอ่านได้อย่างมาก[ 13 ]
- กรกฎาคม 2564
- บั๊กผลลัพธ์ df - df บน OrangeFS รายงานค่าที่เล็กเกินไปเมื่อเทียบกับความเป็นจริงและทำให้เกิดปัญหาเกี่ยวกับตัวติดตั้งสำเร็จรูป (และผู้ใช้ที่สับสน) [ 14 ] การแก้ไข นี้ได้รับการย้อนกลับไปใช้ในเคอร์เนลเวอร์ชันก่อนหน้าหลายเวอร์ชัน รวมถึงดึงเข้ามาในเวอร์ชันล่าสุดด้วย[ 15 ]
- ตุลาคม 2565
- (เคอร์เนล) เปลี่ยน .iterate เป็น .iterate_shared ใน orangefs_dir_operations เนื่องจาก iterate เป็นฟังก์ชันที่เลิกใช้งานแล้ว
- พฤศจิกายน 2022
- (เคอร์เนล) ACL ได้รับการปรับปรุงใหม่ในเคอร์เนลหลัก โดยมีการอัปเดตการจัดการโหมด OrangeFS เพื่อให้สอดคล้องกับการเปลี่ยนแปลงนี้
- ธันวาคม 2022
- (เคอร์เนล) แก้ไขปัญหาหน่วยความจำรั่วไหลขณะออกจากโปรแกรมในโค้ด sysfs และ debufs ของ OrangeFS
ไตรมาสที่ 1 ปี 2566 (มกราคม-มีนาคม)
- การเปลี่ยนแปลง :
- เสนอให้เปลี่ยนระบบอ่านล่วงหน้าของ OrangeFS ไปใช้ folios แทนการจัดการแบบเดิมที่ใช้หน้าข้อมูล เพื่อปรับปรุงประสิทธิภาพการอ่านและให้สอดคล้องกับแนวโน้มแคชหน้าข้อมูลของเคอร์เนลในปัจจุบัน
- การหารือเบื้องต้นและการแก้ไขเพื่อลดความซับซ้อนของการส่งผ่านอาร์กิวเมนต์ในฟังก์ชัน readdir ของ OrangeFS เพื่อเพิ่มความชัดเจนของโค้ด
ไตรมาสที่ 2 ปี 2566 (เมษายน-มิถุนายน)
- การเปลี่ยนแปลง :
- รวมการอ่านล่วงหน้าแบบอิงตามโฟลิโอสำหรับ OrangeFS เข้ากับสาขา mm-unstable เพื่อเพิ่มประสิทธิภาพการอ่าน
- แก้ไขรหัสข้อผิดพลาดที่ไม่ถูกต้องในฟังก์ชัน orangefs_sysfs_init() เพื่อเพิ่มความน่าเชื่อถือในการเริ่มต้นใช้งาน sysfs
- นำเสนอฟังก์ชัน splice-read stub สำหรับ OrangeFS ซึ่งช่วยให้การดำเนินการ I/O มีประสิทธิภาพมากขึ้นผ่าน splice
- แปลง OrangeFS ไปใช้ฟังก์ชันตัวเข้าถึง ctime แบบใหม่ ซึ่งสอดคล้องกับการปรับปรุงการจัดการการประทับเวลาของ VFS
ไตรมาสที่ 3 ปี 2566 (กรกฎาคม-กันยายน)
- การเปลี่ยนแปลง :
- การปรับปรุงการรองรับการประทับเวลาแบบหลายระดับอย่างต่อเนื่อง โดย OrangeFS ได้นำตัวเข้าถึง atime/mtime ใหม่มาใช้
- ย้าย orangefs_xattr_handlers ไปไว้ใน .rodata เพื่อเพิ่มความปลอดภัยและประสิทธิภาพโดยทำให้เป็นแบบอ่านอย่างเดียว
- เสนอให้เปลี่ยน strncpy() เป็น strscpy() ใน OrangeFS เพื่อแก้ไขปัญหาความเสี่ยงจากการตัดทอนสตริง (แพทช์เบื้องต้น)
ไตรมาสที่ 4 ปี 2023 (ตุลาคม–ธันวาคม)
- การเปลี่ยนแปลง :
- การแปลงเป็นรูปแบบการเข้าถึงไทม์สแตมป์ใหม่สำหรับ atime, mtime และ ctime เสร็จสมบูรณ์แล้ว เพื่อให้มั่นใจว่าเข้ากันได้กับ VFS
- การส่งอาร์กิวเมนต์ readdir แบบง่าย ช่วยเพิ่มประสิทธิภาพในการดำเนินการกับไดเร็กทอรี
- ลบ ORANGEFS_CACHE_CREATE_FLAGS ที่ไม่ได้ใช้งานออก เพื่อปรับปรุงประสิทธิภาพของโค้ด
ไตรมาสที่ 1 ปี 2024 (มกราคม-มีนาคม)
- การเปลี่ยนแปลง :
- แก้ไขข้อผิดพลาดในการเข้าถึงค่า NULL ใน orangefs_mount ที่รายงานโดย Julia Lawall และหุ่นยนต์ทดสอบเคอร์เนล ซึ่งช่วยป้องกันการเกิดข้อผิดพลาดขณะทำการเมานต์
- แก้ไขปัญหาการรั่วไหลของจำนวนการอ้างอิงซูเปอร์บล็อก ส่งผลให้การจัดการทรัพยากรดีขึ้น
- ย้ายโค้ดดีบักไปไว้ใน orangefs-debugfs.c เพื่อปรับปรุงการจัดระเบียบโค้ดให้ดียิ่งขึ้น
- เปลี่ยนจาก strncpy() เป็น strscpy() ทั่วทั้ง OrangeFS เพื่อแก้ไขคำเตือนเรื่องการตัดทอนและปรับปรุงความปลอดภัยของสตริง
- ส่งการอัปเดตสำหรับ Linux 6.9 แล้ว ซึ่งรวมถึงการปรับปรุงการจัดการสตริงและโค้ดดีบัก
ไตรมาสที่ 2 ปี 2024 (เมษายน-มิถุนายน)
- การเปลี่ยนแปลง :
- ลบการใช้งานแฟล็ก PG_error ใน OrangeFS เพื่อลดความซับซ้อนของการจัดการข้อผิดพลาด ซึ่งเป็นส่วนหนึ่งของการปรับปรุงระบบเคอร์เนลโดยรวม
- แปลงการดำเนินการอ่าน/เขียนให้ใช้ตัววนซ้ำแทนเมธอด ->read()/->write() ที่เลิกใช้งานแล้ว
- แก้ไขปัญหาการเข้าถึง fsid นอกขอบเขต (CVE-2024-42143) เสร็จสมบูรณ์แล้ว และได้ทำการ backport ไปยังเคอร์เนลเวอร์ชันเสถียรหลายเวอร์ชันแล้ว
ไตรมาสที่ 3 ปี 2024 (กรกฎาคม-กันยายน)
- การเปลี่ยนแปลง :
- แปลงฟังก์ชัน orangefs_write_begin และ orangefs_write_end ให้ใช้ folios เพื่อเพิ่มประสิทธิภาพการเขียนข้อมูล
- ปฏิเสธปัญหาการเข้าถึง fsid ซ้ำซ้อน (CVE-2024-42143) โดยยืนยันว่าการแก้ไขก่อนหน้านี้เพียงพอแล้ว
- ได้ส่งการเปลี่ยนแปลง OrangeFS สำหรับ Linux 6.12 แล้ว ซึ่งน่าจะรวมถึงการแก้ไขปัญหาเกี่ยวกับ folio และความเสถียร
ไตรมาสที่ 4 ปี 2024 (ตุลาคม–ธันวาคม)
- การเปลี่ยนแปลง :
- รายงานและแก้ไขข้อผิดพลาดในการอ่านข้อมูลเกินขอบเขตใน orangefs_debug_write (CVE-2025-21782) ซึ่งเกิดจาก syzbot ป้องกันการหยุดทำงานหรือความเสียหายของโปรแกรม
- แทนที่ strcpy ด้วย strscpy ใน orangefs_inode_getxattr() เพื่อปรับปรุงความปลอดภัยของสตริงให้ดียิ่งขึ้น
- ตรวจสอบการปรับปรุงการจัดการหน่วยความจำของ Folio เพื่อรองรับการผสานรวม Folio ของ OrangeFS
ไตรมาสที่ 1 ปี 2025 (มกราคม-มีนาคม)
- การเปลี่ยนแปลง :
- แก้ไขปัญหา debug_write ที่อยู่นอกขอบเขต (CVE-2025-21782) โดยได้ทำการ backport ไปยังเวอร์ชัน 4.19–6.13 พร้อมกับ pull request หลายรายการ
- ปรับปรุงฟังก์ชัน orangefs_d_revalidate() ให้มีเสถียรภาพในการจัดการ inode และชื่อของ VFS parent และรับรองความปลอดภัยของ debugfs
- ได้ส่งชุดแพทช์ 9 รายการสำหรับ Linux 6.15 ซึ่งรวมถึงการแก้ไขปัญหาการตัดขนาดไฟล์ การปรับปรุงการเขียนข้อมูลกลับไปยัง folio และการลดความซับซ้อนของโค้ด
- แก้ไขข้อผิดพลาดในการตัดขนาดไฟล์ โดยนำการแก้ไขนี้ไปใช้ในเวอร์ชัน 5.4–6.14 เพื่อป้องกันการสูญหายของข้อมูล
- แก้ไขข้อผิดพลาดในการเขียนข้อมูลกลับ (writeback) เวอร์ชัน 6.14 (commit 665575cf) ส่งผลให้ประสิทธิภาพดีขึ้น
- แก้ไขข้อผิดพลาดในการนับและแก้ไขปัญหาการผสานรวม VFS แล้ว
ไตรมาสที่ 2 ปี 2025 (เมษายน-มิถุนายน)
- การเปลี่ยนแปลง :
- ดำเนินการแก้ไขปัญหาการเขียนข้อมูลกลับ (writeback regression) ในเวอร์ชัน 6.14 อย่างต่อเนื่อง เพื่อให้มั่นใจในความถูกต้องของข้อมูล
- ส่งคำขอแก้ไข (pull request) ของ OrangeFS สำหรับ Linux 6.16 แล้ว ซึ่งรวมถึงการแก้ไขและปรับปรุงที่กำลังดำเนินการอยู่
- แก้ไขปัญหาแพทช์ซ้ำซ้อนใน linux-next เพื่อปรับปรุงการทำงานร่วมกันให้ดียิ่งขึ้น
OrangeFS v2.10.1 เวอร์ชันเดือนกันยายน 2025 เป็นเวอร์ชันล่าสุดของตระกูล OrangeFS ซึ่งรวมถึงการอัปเดตเพื่อรองรับระบบปฏิบัติการ Linux เวอร์ชันล่าสุด การแก้ไขข้อบกพร่อง และไคลเอนต์สำหรับ Windows
การอัปเดตทั่วไป
- การอัปเดตเอกสาร
- ลบการพึ่งพา c-shell ออกแล้ว
- เปลี่ยนการเชื่อมโยงการสร้างเริ่มต้นจากแบบคงที่ (static) เป็นแบบใช้ร่วมกัน (shared)
- เปลี่ยนจาก bdb เป็น lmdb สำหรับฐานข้อมูลเริ่มต้น
- สคริปต์การกำหนดค่าที่อัปเดตแล้วสำหรับ usrint
- มีการปรับปรุงโค้ดบางส่วนเพื่อให้เป็นไปตามมาตรฐานการเขียนโค้ด
ขุมทรัพย์
- ตัดทอน bstream ก่อนกำหนดขนาดแอตทริบิวต์ในกรณีที่วิธีแรกไม่สำเร็จ
- ล็อกโลคอลสำหรับการตัดทอน รวมถึงการกำหนดแอตทริบิวต์ขนาดด้วย
การแก้ไขทั่วไป
- ปรับฟังก์ชันบางอย่างในสเตทแมชชีนให้ตรงกับต้นแบบของมัน
- เพิ่มข้อความซุบซิบลงไปบ้าง และปรับปรุงข้อความอื่นๆ ให้ดีขึ้น
- กู้คืนความสามารถในการเรียกใช้คำสั่ง "make dist" แล้ว
- การประมวลผลสตริง db_display แบบแก้ไขแล้ว
- แก้ไขการจัดการข้อผิดพลาดการตัดทอน bstream-resize ที่แก้ไขแล้ว
ลิงก์ภายนอก
- ระบบไฟล์ Orange - ระบบไฟล์เสมือนแบบขนานรุ่นใหม่ล่าสุด
- สถาปัตยกรรมของระบบไฟล์แบบขนานรุ่นใหม่(เก็บถาวรเมื่อ 11 มกราคม 2015 ที่Wayback Machine ) ( วิดีโอเก็บถาวรเมื่อ 28 มีนาคม 2016 ที่Wayback Machine )
- การใช้งานไดเร็กทอรีแบบกระจายที่ปรับขนาดได้บน Orange File System
- Elasticlusterกับ OrangeFS
- OrangeFS ใน AWS Marketplace
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ ออเรนจ์เอฟเอส
OrangeFS เป็น ระบบไฟล์แบบขนานโอ เพนซอร์ส ซึ่งเป็น ระบบไฟล์เสมือนแบบขนาน (PVFS) รุ่นต่อไป ระบบ ไฟล์แบบขนาน เป็น ระบบไฟล์แบบกระจาย ประเภทหนึ่ง...
ประวัติศาสตร์
OrangeFS เกิดขึ้นจากการพัฒนาต่อยอดจาก PVFS2 ดังนั้นประวัติความเป็นมาส่วนใหญ่จึงมีความเกี่ยวเนื่องกับ PVFS ประวัติความเป็นมาอันยาวนานกว่ายี่สิบปีของ OrangeFS สรุปไว้ในไทม์ไลน์ด้านล่างนี้
ลิงก์ภายนอก
ระบบไฟล์ Orange - ระบบไฟล์เสมือนแบบขนานรุ่นใหม่ล่าสุด สถาปัตยกรรมของระบบไฟล์แบบขนานรุ่นใหม่(เก็บถาวรเมื่อ 11 มกราคม 2015 ที่ Wayback Machine ) ( วิดีโอเก็บถาวรเมื่อ 28 มีนาคม 2016 ที่ Wayback Machine ) การใช้งานไดเร็กทอรีแบบกระจายที่ปรับขนาดได้บน Orange File...