Libzypp

Материал из openSUSE.

Википедия Эта статья нуждается в доработке.

Если вы можете помочь, сделайте это в соответствии с OpenSUSE Style Guide.
Замечания о том, что нужно улучшить, могут быть на странице обсуждения статьи.

Содержание

Управление пакетами и разрешение пакетных зависимостей

SUSE Linux использует формат пакетов rpm. Базовым инструментом для этого является программа RPM (RPM Package manager), которая проводит установку, удаление и верификацию пакетов.

RPM проверяет, удовлетворены ли пакетные зависимости, т.е. если пакет X требует наличия пакета libY, и вы пытаетесь установить пакет X не имея установленного пакета libY, RPM откажется устанавливать X и выдаст предупреждение, что пакет libY отсутствует. У RPM нет возможности автоматически установить пакет, который содержит libY.

Имеется ряд программ, использующие rpm (и другие форматы пакетов) и имеющие удобный интерфейс, для разрешения следующих моментов:

  • Установка пакета и автоматически всех его зависимостей
  • Загрузка этих пакетов с удаленного сервера или локального источника
  • Удаление пакетов
  • Обновление пакетов на новейшие версии

SUSE Linux 10.0 предлагает следующие программы для этого:

  • YOU - YaST online update (только обновление)
  • yast package manager ("yast sw_single") для установки и удаления (но не обновления)
  • apt-rpm как альтернатива для yast и YOU

Вместе с SUSE Linux 10.1, SUSE интегрировал новый менеджер пакетов, названный "libzypp".

libzypp - это интеграция менеджера пакетов SUSE - yast2 и менеджера пакетов Ximian - libredcarpet. В Novell мы используем два решения - Red Carpet и менеджер пакетов YaST - и решено объединить их для лучшего подхода.

Преимущества для SUSE Linux следующие:

  • Лучшее разрешение зависимостей, чем раньше
  • Больше информации о том, почему пакет установлен, или почему не найдено решение
  • Лучшая интеграция всего этого в то, что мы добавили за годы в наш менеджер пакетов
  • Интерфейс командной строки ("rug")
  • Простое управление пакетами *и* заплатками
  • Разрешение зависимостей для обновления пакета
  • Лучший путь управления выборами (теперь мы их называем "patterns")
  • Удаленное администирование (ещё пока не в SUSE Linux 10.1)
  • Дополнительные репозитории во время инсталяции
  • Большая гибкость в управлении различными репозиториями, т.е. возможность иметь дополнительные образцы для каждого репозитория
  • Дополнительные зависимости, основанные на языке (для шрифтов, переводов и т.п.) или «железе» (для драйверов)

Каталоги

Каталог – это имя используемое для внешних репозиториев. Поддерживается много типов каталогов:

Эти каталоги могут быть связаны с локальными файлами или через сеть с внешними протоколами типа ftp, http. Смотри Media Access URLs.

Новая библиотека используется yast packagemanager ("yast sw_single") а также zen suite of programs.

Создание каталогов

Программы Zen

Этим программам требуется запущенный zmd system daemon. Zmd позволяет локальное и удаленное администратирование системы и использует библиотеку libzypp.

Следующие программы взаимодействуют с zmd:

  • Rug: Клиент командной строки
  • Zen-updater: Простая программа обновления пакетов
  • Zen-remover: Инструмент для удаления пакетов
  • Zen-installer: Инструмент для установки пакетов

Программы, заменённые новым менеджером пакетов

Замены существующих программ (как в SUSE Linux 10.0) следующие:

  • susewatcher был заменен на zen-updater
  • YOU (Yast Online Update) был адаптирован к работе с libzypp
  • automatic update (yast2 online_update в cron) было заменено на rug

Примеры

Развитие

Публикации

Получено с http://ru.opensuse.org/Libzypp