ดังนั้นคุณจึงนั่งอยู่ที่คอมพิวเตอร์ของคุณและกำลังค้นหาจากที่เก็บซอฟต์แวร์ที่กำลังมองหาบางสิ่งที่จะติดตั้งเมื่อคุณสังเกตเห็นว่ามีไฟล์จำนวนมากที่มีนามสกุล noarch
Noarch คืออะไรและเหตุใดไฟล์จำนวนมากจึงมีส่วนขยายนี้
ส่วนใหญ่ noarch หมายถึงไม่มีสถาปัตยกรรม
เมื่อมาถึงจุดนี้คุณอาจสงสัยว่าทำไมคนอื่นถึงต้องสร้างแพ็คเกจที่ไม่ได้ทำงานบนสถาปัตยกรรมใด ๆ
คำว่า noarch หมายถึงไม่มีสถาปัตยกรรมเฉพาะหรือถ้าคุณต้องการสถาปัตยกรรมทั้งหมด
นี่เป็นไปได้อย่างไร? เป็นไปได้อย่างไรที่แพคเกจจะทำงานได้บนทุกระบบปฏิบัติการ Linux, Windows และระบบปฏิบัติการอื่น ๆ
ดีสำหรับการเริ่มต้นไม่ได้แพคเกจทั้งหมดมีการใช้งาน ตัวอย่างเช่นแอ็พพลิเคชัน gnome-backgrounds.arch คือชุดของพื้นหลังเดสก์ท็อป ขณะที่แพคเกจได้รับการพัฒนาสำหรับสภาพแวดล้อมเดสก์ท็อปของ Gnome จริงๆแล้วเป็นเพียงแค่คอลเลกชันภาพและภาพจะถูกสร้างขึ้นในรูปแบบสากลซึ่งสามารถใช้ได้กับระบบปฏิบัติการสมัยใหม่ใด ๆ
ดังนั้นคุณจึงสามารถคิดถึงแพ็คเกจ noarch ได้จากทุกสิ่งที่เป็นสากลอย่างแท้จริงเช่นพื้นหลังไอคอนและแม้แต่คู่มือ
แพคเกจ Noarch สามารถมีสคริปต์โปรแกรมและแอพพลิเคชันได้ แต่ต้องมีไฟล์ที่เป็นแพลตฟอร์มข้ามอย่างแท้จริง
สิ่งที่ประเภทของโปรแกรมเป็นแพลตฟอร์มข้ามอย่างแท้จริง?
เว็บแอพพลิเคชันที่พัฒนาขึ้นใน HTML, JavaScript และ CSS เป็นภาษาสากลเช่นเดียวกับภาษาสคริปต์ PHP, PERL และ Python
คอมไพล์โปรแกรมไม่สามารถพิจารณา noarch ได้เนื่องจากคอมไพล์ทำงานกับสถาปัตยกรรมเฉพาะ ดังนั้น C และ C ++ ไบนารีจะไม่พบในไฟล์ noarch ข้อยกเว้นของกฎนี้คือโปรแกรม Java เนื่องจาก Java เป็นแพลตฟอร์มข้ามอย่างแท้จริงและแอ็พพลิเคชัน Java ที่เขียนขึ้นสำหรับการแจกจ่ายและสถาปัตยกรรม Linux หนึ่งควรทำงานบนแพลตฟอร์ม Linux และ Windows อื่น ๆ
ตอนนี้คุณอาจคิดว่าซอร์สโค้ดสามารถเก็บไว้เป็นแพ็คเกจ noarch เพราะสามารถรวบรวมข้ามแพลตฟอร์มและเป็นเฉพาะไบนารีที่เฉพาะเจาะจงกับสถาปัตยกรรมเฉพาะ ซอร์สโค้ดจะถูกจัดเก็บด้วยนามสกุล src
ไฟล์ Noarch มักเกี่ยวข้องกับแพคเกจ RPM
มีความเป็นไปได้สูงที่คุณมีแพคเกจ RPM noarch อยู่แล้วในคอมพิวเตอร์ของคุณ
เมื่อต้องการค้นหาว่าแพ็คเกจ noarch ที่คุณติดตั้งไว้ให้รันคำสั่งต่อไปนี้:
rpm -qa - qf "% {N} -% {V} -% {R} \ t \ t% {ARCH} \ n" | grep noarch | มากกว่า
คำสั่งดังกล่าวสามารถแบ่งออกได้ดังนี้:
- รอบต่อนาที คือตัวจัดการแพคเกจ
- -q หมายถึงข้อความค้นหา
- - ย่อมาจากทั้งหมด
- --qf หมายถึงรูปแบบข้อความค้นหา
- เอาท์พุทจากคำสั่ง rpm จะถูกวางไว้เป็น input เพื่อ grep ซึ่งจะมองหา noarch
- เพิ่มเติมทำให้การส่งออกหยุดที่ท้ายข้อมูลหน้าคุณสามารถไปยังหน้าถัดไปได้โดยการกด Space
มองไปที่ผลลัพธ์ของคำสั่งดังกล่าวในคอมพิวเตอร์ของฉันฉันจะเห็นชุดของแบบอักษรแพคเกจเฟิร์มแวร์เอกสารภาพพื้นหลังไอคอนและธีมต่างๆ
คำเตือนอย่างไรก็ตาม เพียงเพราะมีบางอย่างที่บรรจุอยู่ในรูปแบบ noarch จะไม่เหมาะสมเสมอในการคัดลอกไฟล์ภายในแพคเกจนี้ไปยังคอมพิวเตอร์เครื่องอื่น ๆ และหวังว่าจะสามารถใช้งานได้
ตัวอย่างเช่นถ้าคุณมีคอมพิวเตอร์หนึ่งเครื่องที่ใช้ Fedora โดยใช้ตัวจัดการแพคเกจ RPM และอีกเครื่องหนึ่งที่ใช้ Debian โดยใช้รูปแบบไฟล์ DEB จะทำให้ค้นหาแพคเกจเทียบเท่าบน Debian ก่อนที่จะคัดลอกไฟล์จากเครื่อง Fedora