Различия
Здесь показаны различия между двумя версиями данной страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
wiki:установка_программ [2011/03/31 16:33] [Установка программ с собственным инсталятором из файлов sh, run] |
wiki:установка_программ [2019/06/17 15:43] (текущий) [Установка программ с собственным инсталлятором из файлов sh, run] |
||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| ====== Установка программ ====== | ====== Установка программ ====== | ||
| - | Время от времени появляются новые задачи либо необходимость в решении старых задач новыми способами — тогда возникает потребность в дополнительном программном обеспечении. Данная статья рассказывает, что делать, если вам нужна новая программа для [[об_ubuntu|Ubuntu]]. | + | Время от времени появляются новые задачи, либо необходимость в решении старых задач новыми способами — тогда возникает потребность в дополнительном программном обеспечении. Данная статья рассказывает, что делать, если вам нужна новая программа для [[Ubuntu]]. |
| - | В Ubuntu, как и в других операционных системах, есть понятие **зависимостей**. Это значит, что программу можно установить, только если уже установлены пакеты, от которых она зависит. Такая схема позволяет избежать дублирования данных в пакетах (например, если несколько программ зависят от одной и той же библитеки, то не придётся пихать эту библиотеку в пакет каждой программы — она поставится один раз отдельным пакетом). В отличие от, например, Slackware или Windows, в Ubuntu зависимости разрешаются пакетным менеджером (Synaptic, apt, Центр приложений, aptitude) — он автоматически установит зависимости из [[репозиторий|репозитория]]. Зависимости придётся устанавливать вручную, если нужный репозиторий не подключен, недоступен, если нужного пакета нет в репозитории, если вы ставите патеты без использования пакетного менеджера (используете Gdebi или dpkg), если вы устанавливаете программу не из пакета (компилируете из исходников, запускаете установочный run/sh скрипт). | + | В Ubuntu, как и в других операционных системах, есть понятие **зависимостей**. Это значит, что программу можно установить, только если уже установлены пакеты, от которых она зависит. Такая схема позволяет избежать дублирования данных в пакетах (например, если несколько программ зависят от одной и той же библиотеки, то не придётся пихать эту библиотеку в пакет каждой программы — она поставится один раз отдельным пакетом). В отличие от, например, Slackware или Windows, в Ubuntu зависимости разрешаются пакетным менеджером (Synaptic, apt, Центр приложений, apt-get, aptitude) — он автоматически установит зависимости из [[репозиторий|репозитория]]. Зависимости придётся устанавливать вручную, если нужный репозиторий не подключен, недоступен, если нужного пакета нет в репозитории, если вы ставите пакеты без использования пакетного менеджера (используете Gdebi или dpkg), если вы устанавливаете программу не из пакета (компилируете из исходников, запускаете установочный run/sh скрипт). |
| - | + | ||
| - | **Установка программ в Ubuntu возможна несколькими способами:** | + | |
| - | - [[#Установка из репозиториев]] | + | |
| - | - [[#Установка из deb-пакета]] | + | |
| - | - [[#Установка из исходников]] | + | |
| ===== Установка из репозиториев ===== | ===== Установка из репозиториев ===== | ||
| Строка 19: | Строка 14: | ||
| ==== С использованием графического интерфейса ==== | ==== С использованием графического интерфейса ==== | ||
| - | Выберите Система -> Администрирование -> Менеджер пакетов Synaptic и получите более функциональный инструмент для работы с пакетами. В частности вы можете например устанавливать программы частично, если вам например не нужна документация или еще что-то. | + | Выберите Система -> Администрирование -> Менеджер пакетов Synaptic и получите более функциональный инструмент для работы с пакетами. В частности вы можете например устанавливать программы частично, если вам, например, не нужна документация или еще что-то. |
| Запустите программу [[wiki:synaptic|Менеджер пакетов Synaptic]] //Система->Администрирование->Менеджер пакетов Synaptic//. По запросу введите свой пароль. В запустившейся программе нажмите кнопку "Обновить", подождите, пока система обновит данные о доступных программах. | Запустите программу [[wiki:synaptic|Менеджер пакетов Synaptic]] //Система->Администрирование->Менеджер пакетов Synaptic//. По запросу введите свой пароль. В запустившейся программе нажмите кнопку "Обновить", подождите, пока система обновит данные о доступных программах. | ||
| Строка 30: | Строка 25: | ||
| Запустите [[терминал]]. Обновить данные о доступных в репозиториях программах можно командой: | Запустите [[терминал]]. Обновить данные о доступных в репозиториях программах можно командой: | ||
| - | <code>sudo aptitude update</code> | + | <code>sudo apt-get update</code> |
| По запросу введите пароль. Учтите, что при вводе в терминале пароль не отображается, ни звёздочками, ни кружками, никак. Это нормально. Для установки нужной программы введите команду: | По запросу введите пароль. Учтите, что при вводе в терминале пароль не отображается, ни звёздочками, ни кружками, никак. Это нормально. Для установки нужной программы введите команду: | ||
| - | <code>sudo aptitude install имя-программы</code> | + | <code>sudo apt-get install имя-программы</code> |
| Например: | Например: | ||
| - | <code>sudo aptitude install libsexymm2</code> | + | <code>sudo apt-get install libsexymm2</code> |
| Если нужно установить несколько программ, то их можно перечислить через пробел, например: | Если нужно установить несколько программ, то их можно перечислить через пробел, например: | ||
| - | <code>sudo aptitude install libsexymm2 nmap</code> | + | <code>sudo apt-get install libsexymm2 nmap</code> |
| Если потребуется - ответьте на задаваемые вопросы (для положительного ответа нужно ввести Y или Д). Программа будет установлена, если она уже установлена - она будет обновлена. | Если потребуется - ответьте на задаваемые вопросы (для положительного ответа нужно ввести Y или Д). Программа будет установлена, если она уже установлена - она будет обновлена. | ||
| Строка 46: | Строка 41: | ||
| Для поиска программы в списке доступных пакетов воспользуйтеcь командами: | Для поиска программы в списке доступных пакетов воспользуйтеcь командами: | ||
| - | <code>sudo aptitude search keyword</code> | + | <code>sudo apt-cache search keyword</code> |
| - | + | ||
| - | либо | + | |
| - | + | ||
| - | <code>aptitude show keyword</code> | + | |
| где keyword - название программы, часть названия программы или слово из её описания. | где keyword - название программы, часть названия программы или слово из её описания. | ||
| - | Команда ''aptitude search'' обладает огромными неописанными здесь возможностями, кроме того, большинство возможностей ''aptitude'' здесь так же не рассмотрены. Если вы хотите научиться легко контролировать установленные в системе пакеты, читайте статьи по [[aptitude]] и [[apt|пакетному менеджеру Apt]]. | + | ===== Установка определенной версии пакета ===== |
| - | Зачастую вместо ''aptitude'' в руководствах предлагается использовать ''apt-get'' - это стандартная утилита управления пакетами в Ubuntu, однако ''aptitude'' во-первых мощней, а во вторых, что самое главное, лучше справляется с разрешениями зависимостей. | + | Ищем нужную версию пакета: |
| + | <code>apt-cache showpkg имя_пакета</code> | ||
| + | Устанавливаем нужную версию пакета: | ||
| + | <code>apt-cache showpkg имя_пакета</code> | ||
| + | <code>apt-get install имя_пакета=версия</code> | ||
| - | <note important>**В Ubuntu 10.10 aptitude по умолчанию отсутствует. Но ничто не мешает установить его.**</note> | ||
| ===== Установка из deb-пакета ===== | ===== Установка из deb-пакета ===== | ||
| Если нужной программы нет в основном репозитории, и у автора программы нет своего репозитория, либо если репозитории недоступны (например, нет интернета), то программу можно установить из deb-пакета (скачанного заранее/принесённого на USB накопителе/...). Если deb-пакет есть в официальном репозитории, то его можно скачать с сайта [[http://packages.ubuntu.com]]. Часто deb-пакет можно скачать с сайта самой программы. Можно также воспользоваться поиском на сайте [[http://getdeb.net]]. | Если нужной программы нет в основном репозитории, и у автора программы нет своего репозитория, либо если репозитории недоступны (например, нет интернета), то программу можно установить из deb-пакета (скачанного заранее/принесённого на USB накопителе/...). Если deb-пакет есть в официальном репозитории, то его можно скачать с сайта [[http://packages.ubuntu.com]]. Часто deb-пакет можно скачать с сайта самой программы. Можно также воспользоваться поиском на сайте [[http://getdeb.net]]. | ||
| Минус такого подхода - менеджер обновлений не будет отслеживать появление новых версий установленной программы. | Минус такого подхода - менеджер обновлений не будет отслеживать появление новых версий установленной программы. | ||
| ==== С использованием графического интерфейса ==== | ==== С использованием графического интерфейса ==== | ||
| - | Перейдите при помощи [[wiki:Nautilus]] в папку, где находится deb-пакет, наведите курсор мыши на deb-пакет и щелкните два раза. Откроется "Установщик программ GDebi" все, что от вас потребуется - это просто нажать кнопку "Установить пакет". | + | Перейдите при помощи [[wiki:Nautilus]] в папку, где находится deb-пакет, откройте свойства файла (правая клавиша -> Свойства), во вкладке "Права" разрешите выполнение файла (галочка у "Разрешить исполнение файла как программы"). Далее закрываем свойства файла, и по двойному щелчку Nautilus предложит нам открыть код или выполнить файл. Запускаем. |
| + | Либо возможно это сделать специальным установщиком GDebi (установить можно из Центра приложений, вписав в поиск GDebi, либо вписав в командную строку: | ||
| + | <note>''sudo apt-get install GDebi''</note> | ||
| + | После установки запускаем deb-пакет с помощью установщика программ GDebi все, что от вас потребуется - это просто нажать кнопку "Установить пакет". | ||
| **Возможные ошибки** | **Возможные ошибки** | ||
| Строка 77: | Строка 73: | ||
| Это бывает полезно для установки пакета программы вместе с пакетами зависимостей. | Это бывает полезно для установки пакета программы вместе с пакетами зависимостей. | ||
| - | ===== Установка программ с собственным инсталятором из файлов sh, run ===== | + | ===== Запрет обновления пакета ===== |
| + | |||
| + | Бывает когда ненужно ставить версию пакета новее установленной. | ||
| + | К примеру отсутствует поддержка чего либо в новой версии либо, она не корректно работает на системе. | ||
| + | |||
| + | ==== Через 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 ===== | ||
| - | Иногда программы могут распространяться с собственным инсталятором. Это ничем не отличается от ситуации в Windows. Только здесь, распаковав tar.gz архив с дистрибутивом программы, вы вместо setup.exe увидите что-то типа install.sh. | + | Иногда программы могут распространяться с собственным инсталлятором. Это ничем не отличается от ситуации в Windows. Только здесь, распаковав tar.gz архив с дистрибутивом программы, вы вместо setup.exe увидите что-то наподобие install.sh. |
| Это заранее собранный пакет ПО, который оформлен в виде скрипта или бинарника, он берёт на себя работу по размещению файлов в нужных местах и прописыванию нужных параметров. При этом пропадает возможность управлять таким ПО с помощью пакетного менеджера. Пользоваться такими пакетами нежелательно, но если выбора нет, то переходим в директорию с файлом, например: | Это заранее собранный пакет ПО, который оформлен в виде скрипта или бинарника, он берёт на себя работу по размещению файлов в нужных местах и прописыванию нужных параметров. При этом пропадает возможность управлять таким ПО с помощью пакетного менеджера. Пользоваться такими пакетами нежелательно, но если выбора нет, то переходим в директорию с файлом, например: | ||
| <code>cd ~/soft</code> | <code>cd ~/soft</code> | ||
| Строка 90: | Строка 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, прочитать его и выполнить то, что там написано. Чаще, установка программ таким способом ограничивается последовательным выполнением следующих команд: | ||
| + | ./configure | ||
| + | make | ||
| + | sudo make install | ||
| + | |||
| + | Но в некоторых случаях могут быть отличия. Кроме того, после выполнения скрипта ./configure вы можете получить сообщение о том, что в системе не установлено библиотек нужных для компиляции программы. В таком случае нужно будет установить их самому и повторить процесс. Обычно процесс компиляции занимает определенное время и напрямую зависит от мощности вашего компьютера. | ||
| + | |||
| + | Вот так. Желательно, конечно, по возможности избегать установки программ **не** с помощью 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> | ||
| ===== Ссылки ===== | ===== Ссылки ===== | ||
| + | * [[http://forum.ubuntu.ru/index.php?topic=68916.0]] | ||
| * [[http://forum.ubuntu.ru/index.php?topic=2269.0|Установка из исходников]] - обсуждение статьи на форуме | * [[http://forum.ubuntu.ru/index.php?topic=2269.0|Установка из исходников]] - обсуждение статьи на форуме | ||
| * [[создание_deb_пакетов|Сборка ПО и создание .deb-пакетов из исходников в Debian-системах (Ubuntu)]] | * [[создание_deb_пакетов|Сборка ПО и создание .deb-пакетов из исходников в Debian-системах (Ubuntu)]] | ||
| * [[programs_installation|Компиляция и установка программ из исходников]] | * [[programs_installation|Компиляция и установка программ из исходников]] | ||
| - | {{tag>HOWTO Система Установка Программа Пакет}} | + | {{tag>HOWTO Система Администрирование Программы}} |