ทำไมการสร้าง RPMs เป็นหลักจึงไม่ดี


11

นี้หน้ามีคำเตือนที่โดดเด่น:

สิ่งสำคัญ

ไม่เคยสร้าง RPMS เหมือนรูท

ทำไมการสร้าง RPMs เป็นหลักจึงไม่ดี เป็นไปได้ของการเขียนทับไฟล์บางไฟล์? มีปัญหาการอนุญาตไฟล์หรือไม่

คำตอบ:


22

ไฟล์ RPM .spec ที่เขียนไม่ดี (หรือแม้แต่ไฟล์ที่เขียนด้วยตัวพิมพ์) สามารถทำสิ่งที่ไม่เหมาะสมเช่น:

  • ติดตั้งโดยตรงกับระบบที่ใช้งานแทนที่จะไปยังกล่องรับสัญญาณ
  • ทิ้งขยะบนระบบไฟล์
  • เรียกใช้คำสั่งที่น่ารังเกียจโดยไม่ตั้งใจเช่น: rm -rf ${RPM_BUILD_ROOT}

ไม่มีส่วนของกระบวนการสร้าง RPM ที่ต้องการการเข้าถึงรูทจริง ดังนั้นเราควรปฏิบัติตามขั้นตอนมาตรฐานของ "หากไม่ต้องการการอนุญาตรูทจะไม่ทำงานเหมือนรูท" เมื่อสร้าง RPM

วิธีนี้จะช่วยป้องกันอุบัติเหตุและความประหลาดใจ


4

เยาะเย้ยสำหรับ fedora ก็ค่อนข้างดีเช่นกัน ถ้ามันจะสร้างขึ้นในการเยาะเย้ยโอกาสที่จะเป็น RPM ที่ค่อนข้างสะอาด


FWIW เคยทำงานกับ Red Hat มาก่อนฉันรู้ว่าพวกเขาต้องการให้ RPM สร้างใน Mock ก่อนที่พวกเขาจะยอมรับมันในสภาพแวดล้อมการสร้าง ฉันคิดว่าเช่นเดียวกันกับโครงการ Fedora เช่นกัน
EmmEff

3

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

แก้ไข:

ในฐานะที่เป็นบันทึกด้านข้างฉันขอแนะนำให้ดูที่openSUSE Build Serviceซึ่งทำให้การสร้าง rpms สำหรับการกระจายที่แตกต่างกันนั้นง่ายมาก (นอกจากนี้ยังสามารถตั้งค่าเป็นอินสแตนซ์ในเครื่องได้)


-1

เมื่อฉันค้นหาผ่านทางอินเทอร์เน็ตฉันได้รับสาเหตุของคำถามของคุณในลิงค์ต่อไปนี้ http://pmc.ucsc.edu/~dmk/notes/RPMs/Creating_RPMs.html

การสวมเพียงเพื่อหลีกเลี่ยงข้อผิดพลาดที่ไม่ตั้งใจหรือสิ่งที่ไม่ได้ตั้งใจ


1
ยินดีต้อนรับสู่ Server Fault! โดยทั่วไปเราชอบคำตอบในเว็บไซต์เพื่อให้สามารถยืนได้ด้วยตัวเอง - ลิงค์นั้นดี แต่ถ้าลิงค์นั้นเคยทำลายคำตอบควรมีข้อมูลเพียงพอที่จะยังคงเป็นประโยชน์ โปรดพิจารณาแก้ไขคำตอบของคุณเพื่อรวมรายละเอียดเพิ่มเติม ดูคำถามที่พบบ่อยสำหรับข้อมูลเพิ่มเติม
slm
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.