Установка программ Сравнение версий

Различия

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

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

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
wiki:установка_программ [2012/11/20 07:59]
[Установка программ]
wiki:установка_программ [2019/06/17 15:43] (текущий)
[Установка программ с собственным инсталлятором из файлов sh, run]
Строка 3: Строка 3:
 Время от времени появляются новые задачи,​ либо необходимость в решении старых задач новыми способами — тогда возникает потребность в дополнительном программном обеспечении. Данная статья рассказывает,​ что делать,​ если вам нужна новая программа для [[Ubuntu]]. Время от времени появляются новые задачи,​ либо необходимость в решении старых задач новыми способами — тогда возникает потребность в дополнительном программном обеспечении. Данная статья рассказывает,​ что делать,​ если вам нужна новая программа для [[Ubuntu]].
  
-В Ubuntu, как и в других операционных системах,​ есть понятие **зависимостей**. Это значит,​ что программу можно установить,​ только если уже установлены пакеты,​ от которых она зависит. Такая схема позволяет избежать дублирования данных в пакетах (например,​ если несколько программ зависят от одной и той же библитеки,​ то не придётся пихать эту библиотеку в пакет каждой программы — она поставится один раз отдельным пакетом). В отличие от, например,​ Slackware или Windows, в Ubuntu зависимости разрешаются пакетным менеджером (Synaptic, apt, Центр приложений,​ apt-get, aptitude) ­— он автоматически установит зависимости из [[репозиторий|репозитория]]. Зависимости придётся устанавливать вручную,​ если нужный репозиторий не подключен,​ недоступен,​ если нужного пакета нет в репозитории,​ если вы ставите пакеты без использования пакетного менеджера (используете Gdebi или dpkg), если вы устанавливаете программу не из пакета (компилируете из исходников,​ запускаете установочный run/sh скрипт).+В Ubuntu, как и в других операционных системах,​ есть понятие **зависимостей**. Это значит,​ что программу можно установить,​ только если уже установлены пакеты,​ от которых она зависит. Такая схема позволяет избежать дублирования данных в пакетах (например,​ если несколько программ зависят от одной и той же библиотеки, то не придётся пихать эту библиотеку в пакет каждой программы — она поставится один раз отдельным пакетом). В отличие от, например,​ Slackware или Windows, в Ubuntu зависимости разрешаются пакетным менеджером (Synaptic, apt, Центр приложений,​ apt-get, aptitude) ­— он автоматически установит зависимости из [[репозиторий|репозитория]]. Зависимости придётся устанавливать вручную,​ если нужный репозиторий не подключен,​ недоступен,​ если нужного пакета нет в репозитории,​ если вы ставите пакеты без использования пакетного менеджера (используете Gdebi или dpkg), если вы устанавливаете программу не из пакета (компилируете из исходников,​ запускаете установочный run/sh скрипт).
  
 ===== Установка из репозиториев ===== ===== Установка из репозиториев =====
Строка 43: Строка 43:
 <​code>​sudo apt-cache search keyword</​code>​ <​code>​sudo apt-cache search keyword</​code>​
 где keyword - название программы,​ часть названия программы или слово из её описания. где keyword - название программы,​ часть названия программы или слово из её описания.
 +
 +===== Установка определенной версии пакета =====
 +
 +Ищем нужную версию пакета:​
 +<​code>​apt-cache showpkg имя_пакета</​code>​
 +Устанавливаем нужную версию пакета:​
 +<​code>​apt-cache showpkg имя_пакета</​code>​
 +<​code>​apt-get install имя_пакета=версия</​code>​
  
 ===== Установка из deb-пакета ===== ===== Установка из deb-пакета =====
Строка 48: Строка 56:
  ​Минус такого подхода - менеджер обновлений не будет отслеживать появление новых версий установленной программы.  ​Минус такого подхода - менеджер обновлений не будет отслеживать появление новых версий установленной программы.
 ==== С использованием графического интерфейса ==== ==== С использованием графического интерфейса ====
-Перейдите при помощи [[wiki:​Nautilus]] в папку, где находится deb-пакет, ​наведите курсор мыши на deb-пакет и щелкните два раза. Откроется "Установщик программ GDebi" ​все, что от вас потребуется - это просто нажать кнопку "​Установить пакет"​.+Перейдите при помощи [[wiki:​Nautilus]] в папку, где находится deb-пакет, ​откройте свойства файла (правая клавиша -> Свойства),​ во вкладке "​Права"​ разрешите ​выполнение файла (галочка у "​Разрешить исполнение файла как программы"). Далее закрываем свойства файла, ​и по двойному ​щелчку Nautilus предложит нам открыть код или выполнить файл. Запускаем. 
 +Либо возможно это сделать специальным установщиком GDebi (установить можно из Центра приложений,​ вписав в поиск GDebi, либо вписав в командную строку:  
 +<​note>''​sudo apt-get install GDebi''</​note>​ 
 +После установки запускаем deb-пакет с помощью установщика программ GDebi все, что от вас потребуется - это просто нажать кнопку "​Установить пакет"​.
  
 **Возможные ошибки** **Возможные ошибки**
Строка 61: Строка 72:
 <​code>​sudo dpkg -i /​home/​user/​soft/​ntlmaps_*.deb</​code>​ <​code>​sudo dpkg -i /​home/​user/​soft/​ntlmaps_*.deb</​code>​
 Это бывает полезно для установки пакета программы вместе с пакетами зависимостей. Это бывает полезно для установки пакета программы вместе с пакетами зависимостей.
 +
 +===== Запрет обновления пакета =====
 +
 +Бывает когда ненужно ставить версию пакета новее установленной.
 +К примеру отсутствует поддержка чего либо в новой версии либо, она не корректно работает на системе.
 +
 +==== Через dpkg ====
 +
 +В терминале:​
 +<​code>​sudo echo '​имя_пакета hold' | sudo dpkg --set-selections </​code>​
 +имя пакета берется из команды,​ которой вы ставили этот пакет.
 +Чтобы разрешить обновлять делаем так:
 +<​code>​echo '​имя_пакета install'​ | sudo dpkg --set-selections</​code>​
 +Смотрим статус пакета:​
 +<​code>​dpkg --get-selections | grep '​имя_пакета'</​code>​
 +
 +==== Через apt ====
 +
 +Здесь все проще.
 +Чтобы заблокировать пакет:
 +<​code>​sudo apt-mark hold имя_пакета</​code>​
 +Чтобы разблокировать пакет:
 +<​code>​sudo apt-mark unhold имя_пакета</​code>​
 +<note tip>​Через aptitude аналогично.</​note>​
  
 ===== Установка программ с собственным инсталлятором из файлов sh, run ===== ===== Установка программ с собственным инсталлятором из файлов sh, run =====
Строка 75: Строка 110:
  ​Иногда дистрибутив программы распространяется в виде самораспаковывающегося архива. В таком случае это будет просто один единственный файл .sh который и нужно запустить. Дальше вы просто получите мастер где нужно будет ответить на ряд вопросов,​ так же как это делается в Windows. Так устанавливаются официальные драйверы nVidia, ATI, среда разработчика NetBeans и т.п.  ​Иногда дистрибутив программы распространяется в виде самораспаковывающегося архива. В таком случае это будет просто один единственный файл .sh который и нужно запустить. Дальше вы просто получите мастер где нужно будет ответить на ряд вопросов,​ так же как это делается в Windows. Так устанавливаются официальные драйверы nVidia, ATI, среда разработчика NetBeans и т.п.
  
- ​Есть программы,​ которые не нуждаются в инсталляции и распространяются в виде обычного архива tar.gz, который просто достаточно куда-то распаковать. В Windows также есть такие программы,​ их еще часто называют словом Portable. Устанавливать такие программы ​можно куда-угодно, но стандартное место обычно - это каталог /opt. Конечно,​ пункты на запуск в меню вам придется добавлять вручную,​ для этого нужно щелкнуть правой кнопкой по заголовку меню Программы и выбрать Правка меню.+ ​Есть программы,​ которые не нуждаются в инсталляции и распространяются в виде обычного архива tar.gz, который просто достаточно куда-то распаковать. В Windows также есть такие программы,​ их еще часто называют словом Portable. Устанавливать такие программы не требуется, ​достаточно распаковать в любое место, но стандартное место обычно - это каталог /opt. Конечно,​ пункты на запуск в меню вам придется добавлять вручную,​ для этого нужно щелкнуть правой кнопкой по заголовку меню Программы и выбрать Правка меню.
 ===== Установка из исходников ===== ===== Установка из исходников =====
 Если для вашей системы нигде нет deb-пакетов,​ то программу [[programs_installation|можно собрать (скомпилировать) самому из исходных кодов]],​ которые можно скачать на официальном сайте любой [[http://​www.opensource.org/​|Open Source]] программы либо из source-репозитория дистрибутива. Если для вашей системы нигде нет deb-пакетов,​ то программу [[programs_installation|можно собрать (скомпилировать) самому из исходных кодов]],​ которые можно скачать на официальном сайте любой [[http://​www.opensource.org/​|Open Source]] программы либо из source-репозитория дистрибутива.
  
- Я рекомендую по возможности избегать этого способа установки программ. Основное,​ что вам понадобится - это средства для компиляции,​ для этого сначала нужно установить пакет build-essential. Дальше,​ нужно распаковать архив с кодами программы в какую-то временную папку. Потом нужно найти файл README или INSTALL, прочитать его и выполнить то, что там написано. Чаще, установка программ таким способом ограничивается последовательным выполнениям следующих команд:​+ Я рекомендую по возможности избегать этого способа установки программ. Основное,​ что вам понадобится - это средства для компиляции,​ для этого сначала нужно установить пакет build-essential. Дальше,​ нужно распаковать архив с кодами программы в какую-то временную папку. Потом нужно найти файл README или INSTALL, прочитать его и выполнить то, что там написано. Чаще, установка программ таким способом ограничивается последовательным выполнением следующих команд:​
    ​./​configure    ​./​configure
    make    make
Строка 87: Строка 122:
  
  ​Вот так. Желательно,​ конечно,​ по возможности избегать установки программ **не** с помощью deb-пакетов,​ то есть другие способы не рекомендуются. Однако их нужно знать, чтобы не запутаться в потоке информации.  ​Вот так. Желательно,​ конечно,​ по возможности избегать установки программ **не** с помощью deb-пакетов,​ то есть другие способы не рекомендуются. Однако их нужно знать, чтобы не запутаться в потоке информации.
 +===== Автоматическая установка зависимостей при сборке из исходников =====
 +Такой тип установки лучше чем просто ./configure && make && make install, и подходит для установки программ отсутствующих в [[wiki:​репозиторий|репозиториях]].
 +
 +Ставим auto-apt:
 +<​code>​sudo apt-get install auto-apt</​code>​
 +
 +Переходим в папку с распакованными исходниками и командуем:​
 +<​code>​sudo auto-apt update && auto-apt -y run ./​configure</​code>​
 +
 +Команда auto-apt сама доставит необходимые пакеты для сборки,​ и позволит задавать меньше вопросов. ​
 +
 +Создание [[wiki:​создание_deb_пакетов|deb пакета]] для более простой работы в дальнейшем,​ (установка,​ удаление,​ и прочее):​
 +<​code>​checkinstall -D</​code>​
  
 ===== Ссылки ===== ===== Ссылки =====
Строка 94: Строка 142:
   * [[programs_installation|Компиляция и установка программ из исходников]] ​   * [[programs_installation|Компиляция и установка программ из исходников]] ​
 {{tag>​HOWTO Система Администрирование Программы}} ​ {{tag>​HOWTO Система Администрирование Программы}} ​
-