- 5. Установка и удаление программ¶
- Обновление дерева портежей¶
- Поиск программ¶
- Установка и удаление¶
- Размаскировка программ¶
- 1. Проверим доступные версии¶
- 2. Размаскируем устанавливаемые пакеты с зависимостями¶
- Установка deb пакетов в Gentoo.
- Установка deb пакетов из консоли
- Содержание
- Установка deb пакетов из консоли
- Удаление deb пакетов из консоли
- Стандартная установка пакетов из репозитория
- Настройка репозитория системы
- Установка пакетов
- Популярные пакетные менеджеры Linux
- Теоретические основы
- Категории пакетных менеджеров
- Распространенные форматы пакетов
- Разрешение зависимостей
- Популярные пакетные менеджеры
- Особенности
- Оболочки APT
- Особенности
- Yum Extender
- Pacman
- Особенности
- Оболочки Pacman
- Portage
- Особенности
- Интерфейсы Portage
- Заключение
5. Установка и удаление программ¶
Обновление дерева портежей¶
Перед установкой программ обновите локальный репозиторий пакетов. Обновлять репозиторий следует не чаще 1 раза в день.
Для обновления достаточно выполнить с правами пользователя root команду:
Программа обновит дерево портежей, оверлей Calculate, а затем синхронизирует свой локальный кэш, используемый при поиске программ.
Поиск программ¶
В программу emerge включен инструмент поиска программ, однако вы можете воспользоваться более быстрым инструментом — программой eix .
В первом случае поиск производится по названию пакета, во втором — по описанию.
Установка и удаление¶
Установка и удаление программ производится при помощи программы emerge. При установке новой программы сначала определяется необходимость в установке дополнительных пакетов (зависимостей), а затем скачиваются и компилируются исходные тексты. Помните, что для установки программ вам потребуется наличие интернета и некоторое время для компиляции. Программы, требующие значительного времени для компиляции (например, LibreOffice), распространяются в виде готовых к установке бинарных пакетов; их можно опознать по суффиксу «-bin».
Пример установки игры «Цивилизация» и бинарного LibreOffice:
Параметры -bk создают локальный архив скомпилированного пакета, а при его наличии программа устанавливается из этого архива, минуя стадию компиляции. Инструкцию по работе с программой emerge можно прочесть здесь.
Пример удаления игры «Цивилизация»:
Переменные DISTDIR и PKGDIR указывают путь к локальным папкам, в которых сохраняются исходные тексты программ и откомпилированные пакеты. Посмотреть значения этих (и многих других) переменных, используемых emerge , можно с помощью команды
Размаскировка программ¶
Как правило, портежи содержат несколько версий программы, часть из которых отмечены как нестабильные. Нестабильная версия вовсе не означает, что она нестабильно работает — просто на данный момент эта версия не прошла достаточного тестирования. Вы можете установить как стабильную, так и нестабильную версию программы.
Для установки нестабильных программ их нужно предварительно размаскировать. Для примера установим нестабильный на данный момент Firefox 22.0.
1. Проверим доступные версии¶
2. Размаскируем устанавливаемые пакеты с зависимостями¶
Удостоверьтесь, что директория /etc/portage/package.keywords/ не пустая, иначе выполните:
Нажмите «u» для подтверждения внесенных изменений.
Источник
Установка deb пакетов в Gentoo.
Предугадывая вопросы «зачем?» и «нафиг надо?». Сразу поясню: работаю по работе в програмке под виндой, програмка на линь тоже есть. На сайте проги сейчас доступна версия 2.4 (для обоих платформ) в которой щас работаю, но в линь можно скачать ток deb пакет. В Portage прога есть, но довольно старая версия (даже в тестовой ветке), которая мне не подходит.
Может кто поделиться ссылочкой, как правильно поставить deb пакет в gentoo? Искал, не нашел ничё толкового, кто-то пишет пользоваться какими-то прогами, кто-то распаковать и написать свой ебилд, чтоб через portage поставить, но описание процесса чёт нема. Если не сложно подскажите плз.
Что за прога? Поищи на gpo.zugaina.org
написать свой ебилд, чтоб через portage поставить, но описание процесса чёт нема
Неужели в Gentoo нет документации для сопровождающих пакеты?
Может и есть, но я не нашел. Искал по вики и по хэндбуку, может из-за моего суперского английского не то искал.
В Portage прога есть, но довольно старая версия (даже в тестовой ветке), которая мне не подходит.
В локальный оверлей на основе этой версии ebuild`а помещаешь отредактированный ebuild для установки требуемой тебе версии, выполняешь digest, ставишь.
Если всё удачно, то создаёшь на bugs.gentoo.org репорт для новой версии ebuild`а, прикрепляешь свой ebuild.
Ну или можешь просто создать запрос, но лучше сразу с ebuild`ом.
Источник
Установка deb пакетов из консоли
Содержание
Рассмотрим, как происходит установка deb пакетов из консоли на примере Ubuntu Linux если вы скачали пакет. Это может быть редкая программа, не представленная официально либо вы рискнули поставить более свежую версию игнорируя зависимости. Напомню, что в Ubuntu и Debian имеются тестовые ветки с более свежим, но менее стабильным софтом.
Установка deb пакетов из консоли
Откройте каталог со скачанным файлом, кликните правой кнопкой мыши и выберите «Открыть в терминале»:
Установка deb пакетов из консоли производится следующей командой:
Вероятнее всего вы увидите ошибку зависимостей. Продемонстрирую на примере пакета nmap в свежеустановленной системе Ubuntu 18.04:
Исправить это довольно просто, введите команду проверки зависимостей:
Зависимости успешно добавлены в систему и установленный пакет стабильно работает:
Удаление deb пакетов из консоли
Или если хотите удалить пакет со всеми его настройками:
После удаления установленного вручную пакета остались его зависимости. Чтобы навести порядок в системе воспользуемся командой:
Используйте в консоли клавишу «Tab» один или несколько раз чтобы автоматически продолжить путь к директории или файлу. Это не только ускоряет работу в терминале, но также избавляет от лишних ошибок при наборе команд. Авто продление «Tab» работает не только при наборе пути к файлу. Его можно применять для запуска любой программы если она уже установлена в системе. Просто наберите первые буквы из названия пакета и продолжите нажатием на «Tab».
Стандартная установка пакетов из репозитория
В операционных системах Linux есть очень гибкая консоль, которая позволяет устанавливать пакеты из централизованного хранилища – репозитория. Не нужно искать подходящую программу на сомнительных ресурсах по интернету. Достаточно ввести пару команд и установить пакет со всеми его зависимостями из проверенного официального источника.
Настройка репозитория системы
Примеры с консолью будут идентичны для OS Debian с рабочим окружением Gnome на которой основана Ubuntu. Откройте консоль нажав комбинацию клавиш Ctrl + Alt + T (для Ubuntu Linux). Либо щёлкните на рабочем столе правой клавишей мыши и выберите «Открыть терминал». Наберите название текстового редактора, и путь к открываемому файлу:
Введите свой пароль и в открывшемся окне редактора вы увидите список источников для установки пакетов. Прежде всего посмотрите, что находится в вашем списке репозиториев. Сделайте доступным проприетарное (коммерческое) программное обеспечение и ПО от партнёров Canonical. Там могут находиться различные драйверы видео и множество полезных утилит с закрытым исходным кодом:
Раскомментируйте нужную строку – удалите решётку # перед словом deb, сохраните изменения в редакторе. Затем вернитесь в консоль и наберите команду:
Терминал Linux сохраняет историю введённых ранее команд. Используйте стрелки вверх-вниз на клавиатуре для быстрого перебора и вывода предыдущих записей.
Выше я показываю, как вы можете отредактировать непосредственно сам файл через консоль. Но можно воспользоваться и графической утилитой:
Проставьте нужные галочки на источниках ПО на первой и второй вкладках. Нажмите внизу на кнопку «Закрыть» и система сама предложит обновить список пакетов: выберите «Обновить».
Установка пакетов
Теперь можно приступать к установке программ. Вы находитесь на сайте, который посвящён этому процессу. Здесь имеется огромная база (свыше 50 000) пакетов для Ubuntu / Linux Mint и Debian дистрибутивов.
Просто откройте поиск и введите название пакета, который хотите установить из официального репозитория системы. Команду sudo apt update необходимо ввести однократно, перед каждой последующей установкой её вводить не требуется.
На главной странице сайта подобраны категории всех пакетов для более удобной навигации.
Источник
Популярные пакетные менеджеры Linux
Содержание:
На заре разработки Linux установить приложение можно было только путем скачивания и компиляции исходников программы. Из-за использования сразу нескольких утилит и ошибок, возникавших в процессе сборки, установка одной программы отнимала много времени.
Чтобы сделать систему дружелюбней к пользователю, были разработаны пакетные менеджеры, которые полностью автоматизировали установку программ. Инсталляция приложений в них производится из пакетов – архивов с файлами скомпилированной программы. Исключение — система Gentoo, где менеджер компилирует программы по подготовленным скриптам.
Большинство популярных дистрибутивов на базе Unix/Linux уже оснащены пакетными менеджерами, способными устанавливать любое программное обеспечение. Будь то внешнее приложение или компоненты ОС. В этом заключается основное различие между пакетным менеджером и инсталлятором. Последний нужен для установки только одной специфической программы, тогда как система управления пакетами — универсальный установщик ПО.
Все пакетные менеджеры Linux имеют свой список репозиториев – серверов с базой пакетов. Во время установки алгоритм менеджера находит необходимый пакет в базе и производит автоматическое скачивание, установку и настройку.
О типах пакетных менеджеров и наиболее популярных вариантах реализации данного ПО расскажем в этой статье.
Теоретические основы
Категории пакетных менеджеров
- Высокоуровневые менеджеры. Применяются для поиска и скачивания пакетов из репозиториев. В процессе работы могут задействовать низкоуровневые менеджеры для инсталляции загруженных программ.
- Низкоуровневые менеджеры. Используются для установки локальных пакетов, загруженных вручную пользователем, или высокоуровневым пакетным менеджером.
Распространенные форматы пакетов
- DEB (.deb). Самый популярный формат пакетов дистрибутива Debian и его ближайших родственников — Ubuntu, MX Linux, Pop!_OS, elementary OS и других.
- RPM (.rpm). Разработан компанией Red Hat и внедрен в дистрибутив RHEL. Также применяется в таких системах как Fedora и CentOS.
- TAR.XZ. Стандартный тип пакетов для дистрибутива ArchLinux и его производных — Manjaro, ARCOLINUX и других.
- Ebuild (.ebuild). Скрипт bash-сценария для компиляции программ в дистрибутивах Gentoo и Calculate Linux.
Разрешение зависимостей
Для корректного функционирования пакетных менеджеров необходимо корректное отслеживание пакетных зависимостей. Зависимости – список дополнительных пакетов и библиотек, участвующие в работе программы. Во время установки приложения пакетный менеджер или компилятор считывают специальный файл со списком зависимостей, а после проверяют их наличие в системе.
Если важная зависимость будет не удовлетворена при установке программы низкоуровневым менеджером, то будет выдана ошибка с названием отсутствующего пакета. В подобной ситуации проблема решается отдельной установкой недостающего пакета.
При использовании высокоуровнего пакетного менеджера для установки программы, зависимые пакеты будут установлены в автоматическом режиме, без вмешательства пользователя.
Популярные пакетные менеджеры
DPKG (Debian Package) – система управления пакетами в Debian и дистрибутивах на его основе, например Ubuntu.
Утилита DPKG появилась в дистрибутиве Debian в 1995 году. Низкоуровневый пакетный менеджер создан только для работы с локальными DEB пакетами и не может самостоятельно разрешать зависимости, а также скачивать пакеты из репозиториев.
Особенности
- Поддерживает добавление архитектур из других дистрибутивов Linux.
- DPKG выполняет работу только с локальными пакетами.
- Под архитектуру DEB выпущено более 55000 пакетов.
Пакеты DEB – это архивы с набором установочных файлов. Для установки в систему необходимой программы из репозиториев создан высокоуровневый пакетный менеджер APT, который параллельно работает с DPKG.
APT (Advanced Packaging Tool) – консольная утилита, выполняющая роль «поисковика» и загрузчика пакетов из репозиториев. Установка скачанных пакетов производится утилитой DPKG. Благодаря эффективному разрешению зависимостей, пакетный менеджер APT используется по умолчанию в дистрибутивах с архитектурой Debian и поддерживает систему в актуальном состоянии.
Список репозиториев хранится в файле «/etc/apt/sources.list» и может быть изменён пользователем в любой момент для установки или обновления программы, не входящей в базу дистрибутива. Установка скачанных пакетов производится утилитой DPKG.
Изначально APT разрабатывался только для работы с пакетами DEB, использующихся в Debian и родственных ОС (Ubuntu, Linux Mint). Позже в него была добавлена поддержка rpm-файлов. Благодаря этому, установить софт привычным образом можно даже в дистрибутивах RED HAT и его производных (Fedora, CentOS и др.).
Оболочки APT
Для упрощения работы с APT можно использовать консольные оболочки APTITUDE или Synaptic.
APTITUDE
APTITUDE — это утилита, выполняющая роль «надстройки» для APT. Разработчики программы добавили полезные функции, оптимизирующие систему поиска пакетов, а также исправили ошибки, касающиеся разрешения зависимостей.
APTITUDE доступен в нескольких вариантах интерфейса:
- Графический интерфейс (GUI) на базе фреймворка GTK. Привычный для пользователя оконный интерфейс с возможностью управления мышью.
- Текстовый пользовательский интерфейс. Оболочка, открывающаяся в консоли. Интерфейс снабжается минимальным количеством графических элементов и может запускаться через протокол SSH. Управление осуществляется с помощью одиночных или групповых нажатий клавиш клавиатуры. Например, для переключения строк чаще всего используются клавиши со стрелками.
- Интерфейс командной строки. Подразумевает управление программой с помощью команд. Вариант позволяет полноценно пользоваться функционалом утилиты и подходит для продвинутых пользователей.
Если в дистрибутиве APTITUDE отсутствует по умолчанию, то выполнить установку можно следующими командами:
Synaptic
Synaptic — графический менеджер пакетов, работающий на основе APT. Программа пригодится новичкам, плохо знакомым с командной строкой. Несмотря на простоту интерфейса, утилита предоставляет весь необходимый функционал пакетного менеджера APT (установка, удаление, обновление и поиск пакетов).
Установить Synaptic можно следующими командами:
Открыть программу можно, найдя ярлык в меню рабочего окружения, или введя « sudo synaptic » в терминале.
RPM (Red Hat Package Manager) – формат пакетов и низкоуровневый пакетный менеджер систем RED HAT (RHEL, CentOS, Fedora и др.) Как и DPKG, способен работать только с локальными файлами.
Пакетный менеджер выпущен в 1997 году. Он работает с пакетами RPM. В отличие от DEB, пакеты RPM архивируются утилитой cpio, сжимающий пакет алгоритмом gzip.
Особенности
- Обновление программ производится в ускоренном режиме, благодаря замене только отредактированных разработчиком элементов пакета.
- Для скачивания, обновления пакетов, а также разрешения зависимостей придётся использовать пакетные менеджеры более высокого уровня (YUM, DNF).
- Начиная с 2010 года, пакеты подписываются с хешем MD5. Это исключает вероятность изменения файла RPM злоумышленником для внедрения вирусного кода.
YUM (Yellowdog Updater, Modified) – высокоуровневый пакетный менеджер, написанный на языке Python для систем RED HAT (RHEL, CentOS, Fedora). Программа представляет собой своеобразную оболочку для утилиты RPM.
В задачу YUM входит скачивание и обновление пакетов из репозиториев, а также удовлетворение зависимостей во время установки программы.
DNF (Dandified YUM) – модифицированная версия пакетного менеджера YUM на языке на Python. Разработка утилиты начата в 2011 году. В 2015 году DNF стал основным менеджером пакетов для системы Fedora 22. В DNF были исправлены такие недостатки YUM, как некорректная установка зависимостей, низкая скорость работы, большое потребление оперативной памяти.
Yum Extender
Yum Extender – лёгкая графическая оболочка для менеджеров пакетов YUM и DNF.
Yum Extender устанавливается следующей командой:
Pacman
Pacman – высокоуровневый пакетный менеджер системы Arch Linux и его родственных дистрибутивов (Manjaro, EndeavourOS и др.). Программа написана на языке C# и совмещает высокую функциональность, легкость и производительность. В качестве пакетов используются архивы pkg.tar.xz.
Особенности
- В Pacman совмещены функции работы с репозиториями и установка пакетов в систему, в отличие от систем Debian или Red Hat.
- В систему устанавливается новейшее ПО, благодаря модели обновлений «плавающий релиз» (rolling-release).
- В репозиториях Pacman располагаются заранее собранные пакеты, что значительно ускоряет процесс инсталляции программ.
- Поддержка работы с репозиторием AUR.
Компиляция программы производится только в том случае, если пакет взят из репозитория AUR (Arch User Repository). Он содержит более 54000 пакетов и активно поддерживается обычными пользователями и администраторами ArchLinux.
Перед тем, как попасть в официальный репозиторий дистрибутива, пакеты проходят тщательный отбор в репозиториях AUR. Репозиторий AUR, в отличие от официального репозитория, содержит скрипты PKGBUILD для самостоятельной сборки пакета в системе пользователя. Для компиляции используется скрипт MakePKG.
Оболочки Pacman
MakePKG
Скрипт, объединяющий работу компилятора, линкера и других вспомогательных приложений для сборки пакета из PKGBUILD. MakePKG установлен по умолчанию в системе с пакетным менеджером Pacman. Компонент входит в пакет base-devel и ABS (Система автоматической сборки пакетов).
Установка или обновление всех компонентов производиться командами:
Для установки программы и зависимостей согласно скрипту PKGBUILD, нужно перейти в каталог с файлом и выполнить команду:
Важно. Запуск скрипта с помощью MakePKG должен проводится без предоставления прав администратора. Это делается для защиты системы от выполнения вредоносных команд, находящихся в файле «pkgbuild».
Программа написана на языке GO и используется для поиска и установки пакета из репозитория AUR. Управления Yay производится посредством командной строки.
Для установки утилиты в дистрибутив с Pacman нужно задать следующие команды:
Утилита Yay упрощает весь алгоритм установки до ввода одной простой команды в консоль. Например, запрос к терминалу для инсталляции пакета из AUR строится следующим образом:
Примечание. Для установки пакетов через Yay не требуется предоставлять административный доступ утилите (добавлять «sudo» перед командой).
Pamac
Графический менеджер пакетов Pamac разработан специально для Manjaro, но может быть установлен в любой дистрибутив на основе Arch Linux. Программа сочетает лёгкость с большим функционалом. В качестве источников используются официальные репозитории дистрибутивов AUR и Snappy.
Установка программы Pamac выполняется командой:
Portage
Portage – система управления пакетами Gentoo или Calculate Linux. Установка программ для данного дистрибутива несколько отличается от остальных систем Linux. В Gentoo пакетный менеджер использует исключительно исходный код, а не готовые пакеты для установки программ.
Особенности
- Программы собираются под пользовательскую систему и железо, что обеспечивает стабильную работу ОС.
- По сравнению с распаковкой программ у других пакетных менеджеров, компиляция в Portage занимает много времени. Например, полный пакет LibreOffice компилируется от 4 часов и более.
- Пользователь может гибко настроить параметры компиляции и полностью управлять процессом сборки. Например, поставить операцию на паузу и продолжить позже.
- Для обновления установленного ПО используется система rolling-release, благодаря которой в репозитории дистрибутива поставляются пакеты последней версии, опубликованные разработчиком в течение 1-2 дней.
Установка программ из репозиториев чаще всего производится с помощью интерфейса Emerge. Для добавления дружелюбности системе, также можно использовать графическую оболочку Kuroo.
Интерфейсы Portage
Emerge
Консольный интерфейс Emerge предназначен для сборки и обновления программ и их зависимостей. Инструмент доступен «из коробки» и используется для работы с системой Portage по умолчанию.
Для компиляции программ используются ebuild-скрипты. Они содержатся в локальных репозиториях Gentoo (overlay), а сам исходный код программ скачивается с GitHub. Настроить список репозиториев можно самостоятельно, в файле «/etc/portage/repos.conf».
Kuroo
Графический интерфейс Kuroo по принципу работы почти не отличается от Emerge. Утилита написана на языке C++ с использованием фреймворка Qt.
Kuroo установлен по умолчанию в систему с рабочим окружением KDE. В случае отсутствия программы, инсталляция выполняется по данной инструкции.
Заключение
Каждый пакетный менеджер имеет собственные преимущества и недостатки, чаще всего не заметные без реального опыта использования. Выбирать систему и дистрибутив стоит, исходя из собственных потребностей и преимуществ каждого ПО.
- DPKG и RPM больше подойдут пользователям, ожидающим от системы лёгкой настройки и стабильной работы.
- Pacman оперативно обеспечивает систему новейшим ПО, благодаря системе rolling-release.
- Portage совмещает преимущества предыдущих пакетных менеджеров, но требует от пользователя внимательности и желания глубоко осваивать систему.
Чтобы даже самый требовательный дистрибутив Linux работал как швейцарские часы — выбирайте VDS от Eternalhost с оперативной техподдержкой 24/7 и бесплатной защитой от DDoS.
Источник