Sync the cutting-edge chapter, update associated xrefs.

MFen:
	handbook/cutting-edge/chapter.xml	r28061 -> r33528
This commit is contained in:
Sergey Kandaurov 2012-12-11 16:19:40 +00:00
parent b91dcbbadf
commit 2f42e3167e
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=40344
4 changed files with 557 additions and 37 deletions

View file

@ -5,10 +5,10 @@
$FreeBSD$
$FreeBSDru: frdp/doc/ru_RU.KOI8-R/books/handbook/cutting-edge/chapter.xml,v 1.52 2006/06/20 18:02:32 marck Exp $
Original revision: r28061
Original revision: r33528
-->
<chapter id="cutting-edge">
<chapter id="updating-upgrading">
<chapterinfo>
<authorgroup>
<author>
@ -26,7 +26,7 @@
<author>
<firstname>Jordan</firstname>
<surname>Hubbard</surname>
<contrib>Оригинальный текст написал </contrib>
<contrib>Оригинальный текст написали </contrib>
</author>
<author>
@ -54,30 +54,47 @@
</authorgroup>
</chapterinfo>
<title>На переднем крае разработок</title>
<title>Обновление системы и смена версии</title>
<sect1 id="cutting-edge-synopsis">
<sect1 id="updating-upgrading-synopsis">
<title>Краткий обзор</title>
<para>Между релизами над &os; ведется постоянная работа. Для тех,
кто хочет быть на переднем крае, есть несколько простых методов для
поддержания своей системы в соответствии с последними разработками.
Будьте осторожны &mdash; передний край не для всех! Эта глава поможет
<para>Между релизами над &os; ведется постоянная работа. Некоторые
отдают предпочтение официально выпущенным версиям, в то время как
остальные предпочитают использовать последние разработки. Тем не
менее, даже для официальных версий часто выходят обновления,
связанные с безопасностью и другими критическими исправлениями.
Независимо от используемой версии &os; предоставляет все необходимые
инструменты для поддержания системы в актуальном состоянии, а также
позволяет легко перейти на другую версию. Эта глава поможет
вам решить, хотите ли вы отслеживать систему в процессе работы над ней
или останетесь верным одному из выпущенных релизов.</para>
или останетесь верным одному из выпущенных релизов. Также имеются
простейшие инструменты для поддержания вашей системы в актуальном
состоянии.</para>
<para>После чтения этой главы вы будете знать:</para>
<itemizedlist>
<listitem>
<para>Разницу между двумя ветвями разработки: &os.stable; и
&os.current;.</para>
<para>Какие программы можно использовать для обновления системы и
Коллекции Портов.</para>
</listitem>
<listitem>
<para>Как поддерживать вашу систему в актуальном состоянии при помощи
<application>CVSup</application>, <application>CVS</application> или
<application>CTM</application>.</para>
<para>Как поддерживать вашу систему в актуальном состоянии при
помощи <application>freebsd-update</application>,
<application>CVSup</application>, <application>CVS</application>
или <application>CTM</application>.</para>
</listitem>
<listitem>
<para>Как узнать состояние установленной системы по отношению к
известной нетронутой копии.</para>
</listitem>
<listitem>
<para>Разницу между двумя ветвями разработки: &os.stable; и
&os.current;.</para>
</listitem>
<listitem>
@ -99,10 +116,483 @@
других разработчиков (<xref linkend="ports"/>).</para>
</listitem>
</itemizedlist>
<note>
<para>В этой главе для получения и обновления исходных текстов &os;
используется команда <command>cvsup</command>. Для этого вам
нужно установить порт или пакет <filename
role="package">net/cvsup-without-gui</filename>. Начиная с версии
&os;&nbsp;6.2-RELEASE для этих целей можно воспользоваться командой
&man.csup.1;, которая входит в состав системы.</para>
</note>
</sect1>
<sect1 id="updating-upgrading-freebsdupdate">
<sect1info>
<authorgroup>
<author>
<firstname>Tom</firstname>
<surname>Rhodes</surname>
<contrib>Оригинальный текст написал </contrib>
</author>
</authorgroup>
<authorgroup>
<author>
<firstname>Colin</firstname>
<surname>Percival</surname>
<contrib>На основе заметок, которые предоставил </contrib>
</author>
</authorgroup>
</sect1info>
<title>Обновление FreeBSD</title>
<indexterm><primary>обновление и смена версии</primary></indexterm>
<indexterm>
<primary>freebsd-update</primary>
<see>обновление и смена версии</see>
</indexterm>
<para>Применение обновлений безопасности &mdash; важный момент в
сопровождении программного обеспечения, особенно такого как
операционная система. Для &os; этот процесс не был простым в
течение долгого времени. На исходный код нужно было накладывать
патчи, перестраивать код в двоичные файлы, а затем эти двоичные файлы
требовалось переустановить. </para>
<para>Теперь это давно не так, и &os; включает программу с простым
названием <command>freebsd-update</command>. Эта программа
предоставляет две различные функции. Во-первых, она позволяет
применить к базовой системе &os; обновления безопасности и критические
исправления в двоичном виде, без необходимости сборки и установки.
Во-вторых, программа поддерживает обновление системы со сменой
старшего или младшего номера версии.</para>
<note>
<para>Двоичные обновления доступны для всех архитектур и версий,
поддерживаемых группой безопасности; тем не менее, для работы
некоторых из возможностей, таких как смена версии операционной
системы &os;, требуется последняя версия &man.freebsd-update.8;
и по крайней мере &os; 6.3. Перед обновлением до новой версии
следует ознакомиться с объявлением о выпуске текущей версии, так
как там может содержаться важная информация, применимая к версии,
на которую намечен переход. С соответствующими объявлениями можно
ознакомиться, перейдя по следующей ссылке: <ulink
url="http://www.FreeBSD.org/releases/"></ulink>.</para>
</note>
<para>Если имеется задание <command>crontab</command>, запускающее
<command>freebsd-update</command>, то перед началом выполнения
следующих действий его обязательно нужно выключить.</para>
<sect2>
<title>Конфигурационный файл</title>
<para>Некоторые пользователи могут пожелать изменить
конфигурационный файл для лучшего контроля над процессом
обновления. Все параметры подробно задокументированы, но
для некоторых из них может понадобиться дополнительное
разъяснение:</para>
<programlisting># Components of the base system which should be kept updated.
Components src world kernel</programlisting>
<para>Данный параметр определяет, какие части &os; будут обновлены.
По умолчанию обновляется исходный код (src), вся базовая система
(world) и ядро (kernel). Компоненты те же самые, что и во время
установки; в частности, добавление "world/games" позволяет
обновить игры. Использование "src/bin" позволяет обновить
исходный код в <filename
class="directory">src/bin</filename>.</para>
<para>Лучшим вариантом будет оставить всё как есть, поскольку
изменение этого перечня с целью добавления особых пунктов
потребует от пользователя указания подряд всех пунктов, которые
пользователь захочет обновить. Это может привести к негативным
последствиям из-за возможной рассинхронизации между исходными
текстами и двоичными файлами.</para>
<programlisting># Paths which start with anything matching an entry in an IgnorePaths
# statement will be ignored.
IgnorePaths</programlisting>
<para>Добавьте сюда пути к каталогам (например, <filename
class="directory">/bin</filename> или <filename
class="directory">/sbin</filename>), которые вы хотели бы
оставить нетронутыми в процессе обновления. Этот параметр можно
использовать для предотвращения перезаписывания локальных
изменений программой <command>freebsd-update</command>.</para>
<programlisting># Paths which start with anything matching an entry in an UpdateIfUnmodified
# statement will only be updated if the contents of the file have not been
# modified by the user (unless changes are merged; see below).
UpdateIfUnmodified /etc/ /var/ /root/ /.cshrc /.profile</programlisting>
<para>Обновлять конфигурационные файлы в указанных каталогах, только
если они не содержат изменений. При наличии каких-либо изменений
со стороны пользователя автоматическое обновление таких файлов
отменяется. Есть другой параметр
<literal>KeepModifiedMetadata</literal>, который предписывает
команде <command>freebsd-update</command> сохранять изменения во
время процесса слияния.</para>
<programlisting># When upgrading to a new &os; release, files which match MergeChanges
# will have any local changes merged into the version from the new release.
MergeChanges /etc/ /var/named/etc/</programlisting>
<para>Список каталогов с конфигурационными файлами, для которых
<command>freebsd-update</command> попытается выполнить слияние.
Процесс слияния файла представляет собой набор изменений
в формате &man.diff.1;, похож на &man.mergemaster.8;, но с
меньшим количеством параметров: результат слияния принимается,
открывается редактор или <command>freebsd-update</command>
прекращает свою работу. В случае сомнений сделайте резервную
копию <filename class="directory">/etc</filename> и просто
согласитесь со всеми изменениями. Для получения подробной
информации по команде <command>mergemaster</command> смотрите
<xref linkend="mergemaster"/>.</para>
<programlisting># Directory in which to store downloaded updates and temporary
# files used by &os; Update.
# WorkDir /var/db/freebsd-update</programlisting>
<para>Этот каталог предназначен для размещения патчей и временных
файлов. В случае, когда пользователь выполняет обновление со сменой
версии, в этом месте должен иметь по крайней мере гигабайт дискового
пространства.</para>
<programlisting># When upgrading between releases, should the list of Components be
# read strictly (StrictComponents yes) or merely as a list of components
# which *might* be installed of which &os; Update should figure out
# which actually are installed and upgrade those (StrictComponents no)?
# StrictComponents no</programlisting>
<para>Если выставлено значение <literal>yes</literal>, то
<command>freebsd-update</command> будет исходить из того, что
список <literal>Components</literal> является полным, и не будет
пытаться выполнить изменения за пределами этого списка.
В действительности <command>freebsd-update</command> попытается
обновить все файлы, которые принадлежат списку
<literal>Components</literal>.</para>
</sect2>
<sect2>
<title>Обновления безопасности</title>
<para>Обновления безопасности хранятся на удалённой машине и могут
быть загружены и установлены с использованием следующей
команды:</para>
<screen>&prompt.root; <userinput>freebsd-update fetch</userinput>
&prompt.root; <userinput>freebsd-update install</userinput></screen>
<para>Если были установлены обновления ядра, то после этого
нужно перезагрузить систему. Если все пошло хорошо, система
должна быть с установленными исправлениями, и
<command>freebsd-update</command> можно запускать в качестве ночного
задания &man.cron.8;. Для этого достаточно добавить следующую
запись в <filename>/etc/crontab</filename>:</para>
<programlisting>@daily root freebsd-update cron</programlisting>
<para>Эта запись означает, что <command>freebsd-update</command> будет
запускаться ежедневно. В данном случае, в соответствии с аргументом
<option>cron</option> <command>freebsd-update</command> ограничится
проверкой доступных обновлений. В случае наличия обновлений они
будут автоматически загружены и сохранены на локальном диске.
Пользователю <username>root</username> будет отправлено
соответствующее письмо, так что эти обновления можно будет
установить самостоятельно.</para>
<para>На случай, если что-то пошло не так, в
<command>freebsd-update</command> предусмотрен механизм возврата
последнего набора изменений с использованием следующей команды:</para>
<screen>&prompt.root; <userinput>freebsd-update rollback</userinput></screen>
<para>Если после завершения всех действий было изменено ядро или
какой-либо из его модулей, система должна быть перезагружена.
Это позволит &os; загрузить новые двоичные файлы в память.</para>
<note>
<para>Команда <command>freebsd-update</command> работает только
с ядром <filename>GENERIC</filename>. Если в
<filename>GENERIC</filename> присутствуют изменения или
используется собственная конфигурация ядра,
<command>freebsd-update</command> завершится неудачно.</para>
</note>
</sect2>
<sect2>
<title>Обновления со сменой старшей и младшей версий</title>
<para>Этот процесс удаляет старые объектные файлы и библиотеки, что
может нарушить работу большинства сторонних приложений. Все
установленные порты рекомендуется либо удалить и переустановить
заново, либо обновить с использованием программы <filename
role="package">ports-mgmt/portupgrade</filename>. Большинство
пользователей предпочтут выполнить тестовое построение, запустив для
этого следующую команду:</para>
<screen>&prompt.root; <userinput>portupgrade -af</userinput></screen>
<para>Это позволит убедиться в том, что всё будет переустановлено
правильно. Обратите внимание, что если переменной окружения
<makevar>BATCH</makevar> присвоить значение <literal>yes</literal>,
то на все вопросы в течение этого процесса будет возвращаться
ответ <literal>yes</literal>, что позволит исключить необходимость
ручного вмешательства в процесс построения.</para>
<para>Обновления со сменой старшей и младшей версий можно выполнить,
указав значение версии, на которую будет произведен переход, в
качестве аргумента команды <command>freebsd-update</command>.
Так, например, можно выполнить обновление до версии
&os;&nbsp;6.3:</para>
<screen>&prompt.root; <userinput>freebsd-update -r 6.3-RELEASE upgrade</userinput></screen>
<para>После своего запуска <command>freebsd-update</command>
анализирует содержимое конфигурационного файла и собирает
необходимую для проведения обновления информацию о текущей
установленной системе. На экран будет выдан перечень компонентов,
которые удалось и не удалось обнаружить установленными.
Например:</para>
<screen>Looking up update.FreeBSD.org mirrors... 1 mirrors found.
Fetching metadata signature for 6.3-BETA1 from update1.FreeBSD.org... done.
Fetching metadata index... done.
Inspecting system... done.
The following components of FreeBSD seem to be installed:
kernel/smp src/base src/bin src/contrib src/crypto src/etc src/games
src/gnu src/include src/krb5 src/lib src/libexec src/release src/rescue
src/sbin src/secure src/share src/sys src/tools src/ubin src/usbin
world/base world/info world/lib32 world/manpages
The following components of FreeBSD do not seem to be installed:
kernel/generic world/catpages world/dict world/doc world/games
world/proflibs
Does this look reasonable (y/n)? y</screen>
<para>Следующим шагом <command>freebsd-update</command> попытается
загрузить по сети файлы, необходимые для выполнения обновления.
В некоторых случаях может потребоваться ответить на вопросы
относительно того, что и как устанавливать.</para>
<para>После того, как все изменения были загружены, они будут
применены. Этот процесс может занять определённое время, в
зависимости от производительности и текущей загруженности
компьютера. Затем будет выполнено слияние конфигурационных файлов
&mdash; эта часть процесса требует от пользователя определённого
вмешательства, так как для файла можно выполнить слияние
автоматически, а можно открыть текстовый редактор для слияния
вручную. Результат успешного слияния будет показан на экране.
Неудачное или пропущенное слияние вызовет преждевременное завершение
программы. Можно подготовить резервную копию каталога <filename
class="directory">/etc</filename> для таких важных файлов как
<filename>master.passwd</filename> и <filename>group</filename> и
выполнить их слияние вручную позднее.</para>
<note>
<para>На данном этапе система еще не модифицирована, и все изменения
и слияния происходят в отдельном каталоге. Теперь, когда все
изменения успешно применены, все конфигурационные файлы слиты и
кажется, что процесс должен пройти плавно, пользователь должен
установить изменения.</para>
</note>
<para>После завершения этого процесса, изменения могут быть
установлены на диск с помощью следующей команды.</para>
<screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
<para>В первую очередь изменения будут применены к ядру и его модулям.
После этого компьютер должен быть перезагружен. Следующая команда
выполнит перезагрузку компьютера, после чего будет загружено новое
ядро:</para>
<screen>&prompt.root; <userinput>shutdown -r now</userinput></screen>
<para>После перезагрузки нужно повторно запустить команду
<command>freebsd-update</command>. Команда прочитает, на каком
этапе она находится, и перейдёт к удалению старых объектных файлов
и совместно используемых библиотек. Чтобы перейти к этому этапу,
выполните следующую команду:</para>
<screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
<note>
<para>Количество этапов установки обновлений может быть два вместо
трёх и зависит от того, были ли изменены номера версий каких-либо
совместно используемых библиотек.</para>
</note>
<para>Теперь понадобится пересобрать и переустановить всё стороннее
программное обеспечение. Это необходимая операция, так как
установленное программное обеспечение может зависеть от библиотек,
которые были удалены в процессе смены версии операционной системы.
Для автоматизации этого процесса можно воспользоваться командой
<filename role="package">ports-mgmt/portupgrade</filename>.
Начать можно со следующих команд:</para>
<screen>&prompt.root; <userinput>portupgrade -f ruby</userinput>
&prompt.root; <userinput>rm /var/db/pkg/pkgdb.db</userinput>
&prompt.root; <userinput>portupgrade -f ruby18-bdb</userinput>
&prompt.root; <userinput>rm /var/db/pkg/pkgdb.db /usr/ports/INDEX-*.db</userinput>
&prompt.root; <userinput>portupgrade -af</userinput></screen>
<para>После этого завершите процесс обновления последним запуском
<command>freebsd-update</command>. Выполните следующую команду,
чтобы убедиться, что ничего не забыто в процессе обновления:</para>
<screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
<para>Перезагрузите компьютер с новой версией &os;. На этом процесс
завершён.</para>
</sect2>
<sect2>
<title>Сравнение состояния системы</title>
<para>Утилита <command>freebsd-update</command> может быть
использована для проверки состояния установленной версии &os;
относительно известной хорошей копии. Оценивается текущая версия
системных утилит, библиотек и конфигурационных файлов. Для того,
чтобы начать сравнение, выполните следующую команду:</para>
<screen>&prompt.root; <userinput>freebsd-update IDS &gt;&gt; outfile.ids</userinput></screen>
<warning>
<para>Не смотря на то, что команда называется
<acronym>IDS</acronym>, это ни в коей мере не должно являться
заменой системе обнаружения вторжений, такой как <filename
role="package">security/snort</filename>. Поскольку
<command>freebsd-update</command> сохранает свои данные на
диске, возможность подмены становится очевидной. И хотя эта
возможность может быть уменьшена при использовании настройки
<varname>kern.securelevel</varname>, а также используя для
записи данных <command>freebsd-update</command> файловую
систему, которая в остальное время смонтирована только на
чтение, лучшим решением будет сравнить систему относительно
эталона на физически защищенном носителе, таком как
<acronym>DVD</acronym> или внешний <acronym>USB</acronym> диск
с включённой защитой от записи.</para>
</warning>
<para>Теперь запустится проверка системы, в результате которой будет
выведен список файлов с их контрольными суммами в &man.sha256.1; с
известным значением для файла из релиза и значением для текущего
в системе. Результат выводится слишком быстро для наглядного
сравнения и вскоре заполняет консольный буфер. По этой причине в
данном примере вывод перенаправлен в файл
<filename>outfile.ids</filename>.</para>
<para>Эти строки также очень длинные, но зато такой формат вывода
удобен для разбора. Так, для получения списка всех отличающихся
от релиза файлов достаточно выполнить такую команду:</para>
<screen>&prompt.root; <userinput>cat outfile.ids | awk '{ print $1 }' | more</userinput>
/etc/master.passwd
/etc/motd
/etc/passwd
/etc/pf.conf</screen>
<para>Вывод специально обрезан, на самом деле файлов намного больше.
Некоторые из них изменены в ходе нормальной работы: так, файл
<filename>/etc/passwd</filename> был изменён после заведения
пользователей в системе. В некоторых случаях могут быть и другие
файлы, такие как модули ядра, которые могли измениться вследствие
обновления через <command>freebsd-update</command>. Для
исключения из проверки конкретных файлов и каталогов укажите их
в качестве значения параметра <literal>IDSIgnorePaths</literal>
в <filename>/etc/freebsd-update.conf</filename>.</para>
<para>Эта система может использоваться как часть более сложной
процедуры обновления, в отличие от описанного выше способа.</para>
</sect2>
</sect1>
<sect1 id="updating-upgrading-portsnap">
<sect1info>
<authorgroup>
<author>
<firstname>Tom</firstname>
<surname>Rhodes</surname>
<contrib>Предоставил </contrib>
</author>
</authorgroup>
<authorgroup>
<author>
<firstname>Colin</firstname>
<surname>Percival</surname>
<contrib>На основе заметок, которые предоставил </contrib>
</author>
</authorgroup>
</sect1info>
<title>Portsnap: средство обновления Коллекции Портов</title>
<indexterm><primary>обновление и смена версии</primary></indexterm>
<indexterm>
<primary>Portsnap</primary>
<see>обновление и смена версии</see>
</indexterm>
<para>Для обновления Коллекции Портов в базовую поставку &os;
включена утилита &man.portsnap.8;. Во время её выполнения
устанавливается соединение с удалённым сервером, проверяется
правильность ключа и загружается новая копия Коллекции Портов.
Ключ используется для проверки целостности загруженных файлов
для исключения возможности подмены на этапе передачи файлов.
Для получения последней версии файлов Коллекции Портов выполните
следующую команду:</para>
<screen>&prompt.root; <userinput>portsnap fetch</userinput>
Looking up portsnap.FreeBSD.org mirrors... 3 mirrors found.
Fetching snapshot tag from portsnap1.FreeBSD.org... done.
Fetching snapshot metadata... done.
Updating from Wed Aug 6 18:00:22 EDT 2008 to Sat Aug 30 20:24:11 EDT 2008.
Fetching 3 metadata patches.. done.
Applying metadata patches... done.
Fetching 3 metadata files... done.
Fetching 90 patches.....10....20....30....40....50....60....70....80....90. done.
Applying patches... done.
Fetching 133 new ports or files... done.</screen>
<para>В данном примере показано, что &man.portsnap.8; обнаружила
и верифицировала несколько патчей относительно текущего содержимого
портов. Здесь также видно, что утилита уже запускалась ранее,
иначе при первом запуске была бы загружена вся коллекция.</para>
<para>После того как &man.portsnap.8; успешно завершила операцию
<command>fetch</command>, Коллекция Портов и сопутствующие патчи
находятся на локальной системе и прошли проверку целостности.
Обновлённые файлы можно установить командой:</para>
<screen>&prompt.root; <userinput>portsnap extract</userinput>
/usr/ports/.cvsignore
/usr/ports/CHANGES
/usr/ports/COPYRIGHT
/usr/ports/GIDs
/usr/ports/KNOBS
/usr/ports/LEGAL
/usr/ports/MOVED
/usr/ports/Makefile
/usr/ports/Mk/bsd.apache.mk
/usr/ports/Mk/bsd.autotools.mk
/usr/ports/Mk/bsd.cmake.mk
<replaceable>...</replaceable></screen>
<para>На этом процесс завершён, и теперь приложения можно
установить или обновить с использованием Коллекции Портов.</para>
<para>Для последовательного запуска обоих процессов выполните
следующую команду:</para>
<screen>&prompt.root; <userinput>portsnap fetch update</userinput></screen>
</sect1>
<sect1 id="current-stable">
<title>&os.current; против &os.stable;</title>
<title>Использование ветви разработки</title>
<indexterm><primary>-CURRENT</primary></indexterm>
<indexterm><primary>-STABLE</primary></indexterm>
@ -220,7 +710,7 @@
<orderedlist>
<listitem>
<para>Подпишитесь на списки рассылки &a.current.name; и
&a.cvsall.name;. Это не просто хорошая идея, это
&a.svn-src-head.name;. Это не просто хорошая идея, это
<emphasis>необходимость</emphasis>. Если вы не являетесь
участником списка рассылки <emphasis>&a.current.name;</emphasis>,
то вы не увидите замечаний,
@ -229,15 +719,17 @@
решены другими. Ещё хуже, если вы пропустите важные сообщения,
касающиеся жизнеспособности вашей системы.</para>
<para>Список рассылки &a.cvsall.name; позволит вам для каждого
<para>Список рассылки &a.svn-src-head.name; позволит вам для каждого
изменения увидеть соответствующую запись в журнале коммитов,
а они порой содержат относящуюся к делу
информацию о возможных побочных эффектах.</para>
<para>Чтобы подключиться к этим и другим доступным спискам
<para>Чтобы подписаться на эти и другие доступные списки
рассылки, перейдите по ссылке &a.mailman.lists.link; и щёлкните
на списке, к которому вы хотите подключиться. Инструкции по
дальнейшим действиям размещены там же.</para>
дальнейшим действиям размещены там же. Если вы заинтересованы
в отслеживании изменений всего дерева исходных текстов, то мы
рекомендуем вам подписаться на &a.svn-src-all.name;.</para>
</listitem>
<listitem>
@ -275,6 +767,23 @@
тексты автоматически. Измените примерный файл
<filename>supfile</filename> выше и отконфигурируйте <link
linkend="cvsup">cvsup</link> для вашего окружения.</para>
<note>
<para>Примерный файл <filename>standard-supfile</filename>
предназначен для отслеживания специальной ветки
безопасности &os;, а не &os.current;. Вам нужно
открыть этот файл на редактирование и заменить в нём
строку:</para>
<programlisting>*default release=cvs tag=RELENG_<replaceable>X</replaceable>_<replaceable>Y</replaceable></programlisting>
<para>на следующую:</para>
<programlisting>*default release=cvs tag=.</programlisting>
<para>Для получения подробной информации по использованию
тегов обратитесь к разделу Руководства <link
linkend="cvs-tags">Теги CVS</link>.</para>
</note>
</listitem>
<listitem>
@ -416,15 +925,20 @@
давая пользователям возможность высказать свое мнение о
возможных тонких моментах.</para>
<para>Список рассылки &a.cvsall.name; позволит вам для каждого
изменения увидеть соответствующую запись в журнале коммитов,
а они порой содержат относящуюся к делу
<para>Присоединяйтесь к соответствующему списку рассылки
<application>SVN</application> для той ветви, которую вы
используете. Например, если вы используете ветвь 7-STABLE, то
присоединяйтесь к списку &a.svn-src-stable-7.name;. Это
позволит вам просматривать записи в журнале коммитов для
каждого изменения, а они порой содержат относящуюся к делу
информацию о возможных побочных эффектах.</para>
<para>Чтобы подключиться к этим и другим доступным спискам
рассылки, перейдите по ссылке &a.mailman.lists.link; и щёлкните
на списке, к которому вы хотите подключиться. Инструкции по
дальнейшим действиям размещены там же.</para>
дальнейшим действиям размещены там же. Если вы заинтересованы
в отслеживании изменений всего дерева исходных текстов, то мы
рекомендуем вам подписаться на &a.svn-src-all.name;.</para>
</listitem>
<listitem>
@ -674,10 +1188,11 @@
текстов, а затем выполнить следующую последовательность
действий:</para>
<screen>&prompt.root; <userinput>make buildworld</userinput>
<screen>&prompt.root; <userinput>cd /usr/src</userinput>
&prompt.root; <userinput>make buildworld</userinput>
&prompt.root; <userinput>make buildkernel</userinput>
&prompt.root; <userinput>make installkernel</userinput>
&prompt.root; <userinput>reboot</userinput></screen>
&prompt.root; <userinput>shutdown -r now</userinput></screen>
<note>
<para>Есть несколько редких случаев, когда перед выполнением
@ -693,7 +1208,9 @@
есть посредством команды <command>boot -s</command>, заданной в
приглашении загрузчика). После этого выполните:</para>
<screen>&prompt.root; <userinput>mergemaster -p</userinput>
<screen>&prompt.root; <userinput>mount -a -t ufs</userinput>
&prompt.root; <userinput>mergemaster -p</userinput>
&prompt.root; <userinput>cd /usr/src</userinput>
&prompt.root; <userinput>make installworld</userinput>
&prompt.root; <userinput>mergemaster</userinput>
&prompt.root; <userinput>reboot</userinput></screen>
@ -885,7 +1402,7 @@
</screen>
</sect2>
<sect2 id="cutting-edge-compilebase">
<sect2 id="updating-upgrading-compilebase">
<title>Перекомпилируйте исходные тексты базовой системы</title>
<sect3>
@ -1265,7 +1782,8 @@ Script done, &hellip;
нет в <filename>/usr/src/etc</filename>.</para>
<para>Если вы используете &man.mergemaster.8; (как это рекомендуется),
то вы можете перейти сразу к <link linkend="cutting-edge-rebooting">следующему
то вы можете перейти сразу к <link
linkend="updating-upgrading-rebooting">следующему
разделу</link>.</para>
<para>Вручную проще всего сделать это, установив файлы в новый каталог,
@ -1417,7 +1935,7 @@ Script done, &hellip;
</sect3>
</sect2>
<sect2 id="cutting-edge-rebooting">
<sect2 id="updating-upgrading-rebooting">
<title>Перезагрузка</title>
<para>Теперь вы сделали всё. После того, как вы проверили, что всё
@ -1786,9 +2304,10 @@ Building everything..
каталог <filename>/usr/src</filename> должен быть на машине построения,
а по NFS он должен быть смонтирован на остальных.</para>
<para>Наконец, удостоверьтесь в том, что файл
<filename>/etc/make.conf</filename> на всех машинах набора для
построения соответствует машине построения. Это означает, что машина
<para>Наконец, удостоверьтесь в том, что файлы
<filename>/etc/make.conf</filename> и
<filename>/etc/src.conf</filename> на всех машинах набора для
построения соответствуют машине построения. Это означает, что машина
построения должна строить все части основного системного набора,
которые будут устанавливаться на каждой машине из набора для
построения. Кроме того, у каждой машины построения должно быть задано

View file

@ -348,7 +348,7 @@ following line in &man.loader.conf.5;:
понять, что вы удалили собственный файл настройки ядра. Не
редактируйте непосредственно <filename>GENERIC</filename>, он может
быть также перезаписан и при следующем <link
linkend="cutting-edge">обновлении дерева исходных текстов</link>,
linkend="updating-upgrading">ÏÂÎÏ×ÌÅÎÉÉ ÄÅÒÅ×Á ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×</link>,
и изменения ядра будут потеряны.</para>
<para>Вы можете сохранить файл конфигурации ядра в другом месте,
@ -387,7 +387,7 @@ following line in &man.loader.conf.5;:
<note>
<para>Если вы <link
linkend="cutting-edge">синхронизируете дерево исходных текстов</link>
linkend="updating-upgrading">ÓÉÎÈÒÏÎÉÚÉÒÕÅÔÅ ÄÅÒÅ×Ï ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×</link>
с деревом проекта &os;, не забудьте свериться с файлом
<filename>/usr/src/UPDATING</filename> перед обновлением. В этом
файле описаны все важные вопросы и области исходного кода, требующие

View file

@ -450,7 +450,8 @@
</varlistentry>
<varlistentry>
<term><emphasis><xref linkend="cutting-edge"/>, 盍 信遗奈磐 艘僚 伊谝谅显纤</emphasis></term>
<term><emphasis><xref linkend="updating-upgrading"/>, ïÂÎÏ×ÌÅÎÉÅ
ÓÉÓÔÅÍÙ É ÓÍÅÎÁ ×ÅÒÓÉÉ</emphasis></term>
<listitem>
<para>Объясняет различия между FreeBSD-STABLE, FreeBSD-CURRENT и
FreeBSD-RELEASE. Рассказывает, кому из пользователей будет полезно

View file

@ -2699,7 +2699,7 @@ boot:</screen>
<procedure>
<step>
<para>ðÏÌÕÞÉÔÅ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ ÑÄÒÁ (ÇÌÁ×Á
<xref linkend="cutting-edge"/>)</para>
<xref linkend="updating-upgrading"/>)</para>
</step>
<step>