ความแตกต่างระหว่างผู้จัดการแพ็คเกจคืออะไร?


129

อะไรคือความแตกต่างระหว่างapt-get, aptitudeและsynaptic, และสิ่งใดเป็นตัวเลือกที่แนะนำสำหรับการจัดการแพคเกจประจำวันปกติ?

นี่เป็นคำถามพื้นฐาน แต่ฉันคิดว่ามันจะเป็นข้อมูลที่ดีที่จะมีในเว็บไซต์และนอกจากนี้ฉันค่อนข้างใหม่กับ Ubuntu ดังนั้นฉันสามารถใช้คำอธิบายของผู้เชี่ยวชาญ


1
ฉันเคยเห็นคนแนะนำภาระงาน อาจมีใครบางคนสามารถอธิบายได้ว่าสิ่งนี้ดีสำหรับเกินไป?
silvo

2
taskselสำหรับการเลือกงานเฉพาะไม่ใช่สำหรับการติดตั้ง J. Random Package
lfaraone

หนึ่ง [เปรียบเทียบยอดเยี่ยม] [1] แห่งapt-getและaptitudeมีกล่าวถึงเป็นพิเศษที่ชื่นชอบของ front-end wajigของฉัน [1]: unix.stackexchange.com/questions/767/…
tshepang

สำหรับการเปรียบเทียบรายละเอียดเพิ่มเติมapt-getและaptitudeดูคำถามอื่นในไซต์นี้ - ความถนัดเป็นสิ่งที่ดีกว่าการได้รับฉลาดหรือไม่?
8128

คำตอบ:


111

อาจเป็นผู้จัดการแพ็คเกจที่ได้รับความนิยมสูงสุดคือ apt-get, aptitude, synaptic และ Software Center มีคนอื่น (Linux Mint มีของตัวเองและมีบางอย่างที่ออกแบบมาสำหรับ KDE) แต่สิ่งเหล่านี้เป็นสิ่งที่คุณจะพบบ่อยที่สุด

apt-getเป็นเครื่องมือบรรทัดคำสั่งอย่างง่าย มีประโยชน์ถ้าคุณรู้ชื่อแพคเกจที่ถูกต้องของสิ่งที่คุณต้องการติดตั้งและไม่ต้องการใช้เวลาในการคลิกผ่าน GUI เพื่อรับมัน

ความถนัดมีความคล้ายคลึงกับ apt-get มากและฉันได้ยินมาว่ามันเกี่ยวข้องกับสถานการณ์ที่ต้องพึ่งพาคนบ้ามากขึ้น อันไหนดีกว่ากันดีกว่าเป็นที่ถกเถียงกัน

synapticเป็น GUI ระดับต่ำ นี่เป็นตัวเลือกที่ดีหากคุณเป็นผู้ใช้ขั้นสูง แต่ไม่สะดวกกับอรรถประโยชน์บรรทัดคำสั่ง

Software Centerเป็น GUI ระดับสูงที่ใช้งานง่าย ซอฟต์แวร์ได้รับการจัดหมวดหมู่อย่างดีดังนั้นหากคุณไม่แน่ใจว่าคุณต้องการแอพใดคุณสามารถค้นหาสิ่งที่คุณต้องการได้อย่างรวดเร็ว ศูนย์ซอฟต์แวร์ยังโดดเด่นว่าเป็นผู้จัดการแพคเกจเดียวในรายการนี้ที่ช่วยให้คุณซื้อแอปพลิเคชันเชิงพาณิชย์

dpkgเป็นมาตรฐานตัวจัดการแพคเกจระดับต่ำที่ใช้น้อยกว่าสำหรับระบบที่ใช้เดเบียนส่วนใหญ่ ในความเป็นจริงแล้ว apt-get, aptitude, synaptic และ Ubuntu Software Center ล้วนเป็น front-end ไปจนถึง dpkg หรือ apt ซึ่งอยู่ใน front-end ถึง dpkg

ในการตอบคำถามของคุณ "ฉันแนะนำให้ใช้ตัวเลือกใดเป็นทางเลือกหนึ่งสำหรับการจัดการแพ็คเกจปกติในแต่ละวัน" แต่เมื่อคุณได้รับประสบการณ์มากขึ้นคุณจะพบคุณสมบัติบางอย่างของผู้จัดการแพ็คเกจระดับล่างที่มีประโยชน์


ฉันต้องสงสัยว่าประเด็นของ Synaptic คืออะไร ณ จุดนี้ ผู้ที่ต้องการ libs ใช้บรรทัดคำสั่งและผู้ที่ต้องการให้โปรแกรมใช้ Software Center?
mlissner

ความจริงแล้วฉันไม่ค่อยได้ใช้ Synaptic อีกต่อไปและในขณะนี้ฉันไม่สามารถคิดได้ว่ามีเหตุผลใดที่ฉันจะใช้ Synaptic กับเครื่องมืออื่น ๆ (แม้ว่าฉันจะทำเป็นครั้งคราว) คำถามที่ดี.
Michael Crenshaw

10
ความถนัด vs apt-get นั้นไม่เป็นที่ถกเถียงกัน, ความถนัดคือการปรับปรุงมากกว่า apt-get, และเข้ากันได้ดีกับมัน
Mircea Chirea

1
ฉันไม่มีความรู้ในการโต้วาที แต่ฉันเคยเห็นคนอื่นถกเถียงกัน ดังนั้นเพื่อความรู้ที่ดีที่สุดของฉันมันเป็นที่ถกเถียงกัน สำหรับความเข้ากันได้ฉันได้ยินมาว่ามันไม่ควรใช้ทั้งสองอย่าง แต่อีกครั้งฉันไม่รู้ ฉันจะทิ้งไว้สำหรับคำถามอื่น :-)
Michael Crenshaw

3
ความถนัดช่วยให้คุณสมบัติการจัดการแพคเกจขั้นสูงเช่นการถือแพคเกจที่ขาดฉลาดรับ
กอ

18

Debian คำถามที่พบบ่อยมีคำอธิบายที่ดีงามของผู้จัดการแพคเกจที่แตกต่างกัน ( dpkg, apt-get, aptitude, tasksel, synaptic)


1
แม้ว่าลิงก์นี้อาจตอบคำถามได้ดีกว่าหากรวมส่วนสำคัญของคำตอบไว้ที่นี่และให้ลิงก์สำหรับการอ้างอิง คำตอบสำหรับลิงค์เท่านั้นอาจไม่ถูกต้องหากหน้าเว็บที่เชื่อมโยงมีการเปลี่ยนแปลง - จากการรีวิว
Pilot6

1
เจ็ดปีต่อมา?
lfaraone

13

ในฐานะที่เป็นนอกจากคำตอบที่ดี mac9416 ของ , Kubuntu มีเครื่องมือบรรทัดคำสั่งเดียวกับอูบุนตูคือdpkg, และapt-get aptitudeนอกจากนี้ยังมีผู้จัดการแพ็คเกจกราฟิกสองอัน:

เก่งเป็น GUI ตรงไปตรงมาสำหรับapt-getซึ่งช่วยให้คุณแก้ไขรายการแหล่งที่มาเรียกดูแพคเกจตามประเภทหรือตามชื่อดูสถานะของพวกเขาและติดตั้ง / ถอนการติดตั้งพวกเขา

KPackageKitเป็น GUI อย่างง่ายสำหรับ PackageKit ซึ่งเป็นระบบการจัดการแพกเกจกระจายที่ใหม่กว่าที่ใช้apt-getเบื้องหลัง มันช่วยให้คุณค้นหาโปรแกรมตามเกณฑ์ต่าง ๆ ติดตั้งและถอนการติดตั้งโปรแกรมทำการอัพเกรดตามปกติและแก้ไขรายการแหล่งที่มา


KPackageKitApperจะถูกแทนที่โดยขณะนี้
เดวิดเพื่อนของคุณ

6

ฉันชอบ apt-get เป็นการส่วนตัวเพราะมันเป็นโปรแกรมบรรทัดคำสั่ง และไวยากรณ์สำหรับการติดตั้งแพ็คเกจนั้นง่ายมาก:

sudo apt-get install packagename

ฉันใช้ apt-get ในแต่ละวันสำหรับการติดตั้งและลบแพ็คเกจ

Synaptic อิงจาก GUI และความถนัดเป็นไปตามข้อความ


aptitudeยังสามารถใช้แบบโต้ตอบและเป็นเวลานานที่มีคุณสมบัติส่วนใหญ่ของลูกค้า libapt อื่น ๆ ที่ขาด ทำงานได้เช่นเดียวกับsudo aptitude install ทำงานได้เช่นเดียวกับ อย่างไรก็ตามความถนัดเป็นกำหนดไว้สำหรับการกำจัดในอนาคต sudo apt-get installsudo apitude searchsudo apt-cache search
Broam

@Broam คุณสามารถให้แหล่งที่มาสำหรับการเรียกร้องความถนัดที่กำหนดไว้สำหรับการลบ? Googling รอบ ๆ ฉันไม่พบอะไรเลย
itsadok

กำหนดไว้สำหรับการลบในการติดตั้งเริ่มต้นเช่น GIMP
Broam


5

โดยพื้นฐานแล้วพวกเขาต่างกันเพียงระดับต่ำเท่านั้น

dpkg : ไม่ได้เป็นผู้จัดการแพคเกจที่เหมาะสมฉลาดใช้มัน

apt-get : command-line เฉพาะเมื่อคุณรู้ชื่อแพ็คเกจ

aptitude : ใช้ข้อความ แต่เป็นมิตรกับผู้ใช้

synaptic : เทียบเท่าความถนัดใน GUI

Software Center : สำหรับผู้ใช้ทุกวัน

BTW เหล่านี้เป็น front-end ของ apt (ยกเว้น dpkg) ซึ่งเป็นตัวจัดการแพ็คเกจบน Ubuntu เท่านั้น


1

เครื่องมือหนึ่งที่อื่น ๆ taskselที่ได้รับแทบจะไม่พูดถึงคือ มันใช้สำหรับการเลือกงานเฉพาะทำเครื่องหมายสำหรับการติดตั้งแล้วติดตั้ง (อาจใช้aptitude- ไม่แน่ใจ)

วิ่งtasksel --list-tasksไปดูว่ามีงานอะไรบ้าง


ที่จริงถูกกล่าวถึงในความคิดเห็นเกี่ยวกับคำถาม
David Z

1
@ David ฉันเห็นว่ามีการกล่าวถึง แต่ความคิดเห็นเป็นพลเมืองชั้นสอง
tshepang

1

ความแตกต่างที่สำคัญอย่างหนึ่งระหว่างความถนัดและความฉลาดที่ได้หลบหนีการแจ้งเตือนข้างต้นคือการที่aptitudeแตกต่างapt-getกันจะเสนอทางเลือกต่าง ๆ ให้คุณในกรณีที่เกิดการปะทะกัน apt-getจะล้มเหลว aptitudeมีความยืดหยุ่นและหลากหลายมากขึ้นด้วยเหตุนี้ ไม่เคยใช้ตัวจัดการแพ็คเกจ GUI ฉันไม่ทราบว่า Synaptic และผู้อื่นจัดการกับสถานการณ์เช่นนี้ได้อย่างไร

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