Яка різниця між менеджерами пакетів?


129

У чому полягають відмінності між apt-get, aptitudeта synapticі який із них є рекомендованим вибором для звичайного щоденного управління пакунками?

Це основне питання, але я думаю, що було б хорошою інформацією мати на сайті, і до того ж я відносно новачок у Ubuntu, щоб я міг використати експертне пояснення.


1
Я також бачив, як люди рекомендували завдання. Може, хтось міг би пояснити, що це теж добре?
silvo

2
taskselпризначений для вибору конкретних завдань, а не для встановлення J. Random Package.
lfaraone

[Відмінне порівняння] [1] apt-getі aptitudeз особливим згадкою мого улюбленого переднього кінця wajig. [1]: unix.stackexchange.com/questions/767/…
tshepang

Для більш детального порівняння apt-getта aptitudeознайомлення з іншим питанням на цьому веб-сайті - чи здатність насправді краще, ніж apt-get?
8128

Відповіді:


111

Напевно, найпопулярніші менеджери пакунків - це apt-get, fitness, synaptic та Software Center. Є й інші (Linux Mint має свої власні, і є деякі, розроблені для KDE), але це саме ті, з якими ви будете стикатися найчастіше.

apt-get - це простий інструмент командного рядка. Це зручно, якщо ви знаєте точну назву пакета того, що ви хочете встановити, і не хочете витрачати час на перегляд графічного інтерфейсу, щоб отримати його.

здатність дуже схожа на apt-get, і я чув, що вона краще справляється з шаленими ситуаціями залежності. Хто з них справді кращий, є дискусійним.

synaptic - це графічний інтерфейс низького рівня. Це хороший вибір, якщо ви досить досвідчений користувач, але вам не зручні утиліти командного рядка.

Програмний центр - це дуже зручний, новий користувальницький інтерфейс користувача. Програмне забезпечення добре класифікується так, що якщо ви точно не впевнені, який додаток хочете, ви зможете швидко знайти те, що вам потрібно. Програмний центр також виділяється тим, що це єдиний менеджер пакунків у цьому списку, який дозволяє купувати комерційні програми.

dpkg - менш застосований, низькорівневий стандарт менеджера пакунків для більшості систем на базі Debian. Насправді, apt-get, здатність, синаптичність та програмний центр Ubuntu - це лише передні частини або dpkg, або apt, що саме по собі є переднім до dpkg.

Відповідаючи на ваше запитання, "який із них є рекомендованим вибором для нормального щоденного управління пакунками", я б сказав, що Software Center рекомендується для більшості застосувань. Але, як ви отримаєте більше досвіду, ви знайдете корисні деякі функції менеджерів пакетів нижчого рівня.


Мені доводиться дивуватися, в чому полягає сенс Synaptic. Люди, які хочуть, щоб libs використовували командний рядок, а люди, які хочуть програм, використовують Software Center?
mlissner

Якщо чесно, я рідко вже використовую Synaptic, і на даний момент я не можу придумати якусь конкретну причину, коли б я використовував Synaptic над одним із інших інструментів (хоча час від часу це роблю). Гарне питання.
Майкл Креншо

10
здатність проти apt-get не є дискусійною, здатність - це поліпшення порівняно з apt-get, і цілком сумісна з нею.
Mircea Chirea

1
У мене немає знань, щоб це обговорювати, але я бачив, як інші це обговорюють. Тож, наскільки мені відомо, це дискусійно. Щодо сумісності, я чув, що краще не використовувати обоє. Але знову ж таки, я не знаю. Я залишу це для іншого питання. :-)
Майкл Креншо

3
здатність дозволяє вдосконалити такі функції управління пакетами, як зберігання пакунків, яких не вистачає.
scottl

18

Debian FAQ має досить гарне пояснення різних менеджерів пакетів. ( dpkg, apt-get, aptitude, tasksel, synaptic)


1
Хоча це посилання може відповісти на питання, краще включити сюди суттєві частини відповіді та надати посилання для довідки. Відповіді лише на посилання можуть стати недійсними, якщо пов’язана сторінка зміниться. - З огляду
Pilot6

1
Сім років потому?
lfaraone

13

У доповненні до відмінного відповіді mac9416 в , Kubuntu пропонує ті ж інструменти командного рядка , як Ubuntu, а саме dpkg, apt-get, і aptitude. Також є два графічні менеджери пакунків:

Adept - це простий графічний інтерфейс для apt-get, який дозволяє редагувати списки джерел, переглядати пакунки за категоріями чи за назвою, бачити їх статус та встановлювати / видаляти їх.

KPackageKit - це простий графічний інтерфейс для PackageKit, який є більш новою системою керування пакетами між розподілом, яка використовується apt-getза кадром. Він дозволяє шукати програми за різними критеріями, встановлювати та видаляти програми, здійснювати звичайні оновлення та редагувати списки джерел.


KPackageKitтепер замінено на Apper.
Давид, твій друг

6

Я особисто віддаю перевагу apt-get, тому що це програма командного рядка. А синтаксис для встановлення пакетів дуже простий:

sudo apt-get встановити ім'я пакета

Я використовую apt-get щодня для встановлення та видалення пакетів.

Synaptic заснований на GUI, а здатність - на текстовому.


aptitudeможе також використовуватися в інтерактивному режимі, і протягом тривалого часу не було особливостей у більшості інших клієнтів, які не потребують. sudo aptitude installпрацює так само добре sudo apt-get install. sudo apitude searchпрацює так само добре sudo apt-cache search. Однак вміння планується видалити в майбутньому.
Брам

@Broam чи можете ви надати джерело для твердження, що Aptitude призначений для вилучення? Гуглившись навколо, я нічого про це не міг знайти.
itadok

Він призначений для видалення у встановленні за замовчуванням, як GIMP.
Брам


5

В основному вони відрізняються лише тим, наскільки вони низькі.

dpkg : навіть не належний менеджер пакунків використовує apt

apt-get : командний рядок, лише якщо ви знаєте назву пакета

здатність : текстова, але зручна для користувачів

синаптичний : еквівалент здатності в GUI

Програмний центр : для щоденних користувачів

До речі, це всі передні частини apt (крім dpkg), який є єдиним менеджером пакунків на Ubuntu.


1

Ще один інструмент, який майже не отримав згадки, - це tasksel. Він використовується для вибору конкретних завдань, позначте їх для встановлення та встановлення (можливо, використання aptitude- не впевнений).

Запустіть, tasksel --list-tasksщоб подивитися, які завдання доступні.


Про це фактично йшлося у коментарях до цього питання.
David Z

1
@david Я бачив цю згадку, але коментарі є громадянами 2 класу.
tshepang

1

Однією з ключових різниць між здатністю та apt-get, які не помітили вище, є те aptitude, що , на відміну від цього apt-get, запропонують вам різні варіанти у випадку, якщо відбувається зіткнення залежності. apt-getпросто провалиться. aptitudeз цієї причини набагато гнучкіший і універсальніший. Ніколи не використовував менеджера пакунків GUI, я не знаю, як Synaptic та інші справляються з такими ситуаціями.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.