Консольные инструменты управления пакетами Сравнение версий

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
manual:apt [2009/11/25 17:03]
manual:apt [2010/05/07 22:46] (текущий)
Строка 1: Строка 1:
 ====== Консольные инструменты управления пакетами ====== ====== Консольные инструменты управления пакетами ======
  
-Считается,​ и вполне оправданно,​ что набрать одну команду в терминале сильно проще, чем кликать мышкой по GUI инструментам. Кроме того, основной Linux всё-таки является терминал. Поэтому я никак не могу обойти описание работы с пакетами из терминала. К тому же большинство инструкций для Ubuntu содержат консольные команды управления пакетами,​ хотя все операции можно выполнить и через графические приложения. В общем, настоятельно рекомендую прочитать эту статью до конца, хотя на практике вам возможно всё описанное применять и не понадобится.+Считается,​ и вполне оправданно,​ что набрать одну команду в терминале сильно проще, чем кликать мышкой по GUI инструментам. Кроме того, основой Linux всё-таки является терминал. Поэтому я никак не могу обойти описание работы с пакетами из терминала. К тому же большинство инструкций для Ubuntu содержат консольные команды управления пакетами,​ хотя все операции можно выполнить и через графические приложения. В общем, настоятельно рекомендую прочитать эту статью до конца, хотя на практике вам возможно всё описанное применять и не понадобится.
  
 ===== Утилита dpkg ===== ===== Утилита dpkg =====
  
-На самом деле всё очень просто. Существуют два основных инструмента работы с пакетами:​ ''​aptitude''​ и ''​dpkg''​ (на самом деле есть ещё ''​apt-get'',​ но о нём я расскажу ниже). ''​dpkg''​ - это низкоуровневая программа управления пакетами,​ единственная полезная её функция для обычного пользователя - это прямая установка пакета из deb-файла. Выполняется она командой+На самом деле всё очень просто. Существуют два основных инструмента работы с пакетами:​ ''​aptitude''​ и ''​dpkg''​(а самом деле есть ещё ''​apt-get'', ​который вообще говоря является стандартным менеджером пакетов для терминала, однако его не рекомендуется использовать. Немного об этой программе ​я расскажу ​в конце статьи.)). ''​dpkg''​ - это низкоуровневая программа управления пакетами,​ единственная полезная её функция для обычного пользователя - это прямая установка пакета из deb-файла. Выполняется она командой
  
   sudo dpkg -i имя_пакета.deb   sudo dpkg -i имя_пакета.deb
  
-Для того, чтобы команда успешно выполнилась,​ в системе должны присутствовать все зависимости устанавливаемого пакета,​ поскольку ''​dpkg''​ не умеет разрешать ​зависимости ​и скачивать что-либо из репозиториев. Можно так же ставить несколько пакетов за раз, передавая их все как аргументы команде ''​dpkg -i''​. Больше я пожалуй ничего про ''​dpkg''​ рассказывать не буду, да и вряд ли вам как-либо ещё понадобится использовать эту утилиту.+Для того, чтобы команда успешно выполнилась,​ в системе должны присутствовать все зависимости устанавливаемого пакета,​ поскольку ''​dpkg''​ не умеет ​их разрешать и скачивать что-либо из репозиториев. Можно так же ставить несколько пакетов за раз, передавая их все как аргументы команде ''​dpkg -i''​. Больше я пожалуй ничего про ''​dpkg''​ рассказывать не буду, да и вряд ли вам как-либо ещё понадобится использовать эту утилиту.
  
 ===== Утилита aptitude ===== ===== Утилита aptitude =====
  
 Основным же консольным инструментом работы с пакетами является ''​aptitude''​. В некотором смысле это консольный аналог менеджера пакетов Synaptic, хотя ''​aptitude''​ на самом деле обладает куда как большим функционалом. Основным же консольным инструментом работы с пакетами является ''​aptitude''​. В некотором смысле это консольный аналог менеджера пакетов Synaptic, хотя ''​aptitude''​ на самом деле обладает куда как большим функционалом.
 +
 +Сразу же вспомните про ''​sudo'',​ поскольку как ни странно,​ для внесения изменений в установленные компоненты системы ''​aptitude''​ требует административных полномочий. Хотя некоторые функции,​ вроде поиска,​ работают и от имени обычного пользователя.
  
 Начнём с того, что установить пакеты из репозиториев можно командой Начнём с того, что установить пакеты из репозиториев можно командой
Строка 19: Строка 21:
   sudo aptitude install имя_пакета1 [имя_пакета2 ...]   sudo aptitude install имя_пакета1 [имя_пакета2 ...]
  
-Сколько бы вы не указали пакетов,​ ''​aptitude''​ автоматически разрешит все зависимости и предложит вам конечный вариант необходимых действий,​ вам останется только лишь согласиться.+Сколько бы вы не указали пакетов,​ ''​aptitude''​ автоматически разрешит все зависимости и предложит вам конечный вариант необходимых действий,​ вам останется только лишь согласиться, нажав <​key>​Enter</​key>:​
  
-//​картинко//​+{{ .:​apt:​aptitude-install.png }} 
 + 
 +<​note>​Обратите внимание,​ ''​aptitude''​ предлагает вам в квадратных скобочках три возможных варианта ответа на поставленный вопрос:​ 
 + 
 +  [Y/n/?] 
 + 
 +''​Y''​ означает //Yes//, то есть согласие,​ ''​n''​ - это //No//, то есть отказ, а ''?''​ - это просьба вывести справку. Вам ​нужно ввести символ,​ соответствующий вашему выбору и нажать <​key>​Enter</​key>​. Однако часто есть вариант по умолчанию,​ выделенный в списке большой буквой,​ и если вам нужен именно он, то вы можете ничего не вводить,​ просто нажать <​key>​Enter<​/key>. 
 +</note>
  
 Аналогично установке,​ удалить пакеты можно одной из двух команд:​ Аналогично установке,​ удалить пакеты можно одной из двух команд:​
Строка 38: Строка 47:
   aptitude search фраза   aptitude search фраза
  
-По умолчанию поиск производится по именам пакетов,​ для поиска по описаниям надо перед искомой фразой добавить символы ''​~d'':​+По умолчанию поиск производится по именам пакетов,​ для поиска по описаниям надо перед искомой фразой добавить символы ''​~d''​((''​aptitude''​ поддерживает огромное количество модификаторов поиска,​ кроме ''​~d'',​ вообще механизм поиска у ''​aptitude''​ очень мощный,​ так что при необходимости можете поинтересоваться им. Однако обычно всё-таки проще искать через Synaptic или Центр Приложений.)):
  
   aptitude search ~dфраза   aptitude search ~dфраза
- 
-На самом деле ''​aptitude''​ поддерживает ещё огромное количество модификаторов поиска,​ кроме ''​~d'',​ но описывать их я не буду. 
  
 Ну и наконец ''​aptitude''​ имеет мощный графический интерфейс,​ попасть в него можно набрав в терминале просто ''​aptitude''​. Вот как это выглядит:​ Ну и наконец ''​aptitude''​ имеет мощный графический интерфейс,​ попасть в него можно набрав в терминале просто ''​aptitude''​. Вот как это выглядит:​
  
-//​картинко//​+{{ .:​apt:​aptitude.png }}
  
-Несмотря на неприглядный вид работать с этим очень удобно,​ но всё-таки обычно пользователю более привычны инструменты вроде Synaptic, поэтому описывать работу с графической оболочкой ''​aptitude''​ я не буду.+Несмотря на неприглядный вид работать с этим очень удобно,​ но всё-таки обычно пользователю более привычны инструменты вроде Synaptic, поэтому ​подробно ​описывать работу с графической оболочкой ''​aptitude''​ я не буду.
  
 И напоследок хочется заметить,​ что обычно в разнообразных инструкциях для установки пакетов предлагается как раз использовать команду И напоследок хочется заметить,​ что обычно в разнообразных инструкциях для установки пакетов предлагается как раз использовать команду
Строка 54: Строка 61:
   sudo aptitude install имя_пакета   sudo aptitude install имя_пакета
  
-Это ни в коей мере не значит,​ что кровь из носу надо исполнять эту команду. Вы спокойно можете поставить указанные пакеты через тот же Synaptic. Просто авторы инструкций обычно экономят свой время на объяснении куда и как надо нажимать в Synaptic, давая вместо ​него одну маленькую команду. Но в конечном итоге ''​aptitude''​ и Synaptic выполняют одни и те же действия,​ так что используйте тот инструмент,​ который вам удобен.+Это ни в коей мере не значит,​ что кровь из носу надо исполнять эту команду. Вы спокойно можете поставить указанные пакеты через тот же Synaptic. Просто авторы инструкций обычно экономят своё время на объяснении куда и как надо нажимать в Synaptic, давая вместо ​всего этого одну маленькую команду. Но в конечном итоге ''​aptitude''​ и Synaptic выполняют одни и те же действия,​ так что используйте тот инструмент,​ который вам удобен.
  
 ===== Утилита apt-get ===== ===== Утилита apt-get =====
  
-На самом деле я немного вас обманул. В инструкциях гораздо чаще вместо ''​aptitude''​ используется ''​apt-get''​. ''​apt-get''​ - это стандартная утилита управления пакетами,​ используется она ровно так же, как и ''​aptitude'',​ только у неё нет графического интерфейса и поиска. То есть во всех командах с ''​install'',​ ''​remove'',​ ''​purge'' ​вы можете вместо ''​aptitude''​ писать ''​apt-get''​. Однако ''​apt-get''​ имеет ряд существенных недостатковпоэтому всегда и везде я настоятельно рекомендую вместо неё использовать ''​aptitude'',​ благо для этого вам всего лишь придётся заменить одно слово в команде на другое.+На самом деле я немного вас обманул. В инструкциях гораздо чаще вместо ''​aptitude''​ используется ''​apt-get''​. ''​apt-get''​ - это стандартная утилита управления пакетами,​ используется она ровно так же, как и ''​aptitude'',​ только у неё нет графического интерфейса и поиска. То есть во всех командах с ''​install'',​ ''​remove'',​ ''​purge''​ можно заместо ''​aptitude''​ писать ''​apt-get''​. Однако ''​apt-get''​ имеет ряд существенных недостатков((Существенных ​по сравнению с ''​aptitude'',​ однако некритичных. ''​apt-get''​ хуже ​обрабатывает зависимости ​в некоторых ​случаях,​ не имеет мощного поиска и графического консольного интерфейса и не ведёт логов выполняемых операций.)),​ поэтому напротив, ​настоятельно рекомендуется ​вместо неё ​всегда и везде ​использовать ''​aptitude'',​ благо для этого вам ​если что ​всего лишь придётся заменить одно слово в команде на другое((То есть если вы видите какую-нибудь команду с ''​apt-get'',​ просто замените в ней ''​apt-get''​ на ''​aptitude''​ и всё отлично заработает.)).
  
 Я описал только малую часть возможностей консольных утилит управления пакетами,​ однако всё остальное вам вряд ли потребуется. Теперь осталось только коснуться последней нерассмотренной ещё темы: Я описал только малую часть возможностей консольных утилит управления пакетами,​ однако всё остальное вам вряд ли потребуется. Теперь осталось только коснуться последней нерассмотренной ещё темы: