อยากทราบความแตกต่างระหว่าง apt-get install กับ aptitude install ครับ ทำไมให้ผลแตกต่างกัน

คือเวลาติดตั้งแพคเก็ต หรือดูในตัวอย่างการติดตั้งต่างๆ บางทีก็ใช้ apt-get install
หรือบางที่ก็ใ้ช้ aptitude install ทำให้งง ว่า จริงๆ แล้วมันคือตัวเดียวกันหรือเปล่า
หรือว่าทำงานไม่เหมือนกันอย่างไรครับ

เพราะบางแพคเก็บเช่นผมลงทดสอบลง apt-get install postfix
ปรากฏว่าลงได้ เซอร์วิสทำงานได้ สามารถ telnet localhost 25 ได้
แต่!!! พอ telnet เข้าไปถึงแล้ว มันไม่ response อะไรเลย ค้างอยู่อย่างงั้นแหละ

พอลองอีกเครื่องนึงลงเหมือนกันแต่ใช้อีกคำสั่ง aptitude install postfix
ปรากฏว่ารายแพกเก็ตที่จะติดตั้ง เยอะกว่าแบบแรกมาก ใช้เวลาลงนานกว่า
พอเซอร์วิสทำงานเสร็จลอง telnet localhost 25 ดูปรากฏว่าเชื่อมต่อได้
และมี response ขึ้นมา สามารถพิมพ์คำสั่งส่งเมล์ได้

เลยเป็นงงว่า มันทำงานต่างกันยังไงครับ

apt-get โดยปกติจะติดตั้ง dependency น้อยกว่า aptitude ครับ คือ apt-get จะติดตั้งเฉพาะแพกเกจที่ Depends: แต่ aptitude จะติดตั้ง Recommends: นอกเหนือจาก Depends: ด้วย ซึ่ง Recommends: นี้ เป็น dependency แบบ "แนะนำให้ใช้ร่วม" แต่ไม่ถึงกับทำให้แพกเกจทำงานไม่ได้ถ้าขาดไปเหมือนกับ Depends:

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

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

ขอบคุณท่านเทพ มากครับ
กระจ่างเลยทีนี้ งง มานาน

Creative Commons License ลิขสิทธิ์ของบทความเป็นของเจ้าของบทความแต่ละชิ้น
ผลงานนี้ ใช้สัญญาอนุญาตของครีเอทีฟคอมมอนส์แบบ แสดงที่มา-อนุญาตแบบเดียวกัน 3.0 ที่ยังไม่ได้ปรับแก้