​Установка программ в ubuntu через консоль. Linux установка программ


Установка пакетов Ubuntu | Losst

Установка новых программ - один из самых важных моментов при работе с вашей системой. Раньше мы уже рассматривали добавление PPA в систему и установку программ из исходников. Но даже в PPA есть далеко не все пакеты, а установка из исходников слишком сложна для новичков.

Нередко возникает необходимость поставить программу, для которой уже есть собранные deb пакеты в интернете. Это может быть какая-нибудь не очень популярная программа или даже драйвера, которые вы скачали и хотите установить на компьютер где нет сети. На компьютере без сети установка программ с флешки ubuntu может стать единственным решением. В этой статье будет рассмотрена установка deb пакетов в ubuntu. Мы рассмотрим где их взять и как установить deb в ubuntu.

Содержание статьи:

Где взять deb пакеты?

Ответ прост - на просторах интернета. Если это нужная вам программа, то вы уже знаете где взять для ее пакет. В случае с драйверами ситуация немного сложнее. Все программы и драйвера, которые находятся в официальных репозиториях Ubuntu вы можете найти на сайте launchpad.net, это очень удобно, если на машине, где они должны быть установлены нет интернета. Например, ищем linux-firmware и открываем ее страницу на Launchpad, внизу выбираем версию программы:

Дальше выбираем архитектуру:

 

И осталось получить deb файл для нашей системы:

Если у вас есть другой компьютер с интернетом или вы планируете устанавливать программы потом, а сейчас нужно только скачать deb пакеты, то это можно сделать с помощью apt:

apt download имя_пакета

Пакет будет сохранен в текущей папке и дальше вы сможете все без проблем установить. Но будет скачан только сам пакет, без его зависимостей. Зависимости мы можем получить только в системе с интернетом используя команду apt-rdepends:

apt download имя_пакета $(apt-rdepends имя_пакета|grep -v "^ ")

Теперь у вас есть не только пакет, но и все его зависимости.

Установка deb пакетов Ubuntu

Установить Deb пакет Ubuntu не так уж сложно, для этого даже есть несколько утилит. Можно устанавливать как с помощью графического интерфейса, так и в терминале.

Самый простой способ установки - в графическом интерфейсе, с помощью центра приложений, с него и начнем. Откройте файловый менеджер в папке с пакетом:

Выполните двойной клик по deb пакету, далее откроется центр приложений, где вы посмотреть информацию о пакете и запустить установку нажав кнопку установить.

Установка программ Ubuntu с помощью центра приложений мне не очень нравится, он обычно очень долго думает и не всегда правильно открывает программу, но можно воспользоваться другой графической утилитой - gdebi. Сначала ее нужно установить:

sudo apt-get install gdebi

Теперь кликаем правой кнопкой мыши по файлу, выбираем открыть с помощью и gdebi:

Дальше осталось нажать кнопку установить и дождаться завершения установки пакета ubuntu. Программа автоматически установит все зависимости, если есть доступ к сети.

Установка deb из консоли Ubuntu выполняется не намного сложнее. Для этого используется утилита dpkg. Сначала переходим в папку куда был загружен deb пакет:

cd ~/Загрузки/

Затем устанавливаем:

sudo dpkg -i имя_пакета.deb

 

Для этой команды доступны символы сокращений, например, можно написать вот так, чтобы установить все deb пакеты из этой директории:

$ sudo dpkg -i *.deb

Программа не умеет разрешать зависимости, даже если есть доступ к сети, она только устанавливает пакет, поэтому для установки зависимостей после установки deb ubuntu выполните:

$ sudo apt-get -f install

Теперь, когда зависимости были загружены, вы можете запускать и использовать программу.

Это не единственный способ установки пакетов ubuntu через терминал, утилиту gdebi тоже можно запустить таким способом:

sudo gdebi имя_пакета.deb

Возможно, вы не знали, но apt тоже умеет устанавливать deb пакеты и даже более чем успешно разрешает зависимости. Только утилите нужно передать полный путь к файлу для установки. Если вы находитесь в папке с deb пакетом выполните:

sudo apt install ./имя_пакета.deb

Программа автоматически установит все зависимости и больше ничего не придется выполнять.

Выводы

Вот и все. Теперь установка deb пакетов в Ubuntu не вызовет у вас проблем. Оказывается, есть несколько способов установки программ в ubuntu и все они имеют свои преимущества. Если у вас остались вопросы, спрашивайте в комментариях!

Оцените статью:

Загрузка...

losst.ru

Установка программ в Linux. Для чего нужны менеджеры управления пакетами?

Компиляция программ и её недостатки

Большинство пользователей привыкли к тому, что в операционной системе Windows для установки программы необходимо запустить специальный исполняемый файл. Например, с именем setup.exe. Linux реализует совершенно иной подход.

Программа может быть скомпилирована из исходных кодов. Это довольно специфичный и долгий процесс. К тому же чаще всего он отнимает много нервов. Большинству программ для нормальной работы требуются зависимости, которые пользователю также придется самостоятельно разрешать с помощью компиляции или установки пакетов.

С компиляцией связана одна неприятная особенность. В Linux не существует простого способа удаления скомпилированных программ. Пользователю придется самостоятельно выискивать все директории с данными, исполняемыми файлами и логами, чтобы очистить их. Также вы не сможете быть уверенным в нормальном функционировании системы, так как удаленная программа могла использоваться другими приложениями в качестве зависимости.

Чаще всего компиляция используется для установки самых новых версий программ, которые еще не успели войти в репозитории пакетов, либо для установки с указанием специфичных опций.

ЗаметкаСправедливости ради отметим, что компиляция программы из исходных кодов может быть произведена и в Windows. Однако данная операция является большой редкостью в этой операционной системе.

Преимущества менеджеров пакетов

В каждом современном дистрибутиве Linux имеется менеджер пакетов. Он осуществляет учет установленных программ и их зависимостей, что значительно облегчает администрирование системы. Пакет по принципу действия схож с установочным файлом Windows, однако не является исполняемым. Его можно считать чем-то вроде заархивированного набора инструкций, говорящего менеджеру как правильно и с какими зависимостями произвести установку программы.

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

  • Установка и удаление программ осуществляется вызовом простых команд.
  • Не нужно самостоятельно разрешать зависимости всех пакетов. Если вам необходимо установить программу, все её компоненты подтянутся из репозитория.
  • Файловая система не замусоривается. Зависимости, директории логов и данных могут удаляться автоматически в случае не надобности.
  • Высокая степень безопасности. Пакеты скачиваются через официальные репозитории и имеют криптографические подписи. Это исключает возможность установки программ с вредоносным кодом. В случае компиляции вы можете получить исходные коды с любого сайта или форума, и никто не гарантирует их безопасность.
  • Менеджер самостоятельно следит за обновлением версий пакетов.

Разнообразие форматов пакетов

В различных дистрибутивах Linux могут использоваться разные менеджеры пакетов. Так Debian и все его производные поддерживают формат пакетов deb, а Red Hat следует своему пути с форматом rpm. Существуют низкоуровневые команды, позволяющие осуществлять установку, удаление и обновление пакетов. В Debian команда именуется как dpkg, а в Red Hat соответственно rpm. Эти команды реализуют примитивный функционал. Например, они не осуществляют автоматическую установку зависимостей пакетов.

На основе примитивных команд rpm и dpkg реализованы высокоуровневые системы управления пакетами, позволяющие осуществлять простое и эффективное взаимодействие с форматами deb и rpm. Именно об их преимуществах мы говорили выше. К данным системам относятся Yum в Red Hat, APT и Aptitude в Debian/Ubuntu. Они являются консольными, но есть и системы управления пакетами с графической оболочкой YumExtender и Synaptic.

Также существует ряд инструментов, созданных под конкретные дистрибутивы. Они не будут рассмотрены в данном учебном курсе.

ЗаметкаЭтот урок содержит исключительно теоритические основы работы пакетных менеджеров Linux. Конкретные команды и практические примеры использования каждого менеджера будут рассмотрены в следующих статьях.

coder-booster.ru

Установка программ в Linux

Каждый, кто хоть немного знаком с компьютером, знает, что без установки необходимого программного обеспечения ему никак не обойтись. Когда вы устанавливаете операционную систему windows – она устанавливается голой, а именно без офисов, без графических редакторов, без почтовых клиентов, без антивирусного программного обеспечения, без еще чего-либо. Чтобы хоть как то почувствовать себя продвинутым пользователем, вышеперечисленные программы, а также и многие другие просто необходимы для комфортной работы за компьютером. Так как же проходит процесс установки программ в windows? Обычно windows-программа состоит из установочного файла (setup.exe или install.exe) и небольшой кучки вспомогательных файлов, которые архивируются и которые вам, по сути, и не нужны. Любой пользователь знает, что надо запустить файл .exe, тупо кликнув мышкой по этому экзешному файлу 2 раза и процесс установки полезного ПО, а также и не совсем полезного (запуск вируса, например) пошел. У Вас только уточнят (в случае с вирусней и уточнять не будут) куда именно вы хотите установить ту или иную программу (т.е. выбрать путь установки, согласиться или отказаться от предложенных довесков к программе), и на этом действия пользователя заканчиваются. Далее, все происходит в автоматическом режиме, без помощи пользователя. Windows – программа сама знает дальнейшие действия. Она установится – пропишется в реестре – т.е. внесет необходимые изменения в системный реестр, при этом может еще и изрядно захламить его.

Теперь рассмотрим, как происходит установка программ в linux системах. Начнем с того, что в linux, дистрибутив нужной программы собран в виде пакета. Он так и называется – пакет такой-то. Например, чтобы установить файловый менеджер, в репозиториях нужно отыскать пакет под названием mc для своего дистрибутива linux. Если у вас 32-х разрядная система, пакет будет иметь вид: mc-1:4.7.0.2-3.el6 (i686), а если у вас 64-х битная система, то пакет будет иметь концовку x86_64. Давайте посмотрим, что означают эти циферки. Ну, интуитивно понятно, что mc-1 это название самого пакета, 4.7.0.2-3. – это версия дистрибутива самой программы, для сравнения в windows всем известный офис имеет названия office 2003, office 2007, office 2010 и т.д., а в linux это будет некоторый набор циферок. То, что стоит после точки el6 – означает принадлежность к определенному дистрибутиву linux, в данном случае этот пакет предназначен для дистрибутива Scientific Linux 6 версии, если бы мы ставили пакет для Fedora, это выглядело бы так mc-1:4.7.0.2-3.f20 (i686). Это грубый пример. Такого пакета в 20 Fedora вы не найдете, пакет, отвечающий за установку mc будет иметь название mc-1:4.8.11-1.fc20 (i.686). Каждому конкретному дистрибутиву linux – соответствуют свои репозитории, откуда все необходимое программное обеспечение будет устанавливаться. Скажу сразу, что если вы устанавливаете 32-х битный дистрибутив, то автоматически установятся программы только под 32-х разрядный дистрибутив, соответственно, если установлен 64-битный дистрибутив, все программы будут ориентироваться только на эту разрядность. Большинство программ устанавливается в linux дистрибутивах автоматом. При установке дистрибутива (конечно, если при установке вы выбирали, что вам нужно все) установится и браузер, и почтовый клиент, и офис, и программы, работающие с графическим изображением, и файловый менеджер и программы для записи, и игры, и много, много чего полезного и нужного. Это вам не голый windows. Вернемся к установке пакетов. По сути, пакет это такой же архив, который содержит программу. Но, кроме самой программы, в этом архиве есть прямые указания для менеджера пакетов о том, как нужно устанавливать программу, чтобы она работала корректно, т.е. в пакете есть некие инструкции для менеджера пакетов, а инструкции сводятся к тому куда установить тот или иной файл программы, какие команды нужно выполнить до и после установки, разрешить все зависимости (т.е. определяется список других пакетов, с которыми эта программа будет работать корректно, и не даст установиться пакетам, которые конфликтуют с данной программой – обычно в роли зависимостей выступают библиотеки). В конечном итоге действия пользователя для того, чтобы установить недостающую программу заключаются в следующем: пользователь ХОЧЕТ установить – выбирает из обширного списка нужное – нажимает кнопку УСТАНОВИТЬ. ВСЕ дальше действие передается менеджеру пакетов (в каждом дистрибутиве он свой), а сам пользователь может пойти попить кофейку. Никаких дальнейших действий от него не требуется.

Теперь поговорим о том как именно можно установить программу(ы) в linux. Это можно сделать тремя способами:

1) Воспользоваться менеджером программ (в каждом linux дистрибутиве он свой), например, в Fedora это приложение называется "Программное обеспечение", команда запуска gnome-software. В OpenSUSE за все (и за установку/удаление в том числе) отвечает YaST. В Ubuntu это «Центр приложений». Это все графические утилиты, вы открываете ее – выбираете красивую кнопочку с нужной программой, нажимаете установить, на этом ваши действия заканчиваются.

2) Воспользоваться услугами менеджера пакетов (не путать с менеджером программ). В Fedora управлением пакетами занимается yum, в openSUSE все тот же YaST (он вообще все может), в ubuntu - apt-get.

Для управления пакетами нужны полномочия суперпользователя (root) – поэтому открываем консоль (терминал) – становимся этим привилегированным пользователем, введя команду sudo, и устанавливаем нужный нам пакет, например, чтобы установить все тот же файловый менеджер в терминале вводим:

Для Fedora – sudo yum install mc

Для Ubuntu – sudo apt-get install mc

Любой менеджер пакетов просматривает свой файл конфигурации, где описаны подключенные репозитории, подключается к тому, где есть эта программа, скачивает ее и устанавливает. Если в процессе установки менеджер пакетов обнаружит, что для этого устанавливаемого пакета требуются зависимости, которые еще не установлены, он скачает и их тоже и установит.

3) И последний вариант – это установка из исходного кода. На сегодняшний момент установкой из исходного кода занимаются «экстремальные» люди. Простому пользователю этим можно не заниматься, хватает и первых двух вариантов установки программного обеспечения в linux. К слову сказать, этот вариант установки появился самым первым. Его большой плюс – полный контроль устанавливаемого ПО. Минус – требует высокого понимания того, что вы делаете, так как неправильный подход к разрешению зависимостей между пакетами и версиями может привести к получению неработоспособного ПО.

www.moscow-faq.ru

Установка программ в Ubuntu.

Замечено, что новички, нахватавшись чуток знаний, начинают помогать другим новичкам, НЕ правильно показывая процесс установки программ в Ubuntu.

Информации много по любой теме, но новичок не знает часто, а как правильно делать то или это в Ubuntu. Так что эта тема - волшебный пендаль, который покажет правильный путь в установке программ Ubuntu. Хочется новичкам разъяснить философию установки программ в дистрибутивах линукса, которые основаны на пакетных системах - это семейство RedHat (RH + Fedora), семейство SUSE, семейство чей папа Дебиан (Ubuntu + Mint), Мандрива и другие основанные на них.

В перечисленных дистрибутивах есть понятия:1) пакета программы (что-то типа архива программы + скрипты внутри что делать с программой).2) репозиторий - это хранилище софта, это может быть сервер или диск или другой носитель с пакетами программ3) "установщик программ" - программа, которая устанавливает по вашему требованию пакеты программ из репозитория.

В вашей системе есть "установщик программ", который имеет добавляемый список репозиториев с софтом, "установщик программ" скачивает с репозитория список имеющегося у него софта и предлагает вам возможность установить понравившуюся программу. Подробнее на примере Ubuntu чтобы было понятно, аналогично делается в других пакетных дистрибутивах линукса, только названия другие, а смысл тот же.

1) откроем список доступных репозиториевsudo gedit /etc/apt/sources.listВ этом текстовом файле хранятся адреса репозиториев, поискав в интернете другие репозитория, захожу на сайт репозитория, внимательно читаю инструкцию по добавлению его в мою систему и добавляю строку(и)deb packages.medibuntu.org/ intrepid free non-freeи мне становится доступным еще дополнительный софт, например AdobeReader для чтения pdf2) запустив "установщик программ" для Ubuntu под названием Синаптик, я нахожу программу acroread (Adobe Acrobat Reader: Portable Document Format file viewer) и одним щелчком устанавливаю в свою систему.3) если установленная мною программа обновится и ее новая версия будет доступна в репозитории, то мой "установщик программ" предложит мне ее обновить, чтобы залатать дыры и поддерживать систему в актуальном состоянии.

Поэтому вывод следующий! Нужна программа XYZ? Найдите в Интернете какой репозиторий хранит ее, прочтите как правильно добавить репозиторий в вашу систему на сайте. И после этого "установщиком софта" ставьте программу в свою систему.

ЗАБУДЬТЕ пока не станете профи следующие вещи и НИКОГДА их не делайте - "выкачал deb" и "выкачал исходники и откомпилил". На ваших первых этапах изучения линукса НЕТ таких программ, которых нет в репозитории и вы еще новичок, чтобы сталкиваться со сложными моментами в установке софта. Мысль должна двигаться так, хочу например браузер Оперу. Я должен НЕ выкачивать Оперу, а указать репозиторий, хранящий Оперу, в своем /etc/apt/sources.list и потом установить Оперу, используя или Синаптик или apt(itude|-get). Многие вещи я упростил чтобы было проще понять, поэтому обязательно к прочтению help.ubuntu.com.

Отличная статья с картинками для новичков ubuntologia.ru.

Для защитников и любителей компилировать из исходников

Как лучше в Ubuntu компилировать из исходников? раз нет репозитория или деб пакета. Напомню, что компиляция - это процесс, при котором программа-компилятор создает из исходного файла, с инструкциями на некотором языке, исполняемый файл, содержащий инструкции процессору.

Этот способ не повредит пакетной системе Ubuntu и лучше, чем configure && make install1) Поставьте auto-aptsudo apt-get install auto-apt

2) Распакуйте исходники программы и в каталоге командуйтеsudo auto-apt update && auto-apt -y run ./configure

Команда auto-apt автоматом будет доставлять пакеты с необходимыми файлами, всякие там заголовочные файлы .hподробнее 5.3 Установка пакетов "по запросу"Этот шаг позволит автоматически удовлетворить зависимости компилируемой программы и меньше будете пытать людей на форумах, типа чего надобно программе на словеstdio.h NOT FOUND

3) сделайте деб пакетcheckinstall -D

vasilisc.com

Компиляция и установка программ из исходников

Не редко необходимые пакеты можно найти только в виде исходных текстов, в данной статье описывается метод установки пакета из исходных текстов.

Программы обычно распространяются в упакованных архивах, это файлы с расширениями

<some_app_name>.tar.gz (иногда .tgz) <some_app_name>.tar.bz2

Нужно понимать отличие между архиватором и упаковщиком.

Для архивации директорий и файлов используется программа tar; результатом её работы является файл с расширением .tar. Грубо говоря, это копия файловой системы - директорий и файлов с их атрибутами и правами доступа, помещённая в один файл.

Данный файл по размеру будет чуть больше, чем суммарный размер файлов, которые были архивированы. Поэтому (а может и по другой причине) используют упаковщики - программы, которые позволяют уменьшить размер файла без потери данных.

Программа tar умеет распаковывать, поэтому не нужно вызывать gunzip, а можно просто указать программе tar, что файл нужно cначала распаковать. Например, команда

tar -xvf <some_app_name>.tar.gz

сразу распакует и разархивирует. Отличие файлов с расширениями

<some_app_name>.tar.gz

и

<some_app_name>.tar.bz2

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

После распаковки необходимо перейти в полученный каталог, все описываемые ниже команды выполняются в каталоге с исходными текстами пакета.

cd <имя_пакета>*

Для сборки программ в GNU/Linux используется (в основном) программа make, которая запускает инструкции из Makefile, но поскольку дистрибутивов GNU/Linux много, и они все разные, то для того чтобы собрать программу, нужно для каждого дистрибутива отдельно прописывать пути,где какие лежат библиотеки и заголовочные файлы. Программисты не могут изучать каждый дистрибутив и для каждого отдельно создавать Makefile. Поэтому придумали конфигураторы, которые «изучают» систему, и в соответствии с полученными знаниями создают Makefile. Но на конфигураторе они не остановились и придумали конфигураторы конфигураторов …на этом они остановились

Для сборки нам нужны компиляторы: они прописаны в зависимостях пакета build-essential, так что достаточно установить его со всеми зависимостями. Ещё нужны autoconf и automake.

Итак, чтобы собрать что-то из исходников, нужно сначала собрать конфигуратор; как собрать конфигуратор, описано в файле configure.in. Для сборки конфигуратора необходимо выполнить

./bootstrap

или

./autogen.sh

Если таких скриптов в архиве не оказалось, то можно выполнить последовательно следующие команды:

aclocal autoheader automake --gnu --add-missing --copy --foreign autoconf -f -Wall

Все эти команды используют файл configure.in. После выполнения этих команд создастся файл configure. После этого необходимо запустить конфигуратор для проверки наличия всех зависимостей, а также установки дополнительных опций сборки (если возможно) и просмотра результата установки (опционально- может не быть)

./configure

Конфигуратор построит Makefile основываясь на полученных знаниях и файле makefile.am. Можно передать конфигуратору опции, предусмотренные в исходниках программы, которые позволяют включать/отключать те или иные возможности программы, обычно узнать о них можно командой

./configure --help

Также есть набор стандартных опций, вроде

--prefix=

, которая указывает, какой каталог использовать для установки. Для Ubuntu обычно

--prefix=/usr

или

--prefix=/usr/local

БЕЗ слеша в конце! Теперь можно запустить процесс сборки самой программы командой

make

Для сборки достаточно привелегий обычного пользователя. Окончанием сборки можно считать момент, когда команды в консоли перестанут «беспорядочно» выполняться и не будет слова error. Теперь всё скомпилировано и готово для установки.

Усилия потраченные на Правильную установку в последствии с лихвой окупятся в случае удаления или обновления устанавливаемого программного обеспечения.

Правильная установка(Вариант №1)

Установка при помощи утилиты checkinstall. Для установки выполните

sudo apt-get install checkinstall

Минус данного способа: checkinstall понимает не все исходники, поскольку автор программы может написать особые скрипты по установке и checkinstall их не поймёт.

Для создания и установки deb-пакета необходимо выполнить

sudo checkinstall

Правильная установка(Вариант №2)

Быстрое создание deb-пакета «вручную».

Основное отличие от предыдущего способа заключается в том, что в данном случае вы создаете пакет вручную и отслеживаете все вносимые изменения. Так же этот способ подойдет вам, если исходники не поддерживают сборку пакета с checkinstall.

fakeroot make install DESTDIR=`pwd`/tempinstall сd tempinstall mkdir DEBIAN find etc | sed "s/^/\//" > DEBIAN/conffiles Package: имя_пакета Version: 1.2.3 Architecture: amd64/i386/armel/all Maintainer: Можете вписать своё имя, можете дребедень, но если оставить пустым, то dpkg будет ругаться Depends: Тут можно вписать список пакетов через запятую. Priority: optional Description: Тоже надо что-нибудь вписать, чтобы не кидало предупреждения
  • При необходимости там же можно создать скрипты preinst, postinst, prerm и postrm.

  • Создаем deb-пакет, для чего выполняем:

dpkg -b tempinstall sudo dpkg -i tempinstall.deb

Установка (вариант №3)

Процедура создания deb-пакета подробно описана в данной статье.

Неправильная установка

Минус данного способа заключается в том, что если вы устанавливаете напрямую через make install, то нормально удалить или обновить пакет вы, скорее всего, не сможете. Более того, установка новой версии поверх старой, скорее всего, затрёт ваши изменения в конфигах. make install делает ровно то, что ему сказано — производит установку файлов в нужные места, игнорируя тот факт, что там что-то уже есть. После этого процесса совершенно никакой информации о том, что и куда ставилось, получить в удобоваримом виде невозможно. Иногда, конечно, Makefile поддерживает действие uninstall, но это встречается не так часто, да и не факт, что корректно работает. Кроме того, вам будет необходимо хранить для деинсталяции распакованное дерево исходников и правил сборки.

Для установки необходимо выполнить

sudo make install

Для удаления пакета, установленного данным способом необходимо выполнить в корневой директории исходников программы (там где вы запускали make install).

sudo make uninstall

Часто на этапе конфигурации конфигуратор сообщает, что нехватает той или иной библиотеки. Название библиотеки, которое он сообщает, не всегда соответствует названию пакета в Ubuntu. Из собственного опыта могу посоветовать поискать в Синаптике нужный пакет, исключив префикс lib, если нашлось несколько пакетов различающихся приставкой -dev в названии, то вам нужно установить именно -dev пакет (обычно он тянет за собой и не -dev пакет). Можно ещё поискать с помощью http://packages.ubuntu.com/, введя имя библиотеки в поиск по содержимому пакетов, аналогично, если найдётся dev и не dev, нужны оба . Ну или просто поискать в Google.

Пакеты с буквами mm в конце описания — это пакеты для C++ программ. Список для bmpx, но подойдёт почти для любой GTK2/Gnome программы. Так что если не получается собрать, то посмотрите на этот список и сверьте с тем что у вас установлено.

Compile: Runtime: X GlibMMGTK+ GTKMM GladeGladeMMXMLXML++DBusAlsaHALGaminNeonTagLibStartup-NotifyBoostMusicBrainzGStreamer
libx11-devlibx11-6
libglibmm-2.4-devlibglibmm-2.4-1c2a
libgtk2.0-dev,gtk-doc-toolslibgtk2.0-0
libgtkmm-2.4-devlibgtkmm-2.4-1c2a
libglade2-devlibglade2-0
libglademm-2.4-devlibglademm-2.4-1c2a
libxml2-devlibxml2
libxml++2.6-devlibxml++2.6c2a
libdbus-1-dev,libdbus-glib-1-devlibdbus-1-2,libdbus-glib-1-2
libasound2-devlibasound2
libhal-dev,libhal-storage-devlibhal1,libhal-storage1
libgamin-devlibgamin0
libneon25-devlibneon25
libtagc0-devlibtagc0
libstartup-notification0-devlibstartup-notification0
libboost-dev,libboost-filesystem-devlibboost-filesystem1.33.1
libmusicbrainz4-devlibmusicbrainz4c2a
libgstreamer0.10-dev,libgstreamer-plugins-base0.10-devlibgstreamer0.10-0,libgstreamer-plugins-base0.10-0

help.ubuntu.ru

​Установка программ в ubuntu через консоль

Система управления пакетами в Ubuntu полностью аналогична системе управления пакетами Debian, и использует утилиты dpkg и apt. Программы в Ubuntu, как и в Debian хранятся в пакетах вида .deb.

Терминал, консольОбычно программы в Ubuntu устанавливаются через интернет, предварительно скачивая их с репозиториев. Установка производится при помощи графической оболочки sinaptic или через консоль.

Скачанные файлы программ не удаляются после установки и хранятся в каталоге /var/cache/apt/archives. При необходимости их можно удалить командой apt-get clean или apt-get autoclean.

DPKG

dpkg -i программа Устанавливает либо обновляет пакет который был установлен ранее.

dpkg -r программа Деинсталлирует уже установленную программу но сохраняет файлы конфигурации программы.

dpkg -l Отображает список уже установленных пакетов программ.

dpkg -l | grep driver Отображает список установленных программ в названии которых есть слово «driver».

dpkg -s программа Показывает информацию по этой программе.

dpkg -P Удаляет установленную программу вместе с файлом конфигурации.

APT

apt-get install программа Установка программы. Можно устанавливать сразу несколько программ. Выглядеть это будет так: apt-get install программа программа программа программа программа программа

apt-get update Проверяет, есть ли на репозиториях обновления для установленных

программ. Список репозиториев находится в файле /etc/apt/sources.list

apt-cdrom install программа Устанавливает либо обновляет пакет с cdrom-диска

apt-get upgrade Обновляет уже установленные программы.

apt-get remove программа Деинсталлирует установленную программу.

apt-get purge программа Удаляет установленный пакет и файлы конфигурации.

apt-get autoremove Удаляет пакеты, от которых не зависят другие пакеты.

apt-get check Находит конфликтующие пакеты и поломанные зависимости в пакетах программ.

apt-get -f install Исправляет найденные поломанные зависимости.

apt-cache search программа Поиск программы в кэше.

apt-cache show программа Показывает информацию и описание пакета программы.

apt-cache showpkg программа Покажет все зависимости пакета программы.

apt-cache depends программа Отображает в виде списка зависимые пакеты программ, нужные для работы выбранной программы

Опции APT:

apt-get -h Справка

apt-get -d Скачивает программу но не устанавливает ее.

apt-get -s Команда с этой опцией ничего не делает. Просто имитирует выполнение команды (например имитация удаления программы)

apt-get -y Если программа задает вопросы эта опция отвечает Yes на все вопросы. Вопросы не выводит в консоль.

apt-get -f Продолжить действие, даже если проверка целостности пакета прошла неудачно.

apt-get -u Вдобавок ко всему покажет список обновленных пакетов.

aptitude Более удобный вариант apt. Лучше работает с зависимостями пакетов программ.

ubuntolog.ru

Установка программ не входящих в дистрибутив при помощи менеджера xstow

Linux: Установка программ не входящих в дистрибутив при помощи менеджера xstow

Современные дистрибутивы Linux имеют в своем составе очень много софта. Проблемы с установкой/удалением/обновлением такого софта решены, можно сказать, идеально. Всем занимается менеджер пакетов. Выбрали нужный пакет, менеджер пакетов установит его. Нужно удалить - менеджер пакетов удалит и аккуратно все почистит. Но, иногда хочется, или нужно, установить программное обеспечение, не входящее в дистрибутив, или распространяющееся в исходниках, или даже в бинарниках. Как поступать в таких случаях?

В дальнейшем, для определенности, предполагаем, что мы используем Linux, дистрибутив Ubuntu или Debian.

Установка пакета из исходников, обычный способ

Классический для свободного софта путь распространения, распространение в исходных текстах. В таком виде программа представляет собой архив с именем вида:

name-version.tar.gz

Установка такого софта производится выполнением набора несложных команд:

tar -xzvf name-version.tar.gz cd name-version ./configure make sudo make install

Расшифровка действий:

ШагКомандаЧто делает
1tar -xzvf name-version.tar.gzРаспаковка архива
2cd name-versionПереходим в полученный после распаковки директорий
3./configureНастройка исходников на нашу систему
4makeКомпиляция
5sudo make installУстановка

Проблемы

Проблема 1: Отсутствие нужных библиотек

Очень часто все не идет так гладко, а на шаге 3, команда configure на что-то жалуется. А жалуется она как правило на отсутствие нужных библиотек, или заголовков библиотек. Рассматриваем внимательно выход, который выдала команда configure на консоль и устанавливаем недостающие библиотеки и заголовки. Заголовки для Debian-подобных дистрибутивов, в том числе и для Ubuntu находятся в пакетах с суффиксом -dev в названии пакета.

Предположим мы увидели, что configure жалуется на библиотеку, устанавливаем ее в систему:

sudo apt-get install name

Запускаем configure опять. Теперь жалуется на заголовки этой же библиотеки. Устанавливаем и их:

sudo apt-get install name-dev

Ну наконец, установили все нужное, откомпилировали, работаем и получаем удовольствие. Казалось бы, счастье, вот оно. Но нет, вырисовывается проблема 2:

Проблема 2: Бардак в системе

Предположим, мы установили одну программу из исходников, другую, третью. И вдруг нам понадобилось удалить первую, или заменить ее версию. А мы, оказывается не знаем, какие файлы относятся к этой программе и где они. Одни программы устанавливают свои файлы в иерархию /usr/local , другие вообще в /usr . В общем, мы не знаем, как вычистить файлы, относящиеся к пакету.

Отступление: Стандартная иерархия файловой системы Linux (File System Hierarchy Standard)

В Linux есть стандарт на размещение файлов в системе. Ссылки приведены в разделе Литература. По этому стандарту, в иерархии директорий /usr должны храниться файлы используемые пользователями, в том числе и пользователям с других компьютеров. В иерархии директорий /usr/local - файлы используемые локальными пользователями. Таким образом нам нужно наши программы ставить в иерархию /usr/local, и при этом избежать бардака.

Улучшеный способ установки: менеджер пакетов xstow

Сделать это нам поможет менеджер пакетов xstow. Можно пользоваться также менеджером stow, xstow - это расширенная версия. Что он делает? Очень простую вещь. Мы устанавливаем наши программы в иерархию /usr/local/stow, каждую программу в свою директорию, а потом менеджер xstow создает символьные линки на наши файлы из иерархии /usr/local. Устанавливаем xstow:

sudo apt-get install xstow

Теперь последовательность операций при установке пакета с использованием менеджера xstow.

tar -xzvf name-version.tar.gz cd name-version ./configure --prefix=/usr/local/stow/name-version make sudo make install cd /usr/local/stow/ sudo xstow name-version

Расшифровка действий:

ШагКомандаЧто делает
1tar -xzvf name-version.tar.gzРаспаковка архива
2cd name-versionПереходим в полученный после распаковки директорий
3./configureНастройка исходников на нашу систему
4makeКомпиляция
5sudo make installУстановка
6cd /usr/local/stow/Переходим в директорий, где лежат программы
7sudo xstow name-versionСоздаем символьные линки в иерархию /usr/local

Команда:

sudo xstow -D name-version

Удаляет символьные ссылки. После удаления ссылок директорию с файлами программы, находящуюся в /usr/local/stow/ можно удалять.

Заключение

Используя менеджер пакетов xstow можно не только поддерживать порядок в системе, можно иметь несколько версий программ одновременно и быстро переключаться между ними.

Литература

[1] Стандартная иерархия файловой системы Linux (File System Hierarchy Standard) [2] Filesystem Hierarchy Standard

Опубликовано: January 20, 2011

Комментарии:

Имя: keedhost

Как то оно все запутано...

Имя: evgeny

В общем-то все достаточно просто и логично, хотя с первого раза может показаться, что сложно.

Имя: tark

Метод с инстал-префиксом не совсем по назначению используется.Тогда можно просто сделать каталог /usr/local/compiled_softwareи ставить все туда, добавив /usr/local/compiled_software/bin в PATH ну и либы если надо. Это логичнее и без каких-либо симлинков.А самый нормальный вариант - checkinstall../configuremakecheckinstall -D //для того же дебианаи имеем деб пакет для нашего пакетного менеджера. Аналогично для других систем.

Имя: evgeny

> можно просто сделать каталог /usr/local/compiled_software

Можно, но сразу получаем конфликты имен для разных версий одного и того же софта.

> checkinstall -D //для того же дебиана

Тоже можно, но опять таки сразу получаем конфликты с софтом из дистрибутива, а так же конфликты файлов данных софта из дистрибутива и вновь установленного.

Представьте, что нужно иметь несколько версий, например Qt, для системного софта, и парочку для разных проектов.

Имя: Max

Собрал последнюю версию (1.0.0) xstow из исходников, опакетил в deb и установил пакет. Вот дерево установленных файловhttp://farm02.photoload.ru/data/67/bc/74/67bc74c622e9281545b69b984bc7fa5c.png?h=GWy9b6oYBuLgW_4DLaiT9g&t=1372431851

Но вот почему то там нет каталога /usr/local/stow/ куда согласно вашей статьи надо устанавливать будущие программыПодскажите, в чем тут дело ?И еще - в дереве присутствуют 3 версии xstow - как с этим управляться ?Я должен работать с версией xstow (без приставок)?

Комментировать:

blog.swlogic.eu