Entropy (Система Управления Пакетами)

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 22:44, 11 апреля 2019.
Entropy
Entropy.png
Разработчики: Sabayon Linux
Состояние разработки: Активное
Написана на: C
Операционная система: Sabayon Linux
Платформа: X86, X86-64, ARM (Advanced RISC Machine)
Тип ПО: Система управления пакетами
Лицензия: GNU GPL (General Public License)
Веб-сайт wiki.sabayon.org
Entropy — система управления бинарными пакетами в Sabayon Linux. Представляет альтернативу portage и может устанавливаться совместно с ней, совместимость с которой обеспечивается путём запуска специальных сценариев. Для этой системы существуют текстовый клиент — Equo и графический — Sulfur. Также, это название целостной инфраструктуры, состоящей из текстового клиента Equo, графического клиента Sulfur, серверных приложений Reagent и Activator.

Особенности

Основные особенности:

  • Совместимость с Gentoo Linux
  • Заимствование всех плюсов из Portage, Yum и APT
  • Высокая скорость работы
  • Используется SQLite (в комплекте)
  • Поддержка Powerful Packages: набор пакетов в одном архиве (Smart Packages)
  • Поддержка самосодержащих приложений (Smart Applications)
  • Обратносовместимые пакеты: они используются в Gentoo Linux после быстрой конверсии
  • Поддержка работы с несколькими ветками (каждая ветвь является версией релиза)
  • Предусмотрено повреждение базы данных: содержит инструменты для восстановления и поиска неисправностей в БД
  • Легкость использования в условиях работы с сетью
  • Multiple repositories aware: everyone can create one
  • Гибкий, интуитивно понятный программный интерфейс
  • Встроенный искусственный интеллект

Установка Entropy

Есть 2 способа установки Entropy, используя Sabayon Linux portage overlay, или же при помощи самой Equo. Это становится возможно во всех версиях Sabayon Linux старше чем 3.5 включительно, в которых Entropy предустановлена по умолчанию. Установка Entropy в Gentoo Linux или любой другой дистрибутив официально не поддерживается, но остается возможной.

Обновление Entropy при помощи Equo

Начиная с Sabayon Linux 3.5, Entropy предустановлена по умолчанию. Для того чтобы обновить ее до более актуальной (обычно лучшей) версии откройте терминал (например konsole) и вводите в него следующие команды

  1. Получите права супер пользователя root
    # su 
    Введите пароль для пользователя root
  2. Обновите базу данных Equo
    # equo update  
    Эта команда обновит базу данных до последней доступной версии
  3. Загрузите и установите последнюю версию Entropy
    # equo install entropy sulfur  
  4. Проверьте или все работает
    # equo --version  
    Если выводом будет версия equo, как например:
    Equo: v0.92.3
    На этом установка Entropy закончена.

Загруженные Entropy пакеты

Загруженные пакеты сохраняются в директории /var/lib/entropy/packages/. Например, для архитектуры amd64 при использовании ветки 5 пакеты будут лежать в /var/lib/entropy/packages/amd64/5. При необходимости можно выкачать недостающие пакеты со страницы поиска пакетов на Sabayon web-портале и поместить в соответствующую директорию. После этого можно будет установить их при помощи Entropy. Это может быть полезно, если пакеты, необходимые для настройки интернета, отсутствуют на установочном диске.

Для удаления ненужных после установки пакетов можете использовать вот такую команду:
# equo cleanup

Equo

Рисунок 1 – Equo в процессе работы

Equo это консольный клиент Entropy (рис. 1). Он предназначен для установки, удаления и обновления пакетов, разрешения зависимостей, обработки обратных зависимостей а также операций с конфигурационными файлами, и это только начало.

Использование

Существует ряд возможностей, которые вы получаете используя Equo, несколько основных команд для их реализации приведены ниже

  1. Поиск пакетов осуществляется командой search:
     # equo search <фрагмент_имени_пакета>
  2. Для установки пакета используйте install</install>, аргумент <code>--ask опционален, но настоятельно рекомендован.
    # equo install <имя_пакета> --ask 
  3. Для удаления пакетов используйте remove, как показано ниже:
    # equo remove <имя_пакета>
  4. Для обновления ВСЕХ пакетов до последних версий используйте такую команду:
    # equo world --ask 

Репозитории пакетов

Репозитории - это хранилище, из которого пакеты программного обеспечения могут быть извлечены и установлены на компьютере. Репозитории Sabayon содержат более 10 000 различных пакетов для каждой архитектуры (x86 / x86_64).

Обновление списка пакетов

Для обновления списков пакетов во всех ваших репозиториях (список которых находится в /etc/entropy/repositories.conf) запустите (под root)
# equo update 

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

Доступные зеркала репозиториев

Основной репозиторий:
# Sabayon Linux Official Repository 

Sabayon предлагает 4 официальных репозитория, но по умолчанию вы используете только один из них.

  • Sabayon-hell
    Этот репозиторий используется системой сборки "Matter". Команда репозитория Entropy тщательно составила списки пакетов, которые всегда могут быть обновлены после выхода новой версии в Portage. Система сборки ничего не делает, затем обрабатывает этот список и добавляет сюда пакеты. Так как они НЕ проверяются людьми, никогда не возможно узнать, действительно ли работа, которую выполняла система сборки, была такой, какой хотели ее видеть разработчики. Каждый понедельник команда Entropy оценивает то, что сделал Matter, и переносит эти пакеты в репозиторий sabayon-limbo (testing).
  • Sabayon-limbo
    Это репозиторий для тестирования. Все пакеты, которые скомпилированы и упакованы, помещаются в этот репозиторий. Работа над этим хранилищем продолжается 24/7. Хотя все пакеты, которые здесь находятся, тестируются на этапе компиляции, возможно, у них возникают проблемы при их запуске. Если вы включите этот репозиторий, имейте в виду, что все может сломаться, вы получите больше обновлений, потому что пакеты перекомпилируются и при необходимости переупаковываются.
    Обратите внимание, что sabayon-limbo является оверлейным репо, вы ДОЛЖНЫ оставить репозиторий sabayonlinux.org включенным! В противном случае у вас будут отсутствующие зависимости.
  • sabayonlinux.org
    Этот репозиторий чаще всего называют «основным». Каждый понедельник большинство, если не все, пакеты из sabayon-limbo (тестирование) перемещаются в этот.
  • sabayon-weekly
    По умолчанию это единственный включенный репозиторий. Это копия хранилища sabayonlinux.org (основной). Каждую субботу он обновляется. Этот репозиторий был введен для того, чтобы встроить задержку между моментом, когда пакеты перемещаются из тестирования и становятся доступными для всех пользователей. Это дает упаковщикам дополнительное время для тестирования пакетов в главном хранилище и исправления проблем, если таковые имеются, до создания копии.

Ветвь тестирования Limbo

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

Высокая пропускная способность - некоторые пакеты обновляются почти каждый день, а объем обновлений может легко достигать нескольких сотен МБ каждую неделю.

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

Маскировка и размаскировка пакетов в Entropy

Файлы для управления маскировкой и размаскировкой вы можете найти в /etc/entropy/packages/ Используйте package.mask для того чтобы замасикровать пакеты (см. package.mask.example для дополнительной информации). Используйте package.unmask для того чтобы размаскировать пакеты (см. package.unmask.example для дополнительной информации).

Добавление дополнительных пакетов вручную

Вы можете скачать пакты в директорию пакетов entropy чтобы воспользоваться ими. Искать и качать пакеты можно со специальной страницы на сайте Sabayon Linux Package Repository


Переключение веток

Например мы используем ветку 4.2 и собираемся перейти на 5. Все что нам нужно сделать:
# equo hop 5
Затем нужно обновить старый список пакетов на новый
# equo update
Всегда первым делом обновляйте менеджер пакетов
# equo install entropy equo sulfur
Теперь вы готовы начать обновлени
# equo upgrade --ask

Там может быть много пакетов и это займет немало времени, подумайте чем заняться в освободившееся время. Также посмотрите http://forum.sabayonlinux.org/viewtopic.php?f=54&t=16399 чтобы знать, что вам нужно проверить.

После чего обновите конфигурационные файлы
# equo conf update

Перед перезагрузкой

 -- запустите eselect kernel list и убедитесь что выбрана последняя версия ядра.
 -- при помощи gcc-config -l проверьте установлена ли последняя версия gcc
 -- также проверьте binutils-config -l
 -- проверьте правильно ли установлен видео-драйвер. eselect opengl list
 -- проверьте /boot/grub/grub.conf Обновлен ли он?
 -- eselect python list Там тоже должна быть последняя версия.

Никогда не возвращайтесь с новой ветки на старую


Список литературы

Интеграция системы управления бинарными пакетами Entropy и оверлея Sabayon в Gentoo Linux

Entropy - Sabayon Wiki

Системы управления пакетами в UNIX-подобных ОС (apt, rpm, pacman и др.)