diff options
Diffstat (limited to 'ru_RU.KOI8-R/books/handbook/cutting-edge/chapter.xml')
-rw-r--r-- | ru_RU.KOI8-R/books/handbook/cutting-edge/chapter.xml | 311 |
1 files changed, 120 insertions, 191 deletions
diff --git a/ru_RU.KOI8-R/books/handbook/cutting-edge/chapter.xml b/ru_RU.KOI8-R/books/handbook/cutting-edge/chapter.xml index 81ac2cffbf..97ccf4b878 100644 --- a/ru_RU.KOI8-R/books/handbook/cutting-edge/chapter.xml +++ b/ru_RU.KOI8-R/books/handbook/cutting-edge/chapter.xml @@ -7,56 +7,32 @@ Original revision: r33528 --> - -<chapter id="updating-upgrading"> - <chapterinfo> +<chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:id="updating-upgrading"> + <info><title>Обновление системы и смена версии</title> <authorgroup> - <author> - <firstname>Jim</firstname> - - <surname>Mock</surname> - - <contrib>Реструктурирование, реорганизацию и частичное обновление - выполнил </contrib> - </author> + <author><personname><firstname>Jim</firstname><surname>Mock</surname></personname><contrib>Реструктурирование, реорганизацию и частичное обновление + выполнил </contrib></author> <!-- Март 2000 --> </authorgroup> <authorgroup> - <author> - <firstname>Jordan</firstname> - <surname>Hubbard</surname> - <contrib>Оригинальный текст написали </contrib> - </author> - - <author> - <firstname>Poul-Henning</firstname> - <surname>Kamp</surname> - </author> - - <author> - <firstname>John</firstname> - <surname>Polstra</surname> - </author> - - <author> - <firstname>Nik</firstname> - <surname>Clayton</surname> - </author> + <author><personname><firstname>Jordan</firstname><surname>Hubbard</surname></personname><contrib>Оригинальный текст написали </contrib></author> + + <author><personname><firstname>Poul-Henning</firstname><surname>Kamp</surname></personname></author> + + <author><personname><firstname>John</firstname><surname>Polstra</surname></personname></author> + + <author><personname><firstname>Nik</firstname><surname>Clayton</surname></personname></author> </authorgroup> - <!-- с замечаниями от многих других --> + <authorgroup> - <author> - <firstname>Андрей</firstname> - <surname>Захватов</surname> - <contrib>Перевод на русский язык: </contrib> - </author> + <author><personname><firstname>Андрей</firstname><surname>Захватов</surname></personname><contrib>Перевод на русский язык: </contrib></author> </authorgroup> - </chapterinfo> + </info> - <title>Обновление системы и смена версии</title> + - <sect1 id="updating-upgrading-synopsis"> + <sect1 xml:id="updating-upgrading-synopsis"> <title>Краткий обзор</title> <para>Между релизами над &os; ведется постоянная работа. Некоторые @@ -107,8 +83,7 @@ <itemizedlist> <listitem> - <para>Полностью настроить своё подключение к сети (<xref - linkend="advanced-networking"/>).</para> + <para>Полностью настроить своё подключение к сети (<xref linkend="advanced-networking"/>).</para> </listitem> <listitem> @@ -120,31 +95,22 @@ <note> <para>В этой главе для получения и обновления исходных текстов &os; используется команда <command>cvsup</command>. Для этого вам - нужно установить порт или пакет <filename - role="package">net/cvsup-without-gui</filename>. Начиная с версии + нужно установить порт или пакет <package>net/cvsup-without-gui</package>. Начиная с версии &os; 6.2-RELEASE для этих целей можно воспользоваться командой &man.csup.1;, которая входит в состав системы.</para> </note> </sect1> - <sect1 id="updating-upgrading-freebsdupdate"> - <sect1info> + <sect1 xml:id="updating-upgrading-freebsdupdate"> + <info><title>Обновление FreeBSD</title> <authorgroup> - <author> - <firstname>Tom</firstname> - <surname>Rhodes</surname> - <contrib>Оригинальный текст написал </contrib> - </author> + <author><personname><firstname>Tom</firstname><surname>Rhodes</surname></personname><contrib>Оригинальный текст написал </contrib></author> </authorgroup> <authorgroup> - <author> - <firstname>Colin</firstname> - <surname>Percival</surname> - <contrib>На основе заметок, которые предоставил </contrib> - </author> + <author><personname><firstname>Colin</firstname><surname>Percival</surname></personname><contrib>На основе заметок, которые предоставил </contrib></author> </authorgroup> - </sect1info> - <title>Обновление FreeBSD</title> + </info> + <indexterm><primary>обновление и смена версии</primary></indexterm> <indexterm> @@ -176,8 +142,7 @@ следует ознакомиться с объявлением о выпуске текущей версии, так как там может содержаться важная информация, применимая к версии, на которую намечен переход. С соответствующими объявлениями можно - ознакомиться, перейдя по следующей ссылке: <ulink - url="http://www.FreeBSD.org/releases/"></ulink>.</para> + ознакомиться, перейдя по следующей ссылке: <uri xlink:href="http://www.FreeBSD.org/releases/">http://www.FreeBSD.org/releases/</uri>.</para> </note> <para>Если имеется задание <command>crontab</command>, запускающее @@ -201,8 +166,7 @@ Components src world kernel</programlisting> (world) и ядро (kernel). Компоненты те же самые, что и во время установки; в частности, добавление "world/games" позволяет обновить игры. Использование "src/bin" позволяет обновить - исходный код в <filename - class="directory">src/bin</filename>.</para> + исходный код в <filename>src/bin</filename>.</para> <para>Лучшим вариантом будет оставить всё как есть, поскольку изменение этого перечня с целью добавления особых пунктов @@ -215,9 +179,7 @@ Components src world kernel</programlisting> # statement will be ignored. IgnorePaths</programlisting> - <para>Добавьте сюда пути к каталогам (например, <filename - class="directory">/bin</filename> или <filename - class="directory">/sbin</filename>), которые вы хотели бы + <para>Добавьте сюда пути к каталогам (например, <filename>/bin</filename> или <filename>/sbin</filename>), которые вы хотели бы оставить нетронутыми в процессе обновления. Этот параметр можно использовать для предотвращения перезаписывания локальных изменений программой <command>freebsd-update</command>.</para> @@ -246,7 +208,7 @@ MergeChanges /etc/ /var/named/etc/</programlisting> меньшим количеством параметров: результат слияния принимается, открывается редактор или <command>freebsd-update</command> прекращает свою работу. В случае сомнений сделайте резервную - копию <filename class="directory">/etc</filename> и просто + копию <filename>/etc</filename> и просто согласитесь со всеми изменениями. Для получения подробной информации по команде <command>mergemaster</command> смотрите <xref linkend="mergemaster"/>.</para> @@ -299,7 +261,7 @@ MergeChanges /etc/ /var/named/etc/</programlisting> <option>cron</option> <command>freebsd-update</command> ограничится проверкой доступных обновлений. В случае наличия обновлений они будут автоматически загружены и сохранены на локальном диске. - Пользователю <username>root</username> будет отправлено + Пользователю <systemitem class="username">root</systemitem> будет отправлено соответствующее письмо, так что эти обновления можно будет установить самостоятельно.</para> @@ -328,8 +290,7 @@ MergeChanges /etc/ /var/named/etc/</programlisting> <para>Этот процесс удаляет старые объектные файлы и библиотеки, что может нарушить работу большинства сторонних приложений. Все установленные порты рекомендуется либо удалить и переустановить - заново, либо обновить с использованием программы <filename - role="package">ports-mgmt/portupgrade</filename>. Большинство + заново, либо обновить с использованием программы <package>ports-mgmt/portupgrade</package>. Большинство пользователей предпочтут выполнить тестовое построение, запустив для этого следующую команду:</para> @@ -337,7 +298,7 @@ MergeChanges /etc/ /var/named/etc/</programlisting> <para>Это позволит убедиться в том, что всё будет переустановлено правильно. Обратите внимание, что если переменной окружения - <makevar>BATCH</makevar> присвоить значение <literal>yes</literal>, + <varname>BATCH</varname> присвоить значение <literal>yes</literal>, то на все вопросы в течение этого процесса будет возвращаться ответ <literal>yes</literal>, что позволит исключить необходимость ручного вмешательства в процесс построения.</para> @@ -388,8 +349,7 @@ Does this look reasonable (y/n)? y</screen> автоматически, а можно открыть текстовый редактор для слияния вручную. Результат успешного слияния будет показан на экране. Неудачное или пропущенное слияние вызовет преждевременное завершение - программы. Можно подготовить резервную копию каталога <filename - class="directory">/etc</filename> для таких важных файлов как + программы. Можно подготовить резервную копию каталога <filename>/etc</filename> для таких важных файлов как <filename>master.passwd</filename> и <filename>group</filename> и выполнить их слияние вручную позднее.</para> @@ -432,7 +392,7 @@ Does this look reasonable (y/n)? y</screen> установленное программное обеспечение может зависеть от библиотек, которые были удалены в процессе смены версии операционной системы. Для автоматизации этого процесса можно воспользоваться командой - <filename role="package">ports-mgmt/portupgrade</filename>. + <package>ports-mgmt/portupgrade</package>. Начать можно со следующих команд:</para> <screen>&prompt.root; <userinput>portupgrade -f ruby</userinput> @@ -465,8 +425,7 @@ Does this look reasonable (y/n)? y</screen> <warning> <para>Не смотря на то, что команда называется <acronym>IDS</acronym>, это ни в коей мере не должно являться - заменой системе обнаружения вторжений, такой как <filename - role="package">security/snort</filename>. Поскольку + заменой системе обнаружения вторжений, такой как <package>security/snort</package>. Поскольку <command>freebsd-update</command> сохраняет свои данные на диске, возможность подмены становится очевидной. И хотя эта возможность может быть уменьшена при использовании настройки @@ -512,24 +471,16 @@ Does this look reasonable (y/n)? y</screen> </sect2> </sect1> - <sect1 id="updating-upgrading-portsnap"> - <sect1info> + <sect1 xml:id="updating-upgrading-portsnap"> + <info><title>Portsnap: средство обновления Коллекции Портов</title> <authorgroup> - <author> - <firstname>Tom</firstname> - <surname>Rhodes</surname> - <contrib>Предоставил </contrib> - </author> + <author><personname><firstname>Tom</firstname><surname>Rhodes</surname></personname><contrib>Предоставил </contrib></author> </authorgroup> <authorgroup> - <author> - <firstname>Colin</firstname> - <surname>Percival</surname> - <contrib>На основе заметок, которые предоставил </contrib> - </author> + <author><personname><firstname>Colin</firstname><surname>Percival</surname></personname><contrib>На основе заметок, которые предоставил </contrib></author> </authorgroup> - </sect1info> - <title>Portsnap: средство обновления Коллекции Портов</title> + </info> + <indexterm><primary>обновление и смена версии</primary></indexterm> <indexterm> @@ -591,7 +542,7 @@ Fetching 133 new ports or files... done.</screen> <screen>&prompt.root; <userinput>portsnap fetch update</userinput></screen> </sect1> - <sect1 id="current-stable"> + <sect1 xml:id="current-stable"> <title>Использование ветви разработки</title> <indexterm><primary>-CURRENT</primary></indexterm> <indexterm><primary>-STABLE</primary></indexterm> @@ -601,7 +552,7 @@ Fetching 133 new ports or files... done.</screen> вашу систему с любой из веток. Сначала будет обсуждаться ветка &os.current;, затем &os.stable;.</para> - <sect2 id="current"> + <sect2 xml:id="current"> <title>Как следовать текущим разработкам во &os;</title> <para>Пока вы читаете этот текст, помните, что &os.current; является @@ -727,8 +678,7 @@ Fetching 133 new ports or files... done.</screen> </listitem> <listitem> - <para>Загрузите исходные тексты с <link - linkend="mirrors">зеркального сайта</link> &os;. Вы можете + <para>Загрузите исходные тексты с <link linkend="mirrors">зеркального сайта</link> &os;. Вы можете сделать это одним из следующих двух способов:</para> <orderedlist> @@ -744,8 +694,7 @@ Fetching 133 new ports or files... done.</screen> <command>cvsup</command> при помощи программы <command>cron</command><indexterm><primary><command>cron</command></primary></indexterm> и получают самые свежие исходные тексты автоматически. Измените примерный файл - <filename>supfile</filename> выше и отконфигурируйте <link - linkend="cvsup">cvsup</link><indexterm><primary>-CURRENT</primary><secondary>Синхронизация при помощи <application>CVSup</application></secondary></indexterm> для вашего окружения.</para> + <filename>supfile</filename> выше и отконфигурируйте <link linkend="cvsup">cvsup</link><indexterm><primary>-CURRENT</primary><secondary>Синхронизация при помощи <application>CVSup</application></secondary></indexterm> для вашего окружения.</para> <note> <para>Примерный файл <filename>standard-supfile</filename> предназначен для отслеживания специальной ветки @@ -760,8 +709,7 @@ Fetching 133 new ports or files... done.</screen> <programlisting>*default release=cvs tag=.</programlisting> <para>Для получения подробной информации по использованию - тегов обратитесь к разделу Руководства <link - linkend="cvs-tags">Теги CVS</link>.</para> + тегов обратитесь к разделу Руководства <link linkend="cvs-tags">Теги CVS</link>.</para> </note> </listitem> @@ -771,8 +719,7 @@ Fetching 133 new ports or files... done.</screen> <secondary>Синхронизация при помощи CTM</secondary> </indexterm> - <para>При помощи <application><link - linkend="ctm">CTM</link></application>. Если у вас очень + <para>При помощи <application>CTM</application>. Если у вас очень плохое подключение (дорогое или предоставляющее доступ только к электронной почте), то <application>CTM</application> можно рассматривать как вариант. Однако в нем много @@ -780,8 +727,7 @@ Fetching 133 new ports or files... done.</screen> привести к появлению неправильных файлов. Это привело к тому, что этот способ используется редко, что, в свою очередь, увеличивает шанс появления периодов его - неработы. Мы рекомендуем использовать <application><link - linkend="cvsup">CVSup</link></application> всем, чья скорость + неработы. Мы рекомендуем использовать <application>CVSup</application> всем, чья скорость подключения равна 9600 bps и выше.</para> </listitem> </orderedlist> @@ -799,8 +745,7 @@ Fetching 133 new ports or files... done.</screen> <para>Перед тем, как компилировать &os.current;<indexterm><primary>-CURRENT</primary><secondary>компиляция</secondary></indexterm>, внимательно прочтите файл <filename>Makefile</filename> в каталоге <filename>/usr/src</filename>. В процессе обновления вы - по крайней мере раз должны пройти через <link - linkend="makeworld">установку нового ядра и перестроение всех + по крайней мере раз должны пройти через <link linkend="makeworld">установку нового ядра и перестроение всех компонентов системы</link>. Чтение списка рассылки &a.current.name; и <filename>/usr/src/UPDATING</filename> позволит вам быть в курсе всех процедур, которые иногда бывают необходимы в процессе @@ -818,7 +763,7 @@ Fetching 133 new ports or files... done.</screen> </sect3> </sect2> - <sect2 id="stable"> + <sect2 xml:id="stable"> <title>Работа с веткой stable во &os;</title> <sect3> @@ -852,9 +797,8 @@ Fetching 133 new ports or files... done.</screen> <para>Это не совсем так. Мы не можем поддерживать старые релизы FreeBSD бесконечно долго, хотя мы поддерживаем их многие годы. Полное описание текущей политики безопасности относительно - старых релизов FreeBSD можно найти по адресу <ulink - url="&url.base;/ru/security/"> - http://www.FreeBSD.org/ru/security/</ulink>.</para> + старых релизов FreeBSD можно найти по адресу <link xlink:href="&url.base;/ru/security/"> + http://www.FreeBSD.org/ru/security/</link>.</para> </footnote> , а отслеживание ветки разработки в полном объёме только ради исправлений пробелов в безопасности приводит к появлению большого @@ -914,8 +858,8 @@ Fetching 133 new ports or files... done.</screen> <para>Если вы собираетесь установить новую систему, и хотите, чтобы она соответствовала ежемесячным стандартным сборкам ветви &os.stable;, обратитесь к - <ulink url="&url.base;/snapshots/">странице снэпшотов - </ulink>. Либо вы + <link xlink:href="&url.base;/snapshots/">странице снэпшотов + </link>. Либо вы можете установить самый последний релиз &os.stable;, загрузив его с <link linkend="mirrors">зеркалирующих сайтов</link>, а затем следовать инструкциям ниже по обновлению исходных текстов вашей @@ -939,13 +883,11 @@ Fetching 133 new ports or files... done.</screen> <command>cvsup</command> при помощи программы <command>cron</command><indexterm><primary><command>cron</command></primary></indexterm> и получают самые свежие исходные тексты автоматически. Измените примерный файл - <filename>supfile</filename> выше и отконфигурируйте <link - linkend="cvsup">cvsup</link><indexterm><primary>-STABLE</primary><secondary>Синхронизация при помощи <application>CVSup</application></secondary></indexterm> для вашего окружения.</para> + <filename>supfile</filename> выше и отконфигурируйте <link linkend="cvsup">cvsup</link><indexterm><primary>-STABLE</primary><secondary>Синхронизация при помощи <application>CVSup</application></secondary></indexterm> для вашего окружения.</para> </listitem> <listitem> - <para>При помощи <application><link - linkend="ctm">CTM</link></application><indexterm><primary>-STABLE</primary><secondary>синхронизация при помощи CTM</secondary></indexterm>. Если у вас нет + <para>При помощи <application>CTM</application><indexterm><primary>-STABLE</primary><secondary>синхронизация при помощи CTM</secondary></indexterm>. Если у вас нет быстрого и недорогого подключения к Интернет, то это как раз тот метод, которым вы должны воспользоваться.</para> </listitem> @@ -964,8 +906,7 @@ Fetching 133 new ports or files... done.</screen> <para>Перед тем, как компилировать &os.stable;<indexterm><primary>-STABLE</primary><secondary>компиляция</secondary></indexterm>, внимательно прочтите файл <filename>Makefile</filename> в каталоге <filename>/usr/src</filename>. В процессе обновления вы - по крайней мере раз должны пройти через <link - linkend="makeworld">установку нового ядра и перестроение всех + по крайней мере раз должны пройти через <link linkend="makeworld">установку нового ядра и перестроение всех компонентов системы</link>. Чтение списка рассылки &a.stable.name; и <filename>/usr/src/UPDATING</filename> позволит вам быть в курсе всех процедур, @@ -977,15 +918,14 @@ Fetching 133 new ports or files... done.</screen> </sect2> </sect1> - <sect1 id="synching"> + <sect1 xml:id="synching"> <title>Синхронизация ваших исходных текстов</title> <para>Имеются различные способы использования Интернет (или почтового) подключения для того, чтобы иметь самые последние версии исходных текстов любого проекта &os;, в зависимости от того, чем вы интересуетесь. Основной сервис, который мы предлагаем, - это <link linkend="anoncvs">Анонимный CVS</link>, <link - linkend="cvsup">CVSup</link> и <link linkend="ctm">CTM</link>.</para> + это <link linkend="anoncvs">Анонимный CVS</link>, <link linkend="cvsup">CVSup</link> и <link linkend="ctm">CTM</link>.</para> <warning> <para>Хотя имеется возможностью обновлять только часть дерева исходных @@ -1058,7 +998,7 @@ Fetching 133 new ports or files... done.</screen> пересинхронизироваться.</para> </sect1> - <sect1 id="makeworld"> + <sect1 xml:id="makeworld"> <title>Пересборка <quote>world</quote></title> <indexterm> @@ -1139,14 +1079,14 @@ Fetching 133 new ports or files... done.</screen> <note> <para>Есть несколько редких случаев, когда перед выполнением - <maketarget>buildworld</maketarget> необходимо дополнительно + <buildtarget>buildworld</buildtarget> необходимо дополнительно запустить <command>mergemaster -p</command>. Они описаны в файле <filename>UPDATING</filename>. В общем случае вы можете без ущерба пропустить этот шаг, если не выполняете обновление с одной большой версии &os; на другую.</para> </note> - <para>После успешного выполнения <maketarget>installkernel</maketarget> + <para>После успешного выполнения <buildtarget>installkernel</buildtarget> вам необходимо загрузить систему в однопользовательском режиме (то есть посредством команды <command>boot -s</command>, заданной в приглашении загрузчика). После этого выполните:</para> @@ -1206,13 +1146,13 @@ Fetching 133 new ports or files... done.</screen> полезно задать здесь значения, подходящие вашей системе.</para> <para>Вероятно стоит скопировать строки - <makevar>CFLAGS</makevar> и <makevar>NO_PROFILE</makevar>, + <varname>CFLAGS</varname> и <varname>NO_PROFILE</varname>, расположенные в <filename>/usr/share/examples/etc/make.conf</filename>, в файл <filename>/etc/make.conf</filename> и раскомментировать их.</para> - <para>Посмотрите на другие определения (<makevar>COPTFLAGS</makevar>, - <makevar>NOPORTDOCS</makevar> и так далее) и решите, нужны ли они + <para>Посмотрите на другие определения (<varname>COPTFLAGS</varname>, + <varname>NOPORTDOCS</varname> и так далее) и решите, нужны ли они вам.</para> </sect2> @@ -1236,7 +1176,7 @@ Fetching 133 new ports or files... done.</screen> пользователей или групп.</para> <para>Примером этого является добавление пользователя - <username>smmsp</username>. Пользователи столкнулись с прерыванием + <systemitem class="username">smmsp</systemitem>. Пользователи столкнулись с прерыванием процесса установки, когда &man.mtree.8; пыталась создать <filename>/var/spool/clientmqueue</filename>.</para> @@ -1244,8 +1184,8 @@ Fetching 133 new ports or files... done.</screen> режиме, предваряющем построение системы, задаваемым опцией <option>-p</option>. Она будет сравнивать только те файлы, которые необходимы для успешного выполнения целей - <maketarget>buildworld</maketarget> или - <maketarget>installworld</maketarget>. Если ваша старая версия + <buildtarget>buildworld</buildtarget> или + <buildtarget>installworld</buildtarget>. Если ваша старая версия утилиты <command>mergemaster</command> не поддерживает опцию <option>-p</option>, воспользуйтесь новой версией из дерева исходных текстов при первом запуске:</para> @@ -1257,7 +1197,7 @@ Fetching 133 new ports or files... done.</screen> <para>Если вы параноик, можете поискать файлы, владельцем которых является та группа, которую вы переименовываете или удаляете:</para> - <screen>&prompt.root; <userinput>find / -group <replaceable>GID</replaceable> -print</userinput></screen> + <screen>&prompt.root; <userinput>find / -group GID -print</userinput></screen> <para>выдаст список всех файлов, владельцем которых является группа <replaceable>GID</replaceable> (задаваемая именем или @@ -1265,7 +1205,7 @@ Fetching 133 new ports or files... done.</screen> </tip> </sect2> - <sect2 id="makeworld-singleuser"> + <sect2 xml:id="makeworld-singleuser"> <title>Перейдите в однопользовательский режим</title> <indexterm><primary>однопользовательский режим</primary></indexterm> @@ -1283,8 +1223,8 @@ Fetching 133 new ports or files... done.</screen> выполнения установки. Если вы хотите поступить именно так, просто следуйте инструкциям до момента окончания построения. Вы можете отложить переход в однопользовательский режим до завершения целей - <maketarget>installkernel</maketarget> или - <maketarget>installworld</maketarget>.</para> + <buildtarget>installkernel</buildtarget> или + <buildtarget>installworld</buildtarget>.</para> <para>Как администратор, вы можете выполнить:</para> @@ -1345,7 +1285,7 @@ Fetching 133 new ports or files... done.</screen> </screen> </sect2> - <sect2 id="updating-upgrading-compilebase"> + <sect2 xml:id="updating-upgrading-compilebase"> <title>Перекомпилируйте исходные тексты базовой системы</title> <sect3> @@ -1377,10 +1317,10 @@ Script done, … вывод в <filename>/tmp</filename>. Этот каталог может быть очищен при следующей перезагрузке. Лучше сохранить его в <filename>/var/tmp</filename> (как в предыдущем примере) или в - домашнем каталоге пользователя <username>root</username>.</para> + домашнем каталоге пользователя <systemitem class="username">root</systemitem>.</para> </sect3> - <sect3 id="make-buildworld"> + <sect3 xml:id="make-buildworld"> <title>Компиляция базовых компонентов системы</title> <para>Вы должны находиться в каталоге @@ -1402,7 +1342,7 @@ Script done, … <para>Общий формат командной строки, которую вы будет набирать, таков:</para> - <screen>&prompt.root; <userinput>make -<replaceable>x</replaceable> -D<replaceable>VARIABLE</replaceable> <replaceable>target</replaceable></userinput></screen> + <screen>&prompt.root; <userinput>make -x -DVARIABLE target</userinput></screen> <para>В этом примере <option>-<replaceable>x</replaceable></option> является параметром, который вы передаете в &man.make.1;. @@ -1416,7 +1356,7 @@ Script done, … <filename>/etc/make.conf</filename>, и это — еще один способ их задания.</para> - <screen>&prompt.root; <userinput>make -DNO_PROFILE=true <replaceable>target</replaceable></userinput></screen> + <screen>&prompt.root; <userinput>make -DNO_PROFILE=true target</userinput></screen> <para>является другим способом указания того, что библиотеки для профилирования строить не нужно, и соответствует строке</para> @@ -1440,42 +1380,42 @@ Script done, … примерно так:</para> <screen> -&prompt.root; <userinput>make <replaceable>target</replaceable></userinput> +&prompt.root; <userinput>make target</userinput> </screen> <para>Замените <replaceable>target</replaceable> на одну или более из опций сборки. Первой из них всегда должна быть опция - <makevar>buildworld</makevar>.</para> + <varname>buildworld</varname>.</para> <para>Как указывают на это названия, - <maketarget>buildworld</maketarget> строит полностью новое дерево + <buildtarget>buildworld</buildtarget> строит полностью новое дерево в каталоге <filename>/usr/obj</filename>, а - <maketarget>installworld</maketarget> устанавливает это дерево на + <buildtarget>installworld</buildtarget> устанавливает это дерево на используемой машине.</para> <para>Разделение этих опций весьма полезно по двум причинам. Во-первых, это позволяет вам безопасно строить систему, зная, что компоненты вашей рабочей системы затронуты не будут. Построение <quote>самодостаточно</quote>. По этой причине вы можете спокойно - запустить <maketarget>buildworld</maketarget> на машине, работающей в + запустить <buildtarget>buildworld</buildtarget> на машине, работающей в многопользовательском режиме без опаски получить какие-либо проблемы. Но всё же рекомендуется запускать цель - <maketarget>installworld</maketarget> в однопользовательском + <buildtarget>installworld</buildtarget> в однопользовательском режиме.</para> <para>Во-вторых, это позволяет вам использовать монтирование по NFS для обновления многих машин в сети. Если у вас есть три машины, - <hostid>A</hostid>, <hostid>B</hostid> и <hostid>C</hostid>, которые + <systemitem>A</systemitem>, <systemitem>B</systemitem> и <systemitem>C</systemitem>, которые вы хотите обновить, запустите <command>make buildworld</command> и - <command>make installworld</command> на машине <hostid>A</hostid>. - Хосты <hostid>B</hostid> и <hostid>C</hostid> должны будут + <command>make installworld</command> на машине <systemitem>A</systemitem>. + Хосты <systemitem>B</systemitem> и <systemitem>C</systemitem> должны будут затем смонтировать по NFS каталоги <filename>/usr/src</filename> - и <filename>/usr/obj</filename> с машины <hostid>A</hostid>, и вы + и <filename>/usr/obj</filename> с машины <systemitem>A</systemitem>, и вы сможете запустить <command>make installworld</command> для установки - результатов построения на машинах <hostid>B</hostid> и - <hostid>C</hostid>.</para> + результатов построения на машинах <systemitem>B</systemitem> и + <systemitem>C</systemitem>.</para> - <para>Хотя цель <maketarget>world</maketarget> всё ещё имеется в + <para>Хотя цель <buildtarget>world</buildtarget> всё ещё имеется в наличии, вам настоятельно рекомендуется не пользоваться ею.</para> <para>Выполните</para> @@ -1546,19 +1486,18 @@ Script done, … работоспособности системы вы можете построить новое ядро на основе вашего обычного конфигурационного файла ядра.</para> - <para>В &os; важно выполнить <link - linkend="make-buildworld">buildworld</link> перед сборкой + <para>В &os; важно выполнить <link linkend="make-buildworld">buildworld</link> перед сборкой нового ядра.</para> <note> <para>Если вы хотите построить собственное ядро и уже подготовили файл конфигурации, просто используйте - <literal>KERNCONF=<replaceable>MYKERNEL</replaceable></literal> + <literal>KERNCONF=MYKERNEL</literal> следующим образом:</para> <screen>&prompt.root; <userinput>cd /usr/src</userinput> -&prompt.root; <userinput>make buildkernel KERNCONF=<replaceable>MYKERNEL</replaceable></userinput> -&prompt.root; <userinput>make installkernel KERNCONF=<replaceable>MYKERNEL</replaceable></userinput></screen> +&prompt.root; <userinput>make buildkernel KERNCONF=MYKERNEL</userinput> +&prompt.root; <userinput>make installkernel KERNCONF=MYKERNEL</userinput></screen> </note> <para>Заметьте, что, если вы установили @@ -1566,7 +1505,7 @@ Script done, … <emphasis>и</emphasis> установили флаг <literal>noschg</literal> или подобный на бинарный файл ядра, то вы будете вынуждены перейти в однопользовательский режим для того, чтобы воспользоваться - <maketarget>installkernel</maketarget>. В противном случае вы + <buildtarget>installkernel</buildtarget>. В противном случае вы должны выполнять эти команды без проблем. Обратитесь к справочным страницам об &man.init.8; для получения подробной информации о <literal>kern.securelevel</literal> и &man.chflags.1; для получения @@ -1582,13 +1521,13 @@ Script done, … в <xref linkend="makeworld-singleuser"/>.</para> </sect2> - <sect2 id="make-installworld"> + <sect2 xml:id="make-installworld"> <title>Установите новые версии системных программ</title> <para>Если вы компилировали достаточно свежую версию &os;, в которой имеется команда <command>make buildworld</command>, то для установки новых версий программ вы должны теперь выполнить команду - <maketarget>installworld</maketarget>.</para> + <buildtarget>installworld</buildtarget>.</para> <para>Запустите</para> @@ -1600,7 +1539,7 @@ Script done, … задавали значения каких-либо переменных, то при выполнении <command>make installworld</command> вы должны задать те же самые переменные. Это не всегда так для остальных параметров; например, - при выполнении <maketarget>installworld</maketarget> никогда не + при выполнении <buildtarget>installworld</buildtarget> никогда не должен использоваться параметр <option>-j</option>.</para> <para>Например, если вы выполняли команду:</para> @@ -1632,18 +1571,14 @@ Script done, … обязательно сделайте резервную копию каталога <filename>/etc</filename> на случай, если произойдёт что-то непредвиденное.</para> - <sect3 id="mergemaster"> - <sect3info> + <sect3 xml:id="mergemaster"> + <info><title><command>mergemaster</command></title> <authorgroup> - <author> - <firstname>Tom</firstname> - <surname>Rhodes</surname> - <contrib>Текст предоставил </contrib> - </author> + <author><personname><firstname>Tom</firstname><surname>Rhodes</surname></personname><contrib>Текст предоставил </contrib></author> </authorgroup> - </sect3info> + </info> - <title><command>mergemaster</command></title> + <indexterm> <primary><command>mergemaster</command></primary> @@ -1725,8 +1660,7 @@ Script done, … нет в <filename>/usr/src/etc</filename>.</para> <para>Если вы используете &man.mergemaster.8; (как это рекомендуется), - то вы можете перейти сразу к <link - linkend="updating-upgrading-rebooting">следующему + то вы можете перейти сразу к <link linkend="updating-upgrading-rebooting">следующему разделу</link>.</para> <para>Вручную проще всего сделать это, установив файлы в новый каталог, @@ -1878,7 +1812,7 @@ Script done, … </sect3> </sect2> - <sect2 id="updating-upgrading-rebooting"> + <sect2 xml:id="updating-upgrading-rebooting"> <title>Перезагрузка</title> <para>Теперь вы сделали всё. После того, как вы проверили, что всё @@ -2083,7 +2017,7 @@ Building everything.. <listitem> <para>Также в <filename>/etc/make.conf</filename> установите - значение <makevar>CFLAGS</makevar> во что-то типа <option>-O + значение <varname>CFLAGS</varname> во что-то типа <option>-O -pipe</option>. Оптимизация <option>-O2</option> выполняется гораздо медленнее, а разница между <option>-O</option> и <option>-O2</option> обычно несущественна. @@ -2192,18 +2126,14 @@ Building everything.. </sect2> </sect1> - <sect1 id="small-lan"> - <sect1info> + <sect1 xml:id="small-lan"> + <info><title>Отслеживание исходных текстов для нескольких машин</title> <authorgroup> - <author> - <firstname>Mike</firstname> - <surname>Meyer</surname> - <contrib>Текст предоставил </contrib> - </author> + <author><personname><firstname>Mike</firstname><surname>Meyer</surname></personname><contrib>Текст предоставил </contrib></author> </authorgroup> - </sect1info> + </info> - <title>Отслеживание исходных текстов для нескольких машин</title> + <indexterm> <primary>NFS</primary> @@ -2218,7 +2148,7 @@ Building everything.. объём работы, в то время как остальные используют результаты работы посредством NFS. В этом разделе описывается именно этот метод.</para> - <sect2 id="small-lan-preliminaries"> + <sect2 xml:id="small-lan-preliminaries"> <title>Подготовка</title> <para>Первым делом определите набор машин, на которых выполняется один @@ -2253,12 +2183,12 @@ Building everything.. построения должна строить все части основного системного набора, которые будут устанавливаться на каждой машине из набора для построения. Кроме того, у каждой машины построения должно быть задано - имя ядра посредством переменной <makevar>KERNCONF</makevar> в файле + имя ядра посредством переменной <varname>KERNCONF</varname> в файле <filename>/etc/make.conf</filename>, а машина построения должна - перечислить их все в переменной <makevar>KERNCONF</makevar>, причём + перечислить их все в переменной <varname>KERNCONF</varname>, причём первым должно быть имя её собственного ядра. Машина построения должна хранить конфигурационные файлы ядра каждой машины в каталоге - <filename>/usr/src/sys/<replaceable>arch</replaceable>/conf</filename>, + <filename>/usr/src/sys/arch/conf</filename>, если на ней будут строиться соответствующие ядра..</para> </sect2> @@ -2266,8 +2196,7 @@ Building everything.. <title>Основные системные компоненты</title> <para>Теперь, когда всё это сделано, вы готовы к построению. Постройте - ядро и всё окружение так, как это описано в <xref - linkend="make-buildworld"/> на машине построения, но ничего не + ядро и всё окружение так, как это описано в <xref linkend="make-buildworld"/> на машине построения, но ничего не устанавливайте. После того, как процесс построения завершится, перейдите к тестовой машине и установите только что построенное ядро. Если эта машина монтирует каталоги <filename>/usr/src</filename> и @@ -2295,15 +2224,15 @@ Building everything.. с одной и той же машины на всех компьютерах в наборе для построения. Затем вы можете корректно настроить <filename>/etc/make.conf</filename> для использования общего каталога с дистрибутивными файлами. Вы должны - задать переменную <makevar>DISTDIR</makevar> так, чтобы она указывала + задать переменную <varname>DISTDIR</varname> так, чтобы она указывала на общедоступный каталог, доступный тому пользователю, который - отображается в пользователя <username>root</username> для ваших точек + отображается в пользователя <systemitem class="username">root</systemitem> для ваших точек монтирования NFS. Каждая машина - должна задавать <makevar>WRKDIRPREFIX</makevar> так, чтобы она + должна задавать <varname>WRKDIRPREFIX</varname> так, чтобы она указывала на локальный каталог построения. Наконец, если вы собираетесь строить и распространять пакеты, то должны задать - переменную <makevar>PACKAGES</makevar> так, чтобы она указывала на - каталог, соответствующий <makevar>DISTDIR</makevar>.</para> + переменную <varname>PACKAGES</varname> так, чтобы она указывала на + каталог, соответствующий <varname>DISTDIR</varname>.</para> </sect2> </sect1> </chapter> |