Date: Tue, 23 Jul 2013 06:44:24 +0000 (UTC) From: Taras Korenko <taras@FreeBSD.org> To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r42397 - head/ru_RU.KOI8-R/books/handbook/ports Message-ID: <201307230644.r6N6iO5F097419@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: taras Date: Tue Jul 23 06:44:24 2013 New Revision: 42397 URL: http://svnweb.freebsd.org/changeset/doc/42397 Log: + ru/handbook: add translation of "pkgng-intro" subsection. Modified: head/ru_RU.KOI8-R/books/handbook/ports/chapter.xml Modified: head/ru_RU.KOI8-R/books/handbook/ports/chapter.xml ============================================================================== --- head/ru_RU.KOI8-R/books/handbook/ports/chapter.xml Tue Jul 23 01:43:17 2013 (r42396) +++ head/ru_RU.KOI8-R/books/handbook/ports/chapter.xml Tue Jul 23 06:44:24 2013 (r42397) @@ -7,7 +7,6 @@ Original revision: r41718 --> -<!-- Translation of <sect1 id="pkgng-intro"/> is currently not available. --> <chapter id="ports"> <chapterinfo> @@ -606,11 +605,385 @@ docbook = </sect1> <sect1 id="pkgng-intro"> - <!-- XXX Not translated yet --> - <title>*Using <application>pkgng</application> for Binary Package - Management</title> + <title>Использование <application>pkgng</application> для управления + бинарными пакетами</title> - <para>Этот раздел не переведен.</para> + <para><application>pkgng</application> — это усовершенствованный + инструмент, пришедший на смену традиционным утилитам управления пакетами + &os;. Он обладает множеством функциональных возможностей, ускоряющих + и облегчающих работу с бинарными пакетами. Первый релиз + <application>pkgng</application> состоялся в августе 2012 года.</para> + + <para><application>pkgng</application> не является заменой для утилит + управления портами, таких как + <filename role="package">ports-mgmt/portmaster</filename> или + <filename role="package">ports-mgmt/portupgrade</filename>. В то время, + как <filename role="package">ports-mgmt/portmaster</filename> и + <filename role="package">ports-mgmt/portupgrade</filename> позволяют + устанавливать приложения сторонних разработчиков как из бинарных + пакетов, так и из + Коллекции Портов, утилита <application>pkgng</application> + дает возможность устанавливать приложения исключительно из бинарных + пакетов.</para> + + <sect2 id="pkgng-initial-setup"> + <title>Начало работы с <application>pkgng</application></title> + + <para>Во &os; 9.1 и более поздние включена программа + "самонастройки" ("bootstrap") + <application>pkgng</application>. Она скачивает и устанавливает + основную утилиту <application>pkgng</application>.</para> + + <para>Для запуска самонастройки, выполните:</para> + + <screen>&prompt.root; <userinput>/usr/sbin/pkg</userinput></screen> + + <para>Для более ранних версий &os; утилиту + <application>pkgng</application> необходимо установить из Коллекции + Портов или из бинарных пакетов.</para> + + <para>Для установки <application>pkgng</application> из порта, запустите + следующее:</para> + + <screen>&prompt.root; <userinput>cd /usr/ports/ports-mgmt/pkg</userinput> +&prompt.root; <userinput>make</userinput> +&prompt.root; <userinput>make install clean</userinput></screen> + + <para>Для установки из бинарного пакета, выполните:</para> + + <screen>&prompt.root; <userinput>pkg_add -r pkg</userinput></screen> + + <para>Действующие инсталляции &os; требуют преобразования базы данных + установленных пакетов утилиты <application>pkg_install</application> + к новому формату. Для выполнения конвертирования, запустите:</para> + + <screen>&prompt.root; <userinput>pkg2ng</userinput></screen> + + <para>Вышеприведенный шаг не требуется для новых инсталляций, в которых + не было установлено программ сторонних разработчиков.</para> + + <important> + <para>Этот шаг необратим. После перевода базы данных установленных + пакетов к формату <application>pkgng</application> утилитами + <application>pkg_install</application> более пользоваться + не следует.</para> + </important> + + <note> + <para>В процессе конвертирования базы данных установленных пакетов + могут возникать сообщения об ошибках. На данном этапе их можно + игнорировать, так как перечень программ сторонних разработчиков, + информация о которых не была преобразована, будет перечислен + по завершении работы <command>pkg2ng</command>. Над этим перечнем + придется поработать вручную.</para> + </note> + + <para>Чтобы убедиться, что Коллекция Портов &os; регистрирует + новые программы при помощи <application>pkgng</application>, а не + <application>pkg_install</application>, для версий &os;, предшествующих + 10.<replaceable>X</replaceable>, в файл + <filename>/etc/make.conf</filename> необходимо внести следующую + запись:</para> + + <programlisting>WITH_PKGNG= yes</programlisting> + </sect2> + + <sect2 id="pkgng-pkg-conf"> + <title>Настройка окружения <application>pkgng</application></title> + + <para>Система управления пакетами <application>pkgng</application> + при выполнении большинства операций обращается к пакетному + репозиторию. Адрес используемого по умолчанию репозитория указан + в <filename>/usr/local/etc/pkg.conf</filename> или в переменной + окружения <envar>PACKAGESITE</envar>. Последняя переопределяет + адрес, указанный в конфигурационном файле.</para> + + <para>Дополнительные опции конфигурации <application>pkgng</application> + описаны в pkg.conf(5).</para> + </sect2> + + <sect2 id="pkgng-basic-usage"> + <title>Основные операции <application>pkgng</application></title> + + <para>Информацию по работе с <application>pkgng</application> можно + найти на странице справочника pkg(8), или в выводе утилиты + <command>pkg</command>, запущенной без аргументов.</para> + + <para>Каждый аргумент команды <application>pkgng</application> описан на + соответствующей странице справочника. Например, чтобы ознакомиться + со страницей справочника для <command>pkg install</command>, + запустите любую из двух нижеследующих команд:</para> + + <screen>&prompt.root; <userinput>pkg help install</userinput></screen> + + <screen>&prompt.root; <userinput>man pkg-install</userinput></screen> + + <sect3 id="pkgng-pkg-info"> + <title>Получение информации об установленных пакетах при помощи + <application>pkgng</application></title> + + <para>Информация об установленных в системе пакетах может быть + отображена при помощи команды <command>pkg info</command>. Подобно + до &man.pkg.info.1;, в выводе перечисляются версии и описания всех + установленных пакетов.</para> + + <para>Если необходима информация о конкретном пакете, выполните:</para> + + <screen>&prompt.root; <userinput>pkg info <replaceable>packagename</replaceable></userinput></screen> + + <para>Например, для получения версии <application>pkgng</application>, + который установлен в системе, запустите:</para> + + <screen>&prompt.root; <userinput>pkg info pkg</userinput> +pkg-1.0.2 New generation package manager</screen> + </sect3> + + <sect3 id="pkgng-installing-deinstalling"> + <title>Установка и удаление пакетов при помощи + <application>pkgng</application></title> + + <para>В общем, бинарные пакеты устанавливаются при помощи:</para> + + <screen>&prompt.root; <userinput>pkg install <replaceable>packagename</replaceable></userinput></screen> + + <para>Команда <command>pkg install</command> обращается к пакетному + репозиторию, это упоминалось в <xref linkend="pkgng-pkg-conf"/>. + Команда pkg-add(8), напротив, не выполняет обращений к пакетному + репозиторию, а также игнорирует переменную + <envar>PACKAGESITE</envar>. Как следствие — зависимости + не отслеживаются, и необходимые зависимые компоненты не скачиваются + с удаленного источника. В этом разделе описана работа с + <command>pkg install</command>. За подробностями работы с + <command>pkg add</command> обратитесь к справочной странице по + pkg-add(8).</para> + + <para>Утилита <command>pkg install</command> может устанавливать + дополнительные бинарные пакеты. Например, для установки + <application>curl</application>, выполните:</para> + + <screen>&prompt.root; <userinput>pkg install curl</userinput> +Updating repository catalogue +Repository catalogue is up-to-date, no need to fetch fresh copy +The following packages will be installed: + + Installing ca_root_nss: 3.13.5 + Installing curl: 7.24.0 + +The installation will require 4 MB more space + +1 MB to be downloaded + +Proceed with installing packages [y/N]: <userinput>y</userinput> +ca_root_nss-3.13.5.txz 100% 255KB 255.1KB/s 255.1KB/s 00:00 +curl-7.24.0.txz 100% 1108KB 1.1MB/s 1.1MB/s 00:00 +Checking integrity... done +Installing ca_root_nss-3.13.5... done +Installing curl-7.24.0... done</screen> + + <para>Новый пакет, как и любые дополнительные пакеты, которые были + установлены как зависимости, перечисляются в списке установленных + пакетов:</para> + + <screen>&prompt.root; <userinput>pkg info</userinput> +ca_root_nss-3.13.5 The root certificate bundle from the Mozilla Project +curl-7.24.0 Non-interactive tool to get files from FTP, GOPHER, HTTP(S) servers +pkg-1.0.2 New generation package manager</screen> + + <para>Пакеты, в которых более нет необходимости, могут быть удалены + при помощи <command>pkg delete</command>. Например, если выяснится, + что <application>curl</application> не нужен:</para> + + <screen>&prompt.root; <userinput>pkg delete curl</userinput> +The following packages will be deleted: + + curl-7.24.0_1 + +The deletion will free 3 MB + +Proceed with deleting packages [y/N]: <userinput>y</userinput> +Deleting curl-7.24.0_1... done</screen> + </sect3> + + <sect3 id="pkgng-upgrading"> + <title>Обновление установленных пакетов при помощи + <application>pkgng</application></title> + + <para>Пакеты, версии которых устарели, можно найти при помощи команды + <command>pkg version</command>. Версии установленных пакетов + сравниваются с версиями приложений из локального дерева портов, + а в случае отсутствия портов pkg-version(8) обращается к удаленному + репозиторию пакетов.</para> + + <para>При помощи <application>pkgng</application> можно обновлять + пакеты до новых версий. Предположим, вышла новая версия + <application>curl</application>. Установленный пакет можно + обновить к новой версии, выполнив:</para> + + <screen>&prompt.root; <userinput>pkg upgrade</userinput> +Updating repository catalogue +repo.txz 100% 297KB 296.5KB/s 296.5KB/s 00:00 +The following packages will be upgraded: + + Upgrading curl: 7.24.0 -> 7.24.0_1 + +1 MB to be downloaded + +Proceed with upgrading packages [y/N]: <userinput>y</userinput> +curl-7.24.0_1.txz 100% 1108KB 1.1MB/s 1.1MB/s 00:00 +Checking integrity... done +Upgrading curl from 7.24.0 to 7.24.0_1... done</screen> + </sect3> + + <sect3 id="pkgng-auditing"> + <title>Аудит безопасности пакетов при помощи + <application>pkgng</application></title> + + <para>Изредка в приложениях из Коллекции Портов обнаруживаются + уязвимости. В <application>pkgng</application> встроена возможность + выполнять аудит безопасности, действующая подобно приложению из + <filename role="package">ports-mgmt/portaudit</filename>. Для + выполнения аудита установленных в систему программ, выполните:</para> + + <screen>&prompt.root; <userinput>pkg audit -F</userinput></screen> + </sect3> + </sect2> + + <sect2 id="pkgng-advanced-usage"> + <title>Сложные вопросы работы с <application>pkgng</application></title> + + <sect3 id="pkgng-autoremove"> + <title>Автоматическое удаление неиспользуемых зависимостей при + помощи <application>pkgng</application></title> + + <para>После удаления пакета в системе могут остаться неиспользуемые + зависимости, наподобие <filename + role="package">security/ca_root_nss</filename> из примера выше. + Такие пакеты остаются установленными, несмотря на то, что они + более не требуются другим пакетам. Определить и удалить + неиспользуемые пакеты, которые были установлены как зависимости, + можно при помощи:</para> + + <screen>&prompt.root; <userinput>pkg autoremove</userinput> +Packages to be autoremoved: + ca_root_nss-3.13.5 + +The autoremoval will free 723 kB + +Proceed with autoremoval of packages [y/N]: <userinput>y</userinput> +Deinstalling ca_root_nss-3.13.5... done</screen> + </sect3> + + <sect3 id="pkgng-backup"> + <title>Резервное копирование базы данных установленных пакетов + <application>pkgng</application></title> + + <para>В отличие от традиционной системы управления пакетами, + <application>pkgng</application> располагает своим собственным + механизмом резервного копирования базы данных. Для ручного создания + резервной копии базы данных установленных пакетов, выполните:</para> + + <screen>&prompt.root; <userinput>pkg backup -d <replaceable>pkgng.db</replaceable></userinput></screen> + + <note> + <para>Замените имя файла <replaceable>pkgng.db</replaceable> на + более подходящее.</para> + </note> + + <para>В дополнение, <application>pkgng</application> содержит скрипт + &man.periodic.8;, позволяющий выполнять ежедневное автоматическое + копирование базы данных установленных пакетов. + Для активации данной возможности задайте переменной + <literal>daily_backup_pkgng_enable</literal> значение + <literal>YES</literal> в файле &man.periodic.conf.5;.</para> + + <tip> + <para>Для предотвращения периодического запуска аналогичного скрипта + системы <application>pkg_install</application>, также выполняющего + резервное копирование базы данных установленных пакетов, задайте + переменной <literal>daily_backup_pkgdb_enable</literal> значение + <literal>NO</literal> в файле &man.periodic.conf.5;.</para> + </tip> + + <para>Для восстановления содержимого базы данных установленных пакетов + из резервной копии, выполните:</para> + + <screen>&prompt.root; <userinput>pkg backup -r <replaceable>/path/to/pkgng.db</replaceable></userinput></screen> + </sect3> + + <sect3 id="pkgng-clean"> + <title>Удаление копий устаревших пакетов в системе + <application>pkgng</application></title> + + <para>По умолчанию, <application>pkgng</application> сохраняет копии + установленных бинарных пакетов в каталог, указанный переменной + <envar>PKG_CACHEDIR</envar> в pkg.conf(5). При обновлении пакетов + командой <command>pkg upgrade</command> старые версии обновленных + пакетов автоматически не удаляются.</para> + + <para>Для удаления устаревших версий бинарных пакетов из кеш-каталога, + выполните:</para> + + <screen>&prompt.root; <userinput>pkg clean</userinput></screen> + </sect3> + + <sect3 id="pkgng-set"> + <title>Изменение метаданных пакетов + <application>pkgng</application></title> + + <para>Со временем программы из Коллекции Портов могут претерпевать + изменения старшего (major) номера версии. В отличие от + <application>pkg_install</application>, + <application>pkgng</application> располагает встроенной командой для + обновления информации о происхождении (origin) пакета. Например, + изначально порт <filename role="package">lang/php5</filename> + был версии <literal>5.3</literal>. Позже этот порт был переименован + в <filename role="package">lang/php53</filename>, а под именем + <filename role="package">lang/php5</filename> был создан порт версии + <literal>5.4</literal>. Утилитам системы + <application>pkg_install</application> для обновления информации + о происхождении (origin) пакета в собственной базе данных + установленных пакетов потребовалась бы помощь дополнительного + программного обеспечения, такого как + <filename role="package">ports-mgmt/portmaster</filename>.</para> + + <para>В отличие от + <filename role="package">ports-mgmt/portmaster</filename> и + <filename role="package">ports-mgmt/portupgrade</filename> для + портов, порядок перечисления новой и старой версий отличаются. + Для <application>pkgng</application> необходим следующий + порядок:</para> + + <screen>&prompt.root; <userinput>pkg set -o <replaceable>category/oldport</replaceable>:<replaceable>category/newport</replaceable></userinput></screen> + + <para>Например, в вышеприведенном случае для замены информации + о происхождении пакета, выполните:</para> + + <screen>&prompt.root; <userinput>pkg set -o lang/php5:lang/php53</userinput></screen> + + <para>Еще один пример: для изменения информации о происхождении + пакета с <filename role="package">lang/ruby18</filename> на + <filename role="package">lang/ruby19</filename>, выполните:</para> + + <screen>&prompt.root; <userinput>pkg set -o lang/ruby18:lang/ruby19</userinput></screen> + + <para>И последний пример: для замены информации о происхождении пакета + разделяемой библиотеки <filename>libglut</filename> с + <filename role="package">graphics/libglut</filename> на + <filename role="package">graphics/freeglut</filename>, + запустите:</para> + + <screen>&prompt.root; <userinput>pkg set -o graphics/libglut:graphics/freeglut</userinput></screen> + + <note> + <para>Выполняя замену информации о происхождении пакетов, в + большинстве случаев также требуется переустановить пакеты, которые + зависят от изменившегося пакета. Для принудительной переустановки + зависящих пакетов, выполните:</para> + + <screen>&prompt.root; <userinput>pkg install -Rf <replaceable>graphics/freeglut</replaceable></userinput></screen> + </note> + </sect3> + </sect2> </sect1> <sect1 id="ports-using">
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201307230644.r6N6iO5F097419>