Pkgng - замена штатного пакетного менеджера

Опубликовано admin -
Обратил внимание, что при установке софта на FreeBSD, в первую очередь отображается предупреждение, а потом уже только начинается установка.
Текст предупреждения следующий:
 
/!\ WARNING /!\
pkg_install EOL is scheduled for 2014-09-01. Please consider migrating to pkgng
If you do not want to see this message again set NO_WARNING_PKG_INSTALL_EOL=yes in your make.conf
 
 
Соответственно решил поинтересоваться этим вопросом...
Итак, пакетный менеджер, используемый во FreeBSD вплоть до FreeBSD 10.0, был написан в начале 90'ых на СИ Джорданом Хаббардом
и на то время был революционным шагом - легкий, быстрый, надежный и простой. Однако, современные условия выдвигают новые требования,
что и послужило толчком для создания нового пакетного менеджера, дабы прекратить споры и разногласия среди разработчиков и сообщества FreeBSD,
которые ведутся уже довольно давно.
Pkgng — это усовершенствованный инструмент, пришедший на смену традиционным утилитам управления пакетами FreeBSD. Он обладает множеством функциональных возможностей, ускоряющих и облегчающих работу с бинарными пакетами. Первый релиз pkgng состоялся в августе 2012 года. Pkgng не является заменой для утилит управления портами, таких как ports-mgmt/portmaster или ports-mgmt/portupgrade. В то время, как ports-mgmt/portmaster и ports-mgmt/portupgrade позволяют устанавливать приложения сторонних разработчиков как из бинарных пакетов, так и из коллекции портов, утилита pkgng дает возможность устанавливать приложения исключительно из бинарных пакетов.
Начиная с FreeBSD 9.1, в систему включена программа "самонастройки" ("bootstrap") pkgng. Она скачивает и устанавливает основную утилиту pkgng.
Начиная с FreeBSD 10.0 используется уже новый пакетный менеджер pkgng (Next Generation Package Management Tool).
Для более ранних версий FreeBSD утилиту pkgng необходимо установить из коллекции портов или из бинарных пакетов.
 
Конечно, можно просто отключить уведомление, добавив опцию NO_WARNING_PKG_INSTALL_EOL=yes в make.conf и использовать старый пакетный менеджер.
Однако более правильно будет обновиться.
 
Рассмотрим оба варианта - установка из системы портов и использование программы самонастройки.
 
Установка pkgng из системы портов
Система, на которой будем выполнять обновление пакетного менеджера:
# uname -srm
FreeBSD 9.0-RELEASE amd64
Выполним установку из системы портов:
# cd /usr/ports/ports-mgmt/pkg && make install clean && rehash
По завершению уставновки будет выведено еще одно предупреждение:
If you are upgrading from the old package format, first run:
  # pkg2ng
Тоесть, необходимо выполнить преобразование базы данных установленых пакетов утилиты pkg_install к новому формату. Чтобы выполнить конвертирование, выполним комманду pkg2ng:
# pkg2ng
 
ВАЖНО: Этот шаг необратим. После перевода базы данных установленных пакетов к формату pkgng утилитами pkg_install более пользоваться не следует.
 
Примечание: В процессе конвертирования базы данных установленных пакетов могут возникать сообщения об ошибках.
На данном этапе их можно игнорировать, так как перечень программ сторонних разработчиков, информация о которых не была преобразована,
будет перечислен по завершении работы pkg2ng. Над этим перечнем придется поработать вручную.
По завершению конвертации, указываем системе, что необходимо в работе использовать новый пакетный менеджер:
# echo 'WITH_PKGNG=yes' >> /etc/make.conf

Ну и последний штрих... Для предотвращения периодического ежедневного запуска скрипта автоматического копирования базы данных установленных пакетов pkg_install, необходимо добавить в periodic.conf переменную daily_backup_pkgdb_enable с значением NO:
# echo 'daily_backup_pkgdb_enable="NO"' >> /etc/periodic.conf
 
Использование программы самонастройки
Система, на которой будем выполнять обновление пакетного менеджера:
# uname -srm
FreeBSD 9.1-RELEASE-p5 amd64
Для запуска самонастройки необходимо выполнить комманду pkg:
# /usr/sbin/pkg
The package management tool is not yet installed on your system.
Do you want to fetch and install it now? [y/N]: у
Укажем системе, что необходимо в работе использовать новый пакетный менеджер:
# echo 'WITH_PKGNG=yes' >> /etc/make.conf
Выполним изменение pkg.conf, воспользовавшись предложенным примером:
# cp /usr/local/etc/pkg.conf.sample /usr/local/etc/pkg.conf
 
Для предотвращения периодического ежедневного запуска скрипта автоматического копирования базы данных установленных пакетов pkg_install,
необходимо добавить в periodic.conf переменную daily_backup_pkgdb_enable с значением NO:
# echo 'daily_backup_pkgdb_enable="NO"' >> /etc/periodic.conf
 
(c)h ttp://muff.kiev.ua/content/pkgng-zamena-shtatnogo-paketnogo-menedzhera
Теги

Добавить комментарий

Ограниченный HTML

  • Допустимые HTML-теги: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • Строки и абзацы переносятся автоматически.
  • Адреса веб-страниц и email-адреса преобразовываются в ссылки автоматически.
CAPTCHA
10 + 2 =
Решите эту простую математическую задачу и введите результат. Например, для 1+3, введите 4.
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.