ฉันจะเก็บการดาวน์โหลดต้นฉบับไว้เพื่อติดตั้งได้ที่ไหน


10

ฉันเคยดาวน์โหลดทุกอย่างไปที่ / tmp เพราะหลังจากmake; sudo make installปกติฉันไม่ต้องการไฟล์เหล่านั้นอีกต่อไป

แต่ตอนนี้ฉันรู้วิธีเดียวที่จะถอนการติดตั้งโปรแกรมที่ติดตั้งจากแหล่งที่มาคือการใช้make uninstall(เมื่อมี) ดังนั้นฉันควรจะเก็บไว้ดาวน์โหลดในกรณีที่ฉันต้องการในภายหลัง

ดังนั้นฉันควรเก็บไว้ที่ไหน มีสถานที่สำหรับลินุกซ์หรือไม่?


หลีกเลี่ยงปัญหา: ติดตั้งจากแพ็คเกจเมื่อเป็นไปได้
Michael Hampton

@MichaelHampton บางครั้งนั่นไม่ใช่ตัวเลือก (ฉันคิดว่า) เช่น: nginx ต้องการการติดตั้งฟอร์มแหล่งถ้าคุณต้องการเพิ่มโมดูลบุคคลที่สาม
ChocoDeveloper

คำตอบ:


16

สถานที่ที่กำหนดโดยระบบแฟ้ม Hierarchy มาตรฐาน/usr/srcซอร์สโค้ดเก็บเป็น ฉันคิดว่าคุณสามารถใช้/usr/local/srcเพราะมันเป็นคำอธิบายเพิ่มเติมว่าซอฟต์แวร์มาจากไหน (นั่นคือคุณสร้างมันขึ้นมา; distro ไม่ได้)

อย่างไรก็ตามโปรดทราบว่า FHS กล่าวถึงจริงว่าซอร์สโค้ดไม่ควรสร้างจากไดเรกทอรีนี้อาจเป็นเพราะคุณไม่ควรรวบรวมสิ่งต่าง ๆ ในฐานะรูทดังนั้นฉันคิดว่าคุณจะย้ายทรีซอร์สที่นั่นหลังจากการติดตั้ง ในทางปฏิบัติแม้ว่าฉันจะไม่รำคาญ ฉันเก็บทุกอย่างที่ฉันสร้างไว้~/Codeซึ่งอยู่ในพาร์ติชันที่ใหญ่ขึ้น โดยทั่วไปไม่มีการประชุมที่ยอมรับกันอย่างกว้างขวาง คุณเพียงแค่ทำในสิ่งที่เหมาะกับคุณ

คุณควรดูที่checkinstallซึ่งเป็นซอฟต์แวร์ชิ้นเล็ก ๆ ที่ทำให้แพ็คเกจพื้นฐานจากคำสั่ง (มันอาจจะอยู่ในที่เก็บของการแจกจ่ายของคุณ) เป็นหลักแทนที่จะวิ่ง

sudo make install

คุณจะทำอะไรบางอย่างตามสายของ

sudo checkinstall make install

ซึ่งจะถามคุณเกี่ยวกับแพคเกจที่คุณทำดูmake installติดตั้งทุกอย่างแล้วสร้างแพ็คเกจที่สามารถติดตั้งได้อย่างสมบูรณ์และถอนการติดตั้งด้วยตัวจัดการแพคเกจ ฉันเชื่อว่า checkinstall สามารถสร้างแพ็คเกจสำหรับระบบที่ใช้ dpkg (Ubuntu, Debian, ฯลฯ ), ระบบที่ใช้ RPM (Fedora, RHEL, ฯลฯ ) และระบบที่ใช้ Slackware หากคุณใช้งาน Arch อย่ากังวลกับ checkinstall ให้พิจารณาใช้ PKGBUILD แทน

หวังว่าจะช่วย!


+1 สำหรับแพ็กเกจที่กล่าวถึง ซึ่งฉันคิดว่าเป็นคำตอบที่จำเป็น (แต่ไม่ถาม)
Hennes

ขอบคุณ! ฉันใช้ checkinstall ตอนนี้ดูดีมาก หนึ่งคำถามสุดท้าย: ฉันไม่จำเป็นต้องเก็บ. deb ใช่ไหม? dpkg จะทราบวิธีถอนการติดตั้งแม้ว่าจะหายไป
ChocoDeveloper

ถูกต้อง. ผู้จัดการแพคเกจทั้งหมดเก็บรายการไฟล์ที่ติดตั้งโดยแพ็คเกจดังนั้นคุณสามารถลบแพ็คเกจที่สร้างขึ้นหลังจากที่คุณติดตั้ง
สามสิบสาม

5

ไม่มีสถานที่ที่กำหนดไว้สำหรับไฟล์ต้นฉบับ; ทุกคนมีนิสัยของตนเอง

อย่างไรก็ตามพิจารณาตัวเลือกทั้งสามนี้:

  1. ในราก homedir (ทำงาน แต่มันอยู่บน / ซึ่งมักจะค่อนข้างเล็ก)
  2. / usr / local / src / (หรือสิ่งใดภายใต้ / usr / local /
  3. ติดตั้งผ่านแพ็คเกจและใช้โปรแกรมจัดการแพ็คเกจเพื่อถอนการติดตั้ง

สำหรับการบำรุงรักษาในระยะยาวฉันขอแนะนำตัวเลือก 3 แม้ว่าคุณจะต้องสร้างแพ็คเกจด้วยตัวเอง (จากแหล่งที่มา) ในกรณีนี้คุณจะได้รับ: untar / configure / make / make package ผ่านทางไวยากรณ์บางอย่างขึ้นอยู่กับตัวเลือกแพ็คเกจ / แพ็คเกจการติดตั้งของคุณ

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