Date: Mon, 15 Apr 2013 13:40:06 +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: r41430 - in head/ru_RU.KOI8-R: articles/geom-class articles/hubs articles/pr-guidelines books/handbook/ports Message-ID: <201304151340.r3FDe6Ki033528@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: taras Date: Mon Apr 15 13:40:06 2013 New Revision: 41430 URL: http://svnweb.freebsd.org/changeset/doc/41430 Log: MFen: + articles/geom-class/article.xml r40540 --> r41109 + articles/hubs/article.xml r39701 --> r41155 + articles/pr-guidelines/article.xml r39632 --> r41127 + books/handbook/ports/chapter.xml r24463 --> r41119 Modified: head/ru_RU.KOI8-R/articles/geom-class/article.xml head/ru_RU.KOI8-R/articles/hubs/article.xml head/ru_RU.KOI8-R/articles/pr-guidelines/article.xml head/ru_RU.KOI8-R/books/handbook/ports/chapter.xml Modified: head/ru_RU.KOI8-R/articles/geom-class/article.xml ============================================================================== --- head/ru_RU.KOI8-R/articles/geom-class/article.xml Mon Apr 15 13:38:07 2013 (r41429) +++ head/ru_RU.KOI8-R/articles/geom-class/article.xml Mon Apr 15 13:40:06 2013 (r41430) @@ -9,7 +9,7 @@ The FreeBSD Russian Documentation Project $FreeBSD$ $FreeBSDru$ - Original revision: r40540 + Original revision: r41109 --> <!-- Перевод: Тарас Коренко --> @@ -32,7 +32,6 @@ <legalnotice id="trademarks" role="trademarks"> &tm-attrib.freebsd; - &tm-attrib.cvsup; &tm-attrib.intel; &tm-attrib.general; </legalnotice> Modified: head/ru_RU.KOI8-R/articles/hubs/article.xml ============================================================================== --- head/ru_RU.KOI8-R/articles/hubs/article.xml Mon Apr 15 13:38:07 2013 (r41429) +++ head/ru_RU.KOI8-R/articles/hubs/article.xml Mon Apr 15 13:40:06 2013 (r41430) @@ -10,7 +10,7 @@ $FreeBSDru: frdp/doc/ru_RU.KOI8-R/articles/hubs/article.xml,v 1.21 2007/05/15 18:39:34 gad Exp $ - Original revision: r39701 + Original revision: r41155 --> <article lang="ru"> @@ -884,12 +884,6 @@ doc-all</programlisting> <procedure> <step> - <para>Посмотрите на список доступных зеркал в вашей стране. - Вам может помочь <ulink url="http://mirrorlist.FreeBSD.org/">База - данных зеркал FreeBSD</ulink>.</para> - </step> - - <step> <para>Выберите те из них, с которыми вам работать быстрее всего (меньшее число промежуточных узлов и время отклика), и которые предоставляют нужные вам сервисы (такие как Modified: head/ru_RU.KOI8-R/articles/pr-guidelines/article.xml ============================================================================== --- head/ru_RU.KOI8-R/articles/pr-guidelines/article.xml Mon Apr 15 13:38:07 2013 (r41429) +++ head/ru_RU.KOI8-R/articles/pr-guidelines/article.xml Mon Apr 15 13:40:06 2013 (r41430) @@ -12,7 +12,7 @@ $FreeBSDru: frdp/doc/ru_RU.KOI8-R/articles/pr-guidelines/article.xml,v 1.4 2005/12/16 20:08:02 gad Exp $ - Original revision: r39632 + Original revision: r41127 --> <!-- @@ -927,7 +927,7 @@ <para>При заполнении шаблона &man.send-pr.1; посылающий установил значение поля Confidential в <literal>yes</literal>. (Так как мы позволяем каждому зеркалировать GNATS при помощи - <application>cvsup</application>, информация о PR-ах является + <application>rsync</application>, информация о PR-ах является общедоступной. Сообщения, касающиеся безопасности, не следует слать через GNATS, их необходимо отправлять на адрес команды офицеров безопасности).</para> Modified: head/ru_RU.KOI8-R/books/handbook/ports/chapter.xml ============================================================================== --- head/ru_RU.KOI8-R/books/handbook/ports/chapter.xml Mon Apr 15 13:38:07 2013 (r41429) +++ head/ru_RU.KOI8-R/books/handbook/ports/chapter.xml Mon Apr 15 13:40:06 2013 (r41430) @@ -5,7 +5,7 @@ $FreeBSD$ $FreeBSDru: frdp/doc/ru_RU.KOI8-R/books/handbook/ports/chapter.xml,v 1.67 2005/05/08 07:21:29 andy Exp $ - Original revision: r24463 + Original revision: r41119 --> <chapter id="ports"> @@ -27,14 +27,14 @@ <indexterm><primary>пакеты</primary></indexterm> - <para>Вместе с FreeBSD в составе базового комплекта системы поставляется + <para>Вместе с &os; в составе базового комплекта системы поставляется богатый набор системный утилит. Однако для выполнения какой-то реальной работы очень скоро возникает необходимость в установке - дополнительных приложений сторонних разработчиков. FreeBSD даёт две + дополнительных приложений сторонних разработчиков. &os; дает две взаимодополняющих технологии для установки программного обеспечения - сторонних разработчиков в вашу систему: Коллекция Портов FreeBSD и - бинарные пакеты с программным обеспечением. Любая из этих систем может - быть использована для установки самых последних версий ваших любимых + сторонних разработчиков: Коллекция Портов &os; (для установки из + исходных кодов) и пакеты (для установки из откомпилированных двоичных + файлов). Любая из этих систем может быть использована для установки приложений с локальных носителей или прямо из сети.</para> <para>После чтения этой главы вы будете знать:</para> @@ -46,7 +46,8 @@ </listitem> <listitem> - <para>Как собирать программное обеспечение сторонних разработчиков при + <para>Как собирать из исходных кодов программное обеспечение + сторонних разработчиков при помощи Коллекции Портов.</para> </listitem> @@ -60,7 +61,11 @@ </listitem> <listitem> - <para>Как обновить ваши порты.</para> + <para>Как найти необходимое программное обеспечение.</para> + </listitem> + + <listitem> + <para>Как обновить установленные приложения.</para> </listitem> </itemizedlist> </sect1> @@ -68,9 +73,8 @@ <sect1 id="ports-overview"> <title>Обзор установки программного обеспечения</title> - <para>Если вы использовали &unix;-системы ранее, то знаете, что - стандартная процедура установки программного обеспечения сторонних - разработчиков выглядит примерно так:</para> + <para>Стандартная процедура установки программного обеспечения сторонних + разработчиков на &unix;-систему выглядит примерно так:</para> <procedure> <step> @@ -85,9 +89,9 @@ </step> <step> - <para>Поиск документации (возможно, подойдут файлы + <para>Поиск документации в файлах <filename>INSTALL</filename>, <filename>README</filename> - или несколько файлов из подкаталога <filename>doc/</filename>) и её + или в каком-то файле из подкаталога <filename>doc/</filename> и её чтение в поиске описания установки программного обеспечения.</para> </step> @@ -103,76 +107,58 @@ </step> </procedure> - <para>И это только всё проходит нормально. Если вы устанавливаете - программный пакет, который был специально перенесён на FreeBSD, то вам + <para>Если вы устанавливаете + программный пакет, который не был специально перенесён на &os;, то вам может даже потребоваться редактировать код для того, чтобы он нормально заработал.</para> - <para>Если вы хотите, то можете продолжать устанавливать программное - обеспечение во FreeBSD <quote>традиционным</quote> способом. Однако - FreeBSD предоставляет две технологии, которые могут сохранить вам много - усилий: пакеты и порты. На момент написания таким образом были - доступны более &os.numports; сторонних приложений.</para> - - <para>Для любого конкретно взятого приложения пакет FreeBSD - является одним файлом, который вы должны загрузить. Пакет - содержит уже откомпилированные копии всех команд приложения, а также - все конфигурационные файлы и документацию. Загруженным файлом пакета - можно управлять такими командами FreeBSD, как - &man.pkg.add.1; &man.pkg.delete.1;, &man.pkg.info.1; и так далее. - Установка нового приложения может выполняться единственной - командой.</para> - - <para>Порт FreeBSD для приложения является набором файлов, предназначенных - для автоматизации процесса компиляции приложения из исходного - кода.</para> - - <para>Вспомните, что обычно вы должны выполнить некоторое количество - шагов, если компилируете программу самостоятельно (загрузка, распаковка, - изменение кода, компиляция, установка). Файлы, составляющие порт, - содержат всю информацию, необходимую для того, чтобы система сделала это - за вас. Вы задаёте пару простых команд, и исходный код приложения - автоматически загружается, распаковывается, модифицируется, компилируется - и устанавливается.</para> - - <para>Действительно, система портов может также использоваться для - генерации пакетов, которые позже могут управляться командой - <literal>pkg_add</literal> и другими командами управления пакетами, о - которых скоро будет рассказано.</para> + <para>&os; предоставляет две технологии, которые выполняют эту работу + за вас. На момент написания таким образом доступно более &os.numports; + сторонних приложений.</para> + + <para>Каждый пакет содержит уже откомпилированные копии всех команд + приложения, а также все конфигурационные файлы и документацию. С файлом + пакета можно работать командами управления пакетами &os;, такими как + &man.pkg.add.1;, &man.pkg.delete.1;, &man.pkg.info.1; и так далее.</para> + + <para>Каждый порт &os; является набором файлов, предназначенных для + автоматизации процесса компиляции приложения из исходного кода. Файлы, + из которых состоит порт, содержат всю + необходимую информацию для выполнения автоматической загрузки, + извлечения, применения патчей, компиляции и установки приложения.</para> + + <para>Также система портов может использоваться для генерации пакетов, + которые в последствии становятся объектом работы для команд управления + пакетами &os;.</para> <para>Как пакеты, так и порты принимают во внимание - <emphasis>зависимости</emphasis>. Предположим, что вы хотите установить - приложение, которое зависит от некоторой установленной библиотеки. И - приложение, и библиотека доступны во FreeBSD в виде портов и пакетов. - Если вы используете команду <command>pkg_add</command> или систему - портов для добавления приложений, то в обоих случаях будет обнаружено, - что библиотека не была установлена, и сначала будет автоматически + <emphasis>зависимости</emphasis>. Если при инсталляции приложения при + помощи &man.pkg.add.1; или Коллекции Портов будет обнаружено, что + необходимая библиотека не была установлена, то первым делом будет выполнена установка библиотеки.</para> - <para>Видя, что обе технологии весьма похожи, вы можете удивиться, почему - во FreeBSD используются обе. И пакеты, и порты имеют свои - преимущества, так что выбор используемой вами системы зависит от ваших - собственных предпочтений.</para> + <para>Несмотря на то, что обе технологии весьма похожи, и пакеты, и порты + имеют свои преимущества. Выберите технологию, которая соответствует + вашим требованиям к установке конкретного приложения.</para> <itemizedlist> <title>Преимущества пакетов</title> <listitem> - <para>Сжатый tar-архив обычно меньше, чем сжатый tar-архив, содержащий - исходный код приложения.</para> + <para>Сжатый tar-архив пакета обычно меньше, чем сжатый tar-архив, + содержащий исходный код приложения.</para> </listitem> <listitem> - <para>Пакеты не требуют никакой дополнительной компиляции. Для таких - больших приложений, как <application>Mozilla</application>, + <para>Пакеты не требуют времени на компиляцию. Для больших приложений, + таких как <application>Mozilla</application>, <application>KDE</application> или <application>GNOME</application>, - это может быть важно, в частности, если вы работаете на медленной - системе.</para> + это может быть важно, особенно при работе на медленной системе.</para> </listitem> <listitem> <para>Пакеты не требуют понимания процесса компиляции - программного обеспечения во FreeBSD.</para> + программного обеспечения во &os;.</para> </listitem> </itemizedlist> @@ -182,53 +168,44 @@ <listitem> <para>Пакеты обычно компилируются с консервативными параметрами, потому что они должны работать на максимальном количестве систем. - При установке из порта вы можете изменять параметры компиляции для - того, чтобы (к примеру) генерировался код, специфичный для - процессора Pentium IV или Athlon.</para> + При установке из порта становится возможным изменение опций + компиляции.</para> </listitem> <listitem> - <para>Некоторые приложения имеют опции времени компиляции, связанные с - тем, что они могут или не могут делать. К примеру, + <para>Некоторые приложения имеют опции времени компиляции, позволяющие + определять необходимые функциональные возможности. К примеру, <application>Apache</application> может быть настроен с широким - набором различных опций. При построении из порта вы можете не - принимать параметры по умолчанию, и задать их самостоятельно.</para> + набором различных опций.</para> <para>В некоторых случаях для одного и того же приложения будут - иметься несколько пакетов для указания конкретных настроек. - Например, <application>Ghostscript</application> имеется как пакет - <filename>ghostscript</filename> и как пакет - <filename>ghostscript-nox11</filename>, в зависимости от того, - установили вы сервер X11 или нет. Такой тип грубой настройки - возможен при использовании пакетов, но быстро становится - недостижим, если приложение имеет более одного или двух параметров - компиляции.</para> + иметься несколько пакетов с разными предварительными настройками. + Например, <application>Ghostscript</application> доступен как + пакет <filename>ghostscript</filename> и как пакет + <filename>ghostscript-nox11</filename> — в зависимости от того, + установлен ли сервер <application>X11</application>. + Создание нескольких пакетов одного приложения быстро становится + бессмысленным, если приложение имеет более одного-двух + параметров компиляции.</para> </listitem> <listitem> - <para>Условия лицензирования некоторых дистрибутивов программного - обеспечения запрещает распространение в двоичном виде. Они должны - распространяться в виде исходного кода.</para> + <para>Условия лицензирования некоторого программного обеспечения + запрещают распространение в двоичном виде. Оно должно + распространяться в виде исходного кода и компилироваться конечным + пользователем.</para> </listitem> <listitem> - <para>Некоторые не доверяют дистрибутивам в двоичном виде. При - использовании исходного кода вы (по крайней мере теоретически) - можете прочесть его и попытаться найти потенциальные проблемы - самостоятельно.</para> + <para>Некоторые пользователи не доверяют дистрибутивам в двоичном виде + или предпочитают прочесть исходный код и попытаться найти + потенциальные проблемы.</para> </listitem> <listitem> <para>Если у вас есть собственные патчи, вам нужен исходный код для того, чтобы их применять.</para> </listitem> - - <listitem> - <para>Некоторым нравится иметь исходный код, чтобы его можно было - просматривать и править, заимствовать из него (конечно, при - разрешающем это лицензионном соглашении) - и тому подобное.</para> - </listitem> </itemizedlist> <para>Чтобы отслеживать обновления портов, подпишитесь на @@ -237,85 +214,77 @@ <warning> <para>Перед установкой любого приложения необходимо зайти на <ulink url="http://vuxml.freebsd.org/"></ulink>, где находится информация - по вопросам безопасности приложений.</para> - - <para>Вы можете также установить <filename - role="package">security/portaudit</filename>, который автоматически - проверит все установленные приложения на наличие известных - уязвимостей, проверка также будет выполняться перед сборкой - какого-либо порта. Вы можете использовать <command>portaudit - -F -a</command> и после установки пакетов.</para> + по вопросам безопасности приложений, или установить <filename + role="package">ports-mgmt/portaudit</filename>. После установки + наберите <command>portaudit -F -a</command> для проверки всех + установленных приложений на наличие известных уязвимостей.</para> </warning> <para>В оставшейся части главы будет рассказано, как использовать пакеты и порты для установки и управления программным обеспечением сторонних - разработчиков во FreeBSD.</para> + разработчиков во &os;.</para> </sect1> <sect1 id="ports-finding-applications"> - <title>Поиск нужного вам приложения</title> - - <para>Перед тем, как устанавливать какое-либо приложение, вам нужно знать, - что вы хотите и как называется нужное вам приложение.</para> + <title>Поиск программного обеспечения</title> - <para>Список имеющихся для FreeBSD приложений постоянно растёт. К счастью, - есть несколько способов найти то, что вам нужно:</para> + <para>Список имеющихся для &os; приложений постоянно растет. Существует + несколько способов найти то, что нужно:</para> <itemizedlist> <listitem> - <para>На сайте FreeBSD поддерживается обновляемый список имеющихся - приложений для FreeBSD, в котором можно выполнять поиск, по адресу - <ulink url="&url.base;/ports/index.html"> - http://www.FreeBSD.org/ports/</ulink>. Порты разбиты на категории, - и вы можете либо выполнить поиск приложения по имени (если его - знаете), либо просмотреть список всех приложений, относящихся к - определённой категории.</para> + <para>На сайте &os; по адресу <ulink url="&url.base;/ports/index.html">http://www.FreeBSD.org/ports/</ulink> + поддерживается обновляемый список всех имеющихся приложений для &os;, + в котором можно выполнять поиск. Поиск порта можно выполнить + либо по имени приложения, либо по названию категории.</para> </listitem> <listitem> <indexterm><primary>FreshPorts</primary></indexterm> - <para>Dan Langille поддерживает сайт FreshPorts по адресу <ulink - url="http://www.FreshPorts.org/"></ulink>. - На нём отслеживаются изменения в приложениях из дерева портов, как - только они происходят, он позволяет вам <quote>отслеживать</quote> - один или несколько портов, и может высылать оповещение по электронной - почте при их обновлении.</para> + <para>Dan Langille поддерживает сайт <ulink + url="http://www.FreshPorts.org/">FreshPorts</ulink>, на котором + есть удобный поиск, а также на нём отслеживаются изменения в + приложениях из Коллекции Портов. Зарегистрированным пользователям + доступна возможность создавать собственные списки наблюдаемых + портов и автоматически получать оповещения об их обновлениях + по электронной почте.</para> </listitem> <listitem> - <indexterm><primary>FreshMeat</primary></indexterm> + <indexterm><primary>Freecode</primary></indexterm> <para>Если вы не знаете названия нужного вам приложения, попытайтесь - воспользоваться сайтом типа FreshMeat (<ulink - url="http://www.freshmeat.net/"></ulink>) - для поиска приложения, а затем возвратитесь на сайт FreeBSD, чтобы + воспользоваться сайтом типа Freecode (<ulink + url="http://www.freecode.com/"></ulink>) + для поиска приложения, а затем возвратитесь на сайт &os;, чтобы проверить, есть ли порт для этого приложения.</para> </listitem> <listitem> - <para>Если вы знаете точное имя порта, и хотите определить, в какой - категории он находится, используйте команду &man.whereis.1;. - Просто наберите в приглашении <quote><command>whereis - <replaceable>file</replaceable></command></quote>, - где <replaceable>file</replaceable> - программа, - которую вы хотите установить. И если она имеется в системе, - об этом будет сообщено, как показано ниже:</para> + <para>Если вам необходимо определить, в какой категории находится порт, + наберите <command>whereis <replaceable>file</replaceable></command>, + где <replaceable>file</replaceable> - программа, которую вы хотите + установить:</para> <screen>&prompt.root; <userinput>whereis lsof</userinput> lsof: /usr/ports/sysutils/lsof</screen> - <para>Это говорит о том, что <command>lsof</command> (системная - утилита) находится в каталоге - <filename>/usr/ports/sysutils/lsof</filename>.</para> + <para>Как вариант, можно воспользоваться &man.echo.1;:</para> + + <screen>&prompt.root; <userinput>echo /usr/ports/*/*lsof*</userinput> +/usr/ports/sysutils/lsof</screen> + + <para>Учтите, что в выводе также будут присутствовать совпадающие + с шаблоном имена файлов, сохраненные в + <filename class="directory">/usr/ports/distfiles</filename>.</para> </listitem> <listitem> - <para>Ещё одним способом поиска некоторого порта является + <para>Ещё одним способом поиска программного обеспечения является использование встроенной возможности поиска в Коллекции Портов. - Чтобы ею воспользоваться, вы должны находиться в каталоге - <filename>/usr/ports</filename>. Очутившись в этом каталоге, - выполните команду <command>make search + Чтобы ею воспользоваться, зайдите в <filename>/usr/ports</filename> + и выполните команду <command>make <maketarget>search</maketarget> name=<replaceable>program-name</replaceable></command>, где <replaceable>program-name</replaceable> – это название программы, которую вы хотите найти. Например, если @@ -331,22 +300,31 @@ Index: sysutils B-deps: R-deps:</screen> - <para>Вам следует обратить особое внимание на строчку - <quote>Path:</quote>, так как в ней указывается, где найти порт. - Остальная сообщаемая информация для установки порта не - нужна, поэтому здесь она описываться не будет.</para> - - <para>Для выполнения более глубокого поиска вы можете также использовать - <command>make search key=<replaceable>string</replaceable></command>, - где <replaceable>string</replaceable> - представляет собой некоторый текст, относящийся к искомому - порту. При этом будет - выполнен поиск в именах портов, комментариях, описаниях и - зависимостях, и его можно использовать для поиска портов, связанных с - некоторой темой, если вы не знаете названия программы, которую вы - ищете.</para> + <para>Строка <quote>Path:</quote> указывает, где находится порт.</para> + + <para>Чтобы получить лаконичный вывод, задайте цель + <command>quicksearch</command>:</para> + + <screen>&prompt.root; <userinput>cd /usr/ports</userinput> +&prompt.root; <userinput>make quicksearch name=lsof</userinput> +Port: lsof-4.87.a,7 +Path: /usr/ports/sysutils/lsof +Info: Lists information about open files (similar to fstat(1))</screen> - <para>В обоих этих случаях строка поиска нечувствительна к регистру. + <para>Для выполнения более глубокого поиска используйте + <command>make <maketarget>search</maketarget> + key=<replaceable>string</replaceable></command> или + <command>make <maketarget>quicksearch</maketarget> + key=<replaceable>string</replaceable></command>, + где <replaceable>string</replaceable> представляет собой некоторый + текст, относящийся к искомому порту. В качестве текста могут быть + указаны комментарии, описания или зависимости. Этот способ можно + использовать для поиска портов, связанных с некоторой темой, когда + название программы неизвестно.</para> + + <para>В обоих случаях (<maketarget>search</maketarget> и + <maketarget>quicksearch</maketarget>) строка поиска нечувствительна + к регистру. Поиск <quote>LSOF</quote> приводит к тому же самому результату, что и поиск <quote>lsof</quote>.</para> </listitem> @@ -362,11 +340,25 @@ R-deps:</screen> <contrib>Текст предоставил </contrib> </author> </authorgroup> - - <!-- 30 марта 2001 --> </sect1info> - <title>Использование системы пакетов</title> + <title>Использование бинарных пакетов</title> + + <para>Во &os; есть несколько утилит для управления пакетами:</para> + + <itemizedlist> + <listitem> + <para>Для установки, удаления и получения перечня установленных + пакетов на работающей системе может быть запущена утилита + <command>sysinstall</command>. Обратитесь к <xref + linkend="packages"/> за более детальной информацией.</para> + </listitem> + + <listitem> + <para>Утилиты командной строки для управления пакетами, которые + являются темой данного раздела.</para> + </listitem> + </itemizedlist> <sect2> <title>Установка пакета</title> @@ -380,9 +372,8 @@ R-deps:</screen> <primary><command>pkg_add</command></primary> </indexterm> - <para>Для установки пакетов программного обеспечения для FreeBSD из - локальных файлов или с сервера в сети вы можете использовать утилиту - &man.pkg.add.1;.</para> + <para>Для установки бинарного пакета &os; из локального файла или + с сервера в сети используйте &man.pkg.add.1;.</para> <example> <title>Загрузка пакета вручную и его локальная установка</title> @@ -412,11 +403,12 @@ local: lsof-4.56.4.tgz remote: lsof-4.56 &prompt.root; <userinput>pkg_add <replaceable>lsof-4.56.4.tgz</replaceable></userinput></screen> </example> - <para>Если у вас нет исходных текстов локальных пакетов (например, - набор CD-ROM с FreeBSD), то проще всего, наверное, воспользоваться - опцией <option>-r</option> для &man.pkg.add.1;. Это приведёт к тому, - что утилита автоматически определит правильный формат объектных файлов - и релиз, а затем загрузит и установит пакет с сервера FTP.</para> + <para>Если у вас нет источника пакетов, например, такого как набор + CD-ROM дисков с &os;, то добавьте опцию <option>-r</option> для + &man.pkg.add.1;. Утилита автоматически определит правильный формат + объектных файлов и релиз, а затем загрузит и установит пакет с сервера + FTP без какого-либо дополнительного взаимодействия с + пользователем.</para> <indexterm> <primary><command>pkg_add</command></primary> @@ -424,41 +416,43 @@ local: lsof-4.56.4.tgz remote: lsof-4.56 <screen>&prompt.root; <userinput>pkg_add -r <replaceable>lsof</replaceable></userinput></screen> - <para>В примере выше нужный пакет будет загружен и установлен без всякого - дополнительного взаимодействия с пользователем. - Если вместо основного сайта вы хотите указать другое зеркало пакетов - &os;, то для переопределения используемых по умолчанию значений вам - необходимо задать соответствующим образом значение переменной - <envar>PACKAGESITE</envar>. - Для загрузки файлов утилита &man.pkg.add.1; использует функцию - &man.fetch.3;, которая принимает во внимание различные переменные - окружения, включая <envar>FTP_PASSIVE_MODE</envar>, - <envar>FTP_PROXY</envar> и <envar>FTP_PASSWORD</envar>. Если вы - находитесь за сетевым экраном или для работы с FTP/HTTP вам - необходимо использовать прокси, то определите соответствующие - переменные. Обратитесь к справочной странице по &man.fetch.3; для - получения полного списка переменных. + <para>Чтобы задействовать альтернативное зеркало пакетов &os;, + укажите его адрес в переменной окружения <envar>PACKAGESITE</envar>. + Для загрузки файлов утилита &man.pkg.add.1; использует &man.fetch.3;. + Последняя учитывает значения различных переменных окружения, включая + <envar>FTP_PASSIVE_MODE</envar>, <envar>FTP_PROXY</envar> и + <envar>FTP_PASSWORD</envar>. Если вы находитесь за сетевым экраном, + или для работы с FTP/HTTP вам необходимо использовать прокси, то + определите соответствующие переменные. Обратитесь к справочной + странице по &man.fetch.3; для получения полного списка переменных. Заметьте, что в примере выше вместо <literal>lsof-4.56.4</literal> используется <literal>lsof</literal>. - При использовании функций загрузки с сети номер версии в имени пакета - должен быть опущен. Утилита &man.pkg.add.1; автоматически загрузит - последнюю версию приложения.</para> - - <para>Файлы пакетов распространяются в форматах - <filename>.tgz</filename> и <filename>.tbz</filename>. Вы можете найти - их по адресу <ulink + В случае загрузки из сети номер версии в имени пакета должен быть + опущен.</para> + + <note> + <para>Если вы используете &os.current; или &os.stable;, то утилита + &man.pkg.add.1; загрузит последнюю версию устанавливаемой программы. + Если же вы используете версию -RELEASE, то &man.pkg.add.1; установит + версию пакета, который был собран для конкретного релиза. Это + поведение возможно изменить переопределив значение + <envar>PACKAGESITE</envar>. Например, в системе + &os; 8.1-RELEASE &man.pkg.add.1; по умолчанию попытается + скачать пакеты с + <literal>ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.1-release/Latest/</literal>. + Чтобы обязать &man.pkg.add.1; загружать пакеты для + &os; 8-STABLE, присвойте <envar>PACKAGESITE</envar> значение + <literal>ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8-stable/Latest/</literal>.</para> + </note> + + <para>Файлы пакетов распространяются в форматах <filename>.tgz</filename> + и <filename>.tbz</filename>. Пакеты находятся по адресу <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages"></ulink> или - взять с дистрибутива FreeBSD на CD-ROM. Каждый CD из комплекта - FreeBSD на 4 дисках (а также PowerPak и тому подобное) содержит - пакеты в каталоге <filename>/packages</filename>. Расположение - пакетов похоже на то, как организовано дерево + в каталоге <filename>/packages</filename> дистрибутива &os; на DVD. + Размещение пакетов подобно тому, как организовано дерево <filename>/usr/ports</filename>. Каждая категория имеет собственный каталог, и каждый пакет помещается в каталог <filename>All</filename>.</para> - - <para>Структура каталогов системы пакетов соответствует структуре - системы портов; они взаимодействуют друг с другом для формирования - единой системы пакетов/портов.</para> </sect2> <sect2> @@ -469,28 +463,29 @@ local: lsof-4.56.4.tgz remote: lsof-4.56 <secondary>управление</secondary> </indexterm> - <para>&man.pkg.info.1; является утилитой для вывода списка и описаний - различных установленных пакетов.</para> + <para>Для вывода перечня установленных пакетов и их описаний может + быть задействована &man.pkg.info.1;.</para> <indexterm> <primary><command>pkg_info</command></primary> </indexterm> <screen>&prompt.root; <userinput>pkg_info</userinput> -cvsup-16.1 A general network file distribution system optimized for CV +colordiff-1.0.13 A tool to colorize diff output docbook-1.2 Meta-port for the different versions of the DocBook DTD ...</screen> - <para>&man.pkg.version.1; является утилитой для вывода отчёта о версиях - всех установленных пакетов. Она сравнивает версию имеющегося пакета - с текущей версией, находящейся в дереве портов.</para> + <para>Утилита &man.pkg.version.1; выводит отчёт о версиях всех + установленных пакетов и сравнивает их версии с текущими версиями + соответствующих приложений, доступных из локального дерева + портов.</para> <indexterm> <primary><command>pkg_version</command></primary> </indexterm> <screen>&prompt.root; <userinput>pkg_version</userinput> -cvsup = +colordiff = docbook = ...</screen> @@ -520,23 +515,23 @@ docbook = <entry><</entry> <entry>Установленная версия старее, чем та, что имеется в - дереве портов.</entry> + локальном дереве портов.</entry> </row> <row> <entry>></entry> <entry>Установленная версия новее чем та, что есть в дереве - портов. (Скорее всего, локальное дерево портов - устарело.)</entry> + портов. Скорее всего, локальное дерево портов + устарело.</entry> </row> <row> <entry>?</entry> - <entry>В индексном файле портов установленный пакет не может быть - найден. (Это может случиться, например, если установленный - порт был удалён из Коллекции Портов или переименован.)</entry> + <entry>В индексном файле портов установленный пакет не + найден. Это может случиться если установленный порт был + переименован или удалён из Коллекции Портов.</entry> </row> <row> @@ -544,6 +539,15 @@ docbook = <entry>Имеется несколько версий пакета.</entry> </row> + + <row> + <entry>!</entry> + + <entry>Установленный пакет есть в индексном файле, но по + какой-то причине утилите <command>pkg_version</command> не + удалось сравнить номер версии установленного пакета + и соответствующей записи в файле.</entry> + </row> </tbody> </tgroup> </informaltable> @@ -566,48 +570,170 @@ docbook = обеспечением используйте утилиту &man.pkg.delete.1;.</para> <screen>&prompt.root; <userinput>pkg_delete <replaceable>xchat-1.7.1</replaceable></userinput></screen> + + <para>Следует отметить, что для &man.pkg.delete.1; требуется полное + имя пакета и номер версии; вышеприведенная команда не сработала бы, + если б ей было указано <replaceable>xchat</replaceable> вместо + <replaceable>xchat-1.7.1</replaceable>. Для нахождения версии + установленного пакета задействуйте утилиту &man.pkg.version.1;. Или + же, напечатайте групповой символ (wildcard) вместо номера + версии:</para> + + <screen>&prompt.root; <userinput>pkg_delete <replaceable>xchat\*</replaceable></userinput></screen> + + <para>в этом случае будут удалены все пакеты, имена которых начинаются + на <literal>xchat</literal>.</para> </sect2> <sect2> <title>Разное</title> - <para>Вся информация о пакете хранится в каталоге - <filename>/var/db/pkg</filename>. Список установленных файлов и - описания всех пакетов могут быть найдены среди файлов этого - каталога.</para> + <para>Вся информация о пакетах, включая перечни файлов и описания + каждого установленного пакета, хранится в каталоге + <filename>/var/db/pkg</filename>.</para> </sect2> </sect1> + <sect1 id="pkgng-intro"> + <!-- XXX Not translated yet --> + <title>*Using <application>pkgng</application> for Binary Package + Management</title> + + <para>Этот раздел не переведен.</para> + </sect1> + <sect1 id="ports-using"> <title>Использование Коллекции Портов</title> - <para>В этих разделах описаны основные приемы использования Коллекции - Портов для установки и удаления программ из вашей системы.</para> + <para>В этом разделе даны базовые сведения по использованию Коллекции + Портов для установки или удаления программ. Детальное описание + существующих целей <command>make</command> и переменных окружения + находится в &man.ports.7;.</para> + + <warning> + <para>В июле 2012 года проект Портов &os; сменил систему контроля версий: + на смену CVS пришел Subversion. Рекомендуемым способом работы с + деревом портов является <application>Portsnap</application>. + Пользователи, которым требуется локальная подгонка портов + (то есть, поддержание дополнительных локальных патчей), возможно + предпочтут непосредственное использование Subversion. C 28 февраля + 2013 года сервис <application>CVSup</application> выводится из + эксплуатации, и дальнейшее использование последнего не + рекомендуется.</para> + </warning> <sect2 id="ports-tree"> <title>Получение Коллекции Портов</title> - <para>Перед тем, как вы сможете устанавливать порты, - установите Коллекцию Портов — она представляет собой в основном - набор файлов <filename>Makefile</filename>, патчей, файлов описаний, и - размещается в каталоге <filename>/usr/ports</filename>.</para> - - <para>При установке системы FreeBSD утилита - <application>sysinstall</application> запрашивает, требуется ли вам - установка Коллекции Портов. Если вы ответили отрицательно, - для установки Коллекции Портов следуйте нижеприведенной - инструкции:</para> + <para>Коллекция Портов — это набор файлов, состоящий из + <filename>Makefile</filename>, патчей и файлов описаний, хранимых в + <filename>/usr/ports</filename>. Этот набор файлов предназначен для + построения и установки приложений во &os;. В нижеследующих разделах + описано несколько способов получения Коллекции Портов на тот случай, + если Коллекция не была установлена во время инсталляции &os;.</para> + + <procedure> + <title>Метод Portsnap</title> + + <para><application>Portsnap</application> это быстрый и удобный + инструмент для получения Коллекции Портов, и в то же время — + предпочитаемый выбор большинства пользователей. За подробным + описанием всех возможностей <application>Portsnap</application> + обратитесь к <link + linkend="updating-upgrading-portsnap">Using Portsnap</link>.</para> + + <step> + <para>Скачайте сжатый снэпшот Коллекции Портов в + <filename class="directory">/var/db/portsnap</filename>.</para> + + <screen>&prompt.root; <userinput>portsnap fetch</userinput></screen> + </step> + + <step> + <para>Если вы запускаете <application>Portsnap</application> + впервые, извлеките снэпшот в + <filename class="directory">/usr/ports</filename>:</para> + + <screen>&prompt.root; <userinput>portsnap extract</userinput></screen> + </step> + + <step> + <para>По завершении первого запуска + <application>Portsnap</application>, как было показано выше, + <filename class="directory">/usr/ports</filename> может быть + обновлен при помощи:</para> + + <screen>&prompt.root; <userinput>portsnap fetch</userinput> +&prompt.root; <userinput>portsnap update</userinput></screen> + </step> + </procedure> + + <procedure> + <title>Метод Subversion</title> + + <para>Если необходим контроль за деревом портов (например, для + поддержания локальных изменений), то для получения Коллекции Портов + может быть задействован <application>Subversion</application>. + Обратитесь к <ulink + url="&url.articles.committers-guide.en;/subversion-primer.html">the + Subversion Primer</ulink> за детальным описанием + <application>Subversion</application>.</para> + + <step> + <para>Для создания рабочей копии дерева портов необходимо + иметь установленный <application>Subversion</application>. + Если порты есть в наличии, то установите + <application>Subversion</application> выполнив следующее:</para> + + <screen>&prompt.root; <userinput>cd /usr/ports/devel/subversion</userinput> +&prompt.root; <userinput>make install clean</userinput></screen> + + <para>Если портов нет, то <application>Subversion</application> может + быть установлен при помощи системы пакетов:</para> + + <screen>&prompt.root; <userinput>pkg_add -r subversion</userinput></screen> + + <para>Если же для управления пакетами используется + <application>pkgng</application>, то + <application>Subversion</application> устанавливается при помощи + следующей команды:</para> + + <screen>&prompt.root; <userinput>pkg install subversion</userinput></screen> + </step> + + <step> + <para>Создайте рабочую копию дерева портов. Для ускорения + процесса вместо <replaceable>svn0.us-east.FreeBSD.org</replaceable> + укажите ближайшее к вам + <ulink url="&url.books.handbook.en;/svn-mirrors.html">зеркало + Subversion</ulink>. Коммиттерам необходимо сначала прочитать + <ulink url="&url.articles.committers-guide;/subversion-primer.html">Subversion Primer</ulink>, + чтобы удостовериться, что выбран корректный протокол.</para> + + <screen>&prompt.root; <userinput>svn checkout https://<replaceable>svn0.us-east.FreeBSD.org</replaceable>/ports/head /usr/ports</userinput></screen> + </step> + + <step> + <para>При наличии рабочей копии + <filename class="directory">/usr/ports</filename> + все последующие обновления выполняются просто:</para> + + <screen>&prompt.root; <userinput>svn update /usr/ports</userinput></screen> + </step> + </procedure> <procedure> <title>Метод с использованием Sysinstall</title> - <para>В этом методе повторно используется - <application>sysinstall</application> - (<command>/stand/sysinstall</command> в &os; - версий ниже, чем 5.2) для ручной установки Коллекции Портов.</para> + <para>Этот метод подразумевает использование + <application>sysinstall</application> для установки Коллекции Портов + из установочного носителя. Учтите, что в итоге будет установлена + старая копия Коллекции Портов, которая была актуальна на момент + создания релиза. Если у вас есть подключение к Интернет, то вам + необходимо пользоваться одним из вышеупомянутых методов.</para> <step> - <para>Работая как пользователь root, запустите + <para>Работая как пользователь <username>root</username>, запустите <command>sysinstall</command> так, как это показано ниже:</para> @@ -651,64 +777,83 @@ docbook = <application>sysinstall</application>.</para> </step> </procedure> + </sect2> + + <sect2 id="cvsup-migration"> + <title>Миграция с + <application>CVSup</application>/<application>csup</application> + на <application>portsnap</application></title> - <para>Альтернативный метод получения и постоянной актуализации - Коллекции Портов заключается в использовании - <application>CVSup</application>. Посмотрите файл - <application>CVSup</application> для портов, - <filename>/usr/share/examples/cvsup/ports-supfile</filename>. - Прочтите раздел <link linkend="cvsup">Использование CVSup</link> - (<xref linkend="cvsup"/>) для получения более полной информации об - использовании <application>CVSup</application> и этого файла.</para> + <warning> + <para>Начиная с 28 февраля 2013 года дерево портов более не + экспортируется в <application>CVS</application>, поэтому + <application>CVSup</application> и <application>csup</application> + не будут доставлять обновления для дерева портов.</para> + </warning> <procedure> - <title>Метод с использованием CVSup</title> + <title>Миграция на Portsnap</title> - <para>Это быстрый способ для получения Коллекции Портов при помощи - <application>CVSup</application>. Если вы хотите поддерживать ваше - дерево портов в актуальном состоянии, или узнать больше о - <application>CVSup</application>, то прочтите вышеотмеченные - разделы.</para> + <para>Для миграции потребуется около 1 ГБ дискового пространства + в <filename class="directory">/usr</filename>, в добавок, для + <application>Portsnap</application> необходимо около 150 МБ + дискового пространства в + <filename class="directory">/var</filename>.</para> <step> - <para>Установите порт <filename role="package">net/cvsup</filename>. Обратитесь к разделу - <link linkend="cvsup-install">Установка CVSup</link> (<xref - linkend="cvsup-install"/>) для получения более подробной - информации.</para> + <para>Если у вас настроено автоматическое обновление портов, + например при помощи задания &man.cron.8;, запускающего + <application>CVSup</application> или + <application>csup</application>, то его необходимо будет + отключить.</para> </step> <step> - <para>Работая как пользователь <username>root</username>, скопируйте - <filename>/usr/share/examples/cvsup/ports-supfile</filename> в - новое место, например, в каталог <filename>/root</filename> или в - ваш домашний каталог.</para> + <para>Переместите существующее дерево портов во временный + каталог:</para> + + <screen>&prompt.root; <userinput>mv /usr/ports /usr/ports.old</userinput></screen> </step> <step> - <para>Отредактируйте <filename>ports-supfile</filename>.</para> + <para>При помощи <application>Portsnap</application> скачайте + новое дерево портов и извлеките его в + <filename class="directory">/usr/ports</filename>:</para> + + <screen>&prompt.root; <userinput>portsnap fetch extract</userinput></screen> </step> <step> - <para>Измените <replaceable>CHANGE_THIS.FreeBSD.org</replaceable> на - близкий к вам сервер <application>CVSup</application>. Посмотрите - <link linkend="cvsup-mirrors">Зеркала CVSup</link> (<xref - linkend="cvsup-mirrors"/>) для получения полного списка - зеркалирующих сайтов.</para> + <para>Переместите дистрибутивные файлы (distfiles) и сохраненные + пакеты в новое дерево портов:</para> + + <screen>&prompt.root; <userinput>mv /usr/ports.old/distfiles /usr/ports</userinput> +&prompt.root; <userinput>mv /usr/ports.old/packages /usr/ports</userinput></screen> </step> <step> - <para>Запустите - <command>cvsup</command></para> + <para>Удалите старое дерево портов:</para> - <screen>&prompt.root; <userinput>cvsup -g -L 2 <replaceable>/root/ports-supfile</replaceable></userinput></screen> + <screen>&prompt.root; <userinput>rm -rf /usr/ports.old</userinput></screen> </step> <step> - <para>При повторных запусках этой команды все последние изменения - (кроме реального перестроения портов для вашей системы) будут *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201304151340.r3FDe6Ki033528>