ความแตกต่างระหว่าง "apt-get purge" และ "apt-get remove`" คืออะไร?


195

มีความแตกต่างระหว่าง

sudo apt-get purge <package-name>

และ

sudo apt-get remove <package-name>  

?

ฉันมักจะเห็นคนแนะนำอย่างใดอย่างหนึ่ง

กล่าวอีกนัยหนึ่งสิ่งที่ไม่apt-get purgeเอาออกapt-get removeคืออะไร


ที่เกี่ยวข้อง (เนื่องจากaptคล้ายกัน แต่เป็นทางเลือกapt-get): askubuntu.com/questions/936810/apt-remove-vs-purge
ไมเคิล

คำตอบ:


199

ตามที่man apt-getหน้าระบุไว้:

ลบ - ลบเหมือนกับการติดตั้งยกเว้นว่าแพ็กเกจนั้นถูกลบทิ้งแทนที่จะติดตั้ง โปรดทราบว่าการลบแพคเกจออกจากแฟ้มการกำหนดค่าของระบบ หากเครื่องหมายบวกถูกผนวกเข้ากับชื่อแพ็คเกจ (โดยไม่มีพื้นที่ว่าง) แพ็คเกจที่ระบุจะถูกติดตั้งแทนการลบออก

purge - purge นั้นเหมือนกับการลบยกเว้นว่าแพ็กเกจจะถูกลบและลบทิ้ง ( ไฟล์การกำหนดค่าใด ๆ จะถูกลบด้วย )

แน่นอนว่าไม่ได้นำไปใช้กับแพ็คเกจที่เก็บไฟล์การกำหนดค่าไว้ในโฟลเดอร์บ้านของผู้ใช้ (เช่น:) /home/SexyNoJutsuUserไฟล์นี้จะไม่ถูกสัมผัส ( ทำไม "Purge" จึงไม่ลบทุกอย่างที่เกี่ยวข้องกับแอพออก )

ตัวอย่างเช่นหากคุณต้องการลบ Chrome, Firefox, XBMC หรืออื่น ๆ ที่เก็บไฟล์การกำหนดค่าบางอย่างไว้ใน/homeโฟลเดอร์ของคุณไฟล์นี้จะอยู่ที่นั่น

ในทางตรงกันข้ามถ้าคุณมีการติดตั้ง Apache, ปลาหมึก, MySQL หรือบริการอื่น ๆ ที่คล้ายกันที่บันทึกไฟล์ในแฟ้มการกำหนดค่านี้จะถูกลบถ้าคุณใช้/etcpurge


การล้างสามารถใช้กับแพ็คเกจเมตาเพื่อลบออกในขณะที่ปล่อยให้แพคเกจพื้นฐานไม่บุบสลาย หากคุณต้องการอัพเกรดระบบฐานโดยไม่มีผลต่อ postgres คุณสามารถกำจัดแพ็กเกจ metgres postgres ได้แล้วจากนั้นการอัปเกรดจาก Debian 7- Debian 8 จะทำให้เวอร์ชัน postgres ของคุณไม่มีการแตะต้อง
boatcoder

30

ข้อความที่ตัดตอนมาจากคำตอบของฉันในคำถามอื่น:

  • apt-get remove packagename
    จะลบไบนารี packagenameแต่ไม่ได้กำหนดค่าหรือไฟล์ข้อมูลของแพคเกจ
  • apt-get purge packagenameหรือ
    apt-get remove --purge packagename
    จะลบทุกอย่างที่เกี่ยวกับแพ็คเกจ packagename[... ]
    มีประโยชน์อย่างยิ่งเมื่อคุณต้องการ 'เริ่มต้นใหม่ทั้งหมด' ด้วยแอปพลิเคชันเนื่องจากคุณทำให้การกำหนดค่าสับสน

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