aboutsummaryrefslogtreecommitdiff
path: root/ru_RU.KOI8-R/books
diff options
context:
space:
mode:
authorAndrey Zakhvatov <andy@FreeBSD.org>2000-09-18 08:40:01 +0000
committerAndrey Zakhvatov <andy@FreeBSD.org>2000-09-18 08:40:01 +0000
commit303a9dcfab0fbd0d2b59c4b6e41dffa5095133cf (patch)
treecc3fd6a732e05f378f377a57c906905b1ca22801 /ru_RU.KOI8-R/books
parent68b342c3d6249a5bac12f955b54ff57222116d89 (diff)
downloaddoc-303a9dcfab0fbd0d2b59c4b6e41dffa5095133cf.tar.gz
doc-303a9dcfab0fbd0d2b59c4b6e41dffa5095133cf.zip
Synchronize with English 1.91.
Notes
Notes: svn path=/head/; revision=7968
Diffstat (limited to 'ru_RU.KOI8-R/books')
-rw-r--r--ru_RU.KOI8-R/books/faq/book.sgml10605
1 files changed, 5586 insertions, 5019 deletions
diff --git a/ru_RU.KOI8-R/books/faq/book.sgml b/ru_RU.KOI8-R/books/faq/book.sgml
index 1782f9698d..7d6bbc1dba 100644
--- a/ru_RU.KOI8-R/books/faq/book.sgml
+++ b/ru_RU.KOI8-R/books/faq/book.sgml
@@ -1,10 +1,11 @@
<!DOCTYPE BOOK PUBLIC "-//FreeBSD//DTD DocBook V3.1-Based Extension//EN" [
<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN">
%man;
+<!ENTITY % authors SYSTEM "../../../en_US.ISO_8859-1/books/handbook/authors.ent"> %authors;
]>
-<!-- FreeBSD Frequently Asked Questions. Russian translation -->
-<!-- $FreeBSDru: frdp/doc/ru_RU.KOI8-R/books/faq/book.sgml,v 1.13 2000/07/08 17:03:33 phantom Exp $ -->
+<!-- $FreeBSD$ -->
+<!-- $FreeBSDru: frdp/doc/ru_RU.KOI8-R/books/faq/book.sgml,v 1.26 2000/09/18 05:19:01 andy Exp $ -->
<book lang="en">
@@ -26,14 +27,13 @@
замечания справедливы для версий FreeBSD 2.0.5 и выше. Пункты с
пометкой &lt;XXX&gt; находятся в стадии разработки. Если вы хотите
помочь в составлении этого документа, пошлите письмо в список рассылки
- проекта по адресу <ulink URL="mailto:freebsd-doc@FreeBSD.org">
- &lt;freebsd-doc@FreeBSD.org&gt;</ulink>.
+ проекта по адресу <email>freebsd-doc@FreeBSD.org</email>.
Последняя редакция этого документа всегда доступна с <ulink
URL="http://www.FreeBSD.org/">WWW-сервера FreeBSD</ulink>. Его также
можно получить в виде одного большого
<ulink URL="book.html">HTML-файла</ulink> по HTTP или в виде обычного
текстового файла, файла формата postscript или PDF с <ulink
- URL="ftp://ftp.FreeBSD.org/pub/FreeBSD/doc">FTP-сервера</ulink>.
+ URL="ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/">FTP-сервера</ulink>.
Вы также можете осуществить
<ulink URL="http://www.FreeBSD.org/search/search.html">поиск</ulink> в
FAQ.</para>
@@ -54,7 +54,7 @@
<para>Мы прилагаем все усилия, чтобы сделать этот FAQ максимально
информативным; если у вас есть идеи по его усовершенствованию, пожалуйста,
- напишите <ulink URL="mailto:FAQ@FreeBSD.org">составителям</ulink>.</para>
+ напишите составителям по адресу &a.faq;.</para>
<qandaset>
@@ -65,20 +65,20 @@
<answer>
- <para>В двух словах, FreeBSD - это UN*X-подобная операционная система,
- основанная на версии 4.4BSD Калифорнийского Университета (Беркли) для
- платформы i386. Также она косвенно базируется на 386BSD (BSD Net/2,
- перенесённой на платформу i386 Вильямом Джолитцем (William Jolitz)), хотя
- от того первоначального кода осталось очень мало. Более подробные
- объяснения того, что представляет из себя FreeBSD и для чего она может вам
- пригодиться, можно найти на <ulink
+ <para>В двух словах, FreeBSD - это UN*X-подобная операционная система для
+ платформ i386 и Alpha/AXP, разработанная на основе операционной системы
+ 4.4BSD-lite Калифорнийского Университета (Беркли). Также она косвенно
+ базируется на 386BSD (BSD Net/2, перенесённой на платформу i386 Вильямом
+ Джолитцем (William Jolitz)), хотя от того первоначального кода осталось
+ очень мало. Более подробные объяснения того, что представляет из себя
+ FreeBSD и для чего она может вам пригодиться, можно найти на <ulink
URL="http://www.FreeBSD.org/">домашней странице FreeBSD</ulink>.</para>
-
+
<para>FreeBSD используется компаниями, Интернет-провайдерами, научными
работниками, профессионалами в вычислительной технике, студентами и
рядовыми пользователями по всему миру для работы, образования и отдыха. Вы
можете увидеть некоторых из них в нашей <ulink
- URL="../../gallery/gallery.html">галерее</ulink>.</para>
+ URL="http://www.FreeBSD.org/ru/gallery/gallery.html">галерее</ulink>.</para>
<para>Для более детального ознакомления с FreeBSD, пожалуйста, обратитесь к
<ulink URL="../../handbook/index.html">Руководству по
@@ -100,10 +100,11 @@
ограничений. Многие из нас вкладывают значительные усилия в её разработку
(и проектирование) и определённо были бы не против получения финансовой
поддержки, но мы не собираемся её требовать. Мы надеемся, что наша основная
- и самая значительная "миссия" - предоставить код всем желающим, для любых
- целей, так чтобы он нашел самое широкое применение и принес наибольшую
- пользу. Это, на наш взгляд, одна из самых фундаментальных целей Free
- Software, которую мы с энтузиазмом поддерживаем.</para>
+ и самая значительная <quote>миссия</quote> - предоставить код всем
+ желающим, для любых целей, так чтобы он нашел самое широкое применение и
+ принес наибольшую пользу. Это, на наш взгляд, одна из самых
+ фундаментальных целей Free Software, которую мы с энтузиазмом
+ поддерживаем.</para>
<para>Исходный код, подпадающий под действие GNU General
Public License (GPL) или GNU Library General Public License (LGPL),
@@ -149,13 +150,13 @@
</para>
<para>Для тех наших читателей, для которых английский не является родным
- языком, можно добавить, что слово ``free'' используется здесь в двух
- смыслах, один означает ``бесплатно'', а другой ``вы можете делать всё,
- что хотите''. За исключением пары вещей, которые вы <emphasis>не
- можете</emphasis> делать с FreeBSD, например, претендовать на то, что
- являетесь её разработчиком, на самом деле можно делать с ней всё, что вам
- заблагорассудится.</para>
-
+ языком, можно добавить, что слово <quote>free</quote> используется здесь в
+ двух смыслах, один означает <quote>бесплатно</quote>, а другой <quote>вы
+ можете делать всё, что хотите</quote>. За исключением пары вещей, которые
+ вы <emphasis>не можете</emphasis> делать с FreeBSD, например, претендовать
+ на то, что являетесь её разработчиком, на самом деле можно делать с ней
+ всё, что вам заблагорассудится.</para>
+
</answer>
</qandaentry>
@@ -168,8 +169,8 @@
<answer>
<para>Версия <ulink
- URL="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/4.0-RELEASE/">
- 4.0</ulink>, выпущенная мае 2000 года, является самой последней
+ URL="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/4.1-RELEASE/">
+ 4.1</ulink>, выпущенная в июле 2000 года, является самой последней
<emphasis>стабильной</emphasis> версией. Она также является самым последним
<emphasis>релизом</emphasis>.</para>
@@ -215,14 +216,15 @@
FreeBSD-CURRENT. Эта ветвь зачастую меняется очень быстро и вполне может
быть просто не работоспособна некоторое время. Те, кто используют
FreeBSD-CURRENT, должны быть в состоянии анализировать любые проблемы и
- сообщать о них, если это действительно ошибки, а не ``глюки''. Сообщения
- типа ``make world produces some error about groups'' в списке рассылки
- -CURRENT иногда воспринимаются пренебрежительно.</para>
-
- <para>Из ветви -CURRENT регулярно делаются <ulink
- URL="../../releases/snapshots.html">снэпшоты</ulink>, некоторые из которых
- доступны на CDROM. Их предназначение:</para>
+ сообщать о них, если это действительно ошибки, а не <quote>глюки</quote>.
+ Сообщения типа <quote>make world produces some error about groups</quote>
+ в списке рассылки -CURRENT иногда воспринимаются пренебрежительно.</para>
+ <para>Ежедневно из веток -CURRENT и -STABLE делаются <ulink
+ URL="http://www.FreeBSD.org/ru/releases/snapshots.html">снэпшоты</ulink>.
+ В настоящее время имеются в наличии дистрибутивы некоторых снапшотов. Их
+ предназначение:</para>
+
<para>
<itemizedlist>
<listitem>
@@ -230,8 +232,8 @@
</listitem>
<listitem>
- <para>Дать людям, которые хотят работать с -CURRENT, но не
- имеют времени и/или мозможности (пропускной способности) для
+ <para>Дать людям, которые хотят работать с -CURRENT или -STABLE, но не
+ имеют времени и/или возможности (пропускной способности) для
отслеживания ежедневных измененений, простой способ её
установки.</para>
</listitem>
@@ -250,19 +252,21 @@
</itemizedlist>
</para>
- <para>Не утверждается, что всякий снэпшот имеет качество ``готового
- продукта''. Для стабильной и надёжной работы вам нужно дождаться выхода
- полного релиза.</para>
+ <para>Не утверждается, что всякий снэпшот -CURRENT имеет качество
+ <quote>готового продукта</quote>. Если вам нужна стабильно работающая и
+ полностью оттестированная система, то необходимо дождаться выхода полного
+ релиза или воспользоваться снэпшотами -STABLE.</para>
<para>Снэпшоты доступны непосредственно с <ulink
URL="ftp://current.FreeBSD.org/pub/FreeBSD/">
ftp://current.FreeBSD.org/pub/FreeBSD/</ulink>
- для 5.0-CURRENT и <ulink url="ftp://releng4.FreeBSD.org/pub/FreeBSD/">
- releng4.FreeBSD.org</ulink> для снэпшотов 4-STABLE. Снэпшоты 3-STABLE
- находятся на сервере <ulink url="releng3.FreeBSD.org/pub/FreeBSD/">
- releng3.FreeBSD.org</ulink>. Снэпшоты, как правило, генерируются
- ежедневно для всех активно разрабатываемых веток.</para>
-
+ для 5.0-CURRENT и <ulink URL="ftp://releng4.FreeBSD.org/pub/FreeBSD/">
+ releng4.FreeBSD.org</ulink> для снэпшотов 4-STABLE. На момент написания
+ этого документа (май 2000) снэпшоты 3-STABLE больше не выпускаются.</para>
+
+ <para>Снэпшоты, как правило, генерируются ежедневно для всех активно
+ разрабатываемых веток.</para>
+
</answer>
</qandaentry>
@@ -286,8 +290,7 @@
пор, как была выпущена 2.0. Если вам поможет картинка, то вот как это
выглядит:</para>
- <para>
- <literallayout>
+ <programlisting>
2.0
|
|
@@ -307,26 +310,30 @@
3.0-RELEASE (Окт 1998)
|
| [3.0-STABLE]
- *ВЕТВЬ* 3.1-RELEASE (Фев 1999) -&gt; 3.2 -&gt; 3.3 -&gt; 3.4 -&gt; ... будущие релизы 3.x ...
- | (Май 1999) (Сен 1999) (Дек 1999)
+ *ВЕТВЬ* 3.1-RELEASE (Фев 1999) -&gt; 3.2 -&gt; 3.3 -&gt; 3.4 -&gt; 3.5 -&gt; 3.5.1
+ | (Май 1999) (Сен 1999) (Дек 1999) (Июнь 2000) (Июль 2000)
|
| [4.0-STABLE]
-*ВЕТВЬ* 4.0 (Март 2000) -&gt; ... будущие редизы 4.x ...
- |
+*ВЕТВЬ* 4.0 (Март 2000) -&gt; 4.1 -&gt; ... будущие редизы 4.x ...
|
+ | (Июль 2000)
\|/
+
[продолжение 5.0-CURRENT]
- </literallayout>
- </para>
+ </programlisting>
<para>Ветвь -CURRENT постепенно переходит в 5.0 и выше, тогда как предыдущая
- ветвь, 2.2-STABLE, была вытеснена релизом 2.2.8. Теперь его заменила ветвь
- 3.4-STABLE, последний релиз которой, 3.4-RELEASE, вышел в середине декабря
- 1999 года. 4.0-RELEASE была выпущена в середине марта 2000 года и заменит
- ветку 3.X к лету 2000 года. "Текущей веткой" сейчас является 5.0-CURRENT,
- выход релиза которой ещё не запланирован.</para>
-
+ ветвь, 2.2-STABLE, была вытеснена релизом 2.2.8. Её заменила ветвь
+ 3-STABLE, финальный релиз которой, 3.5.1-RELEASE, вышел в июле 2000 года.
+ В мае 2000 года (хотя релиз 3.5 вышел после этой даты) ветвь 3-STABLE была
+ более или менее полностью вытеснена ветвью 4-STABLE. В июле 2000 года
+ была выпущена 4.1-RELEASE. Активно разрабатываемой веткой -STABLE является
+ 4-STABLE, хотя исправления ошибок (в основном касающиеся вопросов
+ безопасности) всё ещё вносятся и в 3-STABLE. Предполагается, что ветвь 3.X
+ будет официально признана устаревшей летом 2000 года. <quote>Текущей
+ веткой</quote> сейчас является 5.0-CURRENT, хотя выход её релиза ещё не
+ запланирован.</para>
+
</answer>
</qandaentry>
@@ -345,11 +352,10 @@
лучших сторон FreeBSD, хотя она несколько разочаровывает, если вам не
терпится попробовать новые возможности..</para>
- <para>В среднем новые версии выпускаются примерно каждые четыре
- месяца.</para>
+ <para>В среднем новые версии выпускаются примерно раз в четыре месяца.</para>
- <para>Для тех, кому не терпится, предназначены SNAP-релизы, выпускаемые более
- часто, в частности, в течении месяца перед релизом.</para>
+ <para>Для тех, кому не терпится, ежедневно выпускаются бинарные релизы..
+ смотрите выше.</para>
</answer>
</qandaentry>
@@ -362,9 +368,9 @@
<answer>
- <para>Начиная с версии 3.x, FreeBSD работает как на архитектуре x86,
- так и на платформе <ulink URL="../alpha/alpha.html">DEC Alpha</ulink>.
- Некоторый интерес был проявлен к переносу на
+ <para>Начиная с версии 3.x, FreeBSD работает как на архитектуре x86, так и на
+ платформе <ulink URL="http://www.FreeBSD.org/ru/alpha/alpha.html">
+ DEC Alpha</ulink>. Некоторый интерес был проявлен к переносу на
SPARC, однако подробности этого проекта ещё не ясны.</para>
<para>Если ваш компьютер имеет другую архитектуру и вам нужно что-то прямо
@@ -415,34 +421,21 @@
<para>
<itemizedlist>
<listitem>
- <para>Текущий релиз 2.2-STABLE, 2.2.8R, находится в каталоге <ulink
- URL="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/2.2.8-RELEASE/">
- 2.2.8-RELEASE</ulink>.</para>
- </listitem>
-
- <listitem>
- <para>Текущий релиз 3.X-STABLE, 3.4-RELEASE, находится в каталоге <ulink
- URL="ftp://current.FreeBSD.org/pub/FreeBSD/releases/i386/3.4-RELEASE">
- 3.4-RELEASE</ulink>.</para>
+ <para>Текущий релиз 3.X-STABLE, 3.4-RELEASE, находится в <ulink
+ URL="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/3.4-RELEASE">
+ каталоге с 3.4-RELEASE</ulink>.</para>
</listitem>
<listitem>
- <para>Текущий релиз 4.X-STABLE, 4.0-RELEASE, находится в каталоге с
- <ulink
- url="ftp://current.FreeBSD.org/pub/FreeBSD/releases/i386/4.0-RELEASE">
- 4.0-RELEASE</ulink>.</para>
+ <para>Текущий релиз ветки 4-STABLE, 4.1-RELEASE, находится в <ulink
+ URL="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/4.1-RELEASE">
+ каталоге с 4.1-RELEASE</ulink>.</para>
</listitem>
<listitem>
- <para>Выпуски <ulink
- URL="ftp://releng3.FreeBSD.org/pub/FreeBSD/">
- 3.X Snapshot</ulink> также делаются ежедневно из ветки RELENG_3
- (после 3.0-RELEASE), пока она переходит в 3.5-RELEASE.</para>
- </listitem>
-
- <listitem>
- <para>Кроме того, ежедневно делаются снэпшоты <ulink
- url="ftp://releng4.FreeBSD.org/pub/FreeBSD/">4.X</ulink>.</para>
+ <para><ulink
+ URL="ftp://releng4.FreeBSD.org/pub/FreeBSD/">Снэпшоты
+ 4.X</ulink> обычно делаются ежедневно.</para>
</listitem>
<listitem>
@@ -547,7 +540,7 @@
<qandaentry>
- <question>
+ <question id="irc">
<para>Существуют ли каналы IRC (Internet Relay Chat) по FreeBSD?</para>
</question>
@@ -558,7 +551,7 @@
<para>
<itemizedlist>
<listitem>
- <para>Канал <emphasis remap=tt>#FreeBSD</emphasis> в сети EFNet
+ <para>Канал <literal>#FreeBSD</literal> в сети EFNet
посвящён FreeBSD, но не обращайтесь туда за технической поддержкой и
даже не пытайтесь найти человека, который поможет вам обойтись без
чтения страниц Справочника или собственных изысканий. Этот канал
@@ -569,18 +562,33 @@
</listitem>
<listitem>
- <para>Канал <emphasis remap=tt>#FreeBSD</emphasis> в сети DALNET
+ <para>Канал <emphasis>#FreeBSDhelp</emphasis> в сети EFNet предназначен
+ для помощи пользователям FreeBSD. Здесь гораздо более благосклонно
+ относятся к вопросам, чем на
+ канале <emphasis>#FreeBSD</emphasis>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Канал <literal>#FreeBSD</literal> в сети DALNET
доступен на сервере <hostid>irc.dal.net</hostid> в США и на
<hostid>irc.eu.dal.net</hostid> в Европе.</para>
</listitem>
<listitem>
- <para>Канал <emphasis remap=tt>#FreeBSD</emphasis> в сети UNDERNET
+ <para>Канал <literal>#FreeBSD</literal> в сети UNDERNET
доступен на серверах <hostid>us.undernet.org</hostid> в США и
<hostid>eu.undernet.org</hostid> в Европе. Так как это канал
взаимопомощи, приготовьтесь к чтению документации, к которой вас
отошлют.</para>
</listitem>
+
+ <listitem>
+ <para>Канал <literal>#FreeBSD</literal>в сети <ulink
+ url="http://www.hybnet.com/">HybNet</ulink> доступен на сервере
+ <hostid>irc.FreeBSD.org</hostid>. Этот канал
+ <emphasis>на самом деле</emphasis> является каналом
+ взаимопомощи.</para>
+ </listitem>
</itemizedlist>
</para>
@@ -604,33 +612,30 @@
<answer>
<para>Вы можете обратиться в FreeBSD Documentation Project (а ещё лучше к
- нему присоединиться) через список рассылки <emphasis
- remap=tt>doc</emphasis>: <ulink
- URL="mailto:freebsd-doc@FreeBSD.org">
- &lt;freebsd-doc@FreeBSD.org&gt;</ulink>.
+ нему присоединиться) через список рассылки
+ <literal>freebsd-doc</literal>: <email>freebsd-doc@FreeBSD.org</email>.
Этот список рассылки предназначен для обсуждения документации
FreeBSD. Для вопросов по системе предназначен список рассылки
- <emphasis remap=tt>questions</emphasis>: <ulink
- URL="mailto:freebsd-questions@FreeBSD.org">
- &lt;freebsd-questions@FreeBSD.org&gt;</ulink>.</para>
+ <literal>freebsd-questions</literal>:
+ <email>freebsd-questions@FreeBSD.org</email>.</para>
- <para>``Руководство'' по FreeBSD доступно и может быть найдено на
- <ulink URL="../../handbook/index.html">веб-сервере</ulink>.
- Заметьте, что этот проект находится в процессе разработки,
- так что некоторые части могут отсутствовать.</para>
+ <para>Имеется <quote>Руководство</quote> по FreeBSD, и оно может быть найдено
+ на <ulink URL="../../handbook/index.html">веб-сервере</ulink>.
+ Заметьте, что этот проект находится в процессе разработки;
+ некоторые части могут отсутствовать или быть устаревшими.</para>
<para>Прекрасным печатным руководством по FreeBSD является книга
- ``The Complete FreeBSD'', написанная Грегом Лиэем (Greg Lehay) и
+ <quote>The Complete FreeBSD</quote>, написанная Грегом Лиэем (Greg Lehay) и
изданная Walnut Creek CDROM Books. В настоящее время вышло второе
издание, содержащее 1,750 страниц руководств по установке и
администрированию системы и прикладных программ, а также страницы
Справочника. Книга (и последний релиз FreeBSD) может быть заказана у
- <ulink URL="http://www.cdrom.com">Walnut Creek</ulink>,
- <ulink URL="http://www.cheapbytes.com">CheapBytes</ulink>, или в
+ <ulink URL="http://www.cdrom.com/">Walnut Creek</ulink>,
+ <ulink URL="http://www.cheapbytes.com/">CheapBytes</ulink>, или в
вашем любимом книжном магазине. Индекс ISBN 1-57176-227-2.</para>
- <para>Так как FreeBSD 2.2.X основана на выпуске Berkeley 4.4BSD-Lite2,
- большинство руководств по 4.4BSD подходят к FreeBSD 2.2.X.
+ <para>Так как FreeBSD основана на выпуске Berkeley 4.4BSD-Lite2,
+ большинство руководств по 4.4BSD подходят к FreeBSD.
O'Reilly and Associates издают следующие руководства:</para>
<para>
@@ -691,11 +696,16 @@
<para>Evi Nemeth, Garth Snyder, Scott Seebass &amp;
Trent R. Hein,<!-- <br> -->
- ``Unix System Administration Handbook'', Prentice-Hall, 1995<!-- <br> -->
+ <quote>Unix System Administration Handbook</quote>, Prentice-Hall,
+ 1995<!-- <br> -->
<ulink URL="http://www.amazon.com/exec/obidos/ASIN/0-13-151051-7">ISBN</ulink>: 0-13-151051-7<!-- <br> --></para>
- <para><emphasis remap=bf>ЗАМЕЧАНИЕ</emphasis> Удостоверьтесь, что вы
- получили второе издание, с красной обложкой, а не первое.</para>
+ <para>
+ <note>
+ <para>Удостоверьтесь, что вы получили второе издание, с красной
+ обложкой, а не первое.</para>
+ </note>
+ </para>
<para>Эта книга касается основ администрирования, в том числе протоколов
TCP/IP, DNS, NFS, SLIP/PPP, sendmail, INN/NNTP, системы печати итд..
@@ -720,7 +730,7 @@
<para>Сообщения пользователей обо всех проблемах могут быть запрошены (или
добавлены) с помощью нашего <ulink
URL="http://www.FreeBSD.org/send-pr.html">веб-интерфейса</ulink> и <ulink
- URL="http://www.FreeBSD.org/cgi/query-pr-summary.cgi">запроса</ulink>.
+ URL="http://www.FreeBSD.org/cgi/query-pr-summary.cgi?query">запроса</ulink>.
Команда <command>send-pr(1)</command> также может быть использована для
передачи и изменения сообщений о проблемах через электронную почту.</para>
@@ -739,7 +749,7 @@
<para>Да. Документация имеется в нескольких различных форматах и
упакованная разными способами на FTP-сервере FreeBSD, и находится она
в каталоге <ulink
- url="ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/">
+ URL="ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/">
/pub/FreeBSD/doc/</ulink>.</para>
<para>Документация подразделяется на категории различными способами. Это
@@ -847,7 +857,7 @@
<entry>Формат баз данных Palm Pilot, для использования с
утилитой <ulink
- url="http://www.iSilo.com/">iSilo</ulink>.
+ URL="http://www.iSilo.com/">iSilo</ulink>.
</entry>
</row>
@@ -1042,20 +1052,14 @@ File: +DESC (ignored)
<itemizedlist>
<listitem>
- <para>С помошью CVSUP: Вы можете скачивать отформатированные файлы с
- помощью CVSUP с сервера cvsup.FreeBSD.org. Добавьте следующую
- строку в конфигурационный файл cvsup:</para>
-
- <programlisting>
- www release=current hostname=/home base=/usr/local/etc/cvsup
- prefix=/usr/local/www/data/www.FreeBSD.org delete old use-rel-suffix
- </programlisting>
- </listitem>
-
- <listitem>
- <para>С помощью rsync: Обратитесь к странице, посвящённой <ulink
- URL="http://www.FreeBSD.org/internal/mirror.html">
- зеркалированию</ulink>.</para>
+ <para>С помошью <application>CVSup</application>:
+ Вы можете запрашивать отформатированные файлы с помощью
+ <application>CVSup</application> и подключаться к серверу
+ <application>CVSup</application>.</para>
+
+ <para>Для получения страниц веб-сервера посмотрите на пример, находящийся
+ в файле
+ <filename>/usr/share/examples/cvsup/www-supfile</filename>.</para>
</listitem>
<listitem>
@@ -1081,7 +1085,12 @@ File: +DESC (ignored)
<para>Хорошо. Хотя мы не сможем заплатить, в наших силах подарить вам
бесплатный CD или футболку и внести вас в список составителей
- Руководства, если вы предоставите перевод.</para>
+ Руководства, если вы предоставите перевод. Перед тем, как начать перевод,
+ обратитесь в список рассылки <emphasis>freebsd-doc</emphasis> по адресу
+ <email>freebsd-doc@FreeBSD.org</email>; здесь можно найти тех, кто способен
+ помочь в переводе. Может также оказаться, что группа, занимающаяся
+ переводом документации на выбранный вами язык, уже существует, и она не
+ откажется от вашей помощи.</para>
</answer>
</qandaentry>
@@ -1252,9 +1261,9 @@ File: +DESC (ignored)
дискет, предназначенными для загрузки. Образ содержит полное содержимое
дискеты, дорожка за дорожкой, и не предназначен для помещения на
дискету в качестве обычного файла. Вам необходимо перенести его
- на дискету ``непосредственно'', используя низкоуровневые средства
- (такие, как <command>fdimage</command> или <command>rawrite</command>),
- описанные в <ulink
+ на дискету <quote>непосредственно</quote>, используя низкоуровневые
+ средства (такие, как <command>fdimage</command> или
+ <command>rawrite</command>), описанные в <ulink
URL="../../handbook/install.html">Руководстве</ulink>.</para>
</listitem>
</itemizedlist>
@@ -1263,14 +1272,20 @@ File: +DESC (ignored)
</qandaentry>
-<qandaentry><question>
-<para>Где инструкции по инсталляции FreeBSD?</para></question><answer>
+<qandaentry>
+ <question>
+ <para>Где инструкции по установке FreeBSD?</para>
+ </question>
+
+ <answer>
+
+ <para>Инструкции по установке могут быть найдены в
+ <ulink URL="../../handbook/install.html">главе</ulink>
+ Руководства, посвящённом установке FreeBSD.</para>
+
+ </answer>
+</qandaentry>
-<para>Инструкции по установке могут быть найдены в
- <ulink URL="../../handbook/install.html">главе</ulink>
- Руководства, посвящённом установке FreeBSD.</para>
-
-</answer></qandaentry>
<qandaentry><question>
<para>Что мне нужно иметь для запуска FreeBSD?</para></question><answer>
@@ -1309,20 +1324,20 @@ File: +DESC (ignored)
<para>Есть ещё несколько причин, по которым FreeBSD 2.1.7 не будет
устанавливаться с 4Мб. А именно: она не будет устанавливаться
на системе с 640Кб основной и 3Мб дополнительной памяти. Если ваша
- материнская плата может перемещать некоторую ``потерянную''
+ материнская плата может перемещать некоторую <quote>потерянную</quote>
память из области 640Кб в область 1Мб, тогда может быть, вы
сможете запустить FreeBSD 2.1.7.</para>
<para>Попробуйте войти в настройку вашего BIOS и посмотреть параметры
- ``перемещения'' (remap). Включите его. Может быть, еще понадобится
- выключить теневое ПЗУ (ROM shadowing).</para>
+ <quote>перемещения</quote> (remap). Включите его. Может быть, ещё
+ понадобится выключить теневое ПЗУ (ROM shadowing).</para>
<para>Может быть, самое простое решение - найти еще 4Мб на время
инсталляции. Откомпилируйте ядро только с теми параметрами, которые
нужны и затем уберите 4Мб.</para>
<para>Вы можете также проинсталлировать версию 2.0.5, а затем
- обновить вашу систему до 2.1.7 с помощью пункта ``upgrade''
+ обновить вашу систему до 2.1.7 с помощью пункта <quote>upgrade</quote>
программы инсталляции 2.1.7.</para>
<para>После установки вы можете построить ядро, которое будет работать
@@ -1351,35 +1366,46 @@ File: +DESC (ignored)
</qandaentry>
-<qandaentry><question>
-<para> Могу ли я иметь более чем одну операционную систему на моём PC?
- </para></question><answer>
+<qandaentry>
+ <question>
+ <para>Могу ли я иметь более чем одну операционную систему на моём PC?</para>
+ </question>
-<para>Взгляните на это <ulink URL="../../tutorials/multi-os/">руководство</ulink>.</para>
-
-</answer></qandaentry>
+ <answer>
-<qandaentry><question>
-<para>Может ли Windows 95 сосуществовать с FreeBSD?</para></question><answer>
+ <para>Взгляните на это <ulink
+ URL="http://www.FreeBSD.org/tutorials/multi-os/">руководство</ulink>.</para>
-<para>Сначала проинсталлируйте Windows 95, затем FreeBSD. Менеджер
- загрузки FreeBSD будет управлять процессом загрузки Win95 или
- FreeBSD, Если вы после этого ещё раз проинсталлируете Windows 95,
- то в процессе установки менеджер загрузки будет грубо удалён.
- Если такое случится, обратитесь к следующему разделу.</para>
-
-</answer></qandaentry>
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Может ли Windows 95/98 сосуществовать с FreeBSD?</para>
+ </question>
+
+ <answer>
+
+ <para>Сначала установите Windows 95/98, а затем FreeBSD. Менеджер загрузки
+ FreeBSD будет управлять процессом загрузки Win95/98 или FreeBSD. Если
+ после этого вы ещё раз выполните процедуру установки Windows 95/98, то при
+ этом менеджер загрузки будет грубо удалён. Если такое случится, обратитесь
+ к следующему разделу.</para>
+
+ </answer>
+</qandaentry>
<qandaentry>
<question>
- <para>Windows 95 уничтожила мой менеджер загрузки! Как мне его
+ <para>Windows 95/98 уничтожила мой менеджер загрузки! Как мне его
вернуть?</para>
</question>
<answer>
- <para>Вы можете переустановить менеджер загрузки FreeBSD двумя
+ <para>Вы можете переустановить менеджер загрузки FreeBSD тремя
способами:</para>
<itemizedlist>
@@ -1403,9 +1429,30 @@ File: +DESC (ignored)
разделов, первым делом (то есть ещё не делая никаких изменений)
выберите (W)rite. Последует запрос на подтверждение, ответьте yes,
и когда вы попадёте в меню выбора менеджера загрузки, выберите
- пункт "Boot Manager". Менеджер загрузки будет переписан на диск.
- Теперь нужно выйти из меню установки и загрузиться с винчестера
- как обычно.</para>
+ пункт <literal>Boot Manager</literal>. Менеджер загрузки будет
+ переписан на диск. Теперь нужно выйти из меню установки и загрузиться
+ с винчестера как обычно.</para>
+ </listitem>
+
+ <listitem>
+ <para>Загрузитесь с установочной дискеты (или компакт-диска) FreeBSD и
+ найдите пункт меню <quote>Fixit</quote>. Выберите Fixit floppy или
+ CD-ROM #2 (<quote>живая</quote> файловая система) соответственно
+ вашему случаю и вы окажетесь в приглашении командного процессора.
+ Теперь выполните следующую команду:</para>
+
+ <screen>
+<prompt>Fixit#</prompt> <userinput>fdisk -B -b /boot/boot0 <replaceable>bootdevice</replaceable></userinput>
+ </screen>
+
+ <para></para>
+
+ <para>подставив вместо <replaceable>bootdevice</replaceable> название
+ реально используемого для загрузки устройства, например,
+ <devicename>ad0</devicename> (первый диск IDE),
+ <devicename>ad4</devicename> (первый диск IDE на дополнительном
+ контроллере), <devicename>da0</devicename> (первый диск SCSI) и
+ тому подобное.</para>
</listitem>
</itemizedlist>
@@ -1413,22 +1460,33 @@ File: +DESC (ignored)
</qandaentry>
-<qandaentry><question>
-<para> Можно ли использовать диск с повреждёнными блоками?
- </para></question><answer>
+<qandaentry>
+ <question>
+ <para>Можно ли производить установку на диск с повреждёнными
+ блоками?</para>
+ </question>
-<para>Программа обнаружения повреждённых блоков
- (<ulink URL="http://www.FreeBSD.org/cgi/man.cgi?bad144">bad144</ulink>)
- помогает не во всех 100% случаев; (к нашему стыду)
- можно, к сожалению, сказать, что если у вас диск IDE или ESDI с
- большим количеством повреждённых блоков, то FreeBSD, похоже, не для
- вас. Однако она работает на тысячах систем с повреждёнными дисками,
- так что лучше всего сначала всё же попробовать самим.</para>
-
-<para>Если повреждённые блоки находятся на SCSI диске, взгляните на
- <link linkend="awre">такое решение</link>.</para>
-
-</answer></qandaentry>
+ <answer>
+
+ <para>До версии 3.0 в поставку FreeBSD включалась утилита, известная под
+ именем <command>bad144</command>, которая автоматически переносила
+ повреждённые блоки. Так как современные диски с интерфейсом IDE выполняют
+ эту функцию самостоятельно, то утилита <command>bad144</command> была
+ удалена из дерева исходных текстов FreeBSD. Если вы собираетесь
+ устанавливать FreeBSD 3.0 и выше, то мы настоятельно рекомендуем приобрести
+ новый диск. Если вы этого делать не собираетесь, то устанавливайте
+ FreeBSD 2.x.</para>
+
+ <para>Если вы обнаружите испорченные блоки на современном диске IDE, то
+ весьма вероятно, что он скоро выйдет из строя совсем (собственная
+ способность переносить испорченные блоки исчерпана, что означает очень
+ большую порчу поверхности); мы рекомендуем приобрести новый диск.</para>
+
+ <para>Если повреждённые блоки находятся на SCSI диске, взгляните на <link
+ linkend="awre">такое решение</link>.</para>
+
+ </answer>
+</qandaentry>
<qandaentry>
@@ -1458,13 +1516,12 @@ File: +DESC (ignored)
</listitem>
<listitem>
- <para>Если вы используете все эти свежеиспеченные операционные
- системы типа Windows95 или WindowsNT, удостоверьтесь, что вы их
- закрыли и перестартовали машину в добром старом DOS? Похоже,
- что эти операционные системы могут влиять на программы, работающие
- непосредственно с оборудованием, что и делает программа создания
- установочного диска; даже запуск из DOS в графической оболочке может
- вызвать проблемы.</para>
+ <para>Если вы используете Windows95 или Win98, удостоверьтесь, что вы
+ запускаете <command>fdimage</command> или <command>rawrite</command>
+ в режиме чистого DOS? Эти операционные системы могут влиять на
+ программы, работающие непосредственно с оборудованием, что и делает
+ программа создания установочного диска; даже запуск из DOS в
+ графической оболочке может вызвать проблемы.</para>
</listitem>
</orderedlist>
@@ -1476,16 +1533,41 @@ File: +DESC (ignored)
</qandaentry>
+<qandaentry>
+ <question>
+ <para>Я загрузился с ATAPI CD-ROM, однако программа установки сообщила, что
+ CD-ROM не найден. Куда он подевался?</para>
+ </question>
+
+ <answer>
+
+ <para>Обычной причиной возникновения такой проблемы является неправильно
+ сконфигурированный привод CD-ROM. Теперь зачастую ПК продаются с CD-ROM,
+ установленным как ведомое устройство на втором контроллере IDE, но без
+ ведущего устройства на этом контроллере. Согласно спецификации ATAPI,
+ такая конфигурация неверна, однако Windows в таком случае всё же работает,
+ и BIOS игнорирует это при загрузке. Вот почему BIOS может видеть CD-ROM
+ при загрузке, а FreeBSD для завершения установки - нет.</para>
+
+ <para>Переконфигурируйте вашу систему так, чтобы CD-ROM оказался либо
+ основным устройством на том IDE-контроллере, на котором он установлен,
+ либо ведомым устройством на контроллере IDE, который имеет ведущее
+ устройство.</para>
+
+ </answer>
+</qandaentry>
+
+
<qandaentry><question>
<para>Помогите! Не могу установить систему с ленты!</para></question><answer>
<para>Если вы инсталлируете 2.1.7R с ленты, вы должны создать
- ленту с размером блока tar, равным 10 (5120 байт). Размер
- блока tar по умолчанию равен 20 (10240 байт), поэтому ленты,
- созданные со стандартным размером блока, не могут быть использованы
- для установки 2.1.7R; вы получите сообщение об ошибке, говорящее,
- что размер записи слишком большой.</para>
-
+ленту с размером блока tar, равным 10 (5120 байт). Размер
+блока tar по умолчанию равен 20 (10240 байт), поэтому ленты,
+созданные со стандартным размером блока, не могут быть использованы
+для установки 2.1.7R; вы получите сообщение об ошибке, говорящее,
+что размер записи слишком большой.</para>
+
</answer></qandaentry>
@@ -1513,13 +1595,11 @@ lp0: TCP/IP capable interface
администратором. Например, если вы хотите соединить хосты с именами
max и moritz</para>
- <para>
- <literallayout>
- max &lt;-----&gt; moritz
+ <programlisting>
+ max &lt;-----&gt; moritz
IP Address 10.0.0.1 10.0.0.2
- </literallayout>
- </para>
-
+ </programlisting>
+
<para>на машине max дайте команду</para>
<screen>
@@ -1715,23 +1795,25 @@ BUSY</literallayout></entry>
<answer>
- <para>(Под "параметрами" диска мы понимаем число дорожек, головок и
- секторов на дорожку на диске, что для простоты обозначается как
+ <para>(Под <quote>параметрами</quote> диска мы понимаем число дорожек,
+ головок и секторов на дорожку на диске, что для простоты обозначается как
C/H/S. Именно так работает BIOS персональных компьютеров при чтении
или записи диска).</para>
<para>Похоже, что по каким-то причинам это вызывает много недоразумений.
Прежде всего, <emphasis>физические</emphasis> параметры диска SCSI не
имеют никакого значения, так как FreeBSD работает в терминах дисковых
- блоков. Фактически нет такого показателя, как "физические параметры",
- так как плотность размещения секторов различна по всему диску; то,
- что производители называют "реальными" физическими параметрами, есть не
+ блоков. Фактически нет такого показателя, как <emphasis>физические
+ параметры</emphasis>, так как плотность размещения секторов различна по
+ всему диску; то, что производители называют <emphasis>реальными</emphasis>
+ физическими параметрами, есть не
что иное, как свободное пространство. Для дисков IDE,
FreeBSD работает в терминах C/H/S, но во всех современных дисках они
преобразовываются во внутреннее представление.</para>
<para>Имеют значение только <emphasis>логические</emphasis> параметры - это
- те, что получает BIOS, когда спрашивает "какие у тебя параметры?", а затем
+ те, что получает BIOS, когда спрашивает <quote>какие у тебя
+ параметры?</quote>, а затем
использует для обращения к диску. Так как FreeBSD использует BIOS
при загрузке, очень важно получить верные параметры. В частности,
если у вас на диске находятся несколько операционных систем, они обе
@@ -1740,9 +1822,10 @@ BUSY</literallayout></entry>
<para>В случае дисков SCSI, параметры используются в зависимости от того,
включена ли поддержка расширенной трансляции на вашем контроллере
- (что часто обозначается как "support for DOS disks &gt;1GB" или
+ (что часто обозначается как <quote>поддержка дисков DOS &gt;1GB</quote> или
что-то похожее). Если эта возможность выключена, то используйте
- N дорожек, 64 головки и 32 сектора на дорожку, где N - это ёмкость
+ <replaceable>N</replaceable> дорожек, 64 головки и 32 сектора на дорожку,
+ где <replaceable>N</replaceable> - это ёмкость
диска в мегабайтах. Например, 2Гбайтный диск должен иметь 2048
дорожек, 64 головки и 32 сектора а дороку.</para>
@@ -1762,7 +1845,7 @@ BUSY</literallayout></entry>
вещей).</para>
<para>Кроме того, существует свободно доступная утилита, распространяемая
- вместе с FreeBSD, которая называется ``<filename>pfdisk.exe</filename>''
+ вместе с FreeBSD, которая называется <filename>pfdisk.exe</filename>
(можно найти в каталоге <filename>tools</filename> компакт-диска с FreeBSD
или на различных ftp-серверах), которую можно использовать для определения
параметров, которые используются другими операционными системами,
@@ -1811,58 +1894,53 @@ BUSY</literallayout></entry>
</answer></qandaentry>
-<qandaentry><question
-id="missing-os">
-<para>При загрузке FreeBSD выдается сообщение ``Missing Operating System''
- </para></question><answer>
-<para>Это классический случай, когда FreeBSD и DOS или другая операционная
- система конфликтуют по поводу <link linkend="geometry">параметров</link>
- диска. Вам нужно будет переустановить FreeBSD, но имейте в виду, что
- инструкции, данные выше, помогают всегда.</para>
-
-</answer></qandaentry>
+<qandaentry>
+ <question id="missing-os">
+ <para>При загрузке FreeBSD выдается сообщение <literal>Missing Operating
+ System</literal></para>
+ </question>
-<qandaentry><question>
-<para> После приглашения менеджера загрузки `F?' ничего не происходит.
- </para></question><answer>
+ <answer>
-<para>Это ещё один признак проблемы, описанной в предыдущем разделе.
- Параметры диска в BIOS и параметры, используемые FreeBSD, не
- совпадают. Если ваш контроллер или BIOS поддерживают трансляцию
- дорожек (часто обозначаемую как ``&gt;1GB drive support''),
- попробуйте включить эту возможность и переустановить FreeBSD.</para>
-
-</answer></qandaentry>
+ <para>Это классический случай, когда FreeBSD и DOS или другая операционная
+ система конфликтуют по поводу <link linkend="geometry">параметров</link>
+ диска. Вам нужно будет переустановить FreeBSD, но имейте в виду, что
+ инструкции, данные выше, помогают всегда.</para>
-<qandaentry><question
-id="bigram">
-<para> У меня &gt;16Мб ОЗУ. Это не вызовет никаких проблем?
- </para></question><answer>
+ </answer>
+</qandaentry>
-<para>Кроме разве что вопроса производительности, нет. Во FreeBSD 2.X
- встроен контроль границ буферов (bounce buffers), что позволяет вашим
- контроллерам, работающим в режиме прямого доступа к шине, иметь доступ
- к памяти выше 16Мб. (Заметьте, что это будет требоваться только если
- вы используете устройства ISA, хотя этого также требуют некоторые
- устройства EISA и VLB).</para>
-
-<para>Обратитесь к разделу о <link linkend="reallybigram">машинах
- с &gt;64Mб</link>, если у вас столько ОЗУ или вы используете
- машины Compaq или BIOS, который выдаёт неверные параметры ОЗУ.</para>
-
-</answer></qandaentry>
+
+<qandaentry>
+ <question>
+ <para>После приглашения менеджера загрузки <literal>F?</literal> ничего не
+ происходит.</para>
+ </question>
+
+ <answer>
+
+ <para>Это ещё один признак проблемы, описанной в предыдущем разделе.
+ Параметры диска в BIOS и параметры, используемые FreeBSD, не
+ совпадают. Если ваш контроллер или BIOS поддерживают трансляцию
+ дорожек (часто обозначаемую как <literal>&gt;1GB drive support</literal>),
+ попробуйте включить эту возможность и переустановить FreeBSD.</para>
+
+ </answer>
+</qandaentry>
<qandaentry>
<question>
<para>Нужно ли устанавливать все исходные тексты системы?</para>
- </question><answer>
+ </question>
+
+ <answer>
<para>В общем случае, нет. Однако мы настоятельно рекомендуем установить, как
- минимум, исходные тексты набора ``<emphasis remap=tt>base</emphasis>'',
+ минимум, исходные тексты набора <literal>base</literal>,
включающий некоторые файлы, здесь упоминаемые,
- и ``<emphasis remap=tt>sys</emphasis>'', в который включены исходные тексты
+ и <literal>sys</literal>, в который включены исходные тексты
ядра. Для работы системы присутствия исходных текстов не требуется, разве
что для программы конфигурирования ядра &man.config.8;. За исключением
исходных текстов ядра, структура исходных текстов системы
@@ -1877,30 +1955,33 @@ id="bigram">
<para>Для выбора подмножества исходных текстов, которое вы хотите
установить, используйте пункт меню Custom, когда находитесь в меню
- Distributions программы установки. Скрипт
- <filename>src/install.sh</filename> также инсталлирует часть исходных
- текстов в зависимости от указанного при его запуске параметра.</para>
-
+ Distributions программы установки.</para>
+
</answer>
</qandaentry>
-<qandaentry><question>
-<para>Нужно ли перекомпилировать ядро?</para></question><answer>
+<qandaentry>
+ <question>
+ <para>Нужно ли перекомпилировать ядро?</para>
+ </question>
-<para>Построение нового ядра всегда было необходимым шагом при
- установке FreeBSD, однако последние релизы предоставляют более
- дружественный инструмент конфигурации ядра. В командной строке
- на приглашение загрузчика FreeBSD (boot:) введите "-c" и вы
- попадёте в экран визуальной настройки, которая позволяет
- конфигурировать настройки ядра для большинства адаптеров ISA.</para>
-
-<para>Однако рекомендуется, что потом вы всё же построите новое ядро,
- содержащее только те дравера, которые вам нужны, для того,
- чтобы сэкономить немного ОЗУ, хотя для большиства систем это
- больше не является большой необходимостью.</para>
+ <answer>
+
+ <para>Построение нового ядра всегда было необходимым шагом при
+ установке FreeBSD, однако последние релизы предоставляют более
+ дружественный инструмент конфигурации ядра. В командной строке
+ на приглашение загрузчика FreeBSD (boot:) введите <option>-c</option> и вы
+ попадёте в экран визуальной настройки, которая позволяет
+ конфигурировать настройки ядра для большинства адаптеров ISA.</para>
-</answer></qandaentry>
+ <para>Однако рекомендуется, что потом вы всё же построите новое ядро,
+ содержащее только те дравера, которые вам нужны, для того,
+ чтобы сэкономить немного ОЗУ, хотя для большиства систем это
+ больше не является большой необходимостью.</para>
+
+ </answer>
+</qandaentry>
<qandaentry>
@@ -1936,21 +2017,21 @@ id="bigram">
<segmentedlist>
<seglistitem>
<seg>Южная Африка</seg>
- <seg><ulink url="ftp://ftp.internat.FreeBSD.org/pub/FreeBSD/">
+ <seg><ulink URL="ftp://ftp.internat.FreeBSD.org/pub/FreeBSD/">
ftp://ftp.internat.FreeBSD.org/pub/FreeBSD/</ulink>, <ulink
- url="ftp://storm.sea.uct.ac.za/pub/FreeBSD/">
+ URL="ftp://storm.sea.uct.ac.za/pub/FreeBSD/">
ftp://storm.sea.uct.ac.za/pub/FreeBSD/</ulink></seg>
</seglistitem>
<seglistitem>
<seg>Бразилия</seg>
- <seg><ulink url="ftp://ftp.iqm.unicamp.br/pub/FreeBSD/">
+ <seg><ulink URL="ftp://ftp.iqm.unicamp.br/pub/FreeBSD/">
ftp://ftp.iqm.unicamp.br/pub/FreeBSD/</ulink></seg>
</seglistitem>
<seglistitem>
<seg>Финляндия</seg>
- <seg><ulink url="ftp://nic.funet.fi/pub/unix/FreeBSD/eurocrypt/">
+ <seg><ulink URL="ftp://nic.funet.fi/pub/unix/FreeBSD/eurocrypt/">
ftp://nic.funet.fi/pub/unix/FreeBSD/eurocrypt/</ulink></seg>
</seglistitem>
</segmentedlist>
@@ -1975,29 +2056,34 @@ id="bigram">
<para>Существует <link linkend="mailing">список рассылки</link>, посвящённый
неамериканскому криптографическому программному обеспечению. Для запроса
информации пошлите письмо, содержащее одну строчку
- ``<literal>help</literal>'' в теле сообщения на адрес
+ <literal>help</literal> в теле сообщения на адрес
<email>majordomo@braae.ru.ac.za</email>.</para>
</answer>
</qandaentry>
-<qandaentry><question>
-<para> Загрузка с установочной дискеты прерывается на сообщении
- ``Probing Devices...''.
- </para></question><answer>
+<qandaentry>
+ <question>
+ <para>Загрузка с установочной дискеты прерывается на сообщении
+ <literal>Probing Devices...</literal>.</para>
+ </question>
+
+ <answer>
-<para>Если у вас установлены устройства IDE Zip или Jaz, уберите их
- и попробуйте снова. Они могут мешать инсталляционной программе. После
- того, как система будет установлена, вы можете снова подключить
- устройства. Надеемся, что это будет исправлено в более поздних
- релизах.</para>
+ <para>Если у вас установлены устройства IDE Zip или Jaz, уберите их
+ и попробуйте снова. Они могут мешать инсталляционной программе. После
+ того, как система будет установлена, вы можете снова подключить
+ устройства. Надеемся, что это будет исправлено в более поздних
+ релизах.</para>
-</answer></qandaentry>
+ </answer>
+</qandaentry>
+
<qandaentry>
<question>
- <para>Сообщение ``panic: cant mount root'' после перезагрузки
+ <para>Сообщение <literal>panic: cant mount root</literal> после перезагрузки
только что установленной системы.</para>
</question>
@@ -2019,9 +2105,9 @@ id="bigram">
<orderedlist>
<listitem>
<para>Для FreeBSD 3.3 и выше, перегрузите систему и нажмите
- &quot;Enter&quot; при появлении приглашения &quot;Booting kernel in
- 10 seconds; hit [Enter] to interrupt&quot;. Вы окажетесь в
- загрузчике.</para>
+ <literal>Enter</literal> при появлении приглашения <literal>Booting
+ kernel in 10 seconds; hit [Enter] to interrupt</literal>. Вы
+ окажетесь в загрузчике.</para>
<para>После этого наберите <literal>set
root_disk_unit="<replaceable>disk_number</replaceable>"</literal>.
@@ -2033,8 +2119,8 @@ id="bigram">
<emphasis>3</emphasis>, если она установлена на ведомом диске второго
контроллера IDE.</para>
- <para>Затем введите команду &quot;boot&quot;, и ваша система должна
- нормально загрузиться.</para>
+ <para>Затем введите команду <literal>boot</literal>, и ваша система
+ должна нормально загрузиться.</para>
<para>Чтобы сделать эти изменения постоянными (то есть чтобы вам не
было нужды выполнять эти действия каждый раз при перезагрузке или
@@ -2047,7 +2133,7 @@ id="bigram">
<para>При использовании FreeBSD 3.2 и более ранних версий в приглашении
Boot: наберите <literal>1:wd(2,a)kernel</literal> и
нажмите клавишу Enter. Если система запустилась, выполните команду
- <literal>echo "1:wd(2,a)kernel" &gt; /boot.config</literal>
+ <command>echo "1:wd(2,a)kernel" &gt; /boot.config</command>
чтобы сделать это строкой загрузки по умолчанию.</para>
</listitem>
@@ -2199,21 +2285,6 @@ disk wd2 at wdc1 drive 1 # change from wd3 to wd2
</tgroup>
</table>
- <para>
- <literallayout>
- максимальный размер файла
- ----------------------------------
- 2.2.7 3.0
-размер блока fs -STABLE -CURRENT работает должно работать
---------------- ------- -------- -------- ---------------
-4K 4T-1 4T-1 4T-1 4+T
-8K 32+G 8T-1 32+G 16T-1
-16K 128+G 16T-1 128+G 32T-1
-32K 512+G 32T-1 512+G 64T-1
-64K 2048+G 64T-1 2048+G 128T-1
- </literallayout>
- </para>
-
<para>При размере блока файловой системы 4К, тройная адресация
блоков работает и всё должно быть ограничено максимальным количеством
блоков, которое задаётся в виде тройной переадресации
@@ -2237,27 +2308,31 @@ disk wd2 at wdc1 drive 1 # change from wd3 to wd2
</qandaentry>
-<qandaentry><question>
-<para>Как можно поместить файлы размером 1ТБ на дискету?</para></question><answer>
+<qandaentry>
+ <question>
+ <para>Как можно поместить файлы размером 1ТБ на дискету?</para>
+ </question>
-<para>Я храню парочку таких на дискете :-) Максимальный размер
+ <answer>
+
+ <para>Я храню парочку таких на дискете :-) Максимальный размер
файла не связан непосредственно с максимальным размером диска.
Максимальный размер диска равен 1ТБ. Особенностью является
то, что размер файла может превышать размер диска.</para>
-<para>В следующем примере создаётся файл размером 8Т-1 с помощью всего
+ <para>В следующем примере создаётся файл размером 8Т-1 с помощью всего
32К дискового пространства (3 блока адреса и 1 блок данных) на
маленьком корневом разделе. Команда dd должна уметь работать с
большими файлами.</para>
-<para>
-<literallayout>ttyv0:bde@alphplex:/tmp/q&gt; cat foo
+<screen>
+&prompt.user; <userinput>cat foo</userinput>
df .
dd if=/dev/zero of=z bs=1 seek=`echo 2^43 - 2 | bc` count=1
ls -l z
du z
df .
-ttyv0:bde@alphplex:/tmp/q&gt; sh foo
+&prompt.user; <userinput>sh foo</userinput>
Filesystem 1024-blocks Used Avail Capacity Mounted on
/dev/da0a 64479 27702 31619 47% /
1+0 records in
@@ -2267,42 +2342,46 @@ Filesystem 1024-blocks Used Avail Capacity Mounted on
32 z
Filesystem 1024-blocks Used Avail Capacity Mounted on
/dev/da0a 64479 27734 31587 47% /
-ttyv0:bde@alphplex:/tmp/q&gt; exit</literallayout>
-</para>
-
-<para>Bruce Evans, September 1998</para>
+ </screen>
+
+ <para>Bruce Evans, September 1998</para>
-</answer></qandaentry>
+ </answer>
+</qandaentry>
-<qandaentry><question>
-<para> Я скомпилировал новое ядро и при загрузке получил сообщение об ошибке
- "archsw.readin.failed".
- </para></question><answer>
-<para>Вы можете осуществить загрузку системы, явно указав ядро во время
- второго этапа загрузочного процесса, нажав любую клавишу после
- появления символа | до запуска загрузчика. Более точно, вы обновили
- исходные тексты ядра, откомпилировали и установили новое ядро <emphasis>без
- выполнения make world </emphasis>. Такое не поддерживается. Выполните
- make world.</para>
-
+<qandaentry>
+ <question>
+ <para>Я скомпилировал новое ядро и при загрузке получил сообщение об ошибке
+ <literal>archsw.readin.failed</literal>.</para>
+ </question>
+
+ <answer>
+
+ <para>Вы можете осуществить загрузку системы, явно указав ядро во время
+ второго этапа загрузочного процесса, нажав любую клавишу после
+ появления символа | до запуска загрузчика. Более точно, вы обновили
+ исходные тексты ядра, откомпилировали и установили новое ядро <emphasis>без
+ выполнения make world </emphasis>. Такое не поддерживается. Выполните
+ make world.</para>
+
</answer>
</qandaentry>
<qandaentry>
- <question><para>Как произвести обновление 3.X -> 4.X?</para></question>
+ <question><para>Как произвести обновление 3.X -&gt; 4.X?</para></question>
<answer>
<para>Мы <emphasis>настоятельно</emphasis> рекомендуем воспользоваться
- для этой цели двоичными снэпшотами. Снэпшоты 4.X-STABLE находятся на
+ для этой цели бинарными снэпшотами. Снэпшоты ветки 4.STABLE находятся на
сервере <ulink
- url="ftp://releng4.FreeBSD.org">releng4.FreeBSD.org</ulink>.</para>
+ URL="ftp://releng4.FreeBSD.org">releng4.FreeBSD.org</ulink>.</para>
<para>Если вы хотите произвести обновление с помощью исходных текстов,
то за дополнительной пожалуйста, обратитесь к <ulink
- url="http://www.FreeBSD.org/handbook/cutting-edge.html">Руководству по
+ URL="http://www.FreeBSD.org/handbook/cutting-edge.html">Руководству по
FreeBSD</ulink>.</para>
<para><emphasis>Обновление через исходные тексты, а тем более 3.X -> 4.X,
@@ -2315,22 +2394,27 @@ ttyv0:bde@alphplex:/tmp/q&gt; exit</literallayout>
</chapter>
-<chapter
-id="hardware">
+<chapter id="hardware">
<title>Аппаратная совместимость</title>
+<qandaset>
+<qandaentry>
+ <question>
+ <para>Какие типы винчестеров поддерживает FreeBSD?</para>
+ </question>
-<qandaset><qandaentry><question>
-<para>Какие типы винчестеров поддерживает FreeBSD?</para></question><answer>
+ <answer>
+
+ <para>FreeBSD работает с дисками стандартов EIDE и SCSI (с
+ соответствующими контроллерами; обратитесь к следующему разделу), и
+ всеми дисками, использующими оригинальный интерфейс <quote>Western
+ Digital</quote> (MFM, RLL, ESDI и, конечно же, IDE). Некоторые
+ контроллеры ESDI, использующие собственные интерфейсы, могут и не
+ работать: к таким относятся WD1002/3/6/7 и их клоны.</para>
+
+ </answer>
+</qandaentry>
-<para>FreeBSD работает с дисками стандартов EIDE и SCSI (с
- соответствующими контроллерами; обратитесь к следующему разделу), и
- всеми дисками, использующими оригинальный интерфейс "Western Digital"
- (MFM, RLL, ESDI и, конечно же, IDE). Некоторые контроллеры ESDI,
- использующие собственные интерфейсы, могут и не работать: к таким
- относятся WD1002/3/6/7 и их клоны.</para>
-
-</answer></qandaentry>
<qandaentry><question>
<para>Какие поддерживаются контроллеры SCSI?</para></question><answer>
@@ -2342,7 +2426,7 @@ id="hardware">
<qandaentry><question>
<para>Какие приводы CD-ROM поддерживаются во FreeBSD?</para></question><answer>
-<para>Поддерживаются любые SCSI-устройства чнения компакт дисков,
+<para>Поддерживаются любые SCSI-устройства чтения компакт дисков,
подключенные к поддерживаемому контроллеру.</para>
<para>Кроме того, поддерживаются следующие оригинальные интерфейсы:</para>
@@ -2386,52 +2470,65 @@ id="hardware">
</answer></qandaentry>
-<qandaentry><question>
-<para>Поддерживает ли FreeBSD устройства ZIP?</para></question><answer>
-
-<para>Несомненно, FreeBSD поддерживает ZIP-устройства SCSI. Устройству
- ZIP могут быть назначены SCSI ID только 5 или 6, и если BIOS вашего
- SCSI-адаптера поддерживает такую возможность, вы можете с него даже
- загрузиться. Мне не известны адаптеры, позволяющие загрузиться с
- устройств, номера которых отличны от 0 или 1... посмотрите в
- вашей документации (и сообщите мне, если у вас это работает).</para>
-
-<para>Устройства ZIP стандарта ATAPI (IDE) поддерживаются FreeBSD начиная
- с версии 2.2.6.</para>
-
-<para>FreeBSD поддерживает устройства Zip, работающие через параллельный
- порт, начиная с версии 3.0. Если вы используете более новую версию,
- проверьте, содержит ли ваше ядро драйверы для <emphasis remap=tt>scbus0</emphasis>, <emphasis remap=tt>da0
- </emphasis>, <emphasis remap=tt>ppbus0</emphasis> и <emphasis remap=tt>vp0</emphasis> (ядро GENERIC содержит всё это,
- кроме vp0). Если эти драйверы имеются, то устройство должно быть
- доступно как /dev/da0s4. Диски могут быть смонтированы
- командами <command>mount /dev/da0s4 /mnt</command> или (для дисков dos)
- <emphasis remap=tt>mount_msdos /dev/da0s4 /mnt</emphasis>.</para>
-
-<para>Также посмотрите <link linkend="jaz">следующее замечание</link>
- о съёмных носителях, и <link linkend="disklabel">это замечание</link>
- о 'форматировании'.</para>
-
-</answer></qandaentry>
-<qandaentry><question>
-<para> Поддерживает ли FreeBSD съёмные диски типа JAZ или EZ?
- </para></question><answer>
+<qandaentry>
+ <question>
+ <para>Поддерживает ли FreeBSD устройства ZIP?</para>
+ </question>
-<para>Кроме IDE-варианта устройства EZ, это всё устройства SCSI, так что
- для FreeBSD все они должны выглядеть как диски SCSI, а IDE EZ должен
- выглядеть как диск IDE.</para>
-
-<para><anchor id="jaz">Я не знаю, насколько хорошо FreeBSD поддерживает
- смену носителя во время работы. Конечно, чтобы сменить диск, вам
- сначала нужно его размонтировать, и обратите внимание на то, что при
- загрузке все внешние устройства должны быть включены, чтобы FreeBSD
- могла их распознать.</para>
-
-<para>Посмотрите это <link linkend="disklabel">замечание</link> о
- 'форматировании'.</para>
-
-</answer></qandaentry>
+ <answer>
+
+ <para>Несомненно, FreeBSD поддерживает ZIP-устройства SCSI. Устройству
+ ZIP могут быть назначены SCSI ID только 5 или 6, и если BIOS вашего
+ SCSI-адаптера поддерживает такую возможность, вы можете с него даже
+ загрузиться. Мне не известны адаптеры, позволяющие загрузиться с
+ устройств, номера которых отличны от 0 или 1... посмотрите в
+ вашей документации (и сообщите мне, если у вас это работает).</para>
+
+ <para>Устройства ZIP стандарта ATAPI (IDE) поддерживаются FreeBSD начиная
+ с версии 2.2.6.</para>
+
+ <para>FreeBSD поддерживает устройства Zip, работающие через параллельный
+ порт, начиная с версии 3.0. Если вы используете более новую версию,
+ проверьте, содержит ли ваше ядро драйверы для
+ <devicename>scbus0</devicename>, <devicename>da0</devicename>,
+ <devicename>ppbus0</devicename> и <devicename>vp0</devicename> (ядро
+ GENERIC содержит всё это, кроме <devicename>vp0</devicename>). Если эти
+ драйверы имеются, то устройство должно быть доступно как
+ <filename>/dev/da0s4</filename>. Диски могут быть смонтированы
+ командами <command>mount /dev/da0s4 /mnt</command> или (для дисков dos)
+ <command>mount_msdos /dev/da0s4 /mnt</command> соответственно.</para>
+
+ <para>Также посмотрите <link linkend="jaz">следующее замечание</link>
+ о съёмных носителях, и <link linkend="disklabel">это замечание</link>
+ о <quote>форматировании</quote>.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Поддерживает ли FreeBSD съёмные диски типа JAZ или EZ?</para>
+ </question>
+
+ <answer>
+
+ <para>Кроме IDE-варианта устройства EZ, это всё устройства SCSI, так что
+ для FreeBSD все они должны выглядеть как диски SCSI, а IDE EZ должен
+ выглядеть как диск IDE.</para>
+
+ <para><anchor id="jaz">Я не знаю, насколько хорошо FreeBSD поддерживает
+ смену носителя во время работы. Конечно, чтобы сменить диск, вам
+ сначала нужно его размонтировать, и обратите внимание на то, что при
+ загрузке все внешние устройства должны быть включены, чтобы FreeBSD
+ могла их распознать.</para>
+
+ <para>Посмотрите это <link linkend="disklabel">замечание</link> о
+ <quote>форматировании</quote>.</para>
+
+ </answer>
+</qandaentry>
<qandaentry>
@@ -2479,6 +2576,17 @@ id="hardware">
перестройте ядро.</para>
<programlisting>
+device uhci
+device ohci
+device usb
+device ukbd
+options KBD_INSTALL_CDEV
+ </programlisting>
+
+ <para>При использовании FreeBSD версий, предшествующих 4.0, добавьте
+ вместо этого такие строки:</para>
+
+ <programlisting>
controller uhci0
controller ohci0
controller usb0
@@ -2509,10 +2617,10 @@ id="hardware">
</orderedlist>
<para>После перезагрузки системы AT-клавиатуре будет соответствовать
- <devicename>/dev/kbd0</devicename>, а клавиатуре USB -
- <devicename>/dev/kbd1</devicename>, если они обе подключены к системе.
+ <filename>/dev/kbd0</filename>, а клавиатуре USB -
+ <filename>/dev/kbd1</filename>, если они обе подключены к системе.
Если присутствует только клавиатура USB, ей будет соответствовать
- <devicename>/dev/ukbd0</devicename>.</para>
+ <filename>/dev/ukbd0</filename>.</para>
<para>Если вы хотите использовать клавиатуру USB на консоли, вы должны
явно указать драйверу консоли на использование имеющейся клавиатуры
@@ -2524,11 +2632,11 @@ id="hardware">
</screen>
<para>Заметьте, что, если клавиатура USB является единственной
- присутствующей, она доступна как <devicename>/dev/kbd0</devicename>,
+ присутствующей, она доступна как <filename>/dev/kbd0</filename>,
и поэтому команда должна выглядеть примерно так:</para>
<screen>
- &prompt.root; <userinput>kbdcontrol -k /dev/kbd0 &lt; /dev/ttyv0 &gt; /dev/null</userinput>
+&prompt.root; <userinput>kbdcontrol -k /dev/kbd0 &lt; /dev/ttyv0 &gt; /dev/null</userinput>
</screen>
<para>Вышеуказанную команду хорошо бы добавить в
@@ -2548,165 +2656,169 @@ id="hardware">
</qandaentry>
-<qandaentry><question id="busmouse">
-<para>У меня необычная мышь типа bus mouse. Как её настроить?
- </para></question><answer>
+<qandaentry>
+ <question id="busmouse">
+ <para>У меня необычная мышь типа bus mouse. Как её настроить?</para>
+ </question>
-<para>FreeBSD поддерживает мыши типов bus mouse и InPort bus mouse от таких
- производителей, как Microsoft, Logitech и ATI. Драйвер устройства bus mouse
- включен по умолчанию в ядро GENERIC во FreeBSD версий 2.X, но не включён в
- версию 3.0 и выше. Если вы строите собственное ядро с этим драйвером,
- добавьте следующую строку в конфигурационный файл ядра</para>
-
-<para>Во FreeBSD 3.0 и ранее, добавьте:</para>
+ <answer>
-<para>
- <literallayout>
- device mse0 at isa? port 0x23c tty irq5 vector mseintr
- </literallayout>
-</para>
-
-<para>Во FreeBSD 3.1 и выше, строчка должна иметь вид:</para>
+ <para>FreeBSD поддерживает мыши типов bus mouse и InPort bus mouse от таких
+ производителей, как Microsoft, Logitech и ATI. Драйвер устройства bus mouse
+ включен по умолчанию в ядро GENERIC во FreeBSD версий 2.X, но не включён в
+ версию 3.0 и выше. Если вы строите собственное ядро с этим драйвером,
+ добавьте следующую строку в конфигурационный файл ядра</para>
-<para>
- <literallayout>
- device mse0 at isa? port 0x23c tty irq5
- </literallayout>
-</para>
+ <para>Во FreeBSD 3.0 и ранее, добавьте:</para>
-<para>Мышь типа bus mouse обычно поставляется с отдельным интерфейсным
- адаптером. Он позволяет установить адрес порта ввода/вывода и номер IRQ,
- отличающиеся от приведённых выше. Для получения дополнительной информации
- обратитесь к документации по вашей мыши и странице Справочника
- &man.mse.4;.</para>
-
-</answer></qandaentry>
+ <programlisting>
+device mse0 at isa? port 0x23c tty irq5 vector mseintr
+ </programlisting>
+ <para>Во FreeBSD 3.X строчка должна иметь вид:</para>
-<qandaentry><question id="ps2mouse">
-<para>Как использовать мышь PS/2 (типа ``mouse port'' или ``keyboard'')?
- </para></question><answer>
+ <programlisting>
+device mse0 at isa? port 0x23c tty irq5
+ </programlisting>
-<para>Если вы используете FreeBSD версии выше, чем 2.2.5, то необходимый
- драйвер, <devicename>psm</devicename>, включён в ядро и активизирован. Ядро
- должно обнаружить мышь PS/2 во время загрузки.</para>
-
-<para>Если вы работаете с предыдущей, но сравнительно свежей версией FreeBSD
- (2.1.x и выше), то вы можете просто включить её поддержку в меню конфигурации
- ядра во время инсталляции, либо позже, указав <option>-c</option> в
- приглашении <command>boot:</command>. По умолчанию она отключена, так что
- вы должны включить её явно.</para>
-
-<para>Если вы используете более старую версию FreeBSD, то вам нужно добавить
- следующие строки в файл конфигурации ядра и построить новое ядро.</para>
+ <para>А во FreeBSD 4.X и выше строчка должна быть такой:</para>
-<para>Во FreeBSD 3.0 и ранее, строчка должна иметь вид:</para>
-
-<para>
- <literallayout>
- device psm0 at isa? port "IO_KBD" conflicts tty irq 12 vector psmintr
- </literallayout>
-</para>
+ <programlisting>
+device mse0 at isa? port 0x23c irq5
+ </programlisting>
-<para>Во FreeBSD 3.1 и выше, строчка должна быть такой:</para>
+ <para>Мышь типа bus mouse обычно поставляется с отдельными интерфейсными
+ адаптерами. Они позволяют установить адрес порта ввода/вывода и номер IRQ,
+ отличающиеся от приведённых выше. Для получения дополнительной информации
+ обратитесь к документации по вашей мыши и странице Справочника
+ &man.mse.4;.</para>
-<para>
- <literallayout>
- device psm0 at isa? tty irq 12
- </literallayout>
-</para>
+ </answer>
+</qandaentry>
-<para>Во FreeBSD 4.0-CURRENT и выше, строчка должна иметь вид:</para>
-<para>
- <literallayout>
- device psm0 at atkbdc? irq 12
- </literallayout>
-</para>
-
-<para>Обратитесь к главе Руководства о <ulink
- URL="../../handbook/kernelconfig.html">конфигурировании ядра</ulink>, если
- вы не имели опыта такой работы.</para>
-
-<para>После того, как ядро правильно обнаружило <devicename>psm0</devicename>
- во время загрузки, проверьте существование файла устройства для
- <devicename>psm0</devicename> в каталоге <filename>/dev</filename>. Это
- можно сделать, набрав:</para>
-
-<para>
- <literallayout>
- cd /dev; sh MAKEDEV psm0
- </literallayout>
-</para>
-
-<para>войдя в систему администратором.</para>
-
-</answer></qandaentry>
+<qandaentry>
+ <question id="ps2mouse">
+ <para>Как использовать мышь PS/2 (типа <quote>mouse port</quote> или
+ <quote>keyboard</quote>)?</para>
+ </question>
+ <answer>
-<qandaentry><question
-id="moused">
-<para> Можно ли каким-либо образом использовать мышь, кроме X Window?
-
- </para></question><answer>
+ <para>Если вы используете FreeBSD версии выше, чем 2.2.5, то необходимый
+ драйвер, <devicename>psm</devicename>, включён в ядро и активизирован.
+ Ядро должно обнаружить мышь PS/2 во время загрузки.</para>
-<para>Если вы используете стандартный драйвер консоли, syscons, то можете
- использовать указатель мыши в текстовых консолях для выделения и
- переноса текста. Запустите демон мыши, moused, и включите отображение
- указателя мыши на консоли:</para>
-
-<para>
-<literallayout> moused -p /dev/xxxx -t yyyy
- vidcontrol -m on
- </literallayout>
-</para>
+ <para>Если вы работаете с предыдущей, но сравнительно свежей версией FreeBSD
+ (2.1.x и выше), то вы можете просто включить её поддержку в меню
+ конфигурации ядра во время инсталляции, либо позже, указав
+ <option>-c</option> в приглашении <command>boot:</command>. По умолчанию
+ она отключена, так что вы должны включить её явно.</para>
+
+ <para>Если вы используете более старую версию FreeBSD, то вам нужно добавить
+ следующие строки в файл конфигурации ядра и построить новое ядро.</para>
+
+ <para>Во FreeBSD 3.0 и ранее, строчка должна иметь вид:</para>
-<para>Здесь <emphasis remap=tt>xxxx</emphasis> - это имя устройства мыши,
- а <emphasis remap=tt>yyyy</emphasis> - тип протокола, используемого мышью.
- Страница Справочника по &man.moused.8; содержит информацию о поддерживаемых
- типах протоколов.</para>
+ <programlisting>
+device psm0 at isa? port "IO_KBD" conflicts tty irq 12 vector psmintr
+ </programlisting>
+
+ <para>Во FreeBSD 3.1 и выше, строчка должна быть такой:</para>
+
+ <programlisting>
+device psm0 at isa? tty irq 12
+ </programlisting>
+
+ <para>Во FreeBSD 4.0 и выше строчка должна иметь вид:</para>
+
+ <programlisting>
+device psm0 at atkbdc? irq 12
+ </programlisting>
+
+ <para>Обратитесь к главе Руководства о <ulink
+ URL="../../handbook/kernelconfig.html">конфигурировании ядра</ulink>, если
+ вы не имели опыта такой работы.</para>
+
+ <para>После того, как ядро правильно обнаружило <devicename>psm0</devicename>
+ во время загрузки, проверьте существование файла устройства для
+ <devicename>psm0</devicename> в каталоге <filename>/dev</filename>. Это
+ можно сделать, набрав:</para>
+
+ <screen>
+&prompt.root; <userinput>cd /dev; sh MAKEDEV psm0</userinput>
+ </screen>
+
+ <para>войдя в систему администратором.</para>
-<para>Вы можете запускать демон мыши автоматически во время старта
- системы. В версии 2.2.1, установите значение следующей переменной в
- <filename>/etc/sysconfig</filename>.</para>
-
-<para>
-<literallayout> mousedtype="yyyy"
- mousedport="xxxx"
- mousedflags=""
- </literallayout>
-</para>
-
-<para> В версиях 2.2.2 и выше, установите значения следующих переменных в
- <filename>/etc/rc.conf</filename>.</para>
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question id="moused">
+ <para>Можно ли каким-либо образом использовать мышь, кроме X Window?</para>
+ </question>
+
+ <answer>
+
+ <para>Если вы используете стандартный драйвер консоли, syscons, то можете
+ использовать указатель мыши в текстовых консолях для выделения и
+ переноса текста. Запустите демон мыши, moused, и включите отображение
+ указателя мыши на консоли:</para>
-<para>
-<literallayout> moused_type="yyyy"
- moused_port="xxxx"
- moused_flags=""
- </literallayout>
-</para>
-
-<para>Кроме того, если вы хотите использовать даемон мыши на всех виртуальных
- терминалах, а не только на консоли во время загрузки, добавьте следующую
- строку в файл <filename>/etc/rc.conf</filename>.</para>
+ <screen>
+&prompt.root; <userinput>moused -p /dev/<replaceable>xxxx</replaceable> -t <replaceable>yyyy</replaceable></userinput>
+&prompt.root; <userinput>vidcontrol -m on</userinput>
+ </screen>
- <para>
- <literallayout>
- allscreens_flags="-m on"
- </literallayout>
- </para>
+ <para>Здесь <replaceable>xxxx</replaceable> - это имя устройства мыши,
+ а <replaceable>yyyy</replaceable> - тип протокола, используемого мышью.
+ Страница Справочника по &man.moused.8; содержит информацию о поддерживаемых
+ типах протоколов.</para>
-<para>Начиная с FreeBSD 2.2.6, даемон мыши в состоянии определять тип протокола
- автоматически, если, конечно, мышь не достаточно древней модели. Укажите
- ``<emphasis remap=tt>auto</emphasis>'' для автоматического определения типа
- протокола.</para>
-
-<para>После запуска даемона мыши, доступ к мыши должен согласовываться
- между даемоном мыши и другими программами типа X Window. Этот вопрос
- рассмотрен в <link linkend="x-and-moused">другом разделе</link>.</para>
-
-</answer></qandaentry>
+ <para>Вы можете запускать демон мыши автоматически во время старта
+ системы. В версии 2.2.1, установите значение следующей переменной в
+ <filename>/etc/sysconfig</filename>.</para>
+
+ <programlisting>
+mousedtype="yyyy"
+mousedport="xxxx"
+mousedflags=""
+ </programlisting>
+
+ <para>В версиях от 2.2.2 и до 3.0, установите значения следующих переменных
+ в файле <filename>/etc/rc.conf</filename>.</para>
+
+ <programlisting>
+moused_type="yyyy"
+moused_port="xxxx"
+moused_flags=""
+ </programlisting>
+
+ <para>В версиях 3.1 и выше, если предположить, что у вас мышь типа PS/2, то
+ достаточно добавить строчку <literal>moused_enable="YES"</literal> в файл
+ <filename>/etc/rc.conf</filename>.</para>
+
+ <para>Кроме того, если вы хотите использовать даемон мыши на всех виртуальных
+ терминалах, а не только на консоли во время загрузки, добавьте следующую
+ строку в файл <filename>/etc/rc.conf</filename>.</para>
+
+ <programlisting>
+allscreens_flags="-m on"
+ </programlisting>
+
+ <para>Начиная с FreeBSD 2.2.6, даемон мыши в состоянии определять тип
+ протокола автоматически, если, конечно, мышь не достаточно древней
+ модели. Укажите <literal>auto</literal> для автоматического
+ определения типа протокола.</para>
+
+ <para>После запуска даемона мыши, доступ к мыши должен согласовываться
+ между даемоном мыши и другими программами типа X Window. Этот вопрос
+ рассмотрен в <link linkend="x-and-moused">другом разделе</link>.</para>
+
+ </answer>
+</qandaentry>
<qandaentry>
@@ -2724,8 +2836,8 @@ id="moused">
с текущей позиции курсора.</para>
<para>В версиях 2.2.6 и выше, нажатие на кнопку 2 вызовет вставку текста.
- Нажатие на кнопку 3 ``расширит'' выбранный область текста. Если у вашей
- мыши отсутствует средняя кнопка, вы можете её сэмулировать или
+ Нажатие на кнопку 3 <quote>расширит</quote> выбранный область текста. Если
+ у вашей мыши отсутствует средняя кнопка, вы можете её сэмулировать или
переназначить кнопки опциями программы moused. Обратитесь к странице
Справочника по <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?moused(8)">
moused(8)</ulink>.</para>
@@ -2755,6 +2867,16 @@ id="moused">
перестройте ядро.</para>
<programlisting>
+device uhci
+device ohci
+device usb
+device ums
+ </programlisting>
+
+ <para>Во FreeBSD версий, предшествующих 4.0, вместо этого добавьте
+ такие строчки:</para>
+
+ <programlisting>
controller uhci0
controller ohci0
controller usb0
@@ -2773,7 +2895,7 @@ id="moused">
</listitem>
<listitem>
- <para>Одредактируйте файл <filename>/etc/rc.conf</filename>, добавив
+ <para>Отредактируйте файл <filename>/etc/rc.conf</filename>, добавив
такие строчки:</para>
<programlisting>
@@ -2828,14 +2950,15 @@ id="moused">
</question>
<answer>
- <para>Ответ, к сожалению, `в зависимости от обстоятельств'.
- Эти мышки с дополнительными возможностями, как правило, требуют наличия
- специальных драйверов. До тех пор, пока драйвер мыши или прикладная
- программа не будут иметь отдельную поддержку такой мыши, она будет
- работать как стандартная двух- или трёхкнопочная мышь.</para>
- <para>Возможные способы использования колёсиков мыши при работе в X Window
- описаны в <link linkend="x-and-wheel">другом разделе</link>.</para>
+ <para>Ответ, к сожалению, <quote>в зависимости от обстоятельств</quote>.
+ Эти мышки с дополнительными возможностями, как правило, требуют наличия
+ специальных драйверов. До тех пор, пока драйвер мыши или прикладная
+ программа не будут иметь отдельную поддержку такой мыши, она будет
+ работать как стандартная двух- или трёхкнопочная мышь.</para>
+
+ <para>Возможные способы использования колёсиков мыши при работе в X Window
+ описаны в <link linkend="x-and-wheel">другом разделе</link>.</para>
</answer>
</qandaentry>
@@ -2848,13 +2971,14 @@ id="moused">
</question>
<answer>
- <para>В драйвере psm для мыши PS/2 во FreeBSD версий 3.2 и ранее имеются
- проблемы при работе с некоторыми мышками, у которых есть колёсико, в том
- числе с мышками Logitech модель M-S48 и их OEM-разновидностями.
- Исправьте файл <filename>/sys/i386/isa/psm.c</filename> с помощью
- следующего патча и перестройте ядро.</para>
- <programlisting>
+ <para>В драйвере psm для мыши PS/2 во FreeBSD версий 3.2 и ранее имеются
+ проблемы при работе с некоторыми мышками, у которых есть колёсико, в том
+ числе с мышками Logitech модель M-S48 и их OEM-разновидностями.
+ Исправьте файл <filename>/sys/i386/isa/psm.c</filename> с помощью
+ следующего патча и перестройте ядро.</para>
+
+ <programlisting>
Index: psm.c
===================================================================
RCS file: /src/CVS/src/sys/i386/isa/Attic/psm.c,v
@@ -2947,32 +3071,48 @@ diff -u -r1.60.2.1 -r1.60.2.2
</qandaentry>
-<qandaentry><question>
-<para>Какие звуковые платы поддерживаются во FreeBSD?</para></question><answer>
-
-<para>FreeBSD поддерживает звуковые платы SoundBlaster, SoundBlaster Pro,
- SoundBlaster 16, Pro Audio Spectrum 16, AdLib и Gravis UltraSound.
- Имеется ограниченная поддержка MPU-401 и совместимых с ним адаптеров.
- Адаптеры, удовлетворяющие спецификации Microsoft Sound System, также
- поддерживаются драйвером pcm.</para>
-
-<para><emphasis remap=bf>ЗАМЕЧАНИЕ</emphasis> Это касается только звука! Этот
- драйвер не поддерживает CDROM, SCSI или джойстики на всех подобных
- адаптерах, кроме SoundBlaster. Поддерживаются устройства на
- SCSI-интерфейсе SoundBlaster и не-SCSI CDROM, но загрузиться с них
- невозможно.</para>
-
-</answer></qandaentry>
+<qandaentry>
+ <question>
+ <para>Какие звуковые платы поддерживаются во FreeBSD?</para>
+ </question>
-<qandaentry><question>
-<para>Есть ли решение проблемы отсутствия звука при использовании
- драйвера pcm с адаптером es1370?</para></question><answer>
+ <answer>
-<para>При каждой перезагрузке вам нужно запускать следующую команду:</para>
+ <para>FreeBSD поддерживает звуковые платы SoundBlaster, SoundBlaster Pro,
+ SoundBlaster 16, Pro Audio Spectrum 16, AdLib и Gravis UltraSound.
+ Имеется ограниченная поддержка MPU-401 и совместимых с ним адаптеров.
+ Адаптеры, удовлетворяющие спецификации Microsoft Sound System, также
+ поддерживаются драйвером pcm.</para>
-<para>mixer pcm 100 vol 100 cd 100</para>
+ <para>
+ <note>
+ <para>Это касается только звука! Этот драйвер не поддерживает CDROM,
+ SCSI или джойстики ни на каких подобных адаптерах, кроме SoundBlaster.
+ Поддерживаются устройства на SCSI-интерфейсе SoundBlaster и не-SCSI
+ CDROM, но загрузиться с них невозможно.</para>
+ </note>
+ </para>
+
+ </answer>
+</qandaentry>
-</answer></qandaentry>
+
+<qandaentry>
+ <question>
+ <para>Есть ли решение проблемы отсутствия звука при использовании
+ драйвера pcm с адаптером es1370?</para>
+ </question>
+
+ <answer>
+
+ <para>При каждой перезагрузке вам нужно запускать следующую команду:</para>
+
+ <screen>
+&prompt.root; <userinput>mixer pcm 100 vol 100 cd 100</userinput>
+ </screen>
+
+ </answer>
+</qandaentry>
<qandaentry><question>
@@ -2985,38 +3125,57 @@ diff -u -r1.60.2.1 -r1.60.2.2
</answer></qandaentry>
-<qandaentry><question>
-<para>На моей машине отсутствует математический сопроцессор - это плохо?
- </para></question><answer>
+<qandaentry>
+ <question>
+ <para>На моей машине отсутствует математический сопроцессор - это
+ плохо?</para>
+ </question>
-<para><emphasis remap=tt>Замечание</emphasis> Это касается только владельцев
- компьютеров 386/486SX/486SLC - во всех остальных машинах модуль вычислений
- с плавающей точкой объединён с центральным процессором.</para>
+ <answer>
-<para>В общем случае это не проблема, но в отсутствии сопроцессора вы
- можете столкнуться со снижением производительность и точности при
- использовании программной эмуляции сопроцессора (обратитесь к разделу
- об <link linkend="emul">эмуляции вычислений с плавающей точкой</link>).
- В частности, прорисовка дуг в X будет ОЧЕНЬ медленной. Приобретение
- математического сопроцессора настоятельно рекомендуется, он того стоит.</para>
+ <para>
+ <note>
+ <para>Это касается только владельцев компьютеров 386/486SX/486SLC - во
+ всех остальных машинах модуль вычислений с плавающей точкой объединён
+ с центральным процессором.</para>
+ </note>
+ </para>
-<para><emphasis remap=bf>ЗАМЕЧАНИЕ</emphasis> Некоторые математические
- сопроцессоры работают лучше, чем другие. Нам неприятно это признавать,
- но Intel пока никого не подводил. Если вы не уверены, что сопроцессор
- будет работать с FreeBSD, избегайте клонов.</para>
+ <para>В общем случае это не проблема, но в отсутствии сопроцессора вы
+ можете столкнуться со снижением производительность и точности при
+ использовании программной эмуляции сопроцессора (обратитесь к разделу
+ об <link linkend="emul">эмуляции вычислений с плавающей точкой</link>).
+ В частности, прорисовка дуг в X будет ОЧЕНЬ медленной. Приобретение
+ математического сопроцессора настоятельно рекомендуется, он того
+ стоит.</para>
-</answer></qandaentry>
+ <para>
+ <note>
+ <para>Некоторые математические сопроцессоры работают лучше, чем другие.
+ Нам неприятно это признавать, но Intel пока никого не подводил. Если
+ вы не уверены, что сопроцессор будет работать с FreeBSD, избегайте
+ клонов.</para>
+ </note>
+ </para>
+ </answer>
+</qandaentry>
-<qandaentry><question>
-<para>Какие ещё устройства поддерживаются в 2.X?</para></question><answer>
-<para>В <ulink
- URL="../../handbook/install-hw.html#INSTALL-MISC">Руководстве</ulink>
- приведён список остальных устройств, которые поддерживаются во
- FreeBSD.</para>
+<qandaentry>
+ <question>
+ <para>Какие ещё устройства поддерживаются во FreeBSD?</para>
+ </question>
-</answer></qandaentry>
+ <answer>
+
+ <para>В <ulink
+ URL="../../handbook/install-hw.html#INSTALL-MISC">Руководстве</ulink>
+ приведён список остальных устройств, которые поддерживаются во
+ FreeBSD.</para>
+
+ </answer>
+</qandaentry>
<qandaentry>
@@ -3028,7 +3187,7 @@ diff -u -r1.60.2.1 -r1.60.2.2
<answer>
<para>FreeBSD поддерживает APM на некоторых машинах. Поищите в файле
- конфигурации ядра <acronym>LINT</acronym> слово <ulink
+ конфигурации ядра <filename>LINT</filename> слово <ulink
URL="http://www.FreeBSD.org/cgi/man.cgi?apm(4)">APM</ulink>.</para>
</answer>
@@ -3044,21 +3203,30 @@ diff -u -r1.60.2.1 -r1.60.2.2
</answer></qandaentry>
-<qandaentry><question>
-<para>Компьютеры Micron зависают при загрузке</para></question><answer>
-<para>Некоторые материнские платы Micron имеют BIOS, не удовлетворяющую
- стандарту PCI BIOS, что приводит к печальным последствиям при
- загрузке FreeBSD, потому что имеет место несоответствие устройств
- PCI занимаемым ими адресам.</para>
-
-<para>Для решения этой проблемы отключите в BIOS опцию "Plug and Play
- Operating System" . </para>
-
-<para>Более подробная информация об этой проблеме находится по следующему
- адресу: <ulink URL="http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html#micron">http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html#micron</ulink></para>
-
-</answer></qandaentry>
+<qandaentry>
+ <question>
+ <para>Компьютеры Micron зависают при загрузке</para>
+ </question>
+
+ <answer>
+
+ <para>Некоторые материнские платы Micron имеют BIOS, не удовлетворяющую
+ стандарту PCI BIOS, что приводит к печальным последствиям при
+ загрузке FreeBSD, потому что имеет место несоответствие устройств
+ PCI занимаемым ими адресам.</para>
+
+ <para>Для решения этой проблемы отключите в BIOS опцию <quote>Plug and Play
+ Operating System</quote>.</para>
+
+ <para>Более подробная информация об этой проблеме находится по следующему
+ адресу: <ulink
+ URL="http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html#micron">
+ http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html#micron</ulink></para>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para> FreeBSD не распознаёт мой новейший контроллер от Adaptec.
@@ -3073,87 +3241,112 @@ diff -u -r1.60.2.1 -r1.60.2.2
</answer></qandaentry>
-<qandaentry><question>
-<para>FreeBSD не находит внутренний модем Plug &amp; Play.</para></question><answer>
-<para>Вам нужно добавить PnP ID вашего модема в список PnP ID драйвера
- последовательного порта. Для включения поддержки Plug &amp; Play,
- откомпилируйте новое ядро с опцией <emphasis remap=tt>controller
- pnp0</emphasis> в конфигурационном файле, и перезагрузите машину. Ядро
- выведет список ID всех найденных PnP-устройств. Добавьте PnP ID модема в
- таблицу в файле <filename>/sys/i386/isa/sio.c</filename>, где-то в районе
- 2777 строки. Чтобы найти таблицу, поищите слово "SUP1310" в структуре
- "siopnp_ids[]". Снова постройте ядро, проинсталлируйте его и
- перезагрузитесь. Теперь ваш модем должен быть опознан.</para>
-
-<para>Вам может понадобиться отконфигурировать PnP-устройства командой 'pnp'
- в конфигураторе во время загрузки следующим образом:</para>
-
-<para>
-<literallayout> pnp 1 0 enable os irq0 3 drq0 0 port0 0x2f8
- </literallayout>
+<qandaentry>
+ <question>
+ <para>FreeBSD не находит внутренний модем Plug &amp; Play.</para>
+ </question>
- чтобы модем был распознан.</para>
-
-</answer></qandaentry>
+ <answer>
-<qandaentry><question>
-<para> Как сделать, чтобы приглашение boot: выводилось на консоль на
- последовательном порту?
- </para></question><answer>
+ <para>Вам нужно добавить PnP ID вашего модема в список PnP ID драйвера
+ последовательного порта. Для включения поддержки Plug &amp; Play,
+ откомпилируйте новое ядро с опцией <literal>controller pnp0</literal>
+ в конфигурационном файле, и перезагрузите машину. Ядро
+ выведет список ID всех найденных PnP-устройств. Добавьте PnP ID модема в
+ таблицу в файле <filename>/sys/i386/isa/sio.c</filename>, где-то в районе
+ 2777 строки. Чтобы найти таблицу, поищите слово <literal>SUP1310</literal>
+ в структуре <literal>siopnp_ids[]</literal>. Снова постройте ядро,
+ проинсталлируйте его и перезагрузитесь. Теперь ваш модем должен быть
+ опознан.</para>
+
+ <para>Вам может понадобиться отконфигурировать PnP-устройства командой
+ <literal>pnp</literal> в конфигураторе во время загрузки следующим
+ образом:</para>
+
+ <para>
+ <programlisting>
+pnp 1 0 enable os irq0 3 drq0 0 port0 0x2f8
+ </programlisting>
-<para>
-<orderedlist>
+ чтобы модем был распознан.</para>
-<listitem>
-<para>Постройте ядро с опцией <emphasis remap=tt>options COMCONSOLE</emphasis>.
- </para>
-</listitem>
+ </answer>
+</qandaentry>
-<listitem>
-<para>Создайте файл /boot.config, поместив туда только текст <option>-P</option>.
- </para>
-</listitem>
-<listitem>
-<para>Отключите клавиатуру.
+<qandaentry>
+ <question>
+ <para>Как сделать, чтобы приглашение boot: выводилось на консоль на
+ последовательном порту?</para>
+ </question>
+
+ <answer>
+
+ <para>
+ <orderedlist>
+ <listitem>
+ <para>Постройте ядро с параметром
+ <literal>options COMCONSOLE</literal>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Создайте файл /boot.config, поместив туда только текст
+ <option>-P</option>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Отключите клавиатуру.</para>
+ </listitem>
+ </orderedlist>
</para>
-</listitem>
-</orderedlist>
-</para>
-
-<para>Подробная информация находится в файле
- <filename>/usr/src/sys/i386/boot/biosboot/README.serial</filename>.</para>
-
-</answer></qandaentry>
+ <para>Подробная информация находится в файле
+ <filename>/usr/src/sys/i386/boot/biosboot/README.serial</filename>.</para>
-<qandaentry><question>
-<para> Почему сетевой адаптер 3Com PCI не работает с компьютерами Micron?
- </para></question><answer>
+ </answer>
+</qandaentry>
-<para>Некоторые материнские платы Micron имеют BIOS, не удовлетворяющую
- стандарту PCI BIOS, что приводит к несоответствию устройств PCI
- занимаемым ими адресам. Это приводит к печальным последствиям при
- загрузке FreeBSD.</para>
-
-<para>Для решения этой проблемы отключите в BIOS опцию "Plug and Play
- Operating System" . </para>
-
-<para>Более подробная информация об этой проблеме находится по следующему
- адресу: <ulink URL="http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html#micron">http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html#micron</ulink></para>
-
-</answer></qandaentry>
+
+<qandaentry>
+ <question>
+ <para>Почему сетевой адаптер 3Com PCI не работает с компьютерами
+ Micron?</para>
+ </question>
+
+ <answer>
+
+ <para>Некоторые материнские платы Micron имеют BIOS, не удовлетворяющую
+ стандарту PCI BIOS, что приводит к несоответствию устройств PCI
+ занимаемым ими адресам. Это приводит к печальным последствиям при
+ загрузке FreeBSD.</para>
+
+ <para>Для решения этой проблемы отключите в BIOS опцию <quote>Plug and Play
+ Operating System</quote>.</para>
+
+ <para>Более подробная информация об этой проблеме находится по следующему
+ адресу: <ulink
+ URL="http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html#micron">
+ http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html#micron</ulink></para>
+
+ </answer>
+</qandaentry>
<qandaentry>
<question>
<para>Поддерживает ли FreeBSD многопроцессорные системы (SMP)?</para>
- </question><answer>
+ </question>
+
+ <answer>
+
+ <para>Поддержка SMP (Symmetric Multiprocessing) имеется только в 3.0-STABLE и
+ последующих релизах. По умолчанию поддержка SMP в ядре
+ <emphasis>GENERIC</emphasis> не включена, так что для её включения вам
+ нужно будет перекомпилировать ядро. Посмотрите в файл
+ <filename>/sys/i386/conf/LINT</filename>, чтобы определить, какие параметры
+ нужно поместить в конфигурационный файл вашего ядра.</para>
-<para>Поддержка SMP (Symmetric Multiprocessing) имеется только в
- 3.0-STABLE и последующих релизах.</para>
-
</answer>
</qandaentry>
@@ -3178,470 +3371,538 @@ id="troubleshoot">
<title>Устранение некоторых проблем</title>
-<qandaset><qandaentry><question
-id="awre">
-<para> На моём винчестеры есть запорченные блоки!
- </para></question><answer>
+<qandaset>
+<qandaentry>
+ <question id="awre">
+ <para>На моём винчестеры есть запорченные блоки!</para>
+ </question>
-<para>Если это SCSI-устройство, то винчестер должен иметь возможность
- автоматической переадресации таких блоков. Однако по непонятным
- причинам во многих поставляемых дисках эта возможность отключена...</para>
-
-<para>Чтобы её включить, вам нужно изменить режим работы устройства, что
- во FreeBSD может быть выполнено администратором посредством команды</para>
-
-<para>
-<literallayout> scsi -f /dev/rsd0c -m 1 -e -P 3
- </literallayout>
-</para>
-
-<para>и изменить значения параметров AWRE и ARRE с 0 на 1:-</para>
-
-<para>
-<literallayout> AWRE (Auto Write Reallocation Enbld): 1
- ARRE (Auto Read Reallocation Enbld): 1
- </literallayout>
-</para>
-
-<para>Последующие параграфы были предоставлены
- <ulink URL="mailto:tedm@toybox.placo.com">Тэдом Миттельштадтом</ulink>
- (Ted Mittelstaedt):</para>
-
-<para>Для дисков IDE появление запорченных блоков является признаком
- возможных неприятностей. Все современные IDE-диски поставляются с
- включенной возможностью переадресации испорченных блоков. Все
- производители винчестеров в настоящее время предоставляют расширенные
- гарантии и заменяют диски с запорченными блоками.</para>
-
-<para>Если вы всё же хотите спасти ваш диск IDE с запорченными блоками,
- вы можете попытаться найти программу диагностики винчестеров от
- производителя и протестировать ею диск. Иногда эти программы могут
- заставить электронику винчестера пересканировать диск в поисках
- испорченных блоков и заблокировать их.</para>
-
-<para>В случае дисков стандартов ESDI, RLL и MFM, наличие испорченных блоков
- является обычным явлением и не является большой проблемой. В ПК
- контроллер винчестера и BIOS берут на себя работу по блокировке
- испорченных блоков. Это прекрасно работает в случае операционных систем
- типа DOS, которые используют вызовы BIOS для доступа к диску. Однако
- драйвер диска во FreeBSD не обращается к BIOS, поэтому для обеспечения
- подобной функциональности существует bad144. bad144 работает только с
- драйвером wd, её НЕВОЗМОЖНО использовать со SCSI. bad144 помещает все
- найденные испорченные сектора в специальный файл.</para>
-
-<para>У bad144 имеется особенность - специальный файл с испорченными
- блоками помещается на последнюю дорожку диска. Так как этот файл
- может содержать список испорченных секторов, находящихся в начале
- диска, где может располагаться файл ядра /kernel, он должен быть
- доступен загрузчику, использующему вызовы BIOS для чтения файла ядра.
- Это значит, что диск, который использует bad144, не должен иметь
- размеры, превышающие 1024 дорожки, 16 головок и 63 сектора. Это
- ограничивает размер диска, обрабатываемого bad144, 500 мегабайтами.</para>
-
-<para>Для использования bad144, просто установите "Bad Block"
- в положение ON на экране программы fdisk во время начальной установки.
- Это работает начиная с FreeBSD 2.2.7. Диск должен иметь размер,
- не превышающий 1024 дорожки. Рекомендуется, чтобы до этого диск
- проработал не менее 4 часов для перехода в рабочий тепловой режим и
- стабильный режим работы головок.</para>
-
-<para>Если диск имеет размер, превышающий 1024 головки (как, например,
- большой диск ESDI), контроллер ESDI использует особый режим
- трансляции, чтобы это работало в DOS. Драйвер wd будет знать об этих
- режимах трансляции, ЕСЛИ вы укажете на использование "преобразованных"
- параметров в команде "set geometry" программы fdisk. Вы также НЕ должны
- использовать режим "dangerously dedicated" при выделении раздела для
- FreeBSD, так как при этом параметры диска не принимаются во внимание.
- Также, хотя fdisk будет использовать изменённые параметры, он всё же
- помнит настоящий размер диска, и попытается создать слишком большой
- раздел FreeBSD. Если параметры диска изменились на транслированные,
- раздел ДОЛЖЕН быть создан вручную с указанием количества блоков.</para>
-
-<para>Самым быстрым способом является установка большого диска ESDI с
- контоллером ESDI, загрузка DOS и выделение на нём раздела DOS. Затем
- запустите инсталляционную программу FreeBSD и в экране программы
- fdisk найдите и запишите размер блока и их количество раздела DOS.
- Затем установите параметры в те же значения, которые использует DOS,
- удалите раздел DOS и создайте "совмещённый" раздел FreeBSD с ранее
- записанным размером блока. Затем установите загрузку с этого раздела
- и включите сканирование испорченных блоков. Во время установки сначала,
- ещё до создания файловых систем, запустится bad144 (вы можете это
- увидеть по Alt-F2). Если возникнут проблемы при создании файла с
- запорченными секторами, вы установили слишком большие параметры диска
- - перезагрузитесь и начните всё сначала (включая повторные разбиение
- на разделы и форматирование винчестера в DOS).</para>
-
-<para>Если переадресация включена и всё равно на диске присутствуют
- запорченные блоки, то, по-видимому, остаётся только заменить винчестер.
- Количество испорченных блоков с течением времени имеет тенденцию только
- увеличиваться.</para>
-
-</answer></qandaentry>
+ <answer>
-<qandaentry><question>
-<para> FreeBSD не распознаёт мой EISA SCSI контроллер Bustek 742a!
- </para></question><answer>
+ <para>Если это SCSI-устройство, то винчестер должен иметь возможность
+ автоматической переадресации таких блоков. Однако по непонятным
+ причинам во многих поставляемых дисках эта возможность отключена...</para>
-<para>Нижеследующая информация специфична для 742a, но может касаться и
- других адаптеров от Buslogic (Bustek = Buslogic).</para>
-
-<para>Существуют две основных ``версии'' адаптеров 742a. Это аппаратные
- модификации A-G и модификации H и выше. Буква, обозначающая
- модификацию, расположена после номера сборки на кромке адаптера. На
- адаптере 742a установлены две микросхемы ПЗУ, одна содержит BIOS, а
- другая - микрокод (так называемое firmware). Для FreeBSD не имеет
- значения используемая версия BIOS, но имеет значение версия микрокода.
- Buslogic высылает обновления для ПЗУ, если вы позвоните в их отдел
- технической поддержки. Михросхемы с BIOS и микрокодом поставляются
- соответствующими парами. В ПЗУ адаптера вы должны иметь самую
- последнюю версии микрокода для вашей аппаратной модификации.</para>
-
-<para>Адаптерам модификаций A-G может только подойти BIOS/Firmware версий
- вплоть до 2.41/2.21. Адаптерам модификаций H и старше подходят самые
- последние версии BIOS/Firmware 4.70/3.37. Отличие между версиями
- микрокода заключается в том, что версия микрокода 3.37 поддерживает
- механизм ``round robin''.</para>
-
-<para>На адаптерах Buslogic проставлен серийный номер. Если у вас
- адаптер старой модификации, вы можете позвонить в подразделение RMA
- фирмы Buslogic, сказать им серийный номер адаптера и попытаться
- обменять его на более новую модификацию. Если адаптер достаточно нов,
- то они его поменяют.</para>
-
-<para>FreeBSD 2.1 поддерживает микрокод модификаций только 2.21 и выше.
- Если у вас версия микрокода старее, чем эта, то адаптер не будет
- распознаваться как адаптер Buslogic. Однако он может быть опознан
- как Adaptec 1540. Ранние версии микрокода от Buslogic содержат режим
- ``эмуляции'' AHA1540. Однако для EISA-адаптера всё это выглядит как-то
- некрасиво.</para>
-
-<para>Если у вас адаптер старой модификации и вы получили микрокод 2.21
- для него, установите перемычку W1 в положение B-C, по умолчанию она
- находится в положении A-B.</para>
-
-<para>Адаптеры 742a EISA никогда не имели проблему ``&gt;16MB'', описанную в
- разделе <link linkend="bigram">о машинах с &gt;16 MB ОЗУ</link>.
- Эта проблема возникает со SCSI-адаптерами Vesa-Local Buslogic.</para>
-
-</answer></qandaentry>
+ <para>Чтобы её включить, вам нужно изменить режим работы устройства, что
+ во FreeBSD может быть выполнено администратором посредством команды</para>
-<qandaentry><question>
-<para> Не распознаётся SCSI-контроллер на HP Netserver!
- </para></question><answer>
+ <screen>
+&prompt.root; <userinput>scsi -f /dev/rsd0c -m 1 -e -P 3</userinput>
+ </screen>
-<para>В общем-то это известная проблема. EISA-контроллеры SCSI,
- расположенные на материнской плате машин HP Netserver, занимают
- EISA-слот номер 11, так что все ``настоящие'' слоты EISA будут ему
- предшествовать. Так как адресное пространство для слотов EISA выше 10
- пересекается с адресным пространством, предназначенным для PCI, то
- автоконфигуратор FreeBSD в настоящее время не может эту проблему
- нормально обойти.</para>
-
-<para>Так что пока лучшее, что вы можете предпринять, это попытаться
- указать, что пересечения диапазонов адресов нет :), установив опцию
- ядра <symbol>EISA_SLOTS</symbol> в значение 12. Отконфигурируйте и откомпилируйте
- ядро так, как это описано в <ulink URL="../../handbook/kernelconfig.html">разделе Руководства</ulink> о конфигурировании ядра.</para>
-
-<para>Конечно, это даст вам типичную ситуации "курица или яйцо"
- при установке системы на такой машине. Для обхода этой проблемы
- внутри <emphasis>UserConfig</emphasis> есть специальный хак. Не используя
- ``визуального'' интерфейса, а только интерфейс командной строки,
- просто наберите</para>
-
-<para>
-<literallayout> eisa 12
- quit
- </literallayout>
-</para>
+ <para>и изменить значения параметров AWRE и ARRE с 0 на 1:-</para>
+
+ <programlisting>
+AWRE (Auto Write Reallocation Enbld): 1
+ARRE (Auto Read Reallocation Enbld): 1
+ </programlisting>
+
+ <para>Последующие параграфы были предоставлены <ulink
+ URL="mailto:tedm@toybox.placo.com">Тэдом Миттельштадтом</ulink>
+ (Ted Mittelstaedt):</para>
+
+ <para>Для дисков IDE появление запорченных блоков является признаком
+ возможных неприятностей. Все современные IDE-диски поставляются с
+ включенной возможностью переадресации испорченных блоков. Все
+ производители винчестеров в настоящее время предоставляют расширенные
+ гарантии и заменяют диски с запорченными блоками.</para>
+
+ <para>Если вы всё же хотите спасти ваш диск IDE с запорченными блоками,
+ вы можете попытаться найти программу диагностики винчестеров от
+ производителя и протестировать ею диск. Иногда эти программы могут
+ заставить электронику винчестера пересканировать диск в поисках
+ испорченных блоков и заблокировать их.</para>
+
+ <para>В случае дисков стандартов ESDI, RLL и MFM, наличие испорченных блоков
+ является обычным явлением и не является большой проблемой. В ПК
+ контроллер винчестера и BIOS берут на себя работу по блокировке
+ испорченных блоков. Это прекрасно работает в случае операционных систем
+ типа DOS, которые используют вызовы BIOS для доступа к диску. Однако
+ драйвер диска во FreeBSD не обращается к BIOS, поэтому для обеспечения
+ подобной функциональности существует bad144. bad144 работает только с
+ драйвером wd (что означает, что эта утилита не поддерживается во FreeBSD
+ 4.0), её НЕВОЗМОЖНО использовать со SCSI. bad144 помещает все
+ найденные испорченные сектора в специальный файл.</para>
+
+ <para>У bad144 имеется особенность - специальный файл с испорченными
+ блоками помещается на последнюю дорожку диска. Так как этот файл
+ может содержать список испорченных секторов, находящихся в начале
+ диска, где может располагаться файл ядра /kernel, он должен быть
+ доступен загрузчику, использующему вызовы BIOS для чтения файла ядра.
+ Это значит, что диск, который использует bad144, не должен иметь
+ размеры, превышающие 1024 дорожки, 16 головок и 63 сектора. Это
+ ограничивает размер диска, обрабатываемого bad144, 500 мегабайтами.</para>
+
+ <para>Для использования bad144, просто установите <quote>Bad Block</quote>
+ в положение ON на экране программы fdisk во время начальной установки.
+ Это работает начиная с FreeBSD 2.2.7. Диск должен иметь размер,
+ не превышающий 1024 дорожки. Рекомендуется, чтобы до этого диск
+ проработал не менее 4 часов для перехода в рабочий тепловой режим и
+ стабильный режим работы головок.</para>
+
+ <para>Если диск имеет размер, превышающий 1024 головки (как, например,
+ большой диск ESDI), контроллер ESDI использует особый режим
+ трансляции, чтобы это работало в DOS. Драйвер wd будет знать об этих
+ режимах трансляции, ЕСЛИ вы укажете на использование
+ <quote>преобразованных</quote> параметров в команде <quote>set
+ geometry</quote> программы fdisk. Вы также НЕ должны использовать режим
+ <quote>dangerously dedicated</quote> при выделении раздела для
+ FreeBSD, так как при этом параметры диска не принимаются во внимание.
+ Также, хотя fdisk будет использовать изменённые параметры, он всё же
+ помнит настоящий размер диска, и попытается создать слишком большой
+ раздел FreeBSD. Если параметры диска изменились на транслированные,
+ раздел ДОЛЖЕН быть создан вручную с указанием количества блоков.</para>
+
+ <para>Самым быстрым способом является установка большого диска ESDI с
+ контоллером ESDI, загрузка DOS и выделение на нём раздела DOS. Затем
+ запустите инсталляционную программу FreeBSD и в экране программы
+ fdisk найдите и запишите размер блока и их количество раздела DOS.
+ Затем установите параметры в те же значения, которые использует DOS,
+ удалите раздел DOS и создайте <quote>совмещённый</quote> раздел FreeBSD с
+ ранее записанным размером блока. Затем установите загрузку с этого раздела
+ и включите сканирование испорченных блоков. Во время установки сначала,
+ ещё до создания файловых систем, запустится bad144 (вы можете это
+ увидеть по Alt-F2). Если возникнут проблемы при создании файла с
+ запорченными секторами, вы установили слишком большие параметры диска
+ - перезагрузитесь и начните всё сначала (включая повторные разбиение
+ на разделы и форматирование винчестера в DOS).</para>
+
+ <para>Если переадресация включена и всё равно на диске присутствуют
+ запорченные блоки, то, по-видимому, остаётся только заменить винчестер.
+ Количество испорченных блоков с течением времени имеет тенденцию только
+ увеличиваться.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>FreeBSD не распознаёт мой EISA SCSI контроллер Bustek 742a!</para>
+ </question><answer>
+
+ <para>Нижеследующая информация специфична для 742a, но может касаться и
+ других адаптеров от Buslogic (Bustek = Buslogic).</para>
+
+ <para>Существуют две основных <quote>версии</quote> адаптеров 742a. Это
+ аппаратные модификации A-G и модификации H и выше. Буква, обозначающая
+ модификацию, расположена после номера сборки на кромке адаптера. На
+ адаптере 742a установлены две микросхемы ПЗУ, одна содержит BIOS, а
+ другая - микрокод (так называемое firmware). Для FreeBSD не имеет
+ значения используемая версия BIOS, но имеет значение версия микрокода.
+ Buslogic высылает обновления для ПЗУ, если вы позвоните в их отдел
+ технической поддержки. Михросхемы с BIOS и микрокодом поставляются
+ соответствующими парами. В ПЗУ адаптера вы должны иметь самую
+ последнюю версии микрокода для вашей аппаратной модификации.</para>
+
+ <para>Адаптерам модификаций A-G может только подойти BIOS/Firmware версий
+ вплоть до 2.41/2.21. Адаптерам модификаций H и старше подходят самые
+ последние версии BIOS/Firmware 4.70/3.37. Отличие между версиями
+ микрокода заключается в том, что версия микрокода 3.37 поддерживает
+ механизм <quote>round robin</quote>.</para>
+
+ <para>На адаптерах Buslogic проставлен серийный номер. Если у вас
+ адаптер старой модификации, вы можете позвонить в подразделение RMA
+ фирмы Buslogic, сказать им серийный номер адаптера и попытаться
+ обменять его на более новую модификацию. Если адаптер достаточно нов,
+ то они его поменяют.</para>
+
+ <para>FreeBSD 2.1 поддерживает микрокод модификаций только 2.21 и выше.
+ Если у вас версия микрокода старее, чем эта, то адаптер не будет
+ распознаваться как адаптер Buslogic. Однако он может быть опознан
+ как Adaptec 1540. Ранние версии микрокода от Buslogic содержат режим
+ <quote>эмуляции</quote> AHA1540. Однако для EISA-адаптера всё это выглядит
+ как-то неприлично.</para>
+
+ <para>Если у вас адаптер старой модификации и вы получили микрокод 2.21
+ для него, установите перемычку W1 в положение B-C, по умолчанию она
+ находится в положении A-B.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Не распознаётся SCSI-контроллер на HP Netserver!</para>
+ </question>
+
+ <answer>
+
+ <para>В общем-то это известная проблема. EISA-контроллеры SCSI,
+ расположенные на материнской плате машин HP Netserver, занимают
+ EISA-слот номер 11, так что все <quote>настоящие</quote> слоты EISA будут
+ ему предшествовать. Так как адресное пространство для слотов EISA выше 10
+ пересекается с адресным пространством, предназначенным для PCI, то
+ автоконфигуратор FreeBSD в настоящее время не может эту проблему
+ нормально обойти.</para>
+
+ <para>Так что пока лучшее, что вы можете предпринять, это попытаться
+ указать, что пересечения диапазонов адресов нет :), установив опцию
+ ядра <literal>EISA_SLOTS</literal> в значение 12. Отконфигурируйте и
+ откомпилируйте ядро так, как это описано в <ulink
+ URL="../../handbook/kernelconfig.html">разделе Руководства</ulink> о
+ конфигурировании ядра.</para>
+
+ <para>Конечно, это даст вам типичную ситуации "курица или яйцо"
+ при установке системы на такой машине. Для обхода этой проблемы
+ внутри <emphasis>UserConfig</emphasis> есть специальный хак. Не используя
+ <quote>визуального</quote> интерфейса, а только интерфейс командной строки,
+ просто наберите</para>
+
+ <programlisting>
+eisa 12
+quit
+ </programlisting>
<para>в приглашении, и проинсталлируйте систему как обычно. В любом случае
рекомендуется, что вы отконфигурируете и проинсталлируете собственное
ядро.</para>
-<para>Надеемся, что будущие версии будут содержать полное решение этой
- проблемы.</para>
-
-<para><emphasis remap=tt>ЗАМЕЧАНИЕ:</emphasis> Вы не сможете использовать режим
- <emphasis remap=bf>dangerously dedicated</emphasis> на машинах HP
- Netserver. Полное описание причин содержится в
- <link linkend="dedicate">этом замечании</link>.</para>
+ <para>Надеемся, что будущие версии будут содержать полное решение этой
+ проблемы.</para>
-</answer></qandaentry>
+ <para>
+ <note>
+ <para>Вы не сможете использовать режим <emphasis remap=bf>dangerously
+ dedicated</emphasis> на машинах HP Netserver. Полное описание причин
+ содержится в <link linkend="dedicate">этом замечании</link>.</para>
+ </note>
+ </para>
-<qandaentry><question>
-<para>Что не так с IDE-контроллером CMD640?</para></question><answer>
+ </answer>
+</qandaentry>
-<para>Этот контроллер не рабочий. Он не может отрабатывать команды на
- обоих каналах одновременно.</para>
-
-<para>Решение этой проблемы существует и включается автоматически, если
- в вашей системе испольщуется этот контроллер. Подробная информация
- находится на страницах Справочника по дисковому драйверу (man 4 wd).</para>
-
-<para>Если вы уже работаете с FreeBSD 2.2.1 или 2.2.2 с IDE-контроллером
- CMD640 и хотите использовать второй канал, постройте новое ядро с
- включенной опцией <emphasis remap=tt>options "CMD640"</emphasis>. В версии 2.2.6 и выше это
- включено по умолчанию.</para>
-
-</answer></qandaentry>
-<qandaentry><question>
-<para>Выдаются сообщения типа ``<emphasis remap=tt>ed1: timeout</emphasis>''.</para></question><answer>
+<qandaentry>
+ <question>
+ <para>Что не так с IDE-контроллером CMD640?</para>
+ </question>
-<para>Обычно это вызвано конфликтом прерываний (например, двух адаптеров,
- использующих один и тот же IRQ). FreeBSD до версии 2.0.5R была
- нечувствительна к таким конфликтам, и драйвер сетевого адапетра
- оставался работоспособен даже при конфликтах IRQ. Однако с версии
- 2.0.5R и выше, конфликты IRQ больше не считаются безобидными.
- Загрузитесь с опцией -c и смените строку, описывающую ed0/de0/...
- на соответствующую вашей системе..</para>
-
-<para>Если вы используете разъём BNC сетевого адаптера, таймауты
- устройства могут быть вызваны плохим терминированием. Чтобы это
- проверить, подключите терминатор к адаптеру (без кабеля) и
- посмотрите, не исчезли ли сообщения об ошибках.</para>
-
-<para>Некоторые NE2000-совместимые адаптеры выдают такую ошибку, если нет
- связи по UTP-порту или отключен кабель.</para>
-
-</answer></qandaentry>
+ <answer>
-<qandaentry><question>
-<para> При монтировании компакт-диска, выдаётся сообщение
- ``Incorrect super block''.
- </para></question><answer>
+ <para>Этот контроллер не рабочий. Он не может отрабатывать команды на
+ обоих каналах одновременно.</para>
+
+ <para>Решение этой проблемы существует и включается автоматически, если
+ в вашей системе используется этот контроллер. Подробная информация
+ находится на страницах Справочника по дисковому драйверу (man 4 wd).</para>
+
+ <para>Если вы уже работаете с FreeBSD 2.2.1 или 2.2.2 с IDE-контроллером
+ CMD640 и хотите использовать второй канал, постройте новое ядро с
+ включенной опцией <literal>options "CMD640"</literal>. В версии 2.2.6 и
+ выше это включено по умолчанию.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Выдаются сообщения типа <literal>ed1: timeout</literal>.</para>
+ </question>
+
+ <answer>
+
+ <para>Обычно это вызвано конфликтом прерываний (например, двух адаптеров,
+ использующих один и тот же IRQ). FreeBSD до версии 2.0.5R была
+ нечувствительна к таким конфликтам, и драйвер сетевого адапетра
+ оставался работоспособен даже при конфликтах IRQ. Однако с версии
+ 2.0.5R и выше, конфликты IRQ больше не считаются безобидными.
+ Загрузитесь с опцией -c и смените строку, описывающую ed0/de0/...
+ на соответствующую вашей системе..</para>
+
+ <para>Если вы используете разъём BNC сетевого адаптера, таймауты
+ устройства могут быть вызваны плохим терминированием. Чтобы это
+ проверить, подключите терминатор к адаптеру (без кабеля) и
+ посмотрите, не исчезли ли сообщения об ошибках.</para>
+
+ <para>Некоторые NE2000-совместимые адаптеры выдают такую ошибку, если нет
+ связи по UTP-порту или отключен кабель.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>При монтировании компакт-диска, выдаётся сообщение <literal>Incorrect
+ super block</literal>.</para>
+ </question>
+
+ <answer>
<para>В параметрах команды <ulink
URL="http://www.FreeBSD.org/cgi/man.cgi?mount(8)">mount</ulink> вам нужно
указать тип устройства, который вы собираетесь смонтировать. По
умолчанию <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?mount(8)">
mount(8)</ulink> полагает, что монтируемая файловая система имеет тип
- ``<emphasis remap=tt>ufs</emphasis>''. При монтировании файловой системы
- CDROM нужно указать опцию ``<option>-t cd9660</option>'' в команде <ulink
+ <literal>ufs</literal>. При монтировании файловой системы
+ CDROM нужно указать опцию <option>-t cd9660</option> в команде <ulink
URL="http://www.FreeBSD.org/cgi/man.cgi?mount(8)">mount(8)</ulink>. При
этом, конечно же, предполагается, что CDROM содержит файловую систему
стандарта ISO 9660, как на большинстве CDROM. С версии 1.1R FreeBSD
автоматически распознаёт также расширение Rock Ridge (для длинных имён
файлов).</para>
-<para>Например, если вы хотите смонтировать устройство CDROM
- ``<filename>/dev/cd0c</filename>'', в каталог <filename>/mnt</filename>, вы должны выполнить
- следующую команду:</para>
-
-<para>
-<literallayout> mount -t cd9660 /dev/cd0c /mnt
- </literallayout>
-</para>
-
-<para>Заметьте, что имя устройства (``<filename>/dev/cd0c</filename>'' в этом примере)
- может быть другим, в зависимости от интерфейса вашего CDROM.
- Отметьте, что опция ``<option>-t cd9660</option>'' всего лишь приводит к вызову
- команды ``<symbol>mount_cd9660</symbol>'', так что пример выше может быть
- укорочен до такой команды:</para>
-
-<para>
-<literallayout> mount_cd9660 /dev/cd0c /mnt
- </literallayout>
-</para>
-
-</answer></qandaentry>
+ <para>Например, если вы хотите смонтировать устройство CDROM
+ <filename>/dev/cd0c</filename> в каталог <filename>/mnt</filename>, вы
+ должны выполнить следующую команду:</para>
-<qandaentry><question>
-<para> При монтировании компакт-диска выдаётся сообщение
- ``Device not configured''.
- </para></question><answer>
+ <screen>
+&prompt.root; <userinput>mount -t cd9660 /dev/cd0c /mnt</userinput>
+ </screen>
-<para>Обычно это означает, что в приводе CDROM нет компакт-диска либо
- устройство не было обнаружено на этапе загрузки. Вставьте в
- привод какой-нибудь диск, и/или проверьте его настройку как
- ведущего/ведомого устройства, если оно типа IDE (ATAPI). Для привода
- CDROM может потребоваться несколько секунд для обнаружения, что был
- вставлен диск, так что будьте терпеливыми.</para>
-
-<para>Иногда SCSI CDROM может отсутствовать в системе из-за недостатка
- времени на ответ при сбросе шины. Если ваш привод CD-ROM является
- SCSI-устройством, пожалуйста, попробуйте добавить такой символ в ваш
- файл конфигурации ядра и перекомпилируйте его.</para>
-
-<para>
-<literallayout> options "SCSI_DELAY=15"
- </literallayout>
-</para>
-
-</answer></qandaentry>
+ <para>Заметьте, что имя устройства (<filename>/dev/cd0c</filename> в этом
+ примере) может быть другим, в зависимости от интерфейса вашего CDROM.
+ Отметьте, что опция <option>-t cd9660</option> всего лишь приводит к вызову
+ команды <command>mount_cd9660</command>, так что пример выше может быть
+ укорочен до такой команды:</para>
-<qandaentry><question>
-<para> Мой принтер печатает невероятно медленно. Что тут можно сделать?
- </para></question><answer>
+ <screen>
+&prompt.root; <userinput>mount_cd9660 /dev/cd0c /mnt</userinput>
+ </screen>
-<para>Если принтер подключен к параллельному порту, и единственной
- проблемой является его медлительность, попробуйте установить порт в
- режим ``polled'':</para>
-
-<para>
-<literallayout> lptcontrol -p
- </literallayout>
-</para>
-
-<para>Утверждается, что некоторые новейшие принтеры от HP не работают
- корректно в режиме прерываний, скорее всего из-за (это ещё не совсем
- точно выянено) проблем с временными задержками.</para>
-
-</answer></qandaentry>
+ </answer>
+</qandaentry>
-<qandaentry><question>
-<para> Программы аварийно завершают работу с ошибкой ``Signal 11''.
- </para></question><answer>
-<para>Это может быть вызвано сбоями аппаратного обеспечением (память,
- материнская плата, итд). Попробуйте запустить на вашем ПК программу
- тестирования памяти. Имейте в виду, что в случае незначительных
- отклонений в работе возможна ситуация, когда все программы
- тестирования, которые вы будете пробовать, будут утверждать, что с
- ОЗУ всё в порядке, а ошибка будет возникать при определённых условиях
- (таких, как использование DMA при использовании режима управления
- шиной контроллером SCSI типа Adaptec 1542, интенсивное обращение к
- ОЗУ при компиляции ядра или значительной нагрузке на систему).</para>
-
-<para>В FAQ по SIG11 (ссылка дана ниже) сказано, что медленная память
- является самая распространённой причиной возникновения этой проблемы.
- Увеличьте число тактов ожидания в настройке BIOS или установите более
- быструю память.</para>
-
-<para>Для меня самой распространённой причиной была сбойная кэш-память
- или кэш-контроллер. Попробуйте отключить внешний кэш (второго
- уровня) в BIOS и посмотрите, не решит ли это вашу проблему.</para>
-
-<para>Подробная информация по этому вопросу содержится в <ulink URL="http://www.bitwizard.nl/sig11/">FAQ по проблеме SIG11</ulink>.</para>
-
-</answer></qandaentry>
+<qandaentry>
+ <question>
+ <para>При монтировании компакт-диска выдаётся сообщение <literal>Device not
+ configured</literal>.</para>
+ </question>
+ <answer>
-<qandaentry><question>
-<para>При загрузке монитор темнеет и теряет синхронизацию!
- </para></question><answer>
+ <para>Обычно это означает, что в приводе CDROM нет компакт-диска либо
+ устройство не было обнаружено на этапе загрузки. Вставьте в
+ привод какой-нибудь диск, и/или проверьте его настройку как
+ ведущего/ведомого устройства, если оно типа IDE (ATAPI). Для привода
+ CDROM может потребоваться несколько секунд для обнаружения, что был
+ вставлен диск, так что будьте терпеливыми.</para>
-<para>Это известная проблема с видеоадаптерами ATI Mach 64. Она вызвана тем,
- что этот адаптер использует адрес <emphasis remap=tt>2e8</emphasis>, как и
- четвёртый последовательный порт. Из-за ошибки (или особенности?) в драйвере
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?sio(4)">sio(4)</ulink> он
- обращается к порту, даже если если он не существует, и
- <emphasis remap=bf>даже</emphasis> если вы отключите sio3 (четвёртый порт),
- который, как правило, использует этот адрес ввода/вывода.</para>
-
-<para>Пока это не исправлено, используйте следующий метод:</para>
-
-<para>
- <orderedlist>
- <listitem>
- <para>В приглашенни загрузчика наберите <option>-c</option>. (Это
- переведёт ядро в режим конфигурации).</para>
- </listitem>
+ <para>Иногда SCSI CDROM может отсутствовать в системе из-за недостатка
+ времени на ответ при сбросе шины. Если ваш привод CD-ROM является
+ SCSI-устройством, пожалуйста, попробуйте добавить такой символ в ваш
+ файл конфигурации ядра и перекомпилируйте его.</para>
- <listitem>
- <para>Отключите устройства <emphasis remap=tt>sio0</emphasis>,
- <emphasis remap=tt>sio1</emphasis>, <emphasis
- remap=tt>sio2</emphasis> и <emphasis remap=tt>sio3</emphasis>
- (все). После этого драйвер sio не будет активизироваться и проблем
- не будет.</para>
- </listitem>
+ <programlisting>
+options "SCSI_DELAY=15"
+ </programlisting>
- <listitem>
- <para>Для продолжения загрузки наберите exit.</para>
- </listitem>
- </orderedlist>
-</para>
-
-<para>Если вам нужно использовать последовательные порты, вм должны построить
- новое ядро со следующей модификацией: в файле
- <filename>/usr/src/sys/i386/isa/sio.c</filename> найдите строчку, содержащую
- число <literal>0x2e8</literal> и удалите её вместе с предшествующий запятой
- (оставив следующую). После этого следуйте обычным указаниям по построению
- ядра.</para>
-
-<para>Даже после этих изменений вы можете обнаружить, что X Window работает
- ненормально. Если это произошло, удостоверьтесь, что вы используете
- XFree86 версии не ниже 3.3.3. Этот и последующие релизы имеют встроенную
- поддержку адаптеров Mach64 и даже отдельный X-сервер для таких
- адаптеров.</para>
+ </answer>
+</qandaentry>
-</answer></qandaentry>
+<qandaentry>
+ <question>
+ <para>Мой принтер печатает невероятно медленно. Что тут можно
+ сделать?</para>
+ </question>
-<qandaentry><question id="reallybigram">
-<para>У меня 128 МБ ОЗУ, но система используется только 64.
- </para></question><answer>
+ <answer>
-<para>Так как для определения объёма памяти FreeBSD использует информацию
- BIOS, она ограничена 16 битами, используемыми для выражения
- размера ОЗУ в килобайтах (65535 КБ = 64МБ) (или меньше... некоторые
- BIOS ограничивают размеры памяти до 16МБ). Если у вас больше чем 64МБ
- ОЗУ, FreeBSD будет пытаться обнаружить эту память; однако эта попытка
- может и не удасться).</para>
-
-<para>Для решения этой проблемы вам нужно использовать опцию ядра,
- указанную ниже. Способ выяснения полной информации о памяти из BIOS
- существует, но у нас нет места в загрузочном блоке, чтобы это делать.
- Когда проблема нехватки места в загрузочных блоках будет решена, мы
- будем использовать расширенные функции BIOS для получения полной
- информации о памяти... но пока мы остановились на опции ядра.</para>
-
-<para> <literal> options "MAXMEM=&lt;n&gt;"
- </literal></para>
-
-<para>Здесь <emphasis remap=tt>n</emphasis> - это объём памяти в килобайтах. Для машины со 128 МБ
- ОЗУ вам нужно использовать значение <emphasis remap=tt>131072</emphasis>.</para>
-
-</answer></qandaentry>
+ <para>Если принтер подключен к параллельному порту, и единственной
+ проблемой является его медлительность, попробуйте установить порт в
+ режим <quote>polled</quote>:</para>
-<qandaentry><question>
-<para> FreeBSD 2.0 аварийно завершает работу с сообщением
- ``kmem_map too small!''
- </para></question><answer>
+ <screen>
+&prompt.root; <userinput>lptcontrol -p</userinput>
+ </screen>
-<para><emphasis remap=tt>Замечание</emphasis> Сообщение может также выглядеть как
- ``mb_map too small!''</para>
-
-<para>Такое завершение работы показывает, что системе не хватает
- виртуальной памяти для сетевых буферов (точнее, структур mbuf). Вы
- можете увеличить количество виртуальной памяти для структур mbuf,
- добавив:</para>
-
-<para><literal>options "NMBCLUSTERS=&lt;n&gt;"</literal></para>
-
- <para>в файл конфигурации ядра, где &lt;n&gt; - это число в пределах
- 512-4096, в зависимости от числа TCP-соединений, которое вам нужно
- одновременно обслуживать. Я рекомендую попробовать значение 2048 - это
- должно избавить вас от аварийных остановов. Вы можете отслеживать
+ <para>Утверждается, что некоторые новейшие принтеры от HP не работают
+ корректно в режиме прерываний, скорее всего из-за (это ещё не совсем
+ точно выянено) проблем с временными задержками.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Программы аварийно завершают работу с ошибкой <literal>Signal
+ 11</literal>.</para>
+ </question>
+
+ <answer>
+
+ <para>Это может быть вызвано сбоями аппаратного обеспечением (память,
+ материнская плата, итд). Попробуйте запустить на вашем ПК программу
+ тестирования памяти. Имейте в виду, что в случае незначительных
+ отклонений в работе возможна ситуация, когда все программы
+ тестирования, которые вы будете пробовать, будут утверждать, что с
+ ОЗУ всё в порядке, а ошибка будет возникать при определённых условиях
+ (таких, как использование DMA при использовании режима управления
+ шиной контроллером SCSI типа Adaptec 1542, интенсивное обращение к
+ ОЗУ при компиляции ядра или значительной нагрузке на систему).</para>
+
+ <para>В FAQ по SIG11 (ссылка дана ниже) сказано, что медленная память
+ является самая распространённой причиной возникновения этой проблемы.
+ Увеличьте число тактов ожидания в настройке BIOS или установите более
+ быструю память.</para>
+
+ <para>Для меня самой распространённой причиной была сбойная кэш-память
+ или кэш-контроллер. Попробуйте отключить внешний кэш (второго
+ уровня) в BIOS и посмотрите, не решит ли это вашу проблему.</para>
+
+ <para>Подробная информация по этому вопросу содержится в <ulink
+ URL="http://www.bitwizard.nl/sig11/">FAQ по проблеме SIG11</ulink>.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>При загрузке монитор темнеет и теряет синхронизацию!</para>
+ </question>
+
+ <answer>
+
+ <para>Это известная проблема с видеоадаптерами ATI Mach 64. Она вызвана тем,
+ что этот адаптер использует адрес <literal>2e8</literal>, как и
+ четвёртый последовательный порт. Из-за ошибки (или особенности работы?) в
+ драйвере <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?sio(4)">
+ sio(4)</ulink> он обращается к порту, даже если если он не существует, и
+ <emphasis remap=bf>даже</emphasis> если вы отключите sio3 (четвёртый порт),
+ который, как правило, использует этот адрес ввода/вывода.</para>
+
+ <para>Пока это не исправлено, используйте следующий метод:</para>
+
+ <para>
+ <orderedlist>
+ <listitem>
+ <para>В приглашенни загрузчика наберите <option>-c</option>. (Это
+ переведёт ядро в режим конфигурации).</para>
+ </listitem>
+
+ <listitem>
+ <para>Отключите устройства <devicename>sio0</devicename>,
+ <devicename>sio1</devicename>, <devicename>sio2</devicename> и
+ <devicename>sio3</devicename> (все их). После этого драйвер sio не
+ будет активизироваться и проблем не будет.</para>
+ </listitem>
+
+ <listitem>
+ <para>Для продолжения загрузки наберите exit.</para>
+ </listitem>
+ </orderedlist>
+ </para>
+
+ <para>Если вам нужно использовать последовательные порты, вм должны построить
+ новое ядро со следующей модификацией: в файле
+ <filename>/usr/src/sys/i386/isa/sio.c</filename> найдите строчку, содержащую
+ число <literal>0x2e8</literal> и удалите её вместе с предшествующий запятой
+ (оставив следующую). После этого следуйте обычным указаниям по построению
+ ядра.</para>
+
+ <para>Даже после этих изменений вы можете обнаружить, что X Window работает
+ ненормально. Если это произошло, удостоверьтесь, что вы используете
+ XFree86 версии не ниже 3.3.3. Этот и последующие релизы имеют встроенную
+ поддержку адаптеров Mach64 и даже отдельный X-сервер для таких
+ адаптеров.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question id="reallybigram">
+ <para>У меня 128 МБ ОЗУ, но система используется только 64.</para>
+ </question>
+
+ <answer>
+
+ <para>Так как для определения объёма памяти FreeBSD использует информацию
+ BIOS, она ограничена 16 битами, используемыми для выражения
+ размера ОЗУ в килобайтах (65535 КБ = 64МБ) (или меньше... некоторые
+ BIOS ограничивают размеры памяти до 16МБ). Если у вас больше чем 64МБ
+ ОЗУ, FreeBSD будет пытаться обнаружить эту память; однако эта попытка
+ может и не удасться).</para>
+
+ <para>Для решения этой проблемы вам нужно использовать опцию ядра,
+ указанную ниже. Способ выяснения полной информации о памяти из BIOS
+ существует, но у нас нет места в загрузочном блоке, чтобы это делать.
+ Когда проблема нехватки места в загрузочных блоках будет решена, мы
+ будем использовать расширенные функции BIOS для получения полной
+ информации о памяти... но пока мы остановились на опции ядра.</para>
+
+ <para><literal>options "MAXMEM=<replaceable>n</replaceable>"</literal></para>
+
+ <para>Здесь <replaceable>n</replaceable> - это объём памяти в килобайтах. Для
+ машины со 128 МБ ОЗУ вам нужно использовать значение
+ <literal>131072</literal>.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>FreeBSD 2.0 аварийно завершает работу с сообщением <literal>kmem_map
+ too small!</literal></para>
+ </question>
+
+ <answer>
+
+ <para>
+ <note>
+ <para>Сообщение может также выглядеть как <literal>mb_map too
+ small!</literal></para>
+ </note>
+ </para>
+
+ <para>Такое завершение работы показывает, что системе не хватает
+ виртуальной памяти для сетевых буферов (точнее, структур mbuf). Вы
+ можете увеличить количество виртуальной памяти для структур mbuf,
+ добавив:</para>
+
+ <para><literal>options "NMBCLUSTERS=<replaceable>n</replaceable>"</literal>
+ </para>
+
+ <para>в файл конфигурации ядра, где <replaceable>n</replaceable> - это число
+ в пределах 512-4096, в зависимости от числа TCP-соединений, которое вам
+ нужно одновременно обслуживать. Я рекомендую попробовать значение 2048 -
+ это должно избавить вас от аварийных остановов. Вы можете отслеживать
количество структур mbuf, выделенных/используемых системой командой <ulink
URL="http://www.FreeBSD.org/cgi/man.cgi?netstat(1)">netstat -m</ulink>.
- Значение по умолчанию для NMBCLUSTERS равно <emphasis
- remap=tt>512 + MAXUSERS * 16</emphasis>.</para>
+ Значение по умолчанию для NMBCLUSTERS равно
+ <literal>512 + MAXUSERS * 16</literal>.</para>
</answer>
</qandaentry>
-<qandaentry><question>
-<para> Сообщение ``CMAP busy panic'' при перезагрузке с новым ядром.
- </para></question><answer>
+<qandaentry>
+ <question>
+ <para>При перезагрузке с новым ядром выдаётся сообщение <literal>CMAP busy
+ panic</literal>.</para>
+ </question>
-<para>Процедура определения устаревших фалов <filename>/var/db/kvm_*.db</filename>
- иногда даёт сбой и использует не те файлы, что может вызвать аварийный
- останов системы.</para>
-
-<para>Если это случилось, перезагрузитесь в однопользовательском режиме
- и выполните команду:</para>
-
-<para>
-<literallayout> rm /var/db/kvm_*.db
- </literallayout>
-</para>
-
-</answer></qandaentry>
+ <answer>
-<qandaentry><question>
-<para>ahc0: brkadrint, Illegal Host Access at seqaddr 0x0</para></question><answer>
+ <para>Процедура определения устаревших файлов
+ <filename>/var/db/kvm_*.db</filename> иногда даёт сбой и использует не те
+ файлы, что может вызвать аварийный останов системы.</para>
+
+ <para>Если это случилось, перезагрузитесь в однопользовательском режиме
+ и выполните команду:</para>
+
+ <screen>
+&prompt.root; <userinput>rm /var/db/kvm_*.db</userinput>
+ </screen>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>ahc0: brkadrint, Illegal Host Access at seqaddr 0x0</para>
+ </question>
+
+ <answer>
<para>Это - результат конфликта со SCSI-адаптером Ultrastor. </para>
@@ -3653,13 +3914,19 @@ id="awre">
</qandaentry>
-<qandaentry><question>
-<para>Sendmail говорит, что ``mail loops back to myself''</para></question><answer>
+<qandaentry>
+ <question>
+ <para>Sendmail говорит, что <literal>mail loops back to myself</literal>
+ </para>
+ </question>
-<para>В FAQ по sendmail на это дан такой ответ:-</para>
+ <answer>
+
+ <para>В FAQ по sendmail на это дан такой ответ:-</para>
-<para>
-<literallayout> * Выдаются сообщения "Local configuration error", примерно такие:
+ <para>
+ <literallayout>
+ * Выдаются сообщения "Local configuration error", примерно такие:
553 relay.domain.net config error: mail loops back to myself
554 &lt;user@domain.net&gt;... Local configuration error
@@ -3669,167 +3936,191 @@ id="awre">
Согласно записям MX, почта для домена (скажем, domain.net) была
перенаправлена на указанный хост (в нашем случае relay.domain.net),
но он не распознаётся как domain.net. Добавьте строку domain.net в
- файл /etc/sendmail.cw (если вы используете FETURE(use_cw_file)) или
+ файл /etc/sendmail.cw (если вы используете FEATURE(use_cw_file)) или
добавьте "Cw domain.net" в /etc/sendmail.cf.
- </literallayout>
-</para>
-
-<para>Текущая версия <ulink URL="ftp://rtfm.mit.edu/pub/usenet/news.answers/mail/sendmail-faq">FAQ по sendmail</ulink> больше не поставляется вместе с sendmail.
- Однако этот документ регулярно помещается в конференции
- <ulink URL="news:comp.mail.sendmail">comp.mail.sendmail</ulink>,
- <ulink URL="news:comp.mail.misc">comp.mail.misc</ulink>,
- <ulink URL="news:comp.mail.smail">comp.mail.smail</ulink>,
- <ulink URL="news:comp.answers">comp.answers</ulink> и
- <ulink URL="news:news.answers">news.answers</ulink>.
- Вы можете получить копию по электронной почте, послав сообщение,
- содержащее команду "send usenet/news.answers/mail/sendmail-faq" в теле
- письма, в адрес <ulink URL="mailto:mail-server@rtfm.mit.edu">mail-server@rtfm.mit.edu</ulink>.</para>
-
-</answer></qandaentry>
+ </literallayout>
+ </para>
-<qandaentry><question>
-<para>Полноэкранные приложения на удалённой машине ведут себя неправильно!
- </para></question><answer>
+ <para>Текущая версия <ulink
+ URL="ftp://rtfm.mit.edu/pub/usenet/news.answers/mail/sendmail-faq">
+ FAQ по sendmail</ulink> больше не поставляется вместе с sendmail.
+ Однако этот документ регулярно помещается в конференции
+ <ulink URL="news:comp.mail.sendmail">comp.mail.sendmail</ulink>,
+ <ulink URL="news:comp.mail.misc">comp.mail.misc</ulink>,
+ <ulink URL="news:comp.mail.smail">comp.mail.smail</ulink>,
+ <ulink URL="news:comp.answers">comp.answers</ulink> и
+ <ulink URL="news:news.answers">news.answers</ulink>.
+ Вы можете получить копию по электронной почте, послав сообщение,
+ содержащее команду
+ <literal>send usenet/news.answers/mail/sendmail-faq</literal> в теле
+ письма, в адрес <email>mail-server@rtfm.mit.edu</email>.</para>
-<para>На удалённой машине тип терминала может быть устанавлен в значение,
- отличное от типа терминала <emphasis remap=tt>cons25</emphasis>,
- требуемом при использовании консоли FreeBSD.</para>
-
-<para>Есть несколько возможных способов решения этой проблемы:</para>
-
-<para>
-<itemizedlist>
+ </answer>
+</qandaentry>
-<listitem>
-<para>После входа на другую машину установите значение переменной
- окружения TERM равным <emphasis remap=tt>ansi</emphasis> или
- <emphasis remap=tt>sco</emphasis>, если эта машина знает об этих
- типах терминалов.</para>
-</listitem>
-<listitem>
-<para>Используйте эмулятор VT100 типа <ulink
- URL="http://www.FreeBSD.org/cgi/ports.cgi?screen-">screen</ulink>
- на консоли FreeBSD. <emphasis remap=tt>screen</emphasis> даёт вам
- возможность открывать несколько рабочих сеансов на одном терминале, и она
- имеет ещё ряд полезных особенностей. Каждое окно программы
- <emphasis remap=tt>screen</emphasis> ведёт себя как терминал VT100, так
- что переменная TERM на удалённой машине должна быть установлена в
- значение <emphasis remap=tt>vt100</emphasis>.</para>
-</listitem>
+<qandaentry>
+ <question>
+ <para>Полноэкранные приложения на удалённой машине ведут себя
+ неправильно!</para>
+ </question>
-<listitem>
-<para>Опишите терминал <emphasis remap=tt>cons25</emphasis> в базе данных
- характеристик терминалов на удалённой машине. Способ описания зависит от
- используемой на этой машине операционной системе. Вам может помочь
- чтение руководств по администрированию удалённой системы.</para>
-</listitem>
+ <answer>
-<listitem>
-<para>Запустите X-сервер на стороне FreeBSD и войдите на удалённую систему
- с помощью какого-либо эмулятора терминала, работающего в X Window, такого,
- как <emphasis remap=tt>xterm</emphasis> или <emphasis
- remap=tt>rxvt</emphasis>. Переменная окружения TERM на удалённой
- машине должна быть установлена в значение <emphasis
- remap=tt>xterm</emphasis> или <emphasis remap=tt>vt100</emphasis>.</para>
-</listitem>
+ <para>На удалённой машине тип терминала может быть устанавлен в значение,
+ отличное от типа терминала <literal>cons25</literal>, требуемом при
+ использовании консоли FreeBSD.</para>
-</itemizedlist>
-</para>
-
-</answer></qandaentry>
+ <para>Есть несколько возможных способов решения этой проблемы:</para>
-<qandaentry><question>
-<para> Выводятся сообщения "calcru: negative time..."
- </para></question><answer>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>После входа на другую машину установите значение переменной
+ окружения TERM равным <literal>ansi</literal> или
+ <literal>sco</literal>, если эта машина знает об этих
+ типах терминалов.</para>
+ </listitem>
-<para>Это может быть вызвано различными аппаратными или программными
- проблемами, связанными с прерываниями. Это может быть связано как
- с ошибками при программировании, так и с природой самих устройств.
- Например, работа с TCP/IP по параллельному порту с использованием
- большого MTU приводит к этой проблеме, также как использование
- графических акселераторов; в последнем случае вы должны проверить
- настройку прерываний на графическом адаптере.</para>
-
-<para>Одним из проявлений этой проблемы является прерывание работы
- процессов с диагностическим сообщением "SIGXCPU exceeded cpu time
- limit".</para>
-
-<para>Если эта проблема не может быть решена, для FreeBSD 3.0 от 29
- ноября 1998 и выше измените значение системной переменной:</para>
-
-<para>
-<literallayout> sysctl -w kern.timecounter.method=1</literallayout>
-</para>
-
-<para>Это коснётся производительности системы, но принимая во внимание
- источник этой проблемы, это будет незаметно. Если проблема всё ещё
- даёт знать о себе, оставьте значение этой переменной равным единичке
- и увеличьте значение параметра "NTIMECOUNTER" в файле конфигурации
- вашего ядра. Если в конце концов вы достигнете значения
- "NTIMECOUNTER=20", то вам эту проблему решить не удастся, прерывания
- дают слишком большую нагрузку на процессор, чтобы обеспечить
- отслеживание времени.</para>
-
-</answer></qandaentry></qandaset>
+ <listitem>
+ <para>Используйте эмулятор VT100 типа <ulink
+ URL="http://www.FreeBSD.org/cgi/ports.cgi?screen-">screen</ulink>
+ на консоли FreeBSD. <application>Screen</application> даёт вам
+ возможность открывать несколько рабочих сеансов на одном терминале,
+ и она имеет ещё ряд полезных особенностей. Каждое окно программы
+ <application>screen</application> ведёт себя как терминал VT100, так
+ что переменная TERM на удалённой машине должна быть установлена в
+ значение <literal>vt100</literal>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Опишите терминал <literal>cons25</literal> в базе данных
+ характеристик терминалов на удалённой машине. Способ описания
+ зависит от используемой на этой машине операционной системе. Вам
+ может помочь чтение руководств по администрированию удалённой
+ системы.</para>
+ </listitem>
+
+ <listitem>
+ <para>Запустите X-сервер на стороне FreeBSD и войдите на удалённую
+ систему с помощью какого-либо эмулятора терминала, работающего в X
+ Window, такого, как <command>xterm</command> или
+ <command>rxvt</command>. Переменная окружения TERM на удалённой
+ машине должна быть установлена в значение <literal>xterm</literal>
+ или <literal>vt100</literal>.</para>
+ </listitem>
+ </itemizedlist>
+ </para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Выводятся сообщения <literal>calcru: negative
+ time...</literal></para>
+ </question>
+
+ <answer>
+
+ <para>Это может быть вызвано различными аппаратными или программными
+ проблемами, связанными с прерываниями. Это может быть связано как
+ с ошибками при программировании, так и с природой самих устройств.
+ Например, работа с TCP/IP по параллельному порту с использованием
+ большого MTU приводит к этой проблеме, также как использование
+ графических акселераторов; в последнем случае вы должны проверить
+ настройку прерываний на графическом адаптере.</para>
+
+ <para>Одним из проявлений этой проблемы является прерывание работы
+ процессов с диагностическим сообщением <quote>SIGXCPU exceeded cpu time
+ limit</quote>.</para>
+
+ <para>Если эта проблема не может быть решена, для FreeBSD 3.0 от 29
+ ноября 1998 и выше измените значение системной переменной:</para>
+
+ <screen>
+&prompt.root; <userinput>sysctl -w kern.timecounter.method=1</userinput>
+ </screen>
+
+ <para>Это коснётся производительности системы, но, принимая во внимание
+ источник этой проблемы, это будет незаметно. Если проблема всё ещё
+ даёт о себе знать, оставьте значение этой переменной равным единичке
+ и увеличьте значение параметра <literal>NTIMECOUNTER</literal> в файле
+ конфигурации вашего ядра. Если в конце концов вы достигнете значения
+ <literal>NTIMECOUNTER=20</literal>, то вам эту проблему решить не удастся,
+ прерывания дают слишком большую нагрузку на процессор, чтобы обеспечить
+ отслеживание времени.</para>
+
+ </answer>
+</qandaentry>
+</qandaset>
</chapter>
-<chapter
-id="commercial">
+<chapter id="commercial">
<title>Коммерческие приложения</title>
-<para><emphasis remap=bf>ЗАМЕЧАНИЕ</emphasis> Этот раздел выглядит довольно
- заброшенным, однако мы,
- конечно же, надеемся, что производители сделают добавления! :) Проект
- FreeBSD финансово не заинтересован в успехах никакой из компаний, которые
- здесь упоминаются, хотя приводит их список в интересах общества (в
- предположении, что коммерческий интерес к FreeBSD может положительно
- повлиять на дальнейшее развитие FreeBSD). Мы просим поставщиков
- коммерческого программного обеспечения присылать нам информацию о
- ваших продуктах для включения в этот список. Более подробный список
- производителей находится на <ulink
- URL="../../commercial/commercial.html">странице производителей</ulink>.
- </para>
-
+<para>
+ <note>
+ <para>Этот раздел выглядит довольно заброшенным, однако мы,
+ конечно же, надеемся, что производители сделают добавления! :) Проект
+ FreeBSD финансово не заинтересован в успехах никакой из компаний, которые
+ здесь упоминаются, хотя приводит их список в интересах общества (в
+ предположении, что коммерческий интерес к FreeBSD может положительно
+ повлиять на дальнейшее развитие FreeBSD). Мы просим поставщиков
+ коммерческого программного обеспечения присылать нам информацию о
+ ваших продуктах для включения в этот список. Более полный список
+ производителей находится на <ulink
+ URL="http://www.FreeBSD.org/commercial/commercial.html">странице
+ производителей</ulink>.</para>
+ </note>
+</para>
-<qandaset><qandaentry><question>
-<para>Где можно купить Motif для FreeBSD?</para></question><answer>
-<para>Обратитесь в фирму <link linkend="apps2go">Apps2go</link>, предлагающую
- самый дешёвый дистрибутив Motif 2.1.20 для FreeBSD (как для i386, так и для
- Alpha) в формате ELF.<anchor id="apps2go"></para>
+<qandaset>
+<qandaentry>
+ <question>
+ <para>Где можно купить Motif для FreeBSD?</para>
+ </question>
+
+ <answer>
+
+ <para>Обратитесь в фирму <link linkend="apps2go">Apps2go</link>, предлагающую
+ самый дешёвый дистрибутив Motif 2.1.20 для FreeBSD (как для i386, так и для
+ Alpha) в формате ELF.<anchor id="apps2go"></para>
-<para>Существуют два дистрибутива, "для разработчиков" ("development edition")
- и ещё более дешёвая "времени выполнения" ("runtime edition"). В эти
- дистрибутивы включены:
+ <para>Существуют два дистрибутива, <quote>для разработчиков</quote>
+ (<quote>development edition</quote>) и ещё более дешёвая <quote>времени
+ выполнения</quote> (<quote>runtime edition</quote>). В эти дистрибутивы
+ включены:
- <itemizedlist>
- <listitem>
- <para>OSF/Motif manager, xmbind, panner, wsm.</para>
- </listitem>
+ <itemizedlist>
+ <listitem>
+ <para>OSF/Motif manager, xmbind, panner, wsm.</para>
+ </listitem>
- <listitem>
- <para>Пакет разработчика с uil, mrm, xm, xmcxx, файлами include
- и Imake.</para>
- </listitem>
+ <listitem>
+ <para>Пакет разработчика с uil, mrm, xm, xmcxx, файлами include
+ и Imake.</para>
+ </listitem>
- <listitem>
- <para>Статические и динамические ELF-библиотеки (для использования
- с FreeBSD 3.0 и выше).</para>
- </listitem>
+ <listitem>
+ <para>Статические и динамические ELF-библиотеки (для использования
+ с FreeBSD 3.0 и выше).</para>
+ </listitem>
- <listitem>
- <para>Демонстрационные приложения.</para>
- </listitem>
- </itemizedlist>
-</para>
-
-<para>При оформлении заказа не забудьте указать, что вам нужна версия Motif
- именно для FreeBSD (не забудьте также указать архитектуру процессора)!
- <emphasis>Apps2go</emphasis> также продаёт версии для NetBSD и OpenBSD. В
- настоящий момент их можно получить только по FTP.</para>
+ <listitem>
+ <para>Демонстрационные приложения.</para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ <para>При оформлении заказа не забудьте указать, что вам нужна версия Motif
+ именно для FreeBSD (не забудьте также указать архитектуру процессора)!
+ <emphasis>Apps2go</emphasis> также продаёт версии для NetBSD и OpenBSD. В
+ настоящий момент их можно получить только по FTP.</para>
+
<para>
<variablelist>
<varlistentry><term>Дополнительная информация</term>
@@ -3945,9 +4236,9 @@ id="commercial">
<para><ulink URL="http://www.kde.org/">KDE</ulink> - это свободно
распространяемый вариант десктопа для X11, который во многом похож на CDE.
- Вам может также приглянуться <ulink url="http://www.xfce.org/">xfce</ulink>.
+ Вам может также приглянуться <ulink URL="http://www.xfce.org/">xfce</ulink>.
Как KDE, так и xfce могут быть найдены в <ulink
- url="http://www.FreeBSD.org/ports/">коллекции портов</ulink>.</para>
+ URL="http://www.FreeBSD.org/ports/">коллекции портов</ulink>.</para>
</answer></qandaentry>
@@ -4006,9 +4297,9 @@ id="commercial">
дистрибутива на дискетах для FreeBSD и Linux. Xi Graphics также
предлагает высокопроизводительный X-сервер с поддержкой компьютеров
класса laptop.<anchor id="xig"></para>
-
-<para>Доступна бесплатная "демонстрационная" версия 5.0.</para>
-
+
+ <para>Имеется бесплатная <quote>демонстрационная</quote> версия 5.0.</para>
+
<para>Xi Graphics также предлагает Motif и CDE для FreeBSD (смотрите выше).</para>
<para>
@@ -4042,17 +4333,25 @@ id="commercial">
</answer></qandaentry>
-<qandaentry><question>
-<para>Существуют ли СУБД для FreeBSD?</para></question><answer>
-<para>Да! Обратитесь к разделу <ulink
- URL="../commercial/software_bycat.html#CATEGORY_DATABASE">Поставщики
- программного обеспечения</ulink> на веб-сервере FreeBSD.</para>
+<qandaentry>
+ <question>
+ <para>Существуют ли СУБД для FreeBSD?</para>
+ </question>
+
+ <answer>
+
+ <para>Да! Обратитесь к разделу <ulink
+ URL="http://www.FreeBSD.org/commercial/software_bycat.html#CATEGORY_DATABASE">
+ Поставщики программного обеспечения</ulink> на веб-сервере FreeBSD.</para>
+
+ <para>Также посмотрите раздел <ulink
+ URL="http://www.FreeBSD.org/ports/databases.html">Базы данных</ulink>
+ Коллекции портов.</para>
+
+ </answer>
+</qandaentry>
-<para>Также посмотрите раздел <ulink URL="../ports/databases.html">
- Базы данных</ulink> коллекции портов.</para>
-
-</answer></qandaentry>
<qandaentry><question>
<para>Можно ли запустить Oracle на FreeBSD?</para></question><answer>
@@ -4092,21 +4391,22 @@ id="commercial">
<answer>
- <para>Пожалуйста, загляните на <ulink URL="../../ports/">страницу
- портов</ulink>, содержащую информацию о программных продуктах, перенесённых
- во FreeBSD. На данный момент в этом списке находится более 1800 приложений
- и он ежедневно увеличивается, так что почаще туда заглядывайте или
- подпишитесь на <link linkend="mailing">список рассылки</link> <emphasis
- remap=tt>freebsd-announce</emphasis>, в котором публикуется информация
+ <para>Пожалуйста, загляните на <ulink URL="http://www.FreeBSD.org/ru/ports/">
+ страницу портов</ulink>, содержащую информацию о программных продуктах,
+ перенесённых во FreeBSD. На данный момент в этом списке находится более
+ 3400 приложений и он ежедневно увеличивается, так что почаще туда
+ заглядывайте или подпишитесь на <link
+ linkend="mailing">список рассылки</link>
+ <literal>freebsd-announce</literal>, в котором публикуется информация
о появлении новых приложений.</para>
- <para>Большинство портов предназначено для версий 2.2, 3.x и 4.0, и многие из
+ <para>Большинство портов предназначено для веток 2.2, 3.x и 4.x, и многие из
них должны нормально работать на системах версий 2.1.x. При выходе
нового релиза FreeBSD в него в каталог <filename>ports/</filename>
включается актуальная на момент выхода коллекция портов.</para>
- <para>Мы также поддерживаем концепцию ``пакаджа'', являющегося не более
- чем упакованным дистрибутивом в бинарной форме с некоторыми
+ <para>Мы также поддерживаем концепцию <quote>пакаджа</quote>, являющегося не
+ более чем упакованным дистрибутивом в бинарной форме с некоторыми
встроенными возможностями по его настройке во время установки. Пакадж
может быть легко проинсталлирован и деинсталлирован снова без углубления
в детали того, какие файлы должны быть инсталлированы.</para>
@@ -4139,7 +4439,7 @@ id="commercial">
</listitem>
</varlistentry>
- <varlistentry><term>для 4.0-RELEASE/4.X-STABLE</term>
+ <varlistentry><term>для 4.1-RELEASE/4-STABLE</term>
<listitem>
<para><ulink
URL="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/">
@@ -4218,7 +4518,8 @@ id="commercial">
<qandaentry>
<question>
- <para>Выдаются сообщения &quot;Error: can't find libc.so.4.0&quot;</para>
+ <para>Выдаются сообщения <literal>Error: can't find
+ libc.so.4.0</literal></para>
</question>
<answer>
@@ -4231,64 +4532,77 @@ id="commercial">
</qandaentry>
-<qandaentry><question
-id="emul">
-<para> ghostscript выдаёт массу сообщений на моём 386/486SX.
- </para></question><answer>
+<qandaentry>
+ <question id="emul">
+ <para>ghostscript выдаёт массу сообщений на моём 386/486SX.</para>
+ </question>
-<para>У вас нет сопроцессора, верно? Вам нужно добавить в ядро другой
- емулятор сопроцессора; это делается добавлением следующей строки в файл
- конфигурации ядра и последующей его перекомпиляцией.</para>
-
-<para>
-<literallayout> options GPL_MATH_EMULATE
- </literallayout>
-</para>
-
-<para><emphasis remap=bf>ЗАМЕЧАНИЕ</emphasis> Если вы поступаете таким образом, вам нужно будет
- убрать опцию <symbol>MATH_EMULATE</symbol>.</para>
-
-</answer></qandaentry>
+ <answer>
-<qandaentry><question>
-<para> При запуске приложения SCO/iBCS2, он прерывается на <emphasis remap=tt>socksys</emphasis>.
- </para></question><answer>
+ <para>У вас нет сопроцессора, верно? Вам нужно добавить в ядро другой
+ емулятор сопроцессора; это делается добавлением следующей строки в файл
+ конфигурации ядра и последующей его перекомпиляцией.</para>
-<para>Прежде всего вам нужно отредактировать файл <filename>/etc/sysconfig</filename>
- (или <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?rc.conf(5)">/etc/rc.conf</ulink>), изменив в последнем разделе значение следующей
- переменной на <acronym>YES</acronym>:</para>
-
-<para>
-<literallayout> # Set to YES if you want ibcs2 (SCO) emulation loaded at startup
- ibcs2=NO
- </literallayout>
-</para>
+ <programlisting>
+options GPL_MATH_EMULATE
+ </programlisting>
+
+ <para>
+ <note>
+ <para>Если вы поступаете таким образом, вам нужно будет
+ убрать опцию <literal>MATH_EMULATE</literal>.</para>
+ </note>
+ </para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>При запуске приложения SCO/iBCS2, оно прерывается на
+ <literal>socksys</literal> (только во FreeBSD 3.0 и более
+ ранних версий).</para>
+ </question>
+
+ <answer>
+
+ <para>Прежде всего вам нужно отредактировать файл
+ <filename>/etc/sysconfig</filename> (или <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?rc.conf(5)">/etc/rc.conf</ulink>),
+ изменив в последнем разделе значение следующей переменной на
+ <literal>YES</literal>:</para>
+
+ <programlisting>
+# Set to YES if you want ibcs2 (SCO) emulation loaded at startup
+ibcs2=NO
+ </programlisting>
<para>Это включит загрузку модуля поддержки <ulink
URL="http://www.FreeBSD.org/cgi/man.cgi?ibcs2(8)">ibcs2</ulink> на этапе
загрузки системы.</para>
-<para>Затем вам нужно изменить каталог /compat/ibcs2/dev так, чтобы он
- выглядел следующим образом:</para>
-
-<para>
-<literallayout>lrwxr-xr-x 1 root wheel 9 Oct 15 22:20 X0R@ -&gt; /dev/null
+ <para>Затем вам нужно изменить каталог /compat/ibcs2/dev так, чтобы он
+ выглядел следующим образом:</para>
+
+ <screen>
+lrwxr-xr-x 1 root wheel 9 Oct 15 22:20 X0R@ -&gt; /dev/null
lrwxr-xr-x 1 root wheel 7 Oct 15 22:20 nfsd@ -&gt; socksys
-rw-rw-r-- 1 root wheel 0 Oct 28 12:02 null
lrwxr-xr-x 1 root wheel 9 Oct 15 22:20 socksys@ -&gt; /dev/null
crw-rw-rw- 1 root wheel 41, 1 Oct 15 22:14 spx
- </literallayout>
-</para>
-
-<para>Работа с socksys была значительно упрощена по ставнению с более ранними
- версиями. Socksys должен указывать на <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?null(4)">/dev/null</ulink>, чтобы
- обмануть open &amp; close. Код, имеющийся в -CURRENT, возьмёт на себя всё
- остальное. Если вам нужен драйвер <emphasis remap=tt>spx</emphasis> для
- подключения X по локальному сокету, определите переменную
- <symbol>SPX_HACK</symbol> при компиляции системы.</para>
-
-</answer></qandaentry>
+ </screen>
+
+ <para>Работа с socksys была значительно упрощена по ставнению с более ранними
+ версиями. Socksys должен указывать на <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?null(4)">/dev/null</ulink>, чтобы
+ обмануть open &amp; close. Код, имеющийся в -CURRENT, возьмёт на себя всё
+ остальное. Если вам нужен драйвер <devicename>spx</devicename> для
+ подключения X по локальному сокету, определите переменную
+ <literal>SPX_HACK</literal> при компиляции системы.</para>
+
+ </answer>
+</qandaentry>
<qandaentry><question>
@@ -4340,9 +4654,10 @@ crw-rw-rw- 1 root wheel 41, 1 Oct 15 22:14 spx
<para>Если вам необходимо запустить некоторые приложения в формате aout
типа Netscape Navigator на Elf-машине, такой как 3.1-R и выше,
- то для этого требуется /usr/libexec/ld.so и некоторые библиотеки в
- формате aout. Они включены в дистрибутив как compat22.
- Запустите /stand/sysinstall или install.sh в каталоге compat22, чтобы
+ то для этого требуется <filename>/usr/libexec/ld.so</filename> и некоторые
+ библиотеки в формате aout. Они включены в дистрибутив как compat22.
+ Запустите <filename>/stand/sysinstall</filename> или
+ <filename>install.sh</filename> в каталоге compat22, чтобы
установить этот компонент. Прочтите также документы ERRATA от
3.1-R и 3.2-R.</para>
@@ -4350,125 +4665,194 @@ crw-rw-rw- 1 root wheel 41, 1 Oct 15 22:14 spx
</chapter>
-<chapter
-id="kernelconfig">
+<chapter id="kernelconfig">
<title>Конфигурирование ядра</title>
-<qandaset><qandaentry><question
-id="make-kernel">
-<para> Я хочу изменить настройки ядра. Это сложно?
- </para></question><answer>
+<qandaset>
+<qandaentry>
+ <question id="make-kernel">
+ <para>Я хочу изменить настройки ядра. Это сложно?</para>
+ </question>
-<para>Вовсе нет! Обратитесь к <ulink URL="../../handbook/kernelconfig.html">соответствующему разделу</ulink> Руководства, который посвящён этому
- вопросу.</para>
-
-<para><emphasis remap=bf>ЗАМЕЧАНИЕ:</emphasis> Рекомендуем сохранить копию вашего ядра в
- файл <filename>kernel.YYMMDD</filename> после того, как вы получите рабочую версию,
- для того, чтобы в следующий раз, если вы испортите что-либо в
- вашем конфигурационном файле, вы смогли загрузить это ядро, вместо того,
- чтобы начинать снова с <filename>kernel.GENERIC</filename>. Это, в частности, имеет
- смысл, если вы производите загрузку системы с контроллера, который
- не поддерживается в стандартном ядре GENERIC (из моего личного
- опыта).</para>
-
-</answer></qandaentry>
+ <answer>
-<qandaentry><question>
-<para> Я не могу скомпилировать ядро. Отсутствует
- <symbol>_hw_float</symbol>.
- </para></question><answer>
+ <para>Вовсе нет! Обратитесь к <ulink URL="../../handbook/kernelconfig.html">
+ соответствующему разделу</ulink> Руководства, который посвящён этому
+ вопросу.</para>
-<para>Позвольте мне угадать. Вы, наверное, удалили
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?npx(4)">npx0</ulink> из
- вашего файла конфигурации ядра, потому что у вас нет сопроцессора, да?
- А вот и неправильно! :-) Строка <emphasis remap=tt>npx0</emphasis>
- <emphasis remap=bf>ОБЯЗАТЕЛЬНА</emphasis>. Даже если у вас нет
- математического сопроцессора, вы <emphasis remap=bf>должны</emphasis>
- включить поддержку <emphasis remap=tt>npx0</emphasis>.</para>
-
-</answer></qandaentry>
+ <para>
+ <note>
+ <para>Рекомендуем сохранить копию вашего ядра в файл
+ <filename>kernel.YYMMDD</filename> после того, как вы получите рабочую
+ версию, для того, чтобы в следующий раз, если вы испортите что-либо в
+ вашем конфигурационном файле, вы смогли загрузить это ядро, вместо того,
+ чтобы начинать снова с <filename>kernel.GENERIC</filename>. Это, в
+ частности, имеет смысл, если вы производите загрузку системы с
+ контроллера, который не поддерживается в стандартном ядре GENERIC (из
+ моего личного опыта).</para>
+ </note>
+ </para>
-<qandaentry><question>
-<para> Конфликты прерываний при включении поддержки многопортовыx
- коммуникационных адаптеров.
- </para></question><answer>
+ </answer>
+</qandaentry>
-<para><emphasis remap=bf>Q.</emphasis> Когда я компилирую ядро с поддержкой многопортовых
- коммуникационных адаптеров, сообщается, что только первый порт будет
- тестироваться, а все остальные пропускаются из-за конфликтов
- прерываний. Как это исправить?</para>
-
-<para><emphasis remap=bf>A.</emphasis> Проблема состоит в том, что во FreeBSD встроен код,
- предохраняющий ядро от аппаратных и программных конфликтов. Вам нужно
- убрать указания IRQ на всех портах, кроме одного. Например:</para>
-
-<para>
-<literallayout> #
- # Высокоскоростной коммуникационный адаптер - 16550 UARTS
- #
- device sio2 at isa? port 0x2a0 tty irq 5 flags 0x501 vector siointr
- device sio3 at isa? port 0x2a8 tty flags 0x501 vector siointr
- device sio4 at isa? port 0x2b0 tty flags 0x501 vector siointr
- device sio5 at isa? port 0x2b8 tty flags 0x501 vector siointr
- </literallayout>
-</para>
-
-</answer></qandaentry>
-<qandaentry><question>
-<para>Как включить поддержку накопителей QIC-40/80?</para></question><answer>
+<qandaentry>
+ <question>
+ <para>Я не могу скомпилировать ядро. Отсутствует
+ <literal>_hw_float</literal>.</para>
+ </question>
-<para>Раскомментируйте следующую строку в файле конфигурации стандартного
- ядра (или добавьте ее в конфигурационный файл вашего ядра), добавьте
- ``<literal>flags 0x1</literal>'' к строке, содержащей
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?fdc(4)">fdc</ulink> и перекомпилируйте ядро.</para>
-
-<para>
-<literallayout>controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 flags 0x1 vector fdintr
+ <answer>
+
+ <para>Позвольте мне угадать. Вы, наверное, удалили
+ <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?npx(4)">npx0</ulink> из
+ вашего файла конфигурации ядра, потому что у вас нет сопроцессора, да?
+ А вот и неправильно! :-) Строка <devicename>npx0</devicename>
+ <emphasis>ОБЯЗАТЕЛЬНА</emphasis>. Даже если у вас нет
+ математического сопроцессора, вы <emphasis remap=bf>должны</emphasis>
+ включить поддержку устройства <devicename>npx0</devicename>.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Почему моё ядро такое большое (больше 10МБ)?</para>
+ </question>
+
+ <answer>
+
+ <para>Скорее всего, вы компилировали ядро в <emphasis>отладочном
+ режиме</emphasis>. Ядра, построенные в этом режиме, содержат много
+ символьной информации, которая используется для отладки и сильно
+ увеличивает размер ядра. Заметьте, что, если вы работаете с FreeBSD версии
+ 3.0 и старше, то уменьшения производительности при использовании
+ отладочного ядра нет или оно незначительно, однако отладочное ядро
+ полезно иметь под рукой на случай аварийного завершения работы
+ системы.</para>
+
+ <para>Однако, если вы испытываете нехватку дискового пространства или
+ просто не хотите использовать отладочное ядро, проверьте, что имеют
+ место следующие две вещи:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>В конфигурационном файле вашего ядра нет строчки, имеющей такой
+ вид:</para>
+
+ <programlisting>makeoptions DEBUG=-g</programlisting>
+ </listitem>
+
+ <listitem>
+ <para>Вы не запускали утилиту <command>config</command> с опцией
+ <option>-g</option>.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Обе из вышеперечисленных ситуаций приведут к построению ядра в
+ отладочном режиме. Если же вы точно следуете указанным шагам, то сможете
+ построить обычное ядро и заметите значительное уменьшение его размера;
+ большинство ядер имеют размер от 1.5МБ до 2МБ.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Конфликты прерываний при включении поддержки многопортовыx
+ коммуникационных адаптеров.</para>
+ </question>
+
+ <answer>
+
+ <para><emphasis remap=bf>Q.</emphasis> Когда я компилирую ядро с поддержкой
+ многопортовых коммуникационных адаптеров, сообщается, что только первый
+ порт будет тестироваться, а все остальные пропускаются из-за конфликтов
+ прерываний. Как это исправить?</para>
+
+ <para><emphasis remap=bf>A.</emphasis> Проблема состоит в том, что во FreeBSD
+ встроен код, предохраняющий ядро от аппаратных и программных конфликтов.
+ Вам нужно убрать указания IRQ на всех портах, кроме одного.
+ Например:</para>
+
+ <programlisting>
+#
+# Высокоскоростной многопортовый коммуникационный адаптер - 16550 UARTS
+#
+device sio2 at isa? port 0x2a0 tty irq 5 flags 0x501 vector siointr
+device sio3 at isa? port 0x2a8 tty flags 0x501 vector siointr
+device sio4 at isa? port 0x2b0 tty flags 0x501 vector siointr
+device sio5 at isa? port 0x2b8 tty flags 0x501 vector siointr
+ </programlisting>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Как включить поддержку накопителей QIC-40/80?</para>
+ </question>
+
+ <answer>
+
+ <para>Раскомментируйте следующую строку в файле конфигурации стандартного
+ ядра (или добавьте ее в конфигурационный файл вашего ядра), добавьте
+ <literal>flags 0x1</literal> к строке, содержащей <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?fdc(4)">fdc</ulink> и
+ перекомпилируйте ядро.</para>
+
+ <programlisting>
+controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 flags 0x1 vector fdintr
disk fd0 at fdc0 drive 0 ^^^^^^^^^
disk fd1 at fdc0 drive 1
#tape ft0 at fdc0 drive 2
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- </literallayout>
-</para>
-
-<para>Затем создайте устройство с именем <filename>/dev/ft0</filename>, перейдя в
- каталог <filename>/dev</filename> и запустив команду</para>
-
-<para>
-<literallayout> sh ./MAKEDEV ft0
- </literallayout>
-</para>
+ </programlisting>
-<para>для первого устройства, <emphasis remap=tt>ft1</emphasis> для второго и
- так далее.</para>
-
-<para>У вас появится устройство с именем <filename>/dev/ft0</filename>, на
- которое вы можете производить запись с помощью специальной программы
- управления, называющейся ``<emphasis remap=tt>ft</emphasis>'' - за
- дополнительной информацией обратитесь к странице справочника по
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ft">ft</ulink>.</para>
-
-<para>Версии операционной системы, предшествующие <option>-CURRENT</option>,
- имеют огрехи, связанные с качеством носителя. Если у вас появились
- проблема, когда <emphasis remap=tt>ft</emphasis> прокручивает ленту
- туда-сюда на одном и том же месте, попробуйте взять последнюю версию
- программы <emphasis remap=tt>ft</emphasis> с
- <filename>/usr/src/sbin/ft</filename> из <option>-CURRENT</option> и
- попробовать её.</para>
-
-</answer></qandaentry></qandaset>
+ <para>Затем создайте устройство с именем <filename>/dev/ft0</filename>,
+ перейдя в каталог <filename>/dev</filename> и запустив команду</para>
+
+ <screen>
+&prompt.root; <userinput>sh MAKEDEV ft0</userinput>
+ </screen>
+
+ <para>для первого устройства, <devicename>ft1</devicename> для второго и
+ так далее.</para>
+
+ <para>У вас появится устройство с именем <filename>/dev/ft0</filename>, на
+ которое вы можете производить запись с помощью специальной программы
+ управления, называющейся <command>ft</command> - за
+ дополнительной информацией обратитесь к странице справочника по <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?ft">ft</ulink>.</para>
+
+ <para>Версии операционной системы, предшествующие <option>-CURRENT</option>,
+ имеют огрехи, связанные с качеством носителя. Если у вас появились
+ проблема, когда <command>ft</command> прокручивает ленту
+ туда-сюда на одном и том же месте, попробуйте взять последнюю версию
+ программы <command>ft</command> с <filename>/usr/src/sbin/ft</filename>
+ из <option>-CURRENT</option> и попробовать её.</para>
+
+ </answer>
+</qandaentry>
+</qandaset>
</chapter>
-<chapter
-id="admin">
+<chapter id="admin">
<title>Системное администрирование</title>
-<qandaset><qandaentry><question>
-<para>Где расположены файлы конфигурации системы?</para></question><answer>
+<qandaset>
+<qandaentry>
+ <question>
+ <para>Где расположены файлы конфигурации системы?</para>
+ </question>
+
+ <answer>
<para>Для FreeBSD версий от 2.0.5R до 2.2.1R основным конфигурационным файлом
является <filename>/etc/sysconfig</filename>. Все параметры указываются
@@ -4476,196 +4860,269 @@ id="admin">
<ulink URL="http://www.FreeBSD.org/cgi/man.cgi?rc(8)">/etc/rc</ulink>
и <filename>/etc/netstart</filename> просто его используют.</para>
-<para>Посмотрите файл <filename>/etc/sysconfig</filename> и измените значения
- переменных на соответствующие вашей системе. В файле содержатся
- комментарии, описывающие смысл этих переменных и способ их задания.</para>
-
-<para>В системах выше 2.2.1 и в 3.0 файл <filename>/etc/sysconfig</filename>
- сменил название на говорящее само за себя <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?rc.conf(5)">rc.conf</ulink>,
- синтаксис описания переменных был несколько улучшен.
- <filename>/etc/netstart</filename> тоже был переименован в
- <filename>/etc/rc.network</filename>, так что все конфигурационные файлы
- теперь можно перенести одной командой <command><ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?cp(1)">cp</ulink>
- /usr/src/etc/rc* /etc</command>.</para>
-
-<para><filename>/etc/rc.local</filename> как обычно, можно использовать для
- запуска дополнительных местных служб типа <ulink
- URL="http://www.FreeBSD.org/cgi/ports.cgi?^inn">INN</ulink> или
- для настройки дополнительных параметров.</para>
-
-<para>Файл <filename>/etc/rc.serial</filename> предназначен для инициализации
- коммуникационных адаптеров (например, установки характеристик
- работы последовательных портов итд).</para>
-
-<para>Файл <filename>/etc/rc.i386</filename> предназначен для настройки специфичных
- для архитектуры Intel параметров, таких, как эмуляция iBCS2 или
- характеристик системной консоли ПК.</para>
-
-<para>Начиная с версии 2.1.0R, вы можете иметь "местные" файлы
- автозапуска в каталоге, указанном в файле <filename>/etc/sysconfig</filename>
- (или <filename>/etc/rc.conf</filename>):</para>
-
-<para>
-<literallayout> # Location of local startup files.
- local_startup=/usr/local/etc/rc.local.d
- </literallayout>
-</para>
-
-<para>Каждый файл, оканчивающийся на <filename>.sh</filename>, будет запущен на выполнение
- в алфавитном порядке.</para>
-
-<para>Если вам нужно добиться определённого порядка выполнения не
- меняя имён файлов, можно использовать схему, в которой для
- упорядочения используются цифры, предшествующие имени файла.</para>
-
-<para>
-<literallayout> 10news.sh
- 15httpd.sh
- 20ssh.sh
- </literallayout>
-</para>
-
-<para>Это может выглядеть безобразно (как SysV :-)), но это
- простой и понятный метод для добавления дополнительных служб без
- шаманства с редактированием <filename>/etc/rc.local</filename>. Многие
- порты/пакаджи предполагают, что каталог
- <filename>/usr/local/etc/rc.d</filename> предназначен для размещения
- запускаемых при загрузке системы скриптов.</para>
-
-</answer></qandaentry>
+ <para>Посмотрите файл <filename>/etc/sysconfig</filename> и измените значения
+ переменных на соответствующие вашей системе. В файле содержатся
+ комментарии, описывающие смысл этих переменных и способ их задания.</para>
+
+ <para>В системах выше 2.2.1 и в 3.0 файл <filename>/etc/sysconfig</filename>
+ сменил название на говорящее само за себя <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?rc.conf(5)">rc.conf</ulink>,
+ синтаксис описания переменных был несколько улучшен.
+ <filename>/etc/netstart</filename> тоже был переименован в
+ <filename>/etc/rc.network</filename>, так что все конфигурационные файлы
+ теперь можно перенести одной командой <command><ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?cp(1)">cp</ulink>
+ /usr/src/etc/rc* /etc</command>.</para>
+
+ <para>А в системах версий 3.1 и выше <filename>/etc/rc.conf</filename> был
+ перемещён в <filename>/etc/defaults/rc.conf</filename>. <emphasis>Не
+ редактируйте этот файл!</emphasis> Вместо этого, если в файле
+ <filename>/etc/defaults/rc.conf</filename> имеется параметр, который вы
+ хотите изменить, то вы должны скопировать строчку с ним в файл
+ <filename>/etc/rc.conf</filename> и поменять его значение именно
+ здесь.</para>
+
+ <para>Например, если вы хотите запустить named, сервер DNS, включенный в
+ поставку FreeBSD начиная с FreeBSD 3.1, всё, что вам нужно сделать, это:
+ <screen>
+&prompt.root; <userinput>echo named_enable="YES" &gt;&gt; /etc/rc.conf</userinput>
+ </screen>
+ </para>
-<qandaentry><question>
-<para>Как проще всего добавить пользователя?</para></question><answer>
+ <para>Чтобы запустить местные сервисы во FreeBSD 3.1 и выше, поместите
+ скрипты в каталог <filename>/usr/local/etc.rd</filename>. У этих скриптов
+ должен быть выставлен бит выполнимости, и их имена должны оканчиваться на
+ .sh. Во FreeBSD 3.0 и ранее, вы должны отредактировать файл
+ <filename>/etc/rc.local</filename>.</para>
-<para>Используйте команду <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?adduser">adduser</ulink>.
- Для выполнения более сложных операций обратитесь к команде <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?pw">pw</ulink>.</para>
-
-<para>Чтобы удалить пользователя, используйте команду <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?rmuser">rmuser</ulink>.</para>
-
-</answer></qandaentry>
+ <para>Файл <filename>/etc/rc.serial</filename> предназначен для инициализации
+ коммуникационных адаптеров (например, установки характеристик
+ работы последовательных портов итд).</para>
-<qandaentry><question>
-<para>Как добавить в систему новый диск?</para></question><answer>
+ <para>Файл <filename>/etc/rc.i386</filename> предназначен для настройки
+ специфичных для архитектуры Intel параметров, таких, как эмуляция iBCS2
+ или характеристик системной консоли ПК.</para>
-<para>Обратитесь к Руководству по форматированию дисков на сервере <ulink
- URL="../../tutorials/formatting-media/">www.FreeBSD.org</ulink>.</para>
-
-</answer></qandaentry>
+ </answer>
+</qandaentry>
-<qandaentry><question>
-<para>Как использовать устройство для чтения сменных дисков?
- </para></question><answer>
-<para>Каким бы ни было это устройство, типа ZIP, EZ (или даже обычным
- дисководом, если вы хотите его использовать) или каким-то
- другим, как только оно будет установлено и распознано
- системой, и вы вставите в него картридж/дискету/что-там-ещё, всё
- будет выглядеть примерно одинаково.</para>
-
-<para><anchor id="disklabel">(этот раздел опирается на <ulink URL="http://www.vmunix.com/mark/FreeBSD/ZIP-FAQ.html">FAQ по устройствам ZIP</ulink> Марка Мэйо (Mark Mayo))</para>
-
-<para>Если это устройство ZIP или обычный дисковод, и у вас уже есть
- файловая система DOS на дискетах, то вы можете нспользовать команду
- типа:</para>
-
-<para>
- <literallayout>
- mount -t msdos /dev/fd0c /floppy
- </literallayout>
-</para>
-
-<para>для обычных дискет, или</para>
-
-<para>
- <literallayout>
- mount -t msdos /dev/da2s4 /zip
- </literallayout>
-</para>
-
-<para>для дискет ZIP со стандартной конфигурацией.</para>
-
-<para>Для других дисков посмотрите их параметры с помощью
- <emphasis remap=tt>fdisk</emphasis> или <filename>/stand/sysinstall</filename>.</para>
-
-<para>Остальные примеры даны для привода ZIP на da2, третьем диске SCSI.</para>
-
-<para>Если это дискета или сменный диск, который будет использоваться для
- обмена информацией с другими людьми, хорошой идеей будет помещение туда
- файловой системы BSD. Вы получите поддержку длинных имён файлов,
- увеличение производительности по крайней мере в два раза и гораздо
- большую надёжность. Первым делом вам снова будет нужно выполнить
- разбиение диска на разделы/файловые системы. Вы можете воспользоваться
- утилитой <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?fdisk">fdisk</ulink> либо
- <filename>/stand/sysinstall</filename>, а в случае небольшого диска, на
- котором не нужно располагать несколько операционных систем, просто сотрите
- таблицу разделов (слайсов) FAT и используйте разбиение на разделы
- BSD.</para>
-
-<para>
- <literallayout>
- dd if=/dev/zero of=/dev/rda2 count=2
- disklabel -Brw da2 auto
- </literallayout>
-</para>
-
-<para>Вы можете использовать disklabel или
- <filename>/stand/sysinstall</filename> для создания нескольких разделов
- BSD. Вам наверняка придётся это сделать, если вы станете добавлять место
- для раздела подкачки на винчестере, хотя это не имеет отношения к
- устройствам типа ZIP.</para>
-
-<para>В итоге вы должны создать новую файловую систему (в этом примере
- она занимает весь наш диск ZIP):</para>
-
-<para>
- <literallayout>
- newfs /dev/rda2c
- </literallayout>
-</para>
-
-<para>и смонтировать её:</para>
-
-<para>
- <literallayout>
- mount /dev/da2c /zip
- </literallayout>
-</para>
+<qandaentry>
+ <question>
+ <para>Как проще всего добавить пользователя?</para>
+ </question>
+
+ <answer>
+
+ <para>Используйте команду <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?adduser">adduser</ulink>.
+ Для выполнения более сложных операций обратитесь к команде <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?pw">pw</ulink>.</para>
+
+ <para>Чтобы удалить пользователя, используйте команду <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?rmuser">rmuser</ulink>. И,
+ снова повторимся, команда <command>pw</command> тоже будет работать.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Как добавить в систему новый диск?</para>
+ </question>
+
+ <answer>
+
+ <para>Обратитесь к Руководству по форматированию дисков на сервере <ulink
+ URL="../../tutorials/formatting-media/">www.FreeBSD.org</ulink>.</para>
-<para>Хорошо ещё добавить строку типа следующей в файл
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?fstab">/etc/fstab</ulink>,
- чтобы в будущем можно было просто давать команду "mount /zip":</para>
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Как использовать устройство для чтения сменных дисков?</para>
+ </question><answer>
+
+ <para>Каким бы ни было это устройство, типа ZIP, EZ (или даже обычным
+ дисководом, если вы хотите его использовать) или каким-то
+ другим, как только оно будет установлено и распознано
+ системой, и вы вставите в него картридж/дискету/что-там-ещё, всё
+ будет выглядеть примерно одинаково.</para>
+
+ <para><anchor id="disklabel">(этот раздел опирается на <ulink
+ URL="http://www.vmunix.com/mark/FreeBSD/ZIP-FAQ.html">
+ FAQ по устройствам ZIP</ulink> Марка Мэйо (Mark Mayo))</para>
+
+ <para>Если это устройство ZIP или обычный дисковод, и у вас уже есть
+ файловая система DOS на дискетах, то вы можете нспользовать команду
+ типа:</para>
+
+ <screen>
+&prompt.root; <userinput>mount -t msdos /dev/fd0c /floppy</userinput>
+ </screen>
+
+ <para>для обычных дискет, или</para>
+
+ <screen>
+&prompt.root; <userinput>mount -t msdos /dev/da2s4 /zip</userinput>
+ </screen>
+
+ <para>для дискет ZIP со стандартной конфигурацией.</para>
-<para>
- <literallayout>
- /dev/da2c /zip ffs rw,noauto 0 0
- </literallayout>
-</para>
+ <para>Для других дисков посмотрите их параметры с помощью команды
+ <command>fdisk</command> или <filename>/stand/sysinstall</filename>.</para>
-</answer></qandaentry>
+ <para>Остальные примеры даны для привода ZIP на da2, третьем диске
+ SCSI.</para>
-<qandaentry><question>
-<para>Как смонтировать вторичный раздел DOS?</para></question><answer>
+ <para>Если это дискета или сменный диск, который будет использоваться для
+ обмена информацией с другими людьми, хорошой идеей будет помещение туда
+ файловой системы BSD. Вы получите поддержку длинных имён файлов,
+ увеличение производительности по крайней мере в два раза и гораздо
+ большую надёжность. Первым делом вам снова будет нужно выполнить
+ разбиение диска на разделы/файловые системы. Вы можете воспользоваться
+ утилитой <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?fdisk">fdisk</ulink> либо
+ <filename>/stand/sysinstall</filename>, а в случае небольшого диска, на
+ котором не нужно располагать несколько операционных систем, просто сотрите
+ таблицу разделов (слайсов) FAT и используйте разбиение на разделы
+ BSD.</para>
+
+ <screen>
+&prompt.root; <userinput>dd if=/dev/zero of=/dev/rda2 count=2</userinput>
+&prompt.root; <userinput>disklabel -Brw da2 auto</userinput>
+ </screen>
+
+ <para>Вы можете использовать disklabel или
+ <filename>/stand/sysinstall</filename> для создания нескольких разделов
+ BSD. Вам наверняка придётся это сделать, если вы станете добавлять место
+ для раздела подкачки на винчестере, хотя это не имеет отношения к
+ устройствам типа ZIP.</para>
+
+ <para>В итоге вы должны создать новую файловую систему (в этом примере
+ она занимает весь наш диск ZIP):</para>
+
+ <screen>
+&prompt.root; <userinput>newfs /dev/rda2c</userinput>
+ </screen>
+
+ <para>и смонтировать её:</para>
+
+ <screen>
+&prompt.root; <userinput>mount /dev/da2c /zip</userinput>
+ </screen>
+
+ <para>Хорошо ещё добавить строку типа следующей в файл
+ <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?fstab">/etc/fstab</ulink>,
+ чтобы в будущем можно было просто давать команду
+ <command>mount /zip</command>:</para>
+
+ <programlisting>
+/dev/da2c /zip ffs rw,noauto 0 0
+ </programlisting>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Почему после редактирования моего файла crontab я получаю сообщения
+ вида <errorname>root: not found</errorname>?</para>
+ </question>
+
+ <answer>
+
+ <para>Обычно это случается при редактировании системного crontab-файла
+ (<filename>/etc/crontab</filename>) и последующего использования утилиты
+ &man.crontab.1; для его установки:</para>
+
+ <screen>&prompt.root; <userinput>crontab /etc/crontab</userinput></screen>
+
+ <para>Это неправильно. Системный crontab-файл имеет формат, отличный от
+ пользовательских crontab-файлов, которые обновляет утилита
+ &man.crontab.1; (страница Справочника по &man.crontab.5; описывает
+ отличия более подробно).</para>
+
+ <para>Если вы сделали именно это, то нужно удалить файл
+ <filename>/var/cron/tabs/root</filename>, так как он будет являться
+ просто копией <filename>/etc/crontab</filename>, но неправильного формата.
+ В следующий раз при редактировании <filename>/etc/crontab</filename>
+ вам не нужно ничего делать для извещения утилиты &man.cron.8; о сделанных
+ изменениях, так как она заметит изменения автоматически.</para>
+
+ <para>Реальная причина ошибки заключается в том, что системный crontab-файл
+ имеет дополнительное поле, указывающее, какой пользователь запускает
+ команду. В системном crontab-файле, поставляемом с FreeBSD и используемом
+ по умолчанию, это пользователь <username>root</username> для всех
+ строк. Если этот crontab-файл используется в качестве crontab-файла
+ пользователя <username>root</username> (что <emphasis>не то же
+ самое</emphasis>, что системный crontab-файл), &man.cron.8; полагает,
+ что слово <literal>root</literal> является первым в команде на выполнение,
+ но такой команды не существует.</para>
+
+ </answer>
+</qandaentry>
+
+<qandaentry>
+ <question>
+ <para>Я сделал ошибку в файле <filename>rc.conf</filename>, и теперь не
+ могу его отредактировать из-за того, что файловая система находится в
+ режиме только для чтения. Что мне делать?</para>
+ </question>
+
+ <answer>
+
+ <para>При получении приглашения на ввод полного пути до командного
+ процессора, просто нажмите <literal>ENTER</literal>, а затем выполните
+ команду <command>mount /</command> для повторного монтирования корневой
+ файловой системы в режиме чтения/записи. Вам может также потребоваться
+ выполнить команду <command>mount -a -t ufs</command> для монтирования
+ файловой системы, в которой расположен ваш любимый редактор. Если
+ редактор расположен на сетевой файловой системе, то вам потребуется
+ выполнить сетевые настройки вручную до монтирования сетевой файловой
+ системы, либо воспользоваться редактором, находящимся в локальной файловой
+ системе, таким, как &man.ed.1;.</para>
+
+ <para>Если вы собираетесь использовать полноэкранный редактор, такой, как
+ &man.vi.1; или &man.emacs.1;, то вам нужно будет выполнить команду
+ <command>export TERM=cons25</command>, чтобы такие редакторы смогли
+ корректно взять данные из базы данных &man.termcap.5;.</para>
+
+ <para>После выполнения этих шагов вы сможете отредактировать файл
+ <filename>/etc/rc.conf</filename> так, как вы это обычно делаете для
+ исправления ошибки. Сообщение об ошибке, выводимое сразу же после
+ сообщений при загрузке ядра, должно указать вам на номер строки в файле,
+ которая содержит ошибку.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Как смонтировать вторичный раздел DOS?</para>
+ </question>
+
+ <answer>
+
+ <para>Вторичные разделы DOS находятся после ВСЕХ первичных разделов.
+ Например, если раздел <quote>E</quote> является вторым разделом DOS на
+ втором диске SCSI, вам нужно создать специальные файлы для пятого
+ <quote>слайса</quote> в каталоге /dev, затем смонтировать /dev/da1s5:</para>
+
+ <screen>
+&prompt.root; <userinput>cd /dev</userinput>
+&prompt.root; <userinput>sh MAKEDEV da1s5</userinput>
+&prompt.root; <userinput>mount -t msdos /dev/da1s5 /dos/e</userinput>
+ </screen>
+
+ </answer>
+</qandaentry>
-<para>Вторичные разделы DOS находятся после ВСЕХ первичных разделов.
- Например, если раздел "E" является вторым разделом DOS на
- втором диске SCSI, вам нужно создать специальные файлы для пятого
- "слайса" в каталоге /dev, затем смонтировать /dev/da1s5:</para>
-
-<para>
- <literallayout>
- # cd /dev
- # ./MAKEDEV da1s5
- # mount -t msdos /dev/da1s5 /dos/e
- </literallayout>
-</para>
-
-</answer></qandaentry>
<qandaentry><question>
<para>Можно ли смонтировать другие файловые системы?
@@ -4709,16 +5166,15 @@ id="admin">
файл <filename>c:\boot.ini</filename>, чтобы он выглядел примерно
так:</para>
- <para>
- <literallayout> [boot loader]
- timeout=30
- default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
- [operating systems]
- multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows NT"
- C:\BOOTSECT.BSD="FreeBSD"
- C:\="DOS"
- </literallayout>
- </para>
+ <programlisting>
+[boot loader]
+timeout=30
+default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
+[operating systems]
+multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows NT"
+C:\BOOTSECT.BSD="FreeBSD"
+C:\="DOS"
+ </programlisting>
<para>Для систем 2.2.x предполагается, что DOS, NT, FreeBSD или другая
операционная система были установлены в их соответствующие разделы fdisk на
@@ -4730,35 +5186,29 @@ id="admin">
<para>Смонтируйте дискету в формате DOS (если вы используете NTFS) или
раздел FAT, скажем, в каталог <filename>/mnt</filename>.</para>
- <para>
- <literallayout>
- dd if=/dev/rda0a of=/mnt/bootsect.bsd bs=512 count=1
- </literallayout>
- </para>
+ <screen>
+&prompt.root; <userinput>dd if=/dev/rda0a of=/mnt/bootsect.bsd bs=512 count=1</userinput>
+ </screen>
<para>Перезапустите DOS или NT. Пользователи NTFS должны скопировать файл
<filename>bootsect.bsd</filename> и/или <filename>bootsect.lnx</filename>
- с дискеты на диск <emphasis remap=tt>C:\</emphasis>. Измените атрибуты
+ с дискеты на диск <filename>C:\</filename>. Измените атрибуты
(права) на файл <filename>boot.ini</filename> следующим образом:</para>
- <para>
- <literallayout>
- attrib -s -r c:\boot.ini
- </literallayout>
- </para>
+ <screen>
+<prompt>C:\&gt;</prompt> <userinput>attrib -s -r c:\boot.ini</userinput>
+ </screen>
<para>Отредактируйте этот файл, добавив соответствующие строки из примерного
<filename>boot.ini</filename> выше, и восстановите атрибуты:</para>
- <para>
- <literallayout>
- attrib +s +r c:\boot.ini
- </literallayout>
- </para>
+ <screen>
+<prompt>C:\&gt;</prompt> <userinput>attrib +s +r c:\boot.ini</userinput>
+ </screen>
<para>Если FreeBSD загружается из MBR, восстановите его командой DOS
- ``<command>fdisk</command>'' после того, как переконфигурировали их для
- загрузки с их ``родных'' разделов.</para>
+ <command>fdisk</command> после того, как переконфигурировали их для
+ загрузки с их <quote>родных</quote> разделов.</para>
<para>Для систем FreeBSD 3.x эта процедура выглядит несколько проще.</para>
@@ -4793,21 +5243,24 @@ id="admin">
</qandaentry>
-<qandaentry><question>
-<para> Как загрузить FreeBSD и Linux с помощью LILO?
- </para></question><answer>
+<qandaentry>
+ <question>
+ <para>Как загрузить FreeBSD и Linux с помощью LILO?</para>
+ </question>
+
+ <answer>
+
+ <para>Если у вас установлены FreeBSD и Linux на одном и том же диске,
+ следуйте указаниям по установке LILO о загрузке не-Linux операционных
+ систем. Они сводятся к следующему:</para>
+
+ <para>Загрузите Linux, и добавьте следующие строки в файл
+ <filename>/etc/lilo.conf</filename>:
-<para>Если у вас установлены FreeBSD и Linux на одном и том же диске,
- следуйте указаниям по установке LILO о загрузке не-Linux операционных
- систем. Они сводятся к следующему:</para>
-
-<para>Загрузите Linux, и добавьте следующие строки в файл
- <filename>/etc/lilo.conf</filename>:
-
<programlisting>
- other=/dev/hda2
- table=/dev/hda
- label=FreeBSD
+other=/dev/hda2
+table=/dev/hda
+label=FreeBSD
</programlisting>
(здесь вы предполагаем, что слайс с FreeBSD известен Linux как
@@ -4815,36 +5268,39 @@ id="admin">
конфигурацией). Затем достаточно будет запустить <command>lilo</command>,
войдя в систему как администратор.</para>
-<para>Если FreeBSD располагается на другом диске, вам нужно добавить строчку
- ``<literal>loader=/boot/chain.b</literal>'' в конфигурационный файл
- LILO. Например:
-
- <programlisting>
- other=/dev/dab4
- table=/dev/dab
- loader=/boot/chain.b
- label=FreeBSD
- </programlisting>
-</para>
-
-<para>В некоторых случаях для успешной загрузки со второго диска вам
- может потребоваться указать номер диска BIOS загрузчику FreeBSD.
- Например, если диск SCSI с FreeBSD определяется BIOS как диск 1,
- в приглашении загрузчика FreeBSD нужно указать:
-
- <literallayout>
- Boot: 1:da(0,a)/kernel
- </literallayout>
-</para>
-
-<para>Во FreeBSD 2.2.5 и выше вы можете настроить <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?boot(8)">boot(8)</ulink>
- на автоматическое принятие таких параметров во время загрузки.</para>
-
-<para>В документе <ulink URL="http://sunsite.unc.edu/LDP/HOWTO/mini/Linux+FreeBSD.html">Linux+FreeBSD mini-HOWTO</ulink> содержится много информации,
- касающейся взаимодействия FreeBSD и Linux.</para>
+ <para>Если FreeBSD располагается на другом диске, вам нужно добавить строчку
+ <literal>loader=/boot/chain.b</literal> в конфигурационный файл
+ LILO. Например:
+
+ <programlisting>
+other=/dev/dab4
+table=/dev/dab
+loader=/boot/chain.b
+label=FreeBSD
+ </programlisting>
+ </para>
-</answer></qandaentry>
+ <para>В некоторых случаях для успешной загрузки со второго диска вам
+ может потребоваться указать номер диска BIOS загрузчику FreeBSD.
+ Например, если диск SCSI с FreeBSD определяется BIOS как диск 1,
+ в приглашении загрузчика FreeBSD нужно указать:</para>
+
+ <screen>
+Boot: <userinput>1:da(0,a)/kernel</userinput>
+ </screen>
+
+ <para>Во FreeBSD 2.2.5 и выше вы можете настроить <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?boot(8)">boot(8)</ulink>
+ на автоматическое принятие таких параметров во время загрузки.</para>
+
+ <para>В документе <ulink
+ URL="http://sunsite.unc.edu/LDP/HOWTO/mini/Linux+FreeBSD.html">
+ Linux+FreeBSD mini-HOWTO</ulink> содержится много информации,
+ касающейся взаимодействия FreeBSD и Linux.</para>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para> Как загрузить FreeBSD и Linux с помощью BootEasy?
@@ -4865,243 +5321,214 @@ id="admin">
</answer></qandaentry>
-<qandaentry><question>
-<para> Не угрожает ли режим ``dangerously dedicated'' моему здоровью?
- </para></question><answer>
-
-<para><anchor id="dedicate">В процессе установки вы можете выбрать два
- различных метода разбиения вашего диска. По умолчанию это делается
- в режиме совместимости с другими операционными системами на этой же
- машине с использованием записей в таблице разделов fdisk (то, что
- называется ``слайсом'' во FreeBSD), со слайсом (разделом), выделенным
- FreeBSD. Опционально, вы можете выбрать установку менеджера
- загрузки для переключения между операционными системами. Либо вы
- можете выделить диск полностью под FreeBSD, не заботясь о совместимости
- с другими операционными системами.</para>
-
-
-
-<para>Почему же этот режим называется ``dangerous''? Дело в том, что
- диск в этом режиме не будет содержать того, что обычные утилиты для
- ПК распознают как таблицу разделов. В зависимости от того, насколько
- хорошо они написаны, они могут сообщить вам об этом, как только
- обнаружат такой диск, или, что гораздо хуже, могут запортить загрузчик
- BSD, даже не спрашивая и не сообщая об этом. К тому же известно, что
- разметка диска в режиме ``dangerously dedicated'' вводит в заблуждение
- BIOS многих производителей, включая AWARD (которые используются в
- компьютерах HP Netserver, Micronics и многих других) и Symbios/NCR
- (производителя популярных SCSI-контроллеров серии 53C8xx). И это не
- полный список, есть ещё другие производители. Симптомами подобных
- проблем является сообщение "read error", выводимое загрузчиком FreeBSD,
- когда он не может найти сам себя, а также зависания системы при загрузке.</para>
-
-
-
-<para>Тогда зачем вообще нужен этот режим? Он экономит всего лишь
- несколько килобайт дискового пространства и может вызвать серьёзные
- проблемы при новой инсталляции. Причиной появления этого режима
- является желание избежать появления одной из самых распространённых
- проблем, с которой сталкиваются новички - соответствие параметров
- BIOS и реальных параметров диска.</para>
-
-<para>``Параметры'' диска являются устаревшей концепцией, но она лежит
- в основе работы BIOS с диском. Когда программа установки FreeBSD
- создаёт слайсы, она записывает их расположение в соответствии с тем,
- как с ними будет работать BIOS. Если это делается неправильно, вы не
- сможете выполнить загрузку системы.</para>
-
-<para>Режим ``dangerously dedicated'' пытается обойти это, упрощая решение
- данной проблемы. Иногда он делает это правильно. Однако это значит,
- что его нужно использовать только как последнюю альтернативу - есть
- способы получше, решающие проблему в 99 случаях из 100.</para>
-
-<para>Итак, как избежать использования режима ``DD'' во время установки?
- Сначала запишите параметры диска, которые сообщает BIOS. Вы можете
- выяснить это, заставив ядро вывести эти параметры при загрузке, указав
- ``-v'' в приглашении ``boot:'', или используя ``boot -v'' в загрузчике.
- Перед тем, как запустится программа установки, ядро выведет параметры,
- используемые BIOS. Не волнуйтесь - подождите запуска программы
- установки, а затем воспользуйтесь скроллингом, чтобы посмотреть
- значения этих параметров. Как правило, BIOS нумерует диски в том же
- порядке, что и FreeBSD, сначала IDE, затем SCSI.</para>
-
-<para>Когда вы разбиваете диск на слайсы, проверьте, что параметры диска,
- выводимые в окне программы FDISK, корректны (то есть они соответствуют
- параметрам BIOS); если это не так, воспользуйтесь командой ``g'', чтобы
- их исправить. Вы можете это сделать, если на диске нет абсолютно
- ничего или если этот диск был перенесён с другой системы. Заметьте,
- что это касается только загрузочного диска; FreeBSD прекрасно разберётся
- с остальными дисками, которые могут у вас быть.</para>
-
-
-
-<para>Как только вы добились соответствия параметров диска в BIOS и
- FreeBSD, скорее всего, проблем у вас больше не будет, и использовать
- режим ``DD'' не потребуется. Если, однако, страшной сообщение
- ``read error'' продолжает появляться при загрузке, самое время
- перекреститься и попробовать этот режим - вам больше нечего терять.</para>
-
-
-
-<para>Чтобы вернуть диск из режима ``dangerously dedicated'' к
- нормальному режиму использования, есть два способа. Первый заключается
- в том, что вы записываете достаточное количество байтов NULL поверх
- MBR, чтобы любой инсталлятор думал, что это чистый диск. Это можно
- сделать, например, командой</para>
-
-<para>
- <literallayout>
- dd if=/dev/zero of=/dev/rda0 count=15
- </literallayout>
-</para>
-
-<para>Другой способ - недокументированной командой DOS</para>
-
-<para>
-<literallayout> fdisk /mbr
- </literallayout>
-</para>
-
-<para>проинсталлировать новую MBR, удалив загрузчик BSD.</para>
-
-</answer></qandaentry>
-<qandaentry><question>
-<para> Как добавить дополнительную виртуальную память?
- </para></question><answer>
-
-<para>Наилучший способ - увеличить размер раздела подкачки, может быть,
- добавив для этого ещё один диск. Общим правилом является выбор
- размера виртуальной памяти, в два раза превышающий объём физической
- памяти. Однако, если у вас очень мало физической памяти, этот объём
- гораздо больше. Хорошей практикой является задание достаточного
- объёма виртуальной памяти в ожидании добавления физической памяти,
- чтобы потом не испытывать трудностей.</para>
-
-
-
-<para>Перенос виртуальной памяти на отдельный диск увеличивает
- быстродействие системы по сравнению с добавлением виртуальной памяти
- на том же диске. Например, компиляция исходных текстов происходит
- быстрее, если они находятся не на том же диске, что и раздел подкачки.
- Особенно это заметно для дисков SCSI.</para>
-
+<qandaentry>
+ <question>
+ <para>Не угрожает ли режим <quote>dangerously dedicated</quote> моему
+ здоровью?</para>
+ </question>
-
-<para>Если у вас имеется несколько дисков, размещение раздела подкачки
- на каждом из них, даже на рабочем диске, обычно бывает полезно.
- Как правило, каждый быстрый диск в вашей системе должен иметь раздел
- подкачки. FreeBSD поддерживает по умолчанию до 4 устройств подкачки с
- чередованием. При задании нескольких разделов подкачки вам захочется
- сделать их одинакового размера, однако иногда первичный раздел подкачки
- делается несколько больше для того, чтобы он мог поместить аварийный
- образ ядра. Размер вашего первичного раздела подкачки должен по крайней
- мере быть равным объёму физической памяти, чтобы поместить аварийный
- образ ядра.</para>
-
+ <answer>
-
-<para>Диски IDE не позволяют реализовать одновременный доступ к обоим
- дискам по одному каналу (FreeBSD не поддерживает режим 4, так что
- весь ввод/вывод для дисков IDE ``программируется''). Однако я всё
- равно советую перенести раздел подкачки на отдельный диск. Диски
- достаточно дешёвы, и экономить тут не на чем.</para>
-
+ <para><anchor id="dedicate">В процессе установки вы можете выбрать два
+ различных метода разбиения вашего диска. По умолчанию это делается
+ в режиме совместимости с другими операционными системами на этой же
+ машине с использованием записей в таблице разделов fdisk (то, что
+ называется <quote>слайсом</quote> во FreeBSD), со слайсом (разделом),
+ выделенным FreeBSD. Опционально, вы можете выбрать установку менеджера
+ загрузки для переключения между операционными системами. Либо вы
+ можете выделить диск полностью под FreeBSD, не заботясь о совместимости
+ с другими операционными системами.</para>
+
+ <para>Почему же этот режим называется <quote>dangerous</quote>? Дело в том,
+ что диск в этом режиме не будет содержать того, что обычные утилиты для
+ ПК распознают как таблицу разделов. В зависимости от того, насколько
+ хорошо они написаны, они могут сообщить вам об этом, как только
+ обнаружат такой диск, или, что гораздо хуже, могут запортить загрузчик
+ BSD, даже не спрашивая и не сообщая об этом. К тому же известно, что
+ разметка диска в режиме <quote>dangerously dedicated</quote> вводит в
+ заблуждение BIOS многих производителей, включая AWARD (которые используются
+ в компьютерах HP Netserver, Micronics и многих других) и Symbios/NCR
+ (производителя популярных SCSI-контроллеров серии 53C8xx). И это не
+ полный список, есть ещё другие производители. Симптомами подобных
+ проблем является сообщение <quote>read error</quote>, выводимое загрузчиком
+ FreeBSD, когда он не может найти сам себя, а также зависания системы при
+ загрузке.</para>
+
+ <para>Тогда зачем вообще нужен этот режим? Он экономит всего лишь
+ несколько килобайт дискового пространства и может вызвать серьёзные
+ проблемы при новой инсталляции. Причиной появления этого режима
+ является желание избежать появления одной из самых распространённых
+ проблем, с которой сталкиваются новички - соответствие параметров
+ BIOS и реальных параметров диска.</para>
+
+ <para><quote>Параметры</quote> диска являются устаревшей концепцией, но она
+ лежит в основе работы BIOS с диском. Когда программа установки FreeBSD
+ создаёт слайсы, она записывает их расположение в соответствии с тем,
+ как с ними будет работать BIOS. Если это делается неправильно, вы не
+ сможете выполнить загрузку системы.</para>
+
+ <para>Режим <quote>dangerously dedicated</quote> пытается обойти это, упрощая
+ решение данной проблемы. Иногда он делает это правильно. Однако это
+ значит, что его нужно использовать только как последнюю альтернативу - есть
+ способы получше, решающие проблему в 99 случаях из 100.</para>
+
+ <para>Итак, как избежать использования режима <quote>DD</quote> во время
+ установки? Сначала запишите параметры диска, которые сообщает BIOS. Вы
+ можете выяснить это, заставив ядро вывести эти параметры при загрузке,
+ указав <option>-v</option> в приглашении <literal>boot:</literal>, или
+ используя <command>boot -v</command> в загрузчике. Перед тем, как
+ запустится программа установки, ядро выведет параметры, используемые BIOS.
+ Не волнуйтесь - подождите запуска программы
+ установки, а затем воспользуйтесь скроллингом, чтобы посмотреть
+ значения этих параметров. Как правило, BIOS нумерует диски в том же
+ порядке, что и FreeBSD, сначала IDE, затем SCSI.</para>
+
+ <para>Когда вы разбиваете диск на слайсы, проверьте, что параметры диска,
+ выводимые в окне программы FDISK, корректны (то есть они соответствуют
+ параметрам BIOS); если это не так, воспользуйтесь командой
+ <literal>g</literal>, чтобы их исправить. Вы можете это сделать, если на
+ диске нет абсолютно ничего или если этот диск был перенесён с другой
+ системы. Заметьте, что это касается только загрузочного диска; FreeBSD
+ прекрасно разберётся с остальными дисками, которые могут у вас быть.</para>
+
+ <para>Как только вы добились соответствия параметров диска в BIOS и
+ FreeBSD, скорее всего, проблем у вас больше не будет, и использовать
+ режим <quote>DD</quote> не потребуется. Если, однако, страшной сообщение
+ <quote>read error</quote> продолжает появляться при загрузке, самое время
+ перекреститься и попробовать этот режим - терять вам больше нечего.</para>
+
+ <para>Чтобы вернуть диск из режима <quote>dangerously dedicated</quote> к
+ нормальному режиму использования, есть два способа. Первый заключается
+ в том, что вы записываете достаточное количество байтов NULL поверх
+ MBR, чтобы любой инсталлятор думал, что это чистый диск. Это можно
+ сделать, например, командой</para>
-
-<para>Использование NFS для размещения раздела подкачки рекомендуется
- только в случае, если у вас нет локального диска. Подкачка поверх
- NFS медленна и неэффективна в релизах FreeBSD до 4.x, хотя достаточно
- быстра в релизах 4.0 и выше. Кроме того, её скорость будет ограничена
- реальной пропускной способностью сети и это даст дополнительную нагрузку
- на NFS-сервер.</para>
-
+ <screen>
+&prompt.root; <userinput>dd if=/dev/zero of=/dev/rda0 count=15</userinput>
+ </screen>
-
-<para>Вот пример vn-файла подкачки размером 64Мб (<filename>/usr/swap0</filename>,
- хотя, конечно, вы можете выбрать любое другое имя.</para>
-
+ <para>Другой способ - недокументированной командой DOS</para>
-
-<para>Удостоверьтесь, что ядро откомпилировано со строкой</para>
-
-<para>
-<literallayout> pseudo-device vn 1 #Vnode driver (turns a file into a device)
- </literallayout>
-</para>
-
+ <screen>
+<prompt>C:\&gt;</prompt> <userinput>fdisk /mbr</userinput>
+ </screen>
-
-<para>в конфигурационном файле. Ядро GENERIC её содержит</para>
-
-<para>
-<orderedlist>
+ <para>проинсталлировать новую MBR, удалив загрузчик BSD.</para>
+
+ </answer>
+</qandaentry>
-<listitem>
-<para>создайте vn-устройство
-
-<literallayout> cd /dev
- sh ./MAKEDEV vn0
- </literallayout>
+<qandaentry>
+ <question>
+ <para>Как добавить дополнительную виртуальную память?</para>
+ </question>
+ <answer>
- </para>
-</listitem>
+ <para>Наилучший способ - увеличить размер раздела подкачки, может быть,
+ добавив для этого ещё один диск. Общим правилом является выбор
+ размера виртуальной памяти, в два раза превышающий объём физической
+ памяти. Однако, если у вас очень мало физической памяти, этот объём
+ гораздо больше. Хорошей практикой является задание достаточного
+ объёма виртуальной памяти в ожидании добавления физической памяти,
+ чтобы потом не испытывать трудностей.</para>
+
+ <para>Перенос виртуальной памяти на отдельный диск увеличивает
+ быстродействие системы по сравнению с добавлением виртуальной памяти
+ на том же диске. Например, компиляция исходных текстов происходит
+ быстрее, если они находятся не на том же диске, что и раздел подкачки.
+ Особенно это заметно для дисков SCSI.</para>
+
+ <para>Если у вас имеется несколько дисков, размещение раздела подкачки
+ на каждом из них, даже на рабочем диске, обычно бывает полезно.
+ Как правило, каждый быстрый диск в вашей системе должен иметь раздел
+ подкачки. FreeBSD поддерживает по умолчанию до 4 устройств подкачки с
+ чередованием. При задании нескольких разделов подкачки вам захочется
+ сделать их одинакового размера, однако иногда первичный раздел подкачки
+ делается несколько больше для того, чтобы он мог поместить аварийный
+ образ ядра. Размер вашего первичного раздела подкачки должен по крайней
+ мере быть равным объёму физической памяти, чтобы поместить аварийный
+ образ ядра.</para>
+
+ <para>Диски IDE не позволяют реализовать одновременный доступ к обоим дискам
+ по одному каналу (FreeBSD не поддерживает режим 4, так что весь ввод/вывод
+ для дисков IDE <quote>программируется</quote>). Однако я всё
+ равно советую перенести раздел подкачки на отдельный диск. Диски
+ достаточно дешёвы, и экономить тут не на чем.</para>
+
+ <para>Использование NFS для размещения раздела подкачки рекомендуется
+ только в случае, если у вас нет локального диска. Подкачка поверх
+ NFS медленна и неэффективна в релизах FreeBSD до 4.x, хотя достаточно
+ быстра в релизах 4.0 и выше. Кроме того, её скорость будет ограничена
+ реальной пропускной способностью сети и это даст дополнительную нагрузку
+ на NFS-сервер.</para>
+
+ <para>Вот пример vn-файла подкачки размером 64Мб
+ (<filename>/usr/swap0</filename>, хотя, конечно, вы можете выбрать любое
+ другое имя.</para>
+
+ <para>Удостоверьтесь, что ядро откомпилировано со строкой</para>
-<listitem>
-<para>создайте файл подкачки (<filename>/usr/swap0</filename>)
+ <programlisting>
+pseudo-device vn 1 #Vnode driver (turns a file into a device)
+ </programlisting>
-
-<literallayout> dd if=/dev/zero of=/usr/swap0 bs=1024k count=64
- </literallayout>
+ <para>в конфигурационном файле. Ядро GENERIC её содержит</para>
+ <para>
+ <orderedlist>
+ <listitem>
+ <para>создайте vn-устройство</para>
- </para>
-</listitem>
+ <screen>
+&prompt.root; <userinput>cd /dev</userinput>
+&prompt.root; <userinput>sh MAKEDEV vn0</userinput>
+ </screen>
+ </listitem>
-<listitem>
-<para>Установите корректные права на файл (<filename>/usr/swap0</filename>)
+ <listitem>
+ <para>создайте файл подкачки (<filename>/usr/swap0</filename>)</para>
-
-<literallayout> chmod 0600 /usr/swap0
- </literallayout>
+ <screen>
+&prompt.root; <userinput>dd if=/dev/zero of=/usr/swap0 bs=1024k count=64</userinput>
+ </screen>
+ </listitem>
-
- </para>
-</listitem>
+ <listitem>
+ <para>Установите корректные права на файл
+ (<filename>/usr/swap0</filename>)</para>
-<listitem>
-<para>Включите использование файла подкачки в <filename>/etc/rc.conf</filename>
+ <screen>
+&prompt.root; <userinput>chmod 0600 /usr/swap0</userinput>
+ </screen>
+ </listitem>
-
-<literallayout> swapfile="/usr/swap0" # Set to name of swapfile if aux swapfile desired.
- </literallayout>
+ <listitem>
+ <para>Включите использование файла подкачки в
+ <filename>/etc/rc.conf</filename></para>
+ <programlisting>
+swapfile="/usr/swap0" # Set to name of swapfile if aux swapfile desired.
+ </programlisting>
+ </listitem>
- </para>
-</listitem>
+ <listitem>
+ <para>перезагрузите машину</para>
+ </listitem>
+ </orderedlist>
+ </para>
-<listitem>
-<para>перезагрузите машину
- </para>
-</listitem>
+ <para>Чтобы включить использование файла подкачки немедленно, наберите</para>
-</orderedlist>
-</para>
-
+ <screen>
+&prompt.root; <userinput>vnconfig -ce /dev/vn0c /usr/swap0 swap</userinput>
+ </screen>
-
-<para>Чтобы включить использование файла подкачки немедленно, наберите</para>
-
-<para>
-<literallayout> vnconfig -ce /dev/vn0c /usr/swap0 swap
- </literallayout>
-</para>
-
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question>
<para>У меня проблемы с установкой принтера.</para></question><answer>
@@ -5113,297 +5540,272 @@ id="admin">
</answer></qandaentry>
-<qandaentry><question>
-<para>Раскладка клавиатуры неверна.</para></question><answer>
-<para>Программа kbdcontrol имеет параметр, задающий файл раскладки.
- Файлы раскладок находятся в каталоге
- <filename>/usr/share/syscons/keymaps</filename>. Выберите соответствующий вашей
- системе и загрузите его.</para>
-
-<para>
-<literallayout> kbdcontrol -l uk.iso
- </literallayout>
-</para>
-
-<para>Программа <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?kbdcontrol">kbdcontrol</ulink>
- предполагает использование каталога
- <filename>/usr/share/syscons/keymaps</filename>
- и расширения <filename>.kbd</filename>.</para>
-
-<para>Это может быть настроено в файле <filename>/etc/sysconfig</filename> (или
- <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?rc.conf(5)">rc.conf</ulink>).
- Обратитесь к соответствующим комментариям в этом файле.</para>
+<qandaentry>
+ <question>
+ <para>Раскладка клавиатуры неверна.</para>
+ </question>
+
+ <answer>
+
+ <para>Программа kbdcontrol имеет параметр, задающий файл раскладки.
+ Файлы раскладок находятся в каталоге
+ <filename>/usr/share/syscons/keymaps</filename>. Выберите соответствующий
+ вашей системе и загрузите его.</para>
+
+ <screen>
+&prompt.root; <userinput>kbdcontrol -l uk.iso</userinput>
+ </screen>
+
+ <para>Программа <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?kbdcontrol">kbdcontrol</ulink>
+ предполагает использование каталога
+ <filename>/usr/share/syscons/keymaps</filename>
+ и расширения <filename>.kbd</filename>.</para>
-<para>В системах 2.0.5R и выше, всё, относящееся к знакогенератору,
- раскладке клавиатуры, находится в каталоге
- <filename>/usr/share/examples/syscons</filename>.</para>
-
+ <para>Это может быть настроено в файле <filename>/etc/sysconfig</filename>
+ (или <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?rc.conf(5)">rc.conf</ulink>).
+ Обратитесь к соответствующим комментариям в этом файле.</para>
+ <para>В системах 2.0.5R и выше, всё, относящееся к знакогенератору,
+ раскладке клавиатуры, находится в каталоге
+ <filename>/usr/share/examples/syscons</filename>.</para>
+
+ <para>На данный момент поддерживаются следующие раскладки:</para>
-<para>На данный момент поддерживаются следующие раскладки:</para>
-
-<para>
-<itemizedlist>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>Belgian ISO-8859-1</para>
+ </listitem>
-<listitem>
-<para>Belgian ISO-8859-1
- </para>
-</listitem>
+ <listitem>
+ <para>Brazilian 275 keyboard Codepage 850</para>
+ </listitem>
-<listitem>
-<para>Brazilian 275 keyboard Codepage 850
- </para>
-</listitem>
+ <listitem>
+ <para>Brazilian 275 keyboard ISO-8859-1</para>
+ </listitem>
-<listitem>
-<para>Brazilian 275 keyboard ISO-8859-1
- </para>
-</listitem>
+ <listitem>
+ <para>Danish Codepage 865</para>
+ </listitem>
-<listitem>
-<para>Danish Codepage 865
- </para>
-</listitem>
+ <listitem>
+ <para>Danish ISO-8859-1</para>
+ </listitem>
-<listitem>
-<para>Danish ISO-8859-1
- </para>
-</listitem>
+ <listitem>
+ <para>French ISO-8859-1</para>
+ </listitem>
-<listitem>
-<para>French ISO-8859-1
- </para>
-</listitem>
+ <listitem>
+ <para>German Codepage 850</para>
+ </listitem>
-<listitem>
-<para>German Codepage 850
- </para>
-</listitem>
+ <listitem>
+ <para>German ISO-8859-1</para>
+ </listitem>
-<listitem>
-<para>German ISO-8859-1
- </para>
-</listitem>
+ <listitem>
+ <para>Italian ISO-8859-1</para>
+ </listitem>
-<listitem>
-<para>Italian ISO-8859-1
- </para>
-</listitem>
+ <listitem>
+ <para>Japanese 106</para>
+ </listitem>
-<listitem>
-<para>Japanese 106
- </para>
-</listitem>
+ <listitem>
+ <para>Japanese 106x</para>
+ </listitem>
-<listitem>
-<para>Japanese 106x
- </para>
-</listitem>
+ <listitem>
+ <para>Latin American</para>
+ </listitem>
-<listitem>
-<para>Latin American
- </para>
-</listitem>
+ <listitem>
+ <para>Norwegian ISO-8859-1</para>
+ </listitem>
-<listitem>
-<para>Norwegian ISO-8859-1
- </para>
-</listitem>
+ <listitem>
+ <para>Polish ISO-8859-2 (programmer's)</para>
+ </listitem>
-<listitem>
-<para>Polish ISO-8859-2 (programmer's)
- </para>
-</listitem>
+ <listitem>
+ <para>Russian Codepage 866 (alternative)</para>
+ </listitem>
-<listitem>
-<para>Russian Codepage 866 (alternative)
- </para>
-</listitem>
+ <listitem>
+ <para>Russian koi8-r (shift)</para>
+ </listitem>
-<listitem>
-<para>Russian koi8-r (shift)
- </para>
-</listitem>
+ <listitem>
+ <para>Russian koi8-r</para>
+ </listitem>
-<listitem>
-<para>Russian koi8-r
- </para>
-</listitem>
+ <listitem>
+ <para>Spanish ISO-8859-1</para>
+ </listitem>
-<listitem>
-<para>Spanish ISO-8859-1
- </para>
-</listitem>
+ <listitem>
+ <para>Swedish Codepage 850</para>
+ </listitem>
-<listitem>
-<para>Swedish Codepage 850
- </para>
-</listitem>
+ <listitem>
+ <para>Swedish ISO-8859-1</para>
+ </listitem>
-<listitem>
-<para>Swedish ISO-8859-1
- </para>
-</listitem>
+ <listitem>
+ <para>Swiss-German ISO-8859-1</para>
+ </listitem>
-<listitem>
-<para>Swiss-German ISO-8859-1
- </para>
-</listitem>
+ <listitem>
+ <para>United Kingdom Codepage 850</para>
+ </listitem>
-<listitem>
-<para>United Kingdom Codepage 850
- </para>
-</listitem>
+ <listitem>
+ <para>United Kingdom ISO-8859-1</para>
+ </listitem>
-<listitem>
-<para>United Kingdom ISO-8859-1
- </para>
-</listitem>
+ <listitem>
+ <para>United States of America ISO-8859-1</para>
+ </listitem>
-<listitem>
-<para>United States of America ISO-8859-1
- </para>
-</listitem>
+ <listitem>
+ <para>United States of America dvorak</para>
+ </listitem>
-<listitem>
-<para>United States of America dvorak
- </para>
-</listitem>
+ <listitem>
+ <para>United States of America dvorakx</para>
+ </listitem>
+ </itemizedlist>
+ </para>
-<listitem>
-<para>United States of America dvorakx
- </para>
-</listitem>
+ </answer>
+</qandaentry>
-</itemizedlist>
-</para>
-
-
-</answer></qandaentry>
+<qandaentry>
+ <question>
+ <para>Не получается заставить работать дисковые квоты.</para>
+ </question>
-<qandaentry><question>
-<para>Не получается заставить работать дисковые квоты.</para></question><answer>
+ <answer>
-<para>
-<orderedlist>
+ <para>
+ <orderedlist>
+ <listitem>
+ <para>Не включайте квотирование на <filename>/</filename>,</para>
+ </listitem>
-<listitem>
-<para>Не включайте квотирование на '/',
+ <listitem>
+ <para>Помещайте файл с квотами в ту файловую систему, которую
+ он обслуживает, то есть:
+
+ <programlisting>
+ФС ФАЙЛ КВОТ
+/usr /usr/admin/quotas
+/home /home/admin/quotas
+...
+ </programlisting>
+ </para>
+ </listitem>
+ </orderedlist>
+ </para>
- </para>
-</listitem>
+ </answer>
+</qandaentry>
-<listitem>
-<para>Помещайте файл с квотами в ту файловую систему, которую
- он обслуживает, то есть:
-
-<literallayout> ФС ФАЙЛ КВОТ
- /usr /usr/admin/quotas
- /home /home/admin/quotas
- ...
- </literallayout>
+<qandaentry>
+ <question>
+ <para>Что не так с устройством ccd?</para>
+ </question>
- </para>
-</listitem>
+ <answer>
-</orderedlist>
-</para>
+ <para>Симптом выглядит так:</para>
+ <screen>
+&prompt.root; <userinput>ccdconfig -C</userinput>
+ccdconfig: ioctl (CCDIOCSET): /dev/ccd0c: Inappropriate file type or format
+ </screen>
-
-</answer></qandaentry>
+ <para>Это сообщение обычно выдаётся, когда вы пытаетесь объединить разделы
+ <literal>c</literal>, по умолчанию имеющие тип <literal>unused</literal>.
+ Драйвер ccd требует, чтобы используемые разделы имели тип FS_BSDFFS.
+ Отредактируйте метки тех дисков, которые вы хотите использовать, сменив
+ типы разделов на <literal>4.2BSD</literal>.</para>
-<qandaentry><question>
-<para>Что не так с устройством ccd?</para></question><answer>
+ </answer>
+</qandaentry>
-<para>Симптом выглядит так:</para>
-
-<para>
-<literallayout> # ccdconfig -C
- ccdconfig: ioctl (CCDIOCSET): /dev/ccd0c: Inappropriate file type or format
- #
- </literallayout>
-</para>
-
-
-<para>Это сообщение обычно выдаётся, когда вы пытаетесь объединить разделы
- 'c', по умолчанию имеющие тип 'unused'. Драйвер ccd требует, чтобы
- используемые разделы имели тип FS_BSDFFS. Отредактируйте метки тех
- дисков, которые вы хотите использовать, сменив типы разделов на
- '4.2BSD'.</para>
-
+<qandaentry>
+ <question>
+ <para>Почему невозможно отредактировать метку диска ccd?</para>
+ </question>
-
-</answer></qandaentry>
+ <answer>
-<qandaentry><question>
-<para> Почему невозможно отредактировать метку диска ccd?
- </para></question><answer>
+ <para>Симптом выглядит так:</para>
-<para>Симптом выглядит так:</para>
-
-<para>
-<literallayout> # disklabel ccd0
- (здесь выводится информация о диске, пробуем отредактировать метку)
- # disklabel -e ccd0
- (редактирование, сохранение, выход)
- disklabel: ioctl DIOCWDINFO: No disk label on disk;
- use "disklabel -r" to install initial label
- #
- </literallayout>
-</para>
-
+ <screen>
+&prompt.root; <userinput>disklabel ccd0</userinput>
+(здесь выводится информация о диске, пробуем отредактировать метку)
+&prompt.root; <userinput>disklabel -e ccd0</userinput>
+(редактирование, сохранение, выход)
+disklabel: ioctl DIOCWDINFO: No disk label on disk;
+use "disklabel -r" to install initial label
+ </screen>
-
-<para>Это происходит из-за того, что метка диска, возвращаемая ccd, на
- самом деле 'ненастоящая', не соответствующая реально располагающейся
- на диске. Вы можете решить эту проблему, явно записав эту метку
- обратно следующим образом:</para>
-
-<para>
-<literallayout> # disklabel ccd0 &gt; /tmp/disklabel.tmp
- # disklabel -Rr ccd0 /tmp/disklabel.tmp
- # disklabel -e ccd0
- (теперь это будет работать)
- </literallayout>
-</para>
-
+ <para>Это происходит из-за того, что метка диска, возвращаемая ccd, на
+ самом деле <quote>ненастоящая</quote>, не соответствующая реально
+ располагающейся на диске. Вы можете решить эту проблему, явно записав эту
+ метку обратно следующим образом:</para>
-
-</answer></qandaentry>
+ <screen>
+&prompt.root; <userinput>disklabel ccd0 &gt; /tmp/disklabel.tmp</userinput>
+&prompt.root; <userinput>disklabel -Rr ccd0 /tmp/disklabel.tmp</userinput>
+&prompt.root; <userinput>disklabel -e ccd0</userinput>
+(теперь это будет работать)
+ </screen>
-<qandaentry><question>
-<para>Поддерживает ли FreeBSD вызовы IPC из System V?</para></question><answer>
+ </answer>
+</qandaentry>
-<para>Да, FreeBSD поддерживает IPC из System V, а именно совместно
- используемую память, сообщения и семафоры. Чтобы они работали, вам
- нужно добавить следующие строки в файл конфигурации ядра.</para>
-
-<para>
-<literallayout> options SYSVSHM
- options "SHMMAXPGS=64" # 256Kb of sharable memory
- options SYSVSEM # enable for semaphores
- options SYSVMSG # enable for messaging
- </literallayout>
-</para>
-
-
-<para>Перекомпилируйте и проинсталлируйте ядро.</para>
-
+<qandaentry>
+ <question>
+ <para>Поддерживает ли FreeBSD вызовы IPC из System V?</para>
+ </question>
+
+ <answer>
+
+ <para>Да, FreeBSD поддерживает IPC из System V, а именно совместно
+ используемую память, сообщения и семафоры. Чтобы они работали, вам
+ нужно добавить следующие строки в файл конфигурации ядра.</para>
+ <programlisting>
+options SYSVSHM
+options SYSVSHM # enable shared memory
+options SYSVSEM # enable for semaphores
+options SYSVMSG # enable for messaging
+ </programlisting>
+
+ <para>
+ <note>
+ <para>Во FreeBSD 3.2 и выше эти параметры уже включены в ядро
+ <emphasis>GENERIC</emphasis>, что уже означает их присутствие в вашей
+ системе.</para>
+ </note>
+ </para>
+
+ <para>Перекомпилируйте и проинсталлируйте ядро.</para>
-<para><emphasis remap=bf>ЗАМЕЧАНИЕ:</emphasis> Вам может потребоваться увеличить значение
- константы SHMMAXGS на что-то большее, типа 4096 (16М!), если вы
- собираетесь ипользовать GIMP. 256Кб достаточно для работы X11R6.</para>
-
-</answer></qandaentry>
+ </answer>
+</qandaentry>
<qandaentry><question id="uucpmail">
@@ -5478,7 +5880,7 @@ id="admin">
<para>Параметры <literal>nodns</literal> и <literal>nocanonify</literal>
подавляют использование DNS в процессе доставки. Строка
- <symbol>UUCP_RELAY</symbol> может понадобиться только в очень странных
+ <literal>UUCP_RELAY</literal> может понадобиться только в очень странных
случаях, не спрашивайте о них. Просто поместите здесь имя хоста Internet,
который может обрабатывать адреса с псевдо-доменами .UUCP; в
большинстве случаев достаточно поставить сюда имя почтового шлюза
@@ -5500,34 +5902,36 @@ id="admin">
. uucp-dom:
</programlisting>
-<para>Как видите, это часть реально существующего файла. Первые три строки
- описывают особые случаи, когда почта, направленная на некоторые домены, будет
- посылаться не по стандартному маршруту, а на некоторую близлежащую
- UUCP-систему для `сокращения' маршрута доставки. Следующая строка описывает,
- что почта на локальный домен в сети Ethernet может быть доставлена по SMTP.
- В конце файла описаны близлежащие системы UUCP в псевдо-домене .UUCP, что
- позволит выполнять правильную доставку почты на адреса
- ``uucp-система!получатель''. В последней строке всегда присутствует одна
- точка, соответствующая всем остальным доменам, с доставкой по UUCP на
- ближнюю систему UUCP, который является универсальный почтовым шлюзом во весь
- остальной мир. Все имена узлов после <literal>uucp-dom:</literal>
- должны быть реально существующими узлами UUCP, что можно проверить
- командой <literal>uuname</literal>.</para>
+ <para>Как видите, это часть реально существующего файла. Первые три строки
+ описывают особые случаи, когда почта, направленная на некоторые домены,
+ будет посылаться не по стандартному маршруту, а на некоторую близлежащую
+ UUCP-систему для <quote>сокращения</quote> маршрута доставки. Следующая
+ строка описывает,
+ что почта на локальный домен в сети Ethernet может быть доставлена по SMTP.
+ В конце файла описаны близлежащие системы UUCP в псевдо-домене .UUCP, что
+ позволит выполнять правильную доставку почты на адреса
+ <literal><replaceable>uucp-система</replaceable>!<replaceable>получатель</replaceable></literal>.
+ В последней строке всегда присутствует одна точка, соответствующая всем
+ остальным доменам, с доставкой по UUCP на
+ ближнюю систему UUCP, который является универсальный почтовым шлюзом во весь
+ остальной мир. Все имена узлов после <literal>uucp-dom:</literal>
+ должны быть реально существующими узлами UUCP, что можно проверить
+ командой <literal>uuname</literal>.</para>
<para>Как напоминание о том, что этот файл должен быть преобразован в формат
базы данных DBM перед использованием, командная строка, выполняющая это
действие, помещена как комментарий в начало файла. При изменении
mailertable всегда нужно выполнять эту команду.</para>
-<para>Последняя подсказка: если вы не уверены в правильности настройки
- маршрутизаци почты, используйте sendmail с опцией <option>-bt</option>. Она
- переводит sendmail в режим <emphasis>проверки адресов</emphasis>; введите
- ``0 '', а затем адрес, который вы хотите протестировать на правильность
- маршрутизации. В последней строке будут указаны используемый
- почтовый агент, хост получателя, с которым будет работать этот агент,
- и (может быть преобразованный) адрес. Выход их этого режима
- осуществляется по Control-D.</para>
-
+ <para>Последняя подсказка: если вы не уверены в правильности настройки
+ маршрутизаци почты, используйте sendmail с опцией <option>-bt</option>. Она
+ переводит sendmail в режим <emphasis>проверки адресов</emphasis>; введите
+ <literal>0 </literal>, а затем адрес, который вы хотите протестировать на
+ правильность маршрутизации. В последней строке будут указаны используемый
+ почтовый агент, хост получателя, с которым будет работать этот агент,
+ и (может быть преобразованный) адрес. Выход их этого режима
+ осуществляется по Control-D.</para>
+
<screen>
&prompt.user; <userinput>sendmail -bt</userinput>
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
@@ -5572,22 +5976,18 @@ id="ispmail">
соединения с Internet, добавив такую строку в файл
<filename>/etc/ppp/ppp.linkup</filename>:</para>
- <para>
- <literallayout>
- MYADDR:
- !bg su user -c fetchmail
- </literallayout>
- </para>
+ <programlisting>
+MYADDR:
+ !bg su user -c fetchmail
+ </programlisting>
- <para>Если вы используете <emphasis remap=tt>sendmail</emphasis> (как
+ <para>Если вы используете <application>sendmail</application> (как
показано ниже) для доставки почты для внешних пользователей, поместите
команду</para>
- <para>
- <literallayout>
-!bg su user -c "sendmail -q"
- </literallayout>
- </para>
+ <programlisting>
+ !bg su user -c "sendmail -q"
+ </programlisting>
<para>после вышеуказанной строки. Это заставит sendmail обработать вашу
очередь почтовых сообщений, как только будет осуществлено подключение
@@ -5599,11 +5999,9 @@ id="ispmail">
<filename>bsd.home</filename> создайте файл
<filename>.fetchmailrc</filename> такого содержания:</para>
- <para>
- <literallayout>
-poll myISP.com protocol pop3 fetchall pass MySecret;
- </literallayout>
- </para>
+ <programlisting>
+poll myISP.com protocol pop3 fetchall pass MySecret
+ </programlisting>
<para>Излишним будет напоминание о том, что этот файл никому не должен
быть доступен для чтения, кроме пользователя <emphasis
@@ -5618,8 +6016,7 @@ poll myISP.com protocol pop3 fetchall pass MySecret;
<para>Следующий файл <filename>.mc</filename> должен подойти:</para>
- <para>
- <literallayout>
+ <programlisting>
VERSIONID(`bsd.home.mc version 1.0')
OSTYPE(bsd4.4)dnl
FEATURE(nouucp)dnl
@@ -5636,8 +6033,7 @@ define(SMART_HOST, `relay.myISP.com')
Dmbsd.home
define(`confDOMAIN_NAME',`bsd.home')dnl
define(`confDELIVERY_MODE',`deferred')dnl
- </literallayout>
- </para>
+ </programlisting>
<para>В предыдущем разделе описано, как преобразовать файл
<filename>.mc</filename> в <filename>sendmail.cf</filename>. И не забудьте
@@ -5647,22 +6043,27 @@ define(`confDELIVERY_MODE',`deferred')dnl
</qandaentry>
-<qandaentry><question>
-<para>Ой! Я забыл пароль администратора!</para></question><answer>
-
-<para>Без паники! Просто перезапустите систему, наберите <userinput>boot
- -s</userinput> в приглашении Boot: (или просто <userinput>-s</userinput> в
- случае использования версий FreeBSD до 3.2) для входа в однопользовательский
- режим. На вопрос об используемой оболочке нажмите ENTER. На приглашение
- &prompt.root; введите <command>mount -u /</command>, чтобы перемонтировать
- корневую файловую систему в режиме чтения/записи, после чего выполните
- команду <command>mount -a</command> для монтирования всех файловых систем.
- Запустите команду <emphasis remap=tt>passwd root</emphasis>, чтобы сменить
- пароль администратора и затем <emphasis remap=tt>exit</emphasis> для
- продолжения процесса загрузки.
-</para>
-
-</answer></qandaentry>
+<qandaentry>
+ <question>
+ <para>Ой! Я забыл пароль администратора!</para>
+ </question>
+
+ <answer>
+
+ <para>Без паники! Просто перезапустите систему, наберите <userinput>boot
+ -s</userinput> в приглашении Boot: (или просто <userinput>-s</userinput> в
+ случае использования версий FreeBSD до 3.2) для входа в однопользовательский
+ режим. На вопрос об используемой оболочке нажмите ENTER. На приглашение
+ &prompt.root; введите <command>mount -u /</command>, чтобы перемонтировать
+ корневую файловую систему в режиме чтения/записи, после чего выполните
+ команду <command>mount -a</command> для монтирования всех файловых систем.
+ Запустите команду <command>passwd root</command>, чтобы сменить
+ пароль администратора, а затем <command>exit</command> для
+ продолжения процесса загрузки.</para>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para>Как запретить перезагрузку по клавишам Control-Alt-Delete?
@@ -5691,33 +6092,39 @@ define(`confDELIVERY_MODE',`deferred')dnl
</answer></qandaentry>
-<qandaentry><question>
-<para>Как преобразовать текстовые файлы DOS в формат UNIX?</para></question><answer>
-<para>Используйте такую команду:</para>
-
-<para>
-<literallayout>perl -i.bak -npe 's/\r\n/\n/g' file ...</literallayout>
-</para>
-
+<qandaentry>
+ <question>
+ <para>Как преобразовать текстовые файлы DOS в формат UNIX?</para>
+ </question>
+ <answer>
+
+ <para>Используйте такую команду:</para>
-<para>где file - это имя файла(ов) для преобразования. Преобразование
+ <screen>
+&prompt.user; <userinput>perl -i.bak -npe 's/\r\n/\n/g' file ...</userinput>
+ </screen>
+
+ <para>где file - это имя файла(ов) для преобразования. Преобразование
делается в том же самом файле, оригинальные файлы сохраняются с
расширением .bak.</para>
-
-<para>Это преобразование также можно выполнить с помощью команды
+
+ <para>Это преобразование также можно выполнить с помощью команды
<ulink URL="http://www.FreeBSD.org/cgi/man.cgi?tr">tr</ulink>:</para>
-
-<para>
-<literallayout>tr -d '\r' &lt; dos-text-file &gt; unix-file</literallayout>
-</para>
-
-<para>где dos-text-file - это имя файла, содержащего текст DOS, а
- в файл unix-file будет помещён уже преобразованный текст. Этот способ
- может работать гораздо быстрее, чем при использовании perl.</para>
-
-</answer></qandaentry>
+
+ <screen>
+&prompt.user; <userinput>tr -d '\r' &lt; <replaceable>dos-text-file</replaceable> &gt; <replaceable>unix-file</replaceable></userinput>
+ </screen>
+
+ <para>где <replaceable>dos-text-file</replaceable> - это имя файла,
+ содержащего текст DOS, а в файл <replaceable>unix-file</replaceable> будет
+ помещён уже преобразованный текст. Этот способ может работать гораздо
+ быстрее, чем при использовании perl.</para>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para>Как прервать процесс по имени?</para></question><answer>
@@ -5740,89 +6147,83 @@ define(`confDELIVERY_MODE',`deferred')dnl
</answer></qandaentry>
-<qandaentry><question>
-<para>Как деинсталлировать Kerberos?</para></question><answer>
-
-<para>Чтобы убрать Kerberos из системы, переинсталлируйте дистрибутив bin
- того релиза, который у вас запущен. Если у вас есть CDROM, вы можете
- смонтировать компакт-диск (положим, в каталог /cdrom) и выполнить
- команду</para>
-
-<para>
-<literallayout> cd /cdrom/bin
- ./install.sh
- </literallayout>
-</para>
-
-
-
-</answer></qandaentry>
-
-<qandaentry><question>
-<para>Как добавить в систему дополнительные псевдотерминалы?</para></question><answer>
-
-<para>Если у вас много пользователей, работающий в сеансах telnet, ssh, X
- или в screen, вам можете столкнуться с проблемой нехватки
- псевдотерминалов. Их количество можно уыеличить следующим образом:</para>
-
-<para>
-<orderedlist>
-
-<listitem>
-<para>Откомпилируйте и инсталлируйте новое ядро, в конфигурационный
- файл которого входит строка
-
-
-<literallayout> pseudo-device pty 256
- </literallayout>
+<qandaentry>
+ <question>
+ <para>Как деинсталлировать Kerberos?</para>
+ </question>
- </para>
-</listitem>
+ <answer>
-<listitem>
-<para>Выполните команду
+ <para>Чтобы убрать Kerberos из системы, переинсталлируйте дистрибутив bin
+ того релиза, который у вас запущен. Если у вас есть CDROM, вы можете
+ смонтировать компакт-диск (положим, в каталог /cdrom) и выполнить
+ команду</para>
-
-<literallayout> # cd /dev
- # ./MAKEDEV pty{1,2,3,4,5,6,7}
- </literallayout>
+ <screen>
+&prompt.root; <userinput>cd /cdrom/bin</userinput>
+&prompt.root; <userinput>./install.sh</userinput>
+ </screen>
+ </answer>
+</qandaentry>
- </para>
-<para>для создания 256 дополнительных файлов устройств для новых терминалов.</para>
+<qandaentry>
+ <question>
+ <para>Как добавить в систему дополнительные псевдотерминалы?</para>
+ </question>
+ <answer>
-</listitem>
+ <para>Если у вас много пользователей, работающий в сеансах telnet, ssh, X
+ или в screen, вам можете столкнуться с проблемой нехватки
+ псевдотерминалов. Их количество можно уыеличить следующим образом:</para>
-<listitem>
-<para>Отредактируйте файл <filename>/etc/ttys</filename>, добавив по строке для
- каждого из 256 терминалов. Они должны соответствовать формату
- существующих строк, то есть должны выглядеть как
+ <para>
+ <orderedlist>
+ <listitem>
+ <para>Откомпилируйте и инсталлируйте новое ядро, в конфигурационный
+ файл которого входит такая строка:</para>
-
-<literallayout> ttyqc none network
- </literallayout>
+ <programlisting>
+pseudo-device pty 256
+ </programlisting>
+ </listitem>
+ <listitem>
+ <para>Выполните следующие команды:</para>
- </para>
+ <screen>
+&prompt.root; <userinput>cd /dev</userinput>
+&prompt.root; <userinput>sh MAKEDEV pty{1,2,3,4,5,6,7}</userinput>
+ </screen>
-<para>Порядок назначения букв при записи в виде регулярного выражения имеет
- вид <emphasis remap=tt>tty[pqrsPQRS][0-9a-v]</emphasis>.</para>
+ <para>для создания 256 дополнительных файлов устройств для новых
+ терминалов.</para>
+ </listitem>
+ <listitem>
+ <para>Отредактируйте файл <filename>/etc/ttys</filename>, добавив по
+ строке для каждого из 256 терминалов. Они должны соответствовать
+ формату существующих строк, то есть должны выглядеть вот так:</para>
-</listitem>
+ <programlisting>
+ttyqc none network
+ </programlisting>
-<listitem>
-<para>Теперь осталось только перезапустить систему с новым ядром.
- </para>
-</listitem>
+ <para>Порядок назначения букв при записи в виде регулярного выражения
+ имеет вид <literal>tty[pqrsPQRS][0-9a-v]</literal>.</para>
+ </listitem>
-</orderedlist>
-</para>
+ <listitem>
+ <para>Теперь осталось только перезапустить систему с новым ядром.</para>
+ </listitem>
+ </orderedlist>
+ </para>
-</answer></qandaentry>
+ </answer>
+</qandaentry>
<qandaentry>
@@ -5842,163 +6243,179 @@ define(`confDELIVERY_MODE',`deferred')dnl
<screen>
&prompt.root; <userinput>cd /dev</userinput>
-&prompt.root; <userinput>sh MAKDEV snd0</userinput>
+&prompt.root; <userinput>sh MAKEDEV snd0</userinput>
</screen>
</answer>
</qandaentry>
-<qandaentry><question>
-<para>Как перечитать содержимое /etc/rc.conf и перестартовать /etc/rc
- без перезагрузки системы?</para></question><answer>
+<qandaentry>
+ <question>
+ <para>Как перечитать содержимое /etc/rc.conf и перестартовать /etc/rc
+ без перезагрузки системы?</para>
+ </question>
-<para>Перейдите в однопользовательский режим, а затем возвратитесь обратно
- в многопользовательский.</para>
-
-<para>На консоли выполните следующее:</para>
-
-<para>
- <literallayout>
- # shutdown now
- (Замечание: без -r или -h)
+ <answer>
- # return
- # exit
- </literallayout>
-</para>
-
-</answer></qandaentry>
+ <para>Перейдите в однопользовательский режим, а затем возвратитесь обратно
+ в многопользовательский.</para>
-<qandaentry><question>
-<para>Что означает термин sandbox (песочница)?</para></question><answer>
+ <para>На консоли выполните следующее:</para>
-<para>&quot;Sandbox&quot; - это термин, используемый при обеспечении
- безопасности. Он имеет два значения:</para>
+ <screen>
+&prompt.root; <userinput>shutdown now</userinput>
+(Замечание: без -r или -h)
-<para>
-<itemizedlist>
+&prompt.root; <userinput>return</userinput>
+&prompt.root; <userinput>exit</userinput>
+ </screen>
-<listitem>
-<para>Процесс, помещённый внутрь некоторых виртуальных стен, которые
- предназначены для того, чтобы предотвратить взлом всей системы в
- результате взлома этого конкретного процесса.</para>
-
-<para>Говорится, что процесс может "играть" в границах этих стен. Что бы
- этот процесс ни делал, он эти стены разрушить не может, поэтому вам
- не нужен его особый аудит, чтобы с уверенностью сказать, насколько
- его работа безопасна для системы.</para>
-
-<para>Стеной может служить, например, идентификатор пользователя. Вот
- определение, даваемое на страницах справочника по named и часто
- используемое при обсуждении безопасности систем.</para>
-
-<para>Рассмотрим, например, службу 'ntalk' (смотрите /etc/inetd.conf).
- Раньше эта служба запускалась с идентификатором пользователя root,
- а сейчас - tty. Пользователь tty - это та песочница, которая
- осложняет взлом системы через ntalk посредством использования этого
- идентификатора пользователя.</para>
-</listitem>
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Что означает термин sandbox (песочница)?</para>
+ </question>
+
+ <answer>
+
+ <para><quote>Sandbox</quote> - это термин, используемый при обеспечении
+ безопасности. Он имеет два значения:</para>
+
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>Процесс, помещённый внутрь некоторых виртуальных стен, которые
+ предназначены для того, чтобы предотвратить взлом всей системы в
+ результате взлома этого конкретного процесса.</para>
+
+ <para>Говорится, что процесс может <command>играть</command> в границах
+ этих стен. Что бы
+ этот процесс ни делал, он эти стены разрушить не может, поэтому вам
+ не нужен его особый аудит, чтобы с уверенностью сказать, насколько
+ его работа безопасна для системы.</para>
+
+ <para>Стеной может служить, например, идентификатор пользователя. Вот
+ определение, даваемое на страницах справочника по named и часто
+ используемое при обсуждении безопасности систем.</para>
+
+ <para>Рассмотрим, например, службу <literal>ntalk</literal> (смотрите
+ /etc/inetd.conf). Раньше эта служба запускалась с идентификатором
+ пользователя root,
+ а сейчас - tty. Пользователь tty - это та песочница, которая
+ осложняет взлом системы через ntalk посредством использования этого
+ идентификатора пользователя.</para>
+ </listitem>
-<listitem>
+ <listitem>
+ <para>Процесс, помещённый внутрь симулируемой машины. Это даёт больший
+ уровень безопасности. В общем это означает, что некто, взломавший
+ процесс, может думать. что может сломать и систему в целом, однако
+ фактически может сломать только симулятор этой машины и не может
+ модифицировать никаких реальных данных.</para>
+
+ <para>Самым распространённым способом достигнуть такого результата
+ является построение имитирующего окружения в каталоге и затем запуск
+ процессов и этом каталоге через chroot (т.е. задав этот каталог в
+ качестве <filename>/</filename> для этого процесса, а не реальный
+ <filename>/</filename> всей системы).</para>
+
+ <para>Другим часто используемым методом является монтирование низлежащей
+ файловой системы в режиме "только для чтения" и затем создание
+ уровня фаловой системы поверх неё, что даёт процессу видимость
+ доступа по записи на ту файловую систему. Процесс будет полагать,
+ что может записывать в те файлы, но это будет единственный процесс,
+ который увидит результат - другие процессы не будут этого делать,
+ ни в коем случае.</para>
+
+ <para>Попытка сделать такой тип песочницы настолько прозрачна, что
+ пользователь (или взломщик) даже не поймёт, что он в ней
+ находится.</para>
+ </listitem>
+ </itemizedlist>
+ </para>
-<para>Процесс, помещённый внутрь симулируемой машины. Это даёт больший
- уровень безопасности. В общем это означает, что некто, взломавший
- процесс, может думать. что может сломать и систему в целом, однако
- фактически может сломать только симулятор этой машины и не может
- модифицировать никаких реальных данных.</para>
-
-<para>Самым распространённым способом достигнуть такого результата
- является построение имитирующего окружения в каталоге и затем запуск
- процессов и этом каталоге через chroot (т.е. задав этот каталог в
- качестве "/" для этого процесса, а не реальный "/" всей системы).</para>
-
-<para>Другим часто используемым методом является монтирование низлежащей
- файловой системы в режиме "только для чтения" и затем создание
- уровня фаловой системы поверх неё, что даёт процессу видимость
- доступа по записи на ту файловую систему. Процесс будет полагать,
- что может записывать в те файлы, но это будет единственный процесс,
- который увидит результат - другие процессы не будут этого делать,
- ни в коем случае.</para>
-
-<para>Попытка сделать такой тип песочницы настолько прозрачна, что
- пользователь (или взломщик) даже не поймёт, что он в ней находится.</para>
-</listitem>
+ <para>В UNIX реализованы два типа "песочниц". Один на уровне процесса, и один
+ на уровне идентификаторов пользователей.</para>
-</itemizedlist>
-</para>
+ <para>Каждый процесс в UNIX полностью защищён от других процессов. Никакой
+ процесс не может модифицировать адресное пространство другого процесса.
+ Это отличается от Windows, где процесс может легко записать что-либо в
+ адресное пространство другого процесса, что приводит к аварийным
+ ситуациям.</para>
-<para>В UNIX реализованы два типа "песочниц". Один на уровне процесса, и один
- на уровне идентификаторов пользователей.</para>
+ <para>В UNIX каждым процессом владеет некоторый идентификатор пользователя.
+ Если этот пользователь не root, от ограждает процесс от других,
+ владельцами которых являются другие пользователи. Этот идентификатор
+ используется также для защиты данных на диске.</para>
-<para>Каждый процесс в UNIX полностью защищён от других процессов. Никакой
- процесс не может модифицировать адресное пространство другого процесса.
- Это отличается от Windows, где процесс может легко записать что-либо в
- адресное пространство другого процесса, что приводит к аварийным
- ситуациям.</para>
+ </answer>
+</qandaentry>
-<para>В UNIX каждым процессом владеет некоторый идентификатор пользователя.
- Если этот пользователь не root, от ограждает процесс от других,
- владельцами которых являются другие пользователи. Этот идентификатор
- используется также для защиты данных на диске.</para>
-</answer></qandaentry>
+<qandaentry>
+ <question>
+ <para>Как разрешить обычным пользователям монтировать дискеты и
+ другие сменные носители?</para>
+ </question>
- <qandaentry>
- <question>
- <para>Как разрешить обычным пользователям монтировать дискеты и
- другие сменные носители?</para>
- </question>
+ <answer>
- <answer>
- <para>Обычным пользователям можно позволить монтировать устройства.
- Вот как это делается:</para>
+ <para>Обычным пользователям можно позволить монтировать устройства.
+ Вот как это делается:</para>
- <procedure>
- <step>
- <para>Работая пользователем <username>root</username>, назначьте
- соответствующие права на устройства с поблочным доступом,
- которые соответствуют сменным носителям.</para>
+ <procedure>
+ <step>
+ <para>Работая пользователем <username>root</username>, назначьте
+ соответствующие права на устройства с поблочным доступом,
+ которые соответствуют сменным носителям.</para>
- <para>Например, чтобы позволить пользователям монтировать дискеты
- в первом дисководе, воспользуйтесь командой</para>
+ <para>Например, чтобы позволить пользователям монтировать дискеты
+ в первом дисководе, воспользуйтесь командой</para>
- <screen>&prompt.root; <userinput>chmod 777 /dev/fd0</userinput></screen>
- </step>
+ <screen>&prompt.root; <userinput>chmod 777 /dev/fd0</userinput></screen>
+ </step>
- <step>
- <para>Как пользователь <username>root</username>, установите
- значение sysctl-переменной <varname>vfs.usermount</varname> в
- значение <literal>1</literal>.</para>
+ <step>
+ <para>Как пользователь <username>root</username>, установите
+ значение sysctl-переменной <varname>vfs.usermount</varname> в
+ значение <literal>1</literal>.</para>
- <screen>&prompt.root; <userinput>sysctl -w vfs.usermount=1</userinput></screen>
- </step>
- </procedure>
+ <screen>
+&prompt.root; <userinput>sysctl -w vfs.usermount=1</userinput>
+ </screen>
+ </step>
+ </procedure>
- <para>Теперь пользователи смогут смонтировать
- <filename>/dev/fd0</filename> в свои каталоги:</para>
+ <para>Теперь пользователи смогут смонтировать <filename>/dev/fd0</filename> в
+ свои каталоги:</para>
- <screen>&prompt.user; <userinput> mkdir ~/my-mount-point</userinput>
-&prompt.user; <userinput> mount -t msdos /dev/fd0 ~/my-mount-point</userinput></screen>
+ <screen>
+&prompt.user; <userinput> mkdir ~/my-mount-point</userinput>
+&prompt.user; <userinput> mount -t msdos /dev/fd0 ~/my-mount-point</userinput>
+ </screen>
- <para>Размонтировка устройства осуществляется просто:</para>
+ <para>Размонтировка устройства осуществляется просто:</para>
- <screen>&prompt.user; <userinput>umount <filename>~/my-mount-point</filename></userinput></screen>
+ <screen>
+&prompt.user; <userinput>umount <filename>~/my-mount-point</filename></userinput>
+ </screen>
- <para>
- Использование <varname>vfs.usermount</varname>, однако, имеет
- некоторые негативные стороны, связанные с вопросами безопасности.
- Более правильным способом работы с носителями в формате MSDOS
- является использование <ulink
- url="http://www.FreeBSD.org/cgi/ports.cgi?query=%5Emtools-&amp;stype=name">mtools</ulink>
- из коллекции портов.
- </para>
- </answer>
- </qandaentry>
+ <para>Использование <varname>vfs.usermount</varname>, однако, имеет
+ некоторые негативные стороны, связанные с вопросами безопасности.
+ Более правильным способом работы с носителями в формате MSDOS
+ является использование <ulink
+ URL="http://www.FreeBSD.org/cgi/ports.cgi?query=%5Emtools-&amp;stype=name">
+ mtools</ulink> из коллекции портов.</para>
+ </answer>
+</qandaentry>
</qandaset>
</chapter>
-
+
<chapter
id="x">
@@ -6032,44 +6449,43 @@ id="x">
</question>
<answer>
- <para>Если вы используете syscons (стандартный драйвер консоли), то можете
- настроить поддержку указателя мыши во всех виртуальных экранах. Во
- избежание конфликтов с X, драйвер syscons поддерживает виртуальное
- устройство ``<filename>/dev/sysmouse</filename>''. Все события,
- получаемые от реальной мыши, пишутся в устройство sysmouse через moused.
- Если вы хотите использовать вашу мышь на одной или нескольких виртуальных
- консолях, <emphasis remap=bf>продолжая</emphasis> использовать X,
- посмотрите <xref linkend="moused" remap="другой раздел"> и настройте
- moused.</para>
- <para>Затем отредактируйте <filename>/etc/XF86Config</filename> так, чтобы
- в нём были следующие строки.</para>
+ <para>Если вы используете syscons (стандартный драйвер консоли), то можете
+ настроить поддержку указателя мыши во всех виртуальных экранах. Во
+ избежание конфликтов с X, драйвер syscons поддерживает виртуальное
+ устройство <filename>/dev/sysmouse</filename>. Все события,
+ получаемые от реальной мыши, пишутся в устройство sysmouse через moused.
+ Если вы хотите использовать вашу мышь на одной или нескольких виртуальных
+ консолях, <emphasis remap=bf>продолжая</emphasis> использовать X,
+ посмотрите <xref linkend="moused" remap="другой раздел"> и настройте
+ moused.</para>
+
+ <para>Затем отредактируйте <filename>/etc/XF86Config</filename> так, чтобы
+ в нём были следующие строки.</para>
- <programlisting>
+ <programlisting>
Section Pointer
Protocol "SysMouse"
Device "/dev/sysmouse"
.....
- </programlisting>
+ </programlisting>
- <para>Пример выше предназначен для XFree86 3.3.2 и выше. Для более ранних
- версий параметр <emphasis>Protocol</emphasis> должен быть
- <emphasis>MouseSystems</emphasis>.</para>
-
- <para>Некоторые предпочитают использовать в X устройство
- ``<filename>/dev/mouse</filename>''. Чтобы оно работало, файл устройства
- должен являться ссылкой на <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?sysmouse">
- /dev/sysmouse</ulink>:</para>
-
- <para>
- <literallayout>
- # cd /dev
- # rm -f mouse
- # ln -s sysmouse mouse
- </literallayout>
- </para>
+ <para>Пример выше предназначен для XFree86 3.3.2 и выше. Для более ранних
+ версий параметр <emphasis>Protocol</emphasis> должен быть
+ <emphasis>MouseSystems</emphasis>.</para>
+ <para>Некоторые предпочитают использовать в X устройство
+ <filename>/dev/mouse</filename>. Чтобы оно работало, файл устройства
+ <filename>/dev/mouse</filename> должен являться ссылкой на <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?sysmouse">
+ /dev/sysmouse</ulink>:</para>
+
+ <screen>
+&prompt.root; <userinput>cd /dev</userinput>
+&prompt.root; <userinput>rm -f mouse</userinput>
+&prompt.root; <userinput>ln -s sysmouse mouse</userinput>
+ </screen>
+
</answer>
</qandaentry>
@@ -6270,190 +6686,179 @@ id="x">
</orderedlist>
</answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Меню и диалоговые окна в X Window работают неправильно!</para>
+ </question>
+
+ <answer>
+ <para>Попробуйте выключить Num Lock.</para>
+
+ <para>Если клавиша Num Lock во время загрузки по умолчанию включена,
+ добавьте в секцию <literal>Keyboard</literal>
+ файла <filename>XF86Config</filename> следующую строку.</para>
+
+ <programlisting>
+# Let the server do the NumLock processing. This should only be
+# required when using pre-R6 clients
+ ServerNumLock
+ </programlisting>
+
+ </answer>
</qandaentry>
-<qandaentry><question>
-<para> Меню и диалоговые окна в X Window работают неправильно!
- </para></question><answer>
+<qandaentry>
+ <question>
+ <para>Что такое виртуальные консоли и как изменить их количество?</para>
+ </question>
-<para>Попробуйте выключить Num Lock.</para>
-
+ <answer>
-
-<para>Если клавиша Num Lock во время загрузки по умолчанию включена,
- добавьте в секцию ``<emphasis remap=tt>Keyboard</emphasis>'' файла <emphasis remap=tt>XF86Config</emphasis> следующую
- строку.</para>
-
-<para>
-<literallayout> # Let the server do the NumLock processing. This should only be
- # required when using pre-R6 clients
- ServerNumLock
- </literallayout>
-</para>
-
+ <para>Виртуальные консоли, упрощённо говоря, позволяют вам иметь
+ несколько одновременных сеансов работы с той же самой машиной без
+ установки какой бы то ни было сети или запуска X.</para>
-
-</answer></qandaentry>
+ <para>При запуске системы после вывода сообщений этапа загрузки на консоль
+ выдаётся приглашение на вход в систему. Вы можете ввести своё имя и пароль
+ и начать работать (или играть!) на первой виртуальной консоли.</para>
-<qandaentry><question>
-<para> Что такое виртуальные консоли и как изменить их количество?
- </para></question><answer>
+ <para>В какой-то момент вы можете захотеть запустить ещё одну сеанс,
+ скажем, чтобы заглянуть в документацию по программе, которую вы
+ запустили или для для чтения электронной почты во время ожидания
+ завершения передачи данных по FTP. Просто нажмите Alt-F2 (удерживая
+ клавишу Alt, нажмите F2) и вы обнаружите приглашение, ждущее вас на
+ второй <quote>виртуальной консоли</quote>! Когда захотите вернуться к
+ первоначальному сеансу, нажмите Alt-F1.</para>
-<para>Виртуальные консоли, упрощённо говоря, позволяют вам иметь
- несколько одновременных сеансов работы с той же самой машиной без
- установки какой бы то ни было сети или запуска X.</para>
-
+ <para>После инсталляции по умолчанию во FreeBSD задействованы три виртуальных
+ консоли (8 начиная с 3.3-RELEASE), а комбинации клавиш Alt-F1, Alt-F2 и
+ Alt-F3 служат для переключения между ними.</para>
-
-<para>При запуске системы после вывода сообщений этапа загрузки на консоль
- выдаётся приглашение на вход в систему. Вы можете ввести своё имя и
- пароль и начать работать (или играть!) на первой виртуальной консоли.</para>
-
-
-<para>В какой-то момент вы можете захотеть запустить ещё одну сеанс,
- скажем, чтобы заглянуть в документацию по программе, которую вы
- запустили или для для чтения электронной почты во время ожидания
- завершения передачи данных по FTP. Просто нажмите Alt-F2 (удерживая
- клавишу Alt, нажмите F2) и вы обнаружите приглашение, ждущее вас на
- второй ``виртуальной консоли''! Когда захотите вернуться к
- первоначальному сеансу, нажмите Alt-F1.</para>
-
-<para>После инсталляции по умолчанию во FreeBSD задействованы три виртуальных
- консоли (8 начиная с 3.3-RELEASE), а комбинации клавиш Alt-F1, Alt-F2 и
- Alt-F3 служат для переключения между ними.</para>
-
-<para> Чтобы увеличить количество консолей, отредактируйте файл <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ttys">/etc/ttys</ulink>,
- добавив туда записи для терминалов с именами от ``<emphasis remap=tt>ttyv4</emphasis>'' до
- ``<emphasis remap=tt>ttyvc</emphasis>'' после слов ``Virtual terminals'':</para>
-
-<para>
-<literallayout> # Edit the existing entry for ttyv3 in /etc/ttys and change
- # "off" to "on".
- ttyv3 "/usr/libexec/getty Pc" cons25 on secure
- ttyv4 "/usr/libexec/getty Pc" cons25 on secure
- ttyv5 "/usr/libexec/getty Pc" cons25 on secure
- ttyv6 "/usr/libexec/getty Pc" cons25 on secure
- ttyv7 "/usr/libexec/getty Pc" cons25 on secure
- ttyv8 "/usr/libexec/getty Pc" cons25 on secure
- ttyv9 "/usr/libexec/getty Pc" cons25 on secure
- ttyva "/usr/libexec/getty Pc" cons25 on secure
- ttyvb "/usr/libexec/getty Pc" cons25 on secure
- </literallayout>
-</para>
-
+ <para>Чтобы увеличить количество консолей, отредактируйте файл <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?ttys">/etc/ttys</ulink>, добавив
+ туда записи для терминалов с именами от <devicename>ttyv4</devicename> до
+ <devicename>ttyvc</devicename> после слов <quote>Virtual
+ terminals</quote>:</para>
-
-<para>Используйте из них столько, сколько посчитаете нужным. Чем больше
- виртуальных терминалов у вас имеется, тем больше ресурсов они
- используют; это может иметь значение, если у вас меньше чем 8МБ ОЗУ.
- Вы можете сменить статус консолей с ``<emphasis remap=tt>secure</emphasis>'' на
- ``<emphasis remap=tt>insecure</emphasis>''.</para>
-
+ <programlisting>
+# Edit the existing entry for ttyv3 in /etc/ttys and change
+# "off" to "on".
+ttyv3 "/usr/libexec/getty Pc" cons25 on secure
+ttyv4 "/usr/libexec/getty Pc" cons25 on secure
+ttyv5 "/usr/libexec/getty Pc" cons25 on secure
+ttyv6 "/usr/libexec/getty Pc" cons25 on secure
+ttyv7 "/usr/libexec/getty Pc" cons25 on secure
+ttyv8 "/usr/libexec/getty Pc" cons25 on secure
+ttyv9 "/usr/libexec/getty Pc" cons25 on secure
+ttyva "/usr/libexec/getty Pc" cons25 on secure
+ttyvb "/usr/libexec/getty Pc" cons25 on secure
+ </programlisting>
-
-<para><emphasis remap=bf>ВАЖНОЕ ЗАМЕЧАНИЕ</emphasis> если вы хотите запустить X, вы <emphasis remap=bf>ДОЛЖНЫ</emphasis>
- оставить для него по крайней мере один неиспользуемый (или
- выключенный) виртуальный терминал. Таким образов, если вы хотите
- иметь приглашения login на всех двенадцати функциональнык клавиши,
- то вам не повезло - вы можете это сделать только для одиннадцати из
- них, если хотите на этой же машине ещё запустить X-сервер.</para>
-
+ <para>Используйте из них столько, сколько посчитаете нужным. Чем больше
+ виртуальных терминалов у вас имеется, тем больше ресурсов они
+ используют; это может иметь значение, если у вас меньше чем 8МБ ОЗУ.
+ Вы можете сменить статус консолей с <literal>secure</literal> на
+ <literal>insecure</literal>.</para>
-
-<para>Самым простым способом убрать консоль является просто её
- выключение. Например, если вы запустили на всех 12 консолях
- виртуальные терминалы, как указано выше, и ещё хотите запустить X, то
- должны будете изменить параметры двенадцатого виртуального
- терминала с:</para>
-
-<para>
-<literallayout> ttyvb "/usr/libexec/getty Pc" cons25 on secure
- </literallayout>
-</para>
-
+ <para>
+ <important>
+ <para>Если вы хотите запустить X, вы <emphasis>ДОЛЖНЫ</emphasis>
+ оставить для него по крайней мере один неиспользуемый (или
+ выключенный) виртуальный терминал. Таким образов, если вы хотите
+ иметь приглашения login на всех двенадцати функциональнык клавиши,
+ то вам не повезло - вы можете это сделать только для одиннадцати из
+ них, если хотите на этой же машине ещё запустить X-сервер.</para>
+ </important>
+ </para>
-
-<para>на:</para>
-
-<para>
-<literallayout> ttyvb "/usr/libexec/getty Pc" cons25 off secure
- </literallayout>
-</para>
-
+ <para>Самым простым способом убрать консоль является просто её
+ выключение. Например, если вы запустили на всех 12 консолях
+ виртуальные терминалы, как указано выше, и ещё хотите запустить X, то
+ должны будете изменить параметры двенадцатого виртуального
+ терминала с:</para>
-
-<para>Если на вашей клавиатуре только десять функциональных клавиш,
- то последние строки будут выглядеть так:</para>
-
-<para>
-<literallayout> ttyv9 "/usr/libexec/getty Pc" cons25 off secure
- ttyva "/usr/libexec/getty Pc" cons25 off secure
- ttyvb "/usr/libexec/getty Pc" cons25 off secure
- </literallayout>
-</para>
-
+ <programlisting>
+ttyvb "/usr/libexec/getty Pc" cons25 on secure
+ </programlisting>
-
-<para>(Вы также можете просто их удалить.)</para>
-
+ <para>на:</para>
-
-<para>После того, как вы отредактировали файл <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ttys">/etc/ttys</ulink>,
- проверьте, что у вас имеется достаточное количество устройств для
- виртуальных терминалов. Самый простой способ сделать это:</para>
-
-<para>
-<literallayout> # cd /dev
- # ./MAKEDEV vty12 # For 12 devices
- </literallayout>
-</para>
-
+ <programlisting>
+ttyvb "/usr/libexec/getty Pc" cons25 off secure
+ </programlisting>
-
-<para>Самым простым (и надёжным) способом активировать виртуальные
- консоли является перезагрузка. Однако если вы вовсе не хотите этого
- делать, просто остановите X Window System и выполните (как
- администратор):</para>
-
-<para>
-<literallayout> kill -HUP 1
- </literallayout>
-</para>
-
+ <para>Если на вашей клавиатуре только десять функциональных клавиш,
+ то последние строки будут выглядеть так:</para>
-
-<para>При этом требуется, чтобы вы полностью закрыли X Window, если она
- была запущена, до запуска этой команды. Если вы это не сделаете,
- ваша система может повиснуть/заблокироваться после выполнения команды
- kill.</para>
-
+ <programlisting>
+ttyv9 "/usr/libexec/getty Pc" cons25 off secure
+ttyva "/usr/libexec/getty Pc" cons25 off secure
+ttyvb "/usr/libexec/getty Pc" cons25 off secure
+ </programlisting>
-
-</answer></qandaentry>
+ <para>(Вы также можете просто их удалить.)</para>
-<qandaentry><question>
-<para> Как осуществляется доступ к виртуальным консолям из X?
- </para></question><answer>
+ <para>После того, как вы отредактировали файл <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?ttys">/etc/ttys</ulink>,
+ проверьте, что у вас имеется достаточное количество устройств для
+ виртуальных терминалов. Самый простой способ сделать это:</para>
-<para>Если на консоли запущена X Window, вы можете использовать
- комбинации клавиш, подобные Ctrl-Alt-F1, для переключения в режим
- работы с виртуальной консолью. Заметьте, однако, что как только вы
- переключитесь из X Window в виртуальный терминал, вы можете
- использовать только Alt- клавиши для переключения в другой
- виртуальный терминал или снова в X Window. Вам не нужно ещё нажимать
- клавишу Ctrl. Если вы используете клавишу Ctrl при переключении в X,
- то в старых релизах вы может обнаружить, что ваша текстовая консоль
- осталась в режиме ``заблокированного control''. Нажмите эту клавишу
- ещё раз.</para>
-
+ <screen>
+&prompt.root; <userinput>cd /dev</userinput>
+&prompt.root; <userinput>sh MAKEDEV vty12</userinput>
+ </screen>
-
-</answer></qandaentry>
+ <para>Самым простым (и надёжным) способом активировать виртуальные
+ консоли является перезагрузка. Однако если вы вовсе не хотите этого
+ делать, просто остановите X Window System и выполните (как
+ пользователь <username>root</username>):</para>
-<qandaentry><question>
-<para>Как запустить XDM во время загрузки?</para></question><answer>
+ <screen>
+&prompt.root; <userinput>kill -HUP 1</userinput>
+ </screen>
+
+ <para>При этом требуется, чтобы вы полностью закрыли X Window, если она
+ была запущена, до запуска этой команды. Если вы это не сделаете,
+ ваша система может повиснуть/заблокироваться после выполнения команды
+ kill.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Как осуществляется доступ к виртуальным консолям из X?</para>
+ </question>
+
+ <answer>
+
+ <para>Если на консоли запущена X Window, вы можете использовать
+ комбинации клавиш, подобные Ctrl-Alt-F1, для переключения в режим
+ работы с виртуальной консолью. Заметьте, однако, что как только вы
+ переключитесь из X Window в виртуальный терминал, вы можете
+ использовать только Alt- клавиши для переключения в другой
+ виртуальный терминал или снова в X Window. Вам не нужно ещё нажимать
+ клавишу Ctrl. Если вы используете клавишу Ctrl при переключении в X,
+ то в старых релизах вы может обнаружить, что ваша текстовая консоль
+ осталась в режиме <quote>заблокированного control</quote>. Нажмите эту
+ клавишу ещё раз.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Как запустить XDM во время загрузки?</para>
+ </question>
+
+ <answer>
<para>Есть две философские школы, проповедующие различные методы запуска
<ulink
@@ -6468,156 +6873,159 @@ id="x">
наоборот. В обоих случая результат один и тот же: X выводит
графическое приглашение login:.</para>
-<para>Плюсом метода с использованием ttys является документрование того,
- на каком vty будет запущен X и то, что ответственность за перезапуск
- X-сервера при завершении сеанса работы лежит на процессе init. Метод
- с использованием rc.local позволяет просто прекратить работу xdm, если
- при запуске X возникли какие-нибудь проблемы.</para>
-
-<para>Из rc.local <emphasis remap=tt>xdm</emphasis> должен быть запущен без
- аргументов, (то есть как даемон). xdm должен быть запущен ПОСЛЕ запуска
- getty, иначе они будут конфликтовать, блокируя консоль. Лучше всего
- выдержать паузу секунд на 10 и потом запустить xdm.</para>
-
- <para>Если <command>xdm</command> запускается из
- <filename>/etc/ttys</filename>, то есть вероятность конфликта между
- <command>xdm</command> и <command>getty</command>. Одним из способов
- избежать этого является добавление номера <literal>vt</literal> в файл
- <filename>/usr/X11R6/lib/X11/xdm/Xservers</filename>.</para>
+ <para>Плюсом метода с использованием ttys является документрование того,
+ на каком vty будет запущен X и то, что ответственность за перезапуск
+ X-сервера при завершении сеанса работы лежит на процессе init. Метод
+ с использованием rc.local позволяет просто прекратить работу xdm, если
+ при запуске X возникли какие-нибудь проблемы.</para>
- <programlisting>
- :0 local /usr/X11R6/bin/X vt4
- </programlisting>
+ <para>Из rc.local <command>xdm</command> должен быть запущен без
+ аргументов, (то есть как даемон). xdm должен быть запущен ПОСЛЕ запуска
+ getty, иначе они будут конфликтовать, блокируя консоль. Лучше всего
+ выдержать паузу секунд на 10 и потом запустить xdm.</para>
- <para>В вышеприведённом случае X-серверу указывается работать на
- <filename>/dev/ttyv3</filename>. Заметьте, что номера отличаются на
- единицу. Дело в том, что X-сервер считает vty от единицы, когда как
- отсчёт vty в ядре FreeBSD ведётся с нуля.</para>
+ <para>Если <command>xdm</command> запускается из
+ <filename>/etc/ttys</filename>, то есть вероятность конфликта между
+ <command>xdm</command> и <command>getty</command>. Одним из способов
+ избежать этого является добавление номера <literal>vt</literal> в файл
+ <filename>/usr/X11R6/lib/X11/xdm/Xservers</filename>.</para>
+
+ <programlisting>
+:0 local /usr/X11R6/bin/X vt4
+ </programlisting>
+
+ <para>В вышеприведённом случае X-серверу указывается работать на
+ <filename>/dev/ttyv3</filename>. Заметьте, что номера отличаются на
+ единицу. Дело в том, что X-сервер считает vty от единицы, когда как
+ отсчёт vty в ядре FreeBSD ведётся с нуля.</para>
</answer>
</qandaentry>
-<qandaentry><question>
-<para> При запуске xconsole выдаётся сообщение ``Couldn't open console''.
- </para></question><answer>
+<qandaentry>
+ <question>
+ <para>При запуске xconsole выдаётся сообщение <literal>Couldn't open
+ console</literal>.</para>
+ </question>
-<para>Если вы запускаете <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?manpath=xfree86&amp;query=X">X</ulink> через скрипт <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?manpath=xfree86&amp;query=startx">startx</ulink>, права на устройство /dev/console <emphasis remap=tt>не</emphasis> изменяются,
- поэтому такие команды, как <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?manpath=xfree86&amp;query=xterm">xterm -C</ulink> и <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?manpath=xfree86&amp;query=xconsole">xconsole</ulink>, не будут работать.</para>
-
+ <answer>
-
-<para>Это зависит от прав доступа, установленных для консоли по умолчанию.
- В многопользовательской системе вовсе не нужно, чтобы любой
- пользователь мог выводить информацию на системную консоль. Для
- пользователей, вошедших в систему через VTY, для решения этой проблемы
- существует файл <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?fbtab">fbtab</ulink>.</para>
-
+ <para>Если вы запускаете <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?manpath=xfree86&amp;query=X">
+ X</ulink> через скрипт <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?manpath=xfree86&amp;query=startx">
+ startx</ulink>, права на устройство <filename>/dev/console</filename>
+ <emphasis remap=tt>не</emphasis> изменяются, поэтому такие команды, как
+ <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?manpath=xfree86&amp;query=xterm">
+ xterm -C</ulink> и <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?manpath=xfree86&amp;query=xconsole">
+ xconsole</ulink>, не будут работать.</para>
-
-<para>В общем, раскомментируйте строчку вида</para>
-
-<para>
-<literallayout> /dev/ttyv0 0600 /dev/console
- </literallayout>
-</para>
-
+ <para>Это зависит от прав доступа, установленных для консоли по умолчанию.
+ В многопользовательской системе вовсе не нужно, чтобы любой
+ пользователь мог выводить информацию на системную консоль. Для
+ пользователей, вошедших в систему через VTY, для решения этой проблемы
+ существует файл <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?fbtab">
+ fbtab</ulink>.</para>
-
-<para>в файле <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?fbtab(5)">/etc/fbtab</ulink>, и этого будет достаточно для того, чтобы всякий,
- кто вошёл в систему с <filename>/dev/ttyv0</filename>, будет иметь доступ к
- консоли.</para>
-
+ <para>В общем, раскомментируйте строчку вида</para>
-
-</answer></qandaentry>
+ <programlisting>
+/dev/ttyv0 0600 /dev/console
+ </programlisting>
-<qandaentry><question>
-<para>Моя мышь PS/2 в X работает неправильно.</para></question><answer>
+ <para>в файле <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?fbtab(5)">/etc/fbtab</ulink>, и
+ этого будет достаточно для того, чтобы всякий,
+ кто вошёл в систему с <filename>/dev/ttyv0</filename>, будет иметь доступ к
+ консоли.</para>
-<para>Вполне может быть, что ваша мышь и её драйвер
- рассинхронизировались.</para>
-
+ </answer>
+</qandaentry>
-
-<para>В версиях 2.2.5 и более ранних это может произойти при переключении
- из X в виртуальный терминал и последующем возвращении в X. Если эта
- проблема возникает достаточно часто, попробуйте добавить следующую
- строку в файл конфигурации ядра и перекомпилировать его.</para>
-
-<para>
-<literallayout> options PSM_CHECKSYNC
- </literallayout>
-</para>
-<para>Если у вас нет опыта перекомпиляции ядра, обратитесь к <link
- linkend="make-kernel">соответствующему разделу</link>.</para>
-
-<para>С этой опцией проблем с синхронизацией мыши и её драйвера должно
- быть меньше. Если, однако, эта проблема всё же осталась, щёлкните
- любой кнопкой мыши, не двигая ей, что заставит мышь и драйвер сделать
- попытку синхронизироваться.</para>
+<qandaentry>
+ <question>
+ <para>Моя мышь PS/2 в X работает неправильно.</para>
+ </question>
+
+ <answer>
+
+ <para>Вполне может быть, что ваша мышь и её драйвер
+ рассинхронизировались.</para>
+
+ <para>В версиях 2.2.5 и более ранних это может произойти при переключении
+ из X в виртуальный терминал и последующем возвращении в X. Если эта
+ проблема возникает достаточно часто, попробуйте добавить следующую
+ строку в файл конфигурации ядра и перекомпилировать его.</para>
+
+ <programlisting>
+options PSM_CHECKSYNC
+ </programlisting>
+
+ <para>Если у вас нет опыта перекомпиляции ядра, обратитесь к <link
+ linkend="make-kernel">соответствующему разделу</link>.</para>
-<para>Заметьте, что в некоторых системах эта опция может не работать и
- приводить к отключению функции ``tap'' устройства ALPS GlidePoint,
- подключенного к порту мыши PS/2.</para>
-
+ <para>С этой опцией проблем с синхронизацией мыши и её драйвера должно
+ быть меньше. Если, однако, эта проблема всё же осталась, щёлкните
+ любой кнопкой мыши, не двигая ей, что заставит мышь и драйвер сделать
+ попытку синхронизироваться.</para>
-
-<para>В версиях 2.2.6 и выше, проверка синхронизации сделана гораздо лучше
- и включена в стандартный драйвер мыши PS/2. Она должна работать даже с
- GlidePort. (Так как код проверки стал стандартной функцией, опция
- PSM_CHECKSYNC в этих версиях нежоступна.) Однако в редких случаях
- драйвер может ошибочно обнаруживать проблемы с синхронизацией, и вы
- будете видеть такие сообщения ядра:</para>
-
-<para>
-<literallayout> psmintr: out of sync (xxxx != yyyy)
- </literallayout>
-</para>
-
-<para> а также обнаружите, что мышь теперь работает неправильно.</para>
-
+ <para>Заметьте, что в некоторых системах эта опция может не работать и
+ приводить к отключению функции <quote>tap</quote> устройства ALPS
+ GlidePoint, подключенного к порту мыши PS/2.</para>
-
-<para>Если это случится, отмените проверку согласования, установив
- значение флага для драйвера мыши PS/2 в 0x100. Войдите в конфигуратор
- <emphasis>UserConfig</emphasis>, задав опцию ``<option>-c</option>'' в приглашении
- загрузчика:</para>
-
-<para>
-<literallayout> boot: -c
- </literallayout>
-</para>
-
-<para> Затем в командной строке <emphasis>UserConfig</emphasis> наберите:</para>
-
-<para>
-<literallayout> UserConfig&gt; flags psm0 0x100
- UserConfig&gt; quit
- </literallayout>
-</para>
-
+ <para>В версиях 2.2.6 и выше, проверка синхронизации сделана гораздо лучше
+ и включена в стандартный драйвер мыши PS/2. Она должна работать даже с
+ GlidePort. (Так как код проверки стал стандартной функцией, опция
+ PSM_CHECKSYNC в этих версиях нежоступна.) Однако в редких случаях
+ драйвер может ошибочно обнаруживать проблемы с синхронизацией, и вы
+ будете видеть такие сообщения ядра:</para>
+
+ <programlisting>
+psmintr: out of sync (xxxx != yyyy)
+ </programlisting>
+
+ <para>а также обнаружите, что мышь теперь работает неправильно.</para>
+
+ <para>Если это случится, отмените проверку согласования, установив
+ значение флага для драйвера мыши PS/2 в 0x100. Войдите в конфигуратор
+ <emphasis>UserConfig</emphasis>, задав опцию <option>-c</option> в
+ приглашении загрузчика:</para>
+
+ <screen>
+boot: <userinput>-c</userinput>
+ </screen>
+
+ <para>Затем в командной строке <emphasis>UserConfig</emphasis>
+ наберите:</para>
+
+ <screen>
+UserConfig&gt; <userinput>flags psm0 0x100</userinput>
+UserConfig&gt; <userinput>quit</userinput>
+ </screen>
+
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question>
<para>Моя мышь PS/2 от MouseSystems похоже, не работает.</para></question><answer>
-<para>Было несколько сообщений, что некоторые модели мышей PS/2 от
- MouseSystems работают только в режиме ``высокого разрешения''. В
- других режимах курсор мыши постоянно прыгает в верхний левый угол
- экрана.</para>
-
+ <para>Было несколько сообщений, что некоторые модели мышей PS/2 от
+ MouseSystems работают только в режиме <quote>высокого разрешения</quote>.
+ В других режимах курсор мыши постоянно прыгает в верхний левый угол
+ экрана.</para>
+
<para>К сожалению, для версий 2.0.X и 2.1.X решения этой проблемы не
существует. Для версий от 2.2 до 2.2.5 приложите следующий патч к файлу
<filename>/sys/i386/isa/psm.c</filename> и перестройте ядро. Если у вас
нет опыта перекомпиляции ядра, обратитесь к <link
linkend="make-kernel">соответствующему разделу</link>.</para>
-<para>
-<literallayout>diff -u psm.c.orig psm.c
+ <programlisting>
@@ -766,6 +766,8 @@
if (verbose &gt;= 2)
log(LOG_DEBUG, "psm%d: SET_DEFAULTS return code:%04x\n",
@@ -6627,153 +7035,156 @@ id="x">
#if 0
set_mouse_scaling(sc-&gt;kbdc); /* 1:1 scaling */
set_mouse_mode(sc-&gt;kbdc); /* stream mode */
- </literallayout>
-</para>
-
+ </programlisting>
-
-<para>Для версий 2.2.6 и выше укажите флаг 0x04 драйверу мыши PS/2
- для перевода её в режим высокого разрешения. Войдите в
- <emphasis>UserConfig</emphasis>, задав опцию ``<option>-c</option>'' в приглашении
- загрузчика:</para>
-
-<para>
-<literallayout> boot: -c
- </literallayout>
-</para>
-
-<para> Затем в командной строке <emphasis>UserConfig</emphasis> наберите:</para>
-
-<para>
-<literallayout> UserConfig&gt; flags psm0 0x04
- UserConfig&gt; quit
- </literallayout>
-</para>
-
+ <para>Для версий 2.2.6 и выше укажите флаг 0x04 драйверу мыши PS/2 для
+ перевода её в режим высокого разрешения. Войдите в
+ <emphasis>UserConfig</emphasis>, задав опцию <option>-c</option> в
+ приглашении загрузчика:</para>
-
-<para>В предыдущем разделе описана возможная причина проблем с мышью.</para>
-
-<para> </para>
-
-</answer></qandaentry>
+ <screen>
+boot: <userinput>-c</userinput>
+ </screen>
-<qandaentry><question>
-<para> При компиляции приложений для X <emphasis remap=tt>imake</emphasis> не может найти файл
- <filename>Imake.tmpl</filename>. Где он находится?
- </para></question><answer>
+ <para>Затем в командной строке <emphasis>UserConfig</emphasis>
+ наберите:</para>
-<para>Файл Imake.tmpl является частью пакета Imake, стандартного
- инструмента для построения X-приложений. Он, также как ещё несколько
- заголовочных файлов, требуемых для построения X-приложений, содержится
- в дистрибутиве программ X. Вы можете их проинсталлировать из sysinstall
- или взять из дистрибутива X. </para>
-
-</answer></qandaentry>
+ <screen>
+UserConfig&gt; <userinput>flags psm0 0x04</userinput>
+UserConfig&gt; <userinput>quit</userinput>
+ </screen>
-<qandaentry><question>
-<para>Как поменять местами кнопки мыши?</para></question><answer>
+ <para>В предыдущем разделе описана возможная причина проблем с мышью.</para>
-<para>Поместите команду <literal> xmodmap -e "pointer = 3 2 1"</literal> в
- один из ваших скриптов .xinitrc или .xsession.</para>
-
-</answer></qandaentry>
+ </answer>
+</qandaentry>
-<qandaentry><question>
-<para>Как установить экранную заставку и где такие заставки можно
- найти?</para></question><answer>
-
-<para>Перед самым выпуском релиза FreeBSD 3.1 в систему была добавлена
- возможность вывода &quot;заставки&quot; во время загрузки. На данный
- момент экраны заставок должны быть 256-цветными файлами формата BMP
- <filename>*.BMP</filename> или ZSoft PCX (<filename>*.PCX</filename>).
- Кроме того, они должны иметь разрешение 320x200 или меньше для работы со
- стандартными адаптерами VGA. Если вы включили поддержку VESA при компиляции
- ядра, то вы можете использовать экраны размером до 1024x768. Заметьте, что
- поддержка VESA требует указание опции <emphasis remap=tt>VM86</emphasis>
- при компиляции ядра. Реальная поддержка VESA может быть вкомпилирована в
- ядро при указании опции <acronym>VESA</acronym> либо загружена в виде
- kld-модуля ядра во время начальной загрузки.</para>
-
-<para>Чтобы использовать заставку, вам нужно изменить файлы, управляющие
- процессом загрузки FreeBSD. Формат этих файлов был изменён перед выпуском
- релиза FreeBSD 3.2, так что есть два способа загрузки экранных заставок:</para>
-<para>
-<itemizedlist>
+<qandaentry>
+ <question>
+ <para>При компиляции приложений для X программа <command>imake</command> не
+ может найти файл <filename>Imake.tmpl</filename>. Где он
+ находится?</para>
+ </question>
-<listitem>
-<para>FreeBSD 3.1</para>
+ <answer>
-<para>Первым делом нужно найти экранную заставку в формате BMP. Релиз 3.1
- поддерживает заставки только в формате Windows. После того, как вы
- нашли понравившуюся вам заставку, скопируйте её в файл
- <filename>/boot/splash.bmp</filename>. Затем вам нужно поместить в файл
- <filename>/boot/loader.rc</filename> следующие строки:</para>
+ <para>Файл Imake.tmpl является частью пакета Imake, стандартного
+ инструмента для построения X-приложений. Он, также как ещё несколько
+ заголовочных файлов, требуемых для построения X-приложений, содержится
+ в дистрибутиве программ X. Вы можете их проинсталлировать из sysinstall
+ или взять из дистрибутива X. </para>
-<para>
- <literallayout>
- load kernel
- load -t splash_image_data /boot/splash.bmp
- load splash_bmp
- autoboot
- </literallayout>
-</para>
-</listitem>
+ </answer>
+</qandaentry>
-<listitem>
-<para>FreeBSD 3.2+</para>
+<qandaentry>
+ <question>
+ <para>Как поменять местами кнопки мыши?</para>
+ </question>
-<para>Кроме поддержки заставок в формате PCX, FreeBSD 3.2 включает более гибкую
- систему конфигурации процесса загрузки. Если вы хотите, вы можете
- использовать метод, указанный выше для FreeBSD 3.1. Если же вы хотите
- использовать формат PCX, замените <symbol>splash_bmp</symbol> на
- <symbol>splash_pcx</symbol>. С другой стороны, если вы хотите
- использовать новую систему конфигурации процесса загрузки, вам нужно
- создать файл <filename>/boot/loader.rc</filename>, содержащий следующие
- строки:</para>
+ <answer>
-<para>
- <literallayout>
- include /boot/loader.4th
- start
- </literallayout>
-</para>
+ <para>Поместите команду <command>xmodmap -e "pointer = 3 2 1"</command> в
+ один из ваших скриптов .xinitrc или .xsession.</para>
-<para>и файл <filename>/boot/loader.conf</filename> со строками:</para>
+ </answer>
+</qandaentry>
-<para>
- <literallayout>
- splash_bmp_load="YES"
- bitmap_load="YES"
- </literallayout>
-</para>
-<para>Здесь предполагается, что в качестве заставки вы используете файл
- <filename>/boot/splash.bmp</filename>. Если вы используете PCX-файл,
- скопируйте его под именем <filename>/boot/splash.pcx</filename>, создайте
- файл <filename>/boot/loader.rc</filename>, как указано выше, и создайте
- файл <filename>/boot/loader.conf</filename>, который содержит
- следующее:</para>
+<qandaentry>
+ <question>
+ <para>Как установить экранную заставку и где такие заставки можно
+ найти?</para>
+ </question>
-<para>
- <literallayout>
- splash_pcx_load="YES"
- bitmap_load="YES"
- bitmap_name="/boot/splash.pcx"
- </literallayout>
-</para>
-</listitem>
+ <answer>
-</itemizedlist>
-</para>
+ <para>Перед самым выпуском релиза FreeBSD 3.1 в систему была добавлена
+ возможность вывода <quote>заставки</quote> во время загрузки. На данный
+ момент экраны заставок должны быть 256-цветными файлами формата BMP
+ <filename>*.BMP</filename> или ZSoft PCX (<filename>*.PCX</filename>).
+ Кроме того, они должны иметь разрешение 320x200 или меньше для работы со
+ стандартными адаптерами VGA. Если вы включили поддержку VESA при компиляции
+ ядра, то вы можете использовать экраны размером до 1024x768. Заметьте, что
+ поддержка VESA требует указание опции <literal>VM86</literal>
+ при компиляции ядра. Реальная поддержка VESA может быть вкомпилирована в
+ ядро при указании опции <literal>VESA</literal> либо загружена в виде
+ kld-модуля ядра во время начальной загрузки.</para>
+
+ <para>Чтобы использовать заставку, вам нужно изменить файлы, управляющие
+ процессом загрузки FreeBSD. Формат этих файлов был изменён перед выпуском
+ релиза FreeBSD 3.2, так что есть два способа загрузки экранных
+ заставок:</para>
-<para>Теперь всё, что вам нужно - это сама заставка. Поищите заставки в
- галерее по адресу <ulink
- URL="http://www.cslab.vt.edu/~jobaldwi/splash/">http://www.cslab.vt.edu/~jobaldwi/splash/</ulink>.</para>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>FreeBSD 3.1</para>
-</answer></qandaentry>
+ <para>Первым делом нужно найти экранную заставку в формате BMP. Релиз
+ 3.1 поддерживает заставки только в формате Windows. После того, как
+ вы нашли понравившуюся вам заставку, скопируйте её в файл
+ <filename>/boot/splash.bmp</filename>. Затем вам нужно поместить в
+ файл <filename>/boot/loader.rc</filename> следующие строки:</para>
+
+ <programlisting>
+load kernel
+load -t splash_image_data /boot/splash.bmp
+load splash_bmp
+autoboot
+ </programlisting>
+ </listitem>
+
+ <listitem>
+ <para>FreeBSD 3.2+</para>
+
+ <para>Кроме поддержки заставок в формате PCX, FreeBSD 3.2 включает
+ более гибкую систему конфигурации процесса загрузки. Если вы хотите,
+ вы можете использовать метод, указанный выше для FreeBSD 3.1. Если
+ же вы хотите использовать формат PCX, замените
+ <literal>splash_bmp</literal> на <literal>splash_pcx</literal>. С
+ другой стороны, если вы хотите использовать новую систему
+ конфигурации процесса загрузки, вам нужно создать файл
+ <filename>/boot/loader.rc</filename>, содержащий следующие
+ строки:</para>
+
+ <programlisting>
+include /boot/loader.4th
+start
+ </programlisting>
+
+ <para>и файл <filename>/boot/loader.conf</filename> со строками:</para>
+
+ <programlisting>
+splash_bmp_load="YES"
+bitmap_load="YES"
+ </programlisting>
+
+ <para>Здесь предполагается, что в качестве заставки вы используете файл
+ <filename>/boot/splash.bmp</filename>. Если вы используете PCX-файл,
+ скопируйте его под именем <filename>/boot/splash.pcx</filename>,
+ создайте файл <filename>/boot/loader.rc</filename>, как указано
+ выше, и создайте файл <filename>/boot/loader.conf</filename>, который
+ содержит следующее:</para>
+
+ <programlisting>
+splash_pcx_load="YES"
+bitmap_load="YES"
+bitmap_name="/boot/splash.pcx"
+ </programlisting>
+ </listitem>
+ </itemizedlist>
+ </para>
+
+ <para>Теперь всё, что вам нужно - это сама заставка. Поищите заставки в
+ галерее по адресу <ulink
+ URL="http://www.cslab.vt.edu/~jobaldwi/splash/">
+ http://www.cslab.vt.edu/~jobaldwi/splash/</ulink>.</para>
+
+ </answer>
+</qandaentry>
<qandaentry>
@@ -6787,7 +7198,7 @@ id="x">
<para>Да. Всё, что вам нужно сделать, это с помощью &man.xmodmap.1;
задать функции, которые вы хотите к этим клавишам привязать.</para>
- <para>Положим, что все клавиатуры &quot;Windows(tm)&quot; стандартны и
+ <para>Положим, что все клавиатуры <quote>Windows(tm)</quote> стандартны и
3 клавиши имеют следующие клавиатурные коды</para>
<itemizedlist>
@@ -6867,49 +7278,56 @@ id="x">
</chapter>
-<chapter
-id="networking">
+<chapter id="networking">
<title>Работа в сети</title>
-<qandaset><qandaentry><question>
-<para>Где можно найти информацию о ``бездисковой загрузке''?</para></question><answer>
+<qandaset>
+<qandaentry>
+ <question>
+ <para>Где можно найти информацию о <quote>бездисковой
+ загрузке</quote>?</para>
+ </question>
+
+ <answer>
+
+ <para><quote>Бездисковая загрузка</quote> означает, что машина с FreeBSD
+ загружается по сети и читает необходимые файлы с сервера, а не со своего
+ диска. Подробное описание есть в
+ <ulink URL="../../handbook/diskless.html">соответствующей главе</ulink>
+ Руководства.</para>
+
+ </answer>
+</qandaentry>
-<para>``Бездисковая загрузка'' означает, что машина с FreeBSD загружается
- по сети и читает необходимые файлы с сервера, а не со своего диска.
- Подробное описание есть в
- <ulink URL="../../handbook/diskless.html">соответствующей главе</ulink>
- Руководства.</para>
-
-</answer></qandaentry>
<qandaentry><question>
<para>Может ли машина с FreeBSD использоваться как маршрутизатор?
</para></question><answer>
-<para>Стандарты Internet и опыт практической работы не позволяют нам
- в FreeBSD держать маршрутизацию пакетов включенной по умолчанию. Вы,
- можете сделать это, изменив значение следующей переменной в файле
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?rc.conf">rc.conf</ulink> на <acronym>YES</acronym>:</para>
-
-<para>
-<literallayout> gateway_enable=YES # Set to YES if this host will be a gateway
- </literallayout>
-</para>
-
-<para>Этот параметр изменит значение
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?sysctl">системной переменной</ulink>
- <filename>net.inet.ip.forwarding</filename> на <emphasis remap=tt>1</emphasis>.</para>
-
-<para>Кроме того, в большинстве случаев вам будет необходимо запустить
- программу маршрутизации, для того, чтобы объявить о появлении нового
- маршрутизатора другим системам в вашей сети; FreeBSD поставляется со
- стандартной для BSD-систем программой маршрутизации <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?routed">routed</ulink>, в более
- сложных ситуациях вы можете попробовать <emphasis>GaTeD</emphasis>
- (доступный по адресу
- <ulink URL="http://www.gated.org/">http://www.gated.org </ulink>
- с <filename>ftp.gated.Merit.EDU</filename>), который
- поддерживает FreeBSD начиная с версии 3_5Alpha7.</para>
+ <para>Стандарты Internet и опыт практической работы не позволяют нам
+ в FreeBSD держать маршрутизацию пакетов включенной по умолчанию. Вы
+ можете сделать это, изменив значение следующей переменной в файле <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?rc.conf">rc.conf</ulink> на
+ <literal>YES</literal>:</para>
+
+ <programlisting>
+gateway_enable=YES # Set to YES if this host will be a gateway
+ </programlisting>
+
+ <para>Этот параметр изменит значение <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?sysctl">системной переменной</ulink>
+ <filename>net.inet.ip.forwarding</filename> на <literal>1</literal>.</para>
+
+ <para>Кроме того, в большинстве случаев вам будет необходимо запустить
+ программу маршрутизации, для того, чтобы объявить о появлении нового
+ маршрутизатора другим системам в вашей сети; FreeBSD поставляется со
+ стандартной для BSD-систем программой маршрутизации <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?routed">routed</ulink>, в более
+ сложных ситуациях вы можете попробовать <emphasis>GaTeD</emphasis>
+ (доступный по адресу
+ <ulink URL="http://www.gated.org/">http://www.gated.org </ulink>
+ с <filename>ftp.gated.Merit.EDU</filename>), который
+ поддерживает FreeBSD начиная с версии 3_5Alpha7.</para>
<para>Мы обязаны предупредить вас, что даже когда FreeBSD настроена
таким образом, она не полностью соответствует стандартам Internet
@@ -6917,59 +7335,71 @@ id="networking">
</answer></qandaentry>
-<qandaentry><question>
-<para> Можно ли подключить машину с Win95 к Internet с помощью FreeBSD?
- </para></question><answer>
-<para>Как правило, те, кто задает такие вопросы, имеют дома два компьютера,
- один с FreeBSD, а другой с Win95; идея состоит в использовании
- FreeBSD для подключения к Internet, а затем осуществлять выход в
- Internet из Windows95 через FreeBSD. На самом деле это просто
- особый случай предыдущего вопроса.</para>
-
+<qandaentry>
+ <question>
+ <para>Можно ли подключить машину с Win95 к Internet с помощью
+ FreeBSD?</para>
+ </question>
-
-<para>Существует полезный <ulink URL="http://www.ssimicro.com/~jeremyc/ppp.html">документ</ulink>,
- описывающий, как настроить FreeBSD в качестве маршрутизатора с выходом
- по протоколу PPP.</para>
-
+ <answer>
-
-<para><emphasis remap=bf>ЗАМЕЧАНИЕ:</emphasis> При этом требуется иметь по крайней мере два
- фиксированных IP адреса, а может быть, три или больше, в зависимости
- от того, сколько машин с Windows вы хотите подключить. Как вариант,
- если у вас нет фиксированных IP адресов, вы можете использовать
- одну из частных IP подсетей и установить <emphasis remap=bf>прокси</emphasis> типа
- <ulink URL="http://squid.nlanr.net/Squid/">SQUID</ulink> или
- <ulink URL="http://www.tis.com/">TIS</ulink> на машине с FreeBSD.</para>
-
-<para>Посмотрите также раздел о <link linkend="natd">natd</link>.</para>
+ <para>Как правило, те, кто задает такие вопросы, имеют дома два компьютера,
+ один с FreeBSD, а другой с Win95; идея состоит в использовании
+ FreeBSD для подключения к Internet, а затем осуществлять выход в
+ Internet из Windows95 через FreeBSD. На самом деле это просто
+ особый случай предыдущего вопроса.</para>
-</answer></qandaentry>
+ <para> ... и ответ на него - да! Во FreeBSD 3.x, ppp режима пользователя
+ имеет параметр <option>-nat</option>. Если вы запустите
+ <command>ppp</command> с параметром <option>-nat</option>, установив
+ в файле <filename>/etc/rc.conf</filename> <literal>gateway_enable</literal>
+ в значение <emphasis>YES</emphasis> и правильно настроите машину с Windows,
+ то всё должно прекрасно заработать.</para>
-<qandaentry><question>
-<para> Почему не проходит компиляция последней версии BIND от ISC?
- </para></question><answer>
+ <para>Более подробная информация о настройке может быть найдена в
+ <ulink URL="http://www.FreeBSD.org/tutorials/ppp/index.html">Подробном
+ Примере PPP</ulink> Стива Симса (Steve Sims).</para>
-<para>Это - результат конфликта между файлом ``<filename>cdefs.h</filename>'' в
- дистрибутиве и тем, что поставляется с FreeBSD. Достаточно
- удалить файл <filename>compat/include/sys/cdefs.h</filename>.</para>
-
+ <para>Если вы используете ppp режима ядра, или у вас Ethernet-подключение к
+ Internet, можно воспользоваться командой <command>natd</command>.
+ Пожалуйста, обратитесь к разделу о <link linkend="natd">natd</link> этого
+ FAQ.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Почему не проходит компиляция последней версии BIND от ISC?</para>
+ </question>
+
+ <answer>
+
+ <para>Это - результат конфликта между файлом <filename>cdefs.h</filename> в
+ дистрибутиве и тем, что поставляется с FreeBSD. Достаточно
+ удалить файл <filename>compat/include/sys/cdefs.h</filename>.</para>
+
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question>
<para>Поддерживает ли FreeBSD протоколы SLIP и PPP?</para></question><answer>
-<para>Да. Посмотрите страницы справочника по командам
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?slattach">slattach</ulink>, <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?sliplogin">sliplogin</ulink>,
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?pppd">pppd</ulink> и
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ppp">ppp</ulink>.
- <emphasis remap=tt>Pppd</emphasis> и <emphasis remap=tt>ppp</emphasis> могут обслуживать как входящие, так и исходящие
- соединения. <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?sliplogin">Sliplogin</ulink> имеет дело исключительно со входящими соединениям,
- а <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?slattach">slattach</ulink> - только с исходящими.</para>
-
+ <para>Да. Посмотрите страницы справочника по командам <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?slattach">slattach</ulink>, <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?sliplogin">sliplogin</ulink>,
+ <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?pppd">pppd</ulink> и
+ <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ppp">ppp</ulink>.
+ <command>Pppd</command> и <command>ppp</command> могут обслуживать как
+ входящие, так и исходящие соединения. <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?sliplogin">Sliplogin</ulink> имеет
+ дело исключительно со входящими соединениям,
+ а <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?slattach">slattach</ulink>
+ - только с исходящими.</para>
+
<para>Эти программы описаны в следующих разделах
<ulink URL="../../handbook/index.html">руководства</ulink>:</para>
@@ -7001,15 +7431,15 @@ id="networking">
</itemizedlist>
</para>
-
-
-<para>Если вы имеете доступ в Internet через командную строку
- оболочки, вам может подойти <ulink URL="http://www.FreeBSD.org/cgi/ports.cgi?^slirp">slirp</ulink>.
- С его помощью можно получить (ограниченный) доступ к таким
- службам, как ftp и http прямо с вашей машины.</para>
+ <para>Если вы имеете доступ в Internet через командную строку
+ оболочки, вам может подойти <ulink
+ URL="http://www.FreeBSD.org/cgi/ports.cgi?^slirp">slirp</ulink>.
+ С его помощью можно получить (ограниченный) доступ к таким
+ службам, как ftp и http прямо с вашей машины.</para>
-</answer></qandaentry>
+ </answer>
+</qandaentry>
<qandaentry>
@@ -7021,8 +7451,8 @@ id="networking">
<para>Если у вас есть локальная сеть (одна или больше машин), но только один
IP адрес, предоставленный провайдером, вас может привлечь <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?natd">natd</ulink>. <emphasis
- remap=tt>Natd</emphasis> позволяет подключить всю сеть к Internet,
+ URL="http://www.FreeBSD.org/cgi/man.cgi?natd">natd</ulink>.
+ <command>natd</command> позволяет подключить всю сеть к Internet,
используя единственный IP адрес.</para>
<para>Программа <ulink
@@ -7055,32 +7485,38 @@ id="networking">
<qandaentry><question>
<para>Как настроить алиас на Ethernet?</para></question><answer>
-<para>Добавьте ``<literal>netmask 0xffffffff</literal>'' в командной строке <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ifconfig">ifconfig</ulink>
- так, как это сделано здесь:</para>
-
-<para>
-<literallayout> ifconfig ed0 alias 204.141.95.2 netmask 0xffffffff
- </literallayout>
-</para>
-
+ <para>Добавьте <literal>netmask 0xffffffff</literal> в командной строке
+ <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ifconfig">ifconfig</ulink>
+ так, как это сделано здесь:</para>
-
-</answer></qandaentry>
+ <screen>
+&prompt.root; <userinput>ifconfig ed0 alias 204.141.95.2 netmask 0xffffffff</userinput>
+ </screen>
-<qandaentry><question>
-<para> Как заставить адаптер 3C503 использовать другой тип сетевого разъёма?
- </para></question><answer>
+ </answer>
+</qandaentry>
-<para>Если вы хотите задействовать другой разъём, то должны указать
- дополнительный параметр в командной строке
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ifconfig">ifconfig</ulink>. Разъёмом по умолчанию является ``<emphasis remap=tt>link0</emphasis>''.
- Чтобы задействовать разъём AUI, а не BNC, используйте ``<emphasis remap=tt>link2</emphasis>''.
- Эти флаги должны быть указаны с помощью переменных ifconfig_*
- в <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?rc.conf">/etc/rc.conf</ulink>.</para>
-
-
-</answer></qandaentry>
+<qandaentry>
+ <question>
+ <para>Как заставить адаптер 3C503 использовать другой тип сетевого
+ разъёма?</para>
+ </question>
+
+ <answer>
+
+ <para>Если вы хотите задействовать другой разъём, то должны указать
+ дополнительный параметр в командной строке <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?ifconfig">ifconfig</ulink>.
+ Разъёмом по умолчанию является <literal>link0</literal>. Чтобы
+ задействовать разъём AUI, а не BNC, используйте <literal>link2</literal>.
+ Эти флаги должны быть указаны с помощью переменных ifconfig_*
+ в <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?rc.conf">
+ /etc/rc.conf</ulink>.</para>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para>У меня проблемы при работе NFS во FreeBSD.</para></question><answer>
@@ -7097,324 +7533,303 @@ id="networking">
</answer></qandaentry>
-<qandaentry><question>
-<para>Почему я не могу смонтировать диск Linux по NFS?</para></question><answer>
-<para>Некоторые версии NFS для Linux поддерживают запросы на монтирование
+<qandaentry>
+ <question>
+ <para>Почему я не могу смонтировать диск Linux по NFS?</para>
+ </question>
+
+ <answer>
+
+ <para>Некоторые версии NFS для Linux поддерживают запросы на монтирование
только с привилегированного порта; попробуйте</para>
-
-<para>
-<literallayout> mount -o -P linuxbox:/blah /mnt
- </literallayout>
-</para>
-
-
-</answer></qandaentry>
+ <screen>
+&prompt.root; <userinput>mount -o -P linuxbox:/blah /mnt</userinput>
+ </screen>
-<qandaentry><question>
-<para>Почему я не могу смонтировать диск Sun по NFS?</para></question><answer>
+ </answer>
+</qandaentry>
-<para>Рабочие станции Sun под управлением SunOS 4.X поддерживают запросы
- на монтирование только с привилегированного порта; попробуйте</para>
-
-<para>
-<literallayout> mount -o -P sunbox:/blah /mnt
- </literallayout>
-</para>
-
-
-</answer></qandaentry>
+<qandaentry>
+ <question>
+ <para>Почему я не могу смонтировать диск Sun по NFS?</para>
+ </question>
+
+ <answer>
+
+ <para>Рабочие станции Sun под управлением SunOS 4.X поддерживают запросы
+ на монтирование только с привилегированного порта; попробуйте</para>
+
+ <screen>
+&prompt.root; <userinput>mount -o -P sunbox:/blah /mnt</userinput>
+ </screen>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para>Проблемы при связи по PPP с машинами NeXTStep.</para></question><answer>
<para>Попробуйте отменить все расширения TCP в <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?rc.conf">/etc/rc.conf</ulink>,
изменив значение следующей переменной в NO:</para>
-
-<para>
-<literallayout> tcp_extensions=NO
- </literallayout>
-</para>
-
-
-<para>Маршрутизаторы Annex фирмы Xylogic не работают по этой же причине,
- поэтому при подключении к ним вам нужно проделать то же самое.</para>
-
+ <programlisting>
+tcp_extensions=NO
+ </programlisting>
+
+ <para>Маршрутизаторы Annex фирмы Xylogic не работают по этой же причине,
+ поэтому при подключении к ним вам нужно проделать то же самое.</para>
-
</answer></qandaentry>
+
<qandaentry><question>
<para>Как включить поддержку multicast IP?</para></question><answer>
-<para>Работа с многоадресной рассылкой по умолчанию полностью
- поддерживается версиями FreeBSD 2.0 и выше. Если вы хотите использовать
- ваш компьютер как маршрутизатор многоадресного трафика, вам нужно
- перекомпилировать ядро с включенной опцией <acronym>MROUTING</acronym> и
- запустить <emphasis remap=tt>mrouted</emphasis>. Версии FreeBSD 2.2 и выше будут запускать
- <emphasis remap=tt>mrouted</emphasis> во время загрузки, если переменная <symbol>mrouted_enable</symbol>
- в файле <filename>/etc/rc.conf</filename> установлена в значение "YES".</para>
-
+ <para>Работа с многоадресной рассылкой по умолчанию полностью
+ поддерживается версиями FreeBSD 2.0 и выше. Если вы хотите использовать
+ ваш компьютер как маршрутизатор многоадресного трафика, вам нужно
+ перекомпилировать ядро с включенной опцией <literal>MROUTING</literal> и
+ запустить <command>mrouted</command>. Версии FreeBSD 2.2 и выше будут
+ запускать <command>mrouted</command> во время загрузки, если переменная
+ <literal>mrouted_enable</literal> в файле <filename>/etc/rc.conf</filename>
+ установлена в значение <literal>YES</literal>.</para>
-
-<para>Приложения MBONE находятся в своей категории портов, mbone. Если
- вы ищете приложения для организации конференций <emphasis remap=tt>vic</emphasis> и <emphasis remap=tt>vat</emphasis>,
- посмотрите там!</para>
-
+ <para>Приложения MBONE находятся в своей категории портов, mbone. Если
+ вы ищете приложения для организации конференций <command>vic</command> и
+ <command>vat</command>, посмотрите там!</para>
-
-<para>Более подробная информация располагается на сервере
- <ulink URL="http://www.mbone.com/">Mbone Information Web</ulink>.</para>
-
+ <para>Более подробная информация располагается на сервере
+ <ulink URL="http://www.mbone.com/">Mbone Information Web</ulink>.</para>
-
-</answer></qandaentry>
+ </answer>
+</qandaentry>
-<qandaentry><question>
-<para> Какие сетевые адаптеры сделаны на наборе микросхем DEC PCI?
- </para></question><answer>
-<para>Вот список, составленный <ulink URL="mailto:gfoster@driver.nsta.org">Гленом Фостером</ulink> (Glen Foster), с некоторыми незначительными
- добавлениями:</para>
-
-<para>
-<literallayout> Производитель Модель
- ----------------------------------------------
- ASUS PCI-L101-TB
- Accton ENI1203
- Cogent EM960PCI
- Compex ENET32-PCI
- D-Link DE-530
- Dayna DP1203, DP2100
- DEC DE435, DE450
- Danpex EN-9400P3
- JCIS Condor JC1260
- Linksys EtherPCI
- Mylex LNP101
- SMC EtherPower 10/100 (Model 9332)
- SMC EtherPower (Model 8432)
- TopWare TE-3500P
- Znyx (2.2.x) ZX312, ZX314, ZX342, ZX345, ZX346, ZX348
- (3.x) ZX345Q, ZX346Q, ZX348Q, ZX412Q, ZX414, ZX442,
- ZX444, ZX474, ZX478, ZX212, ZX214 (10mbps/hd)
- </literallayout>
-</para>
-
-</answer></qandaentry>
+<qandaentry>
+ <question>
+ <para>Какие сетевые адаптеры сделаны на наборе микросхем DEC PCI?</para>
+ </question>
+
+ <answer>
+
+ <para>Вот список, составленный <ulink
+ URL="mailto:gfoster@driver.nsta.org">Гленом Фостером</ulink> (Glen Foster),
+ с некоторыми незначительными добавлениями:</para>
+
+ <programlisting>
+Vendor Model
+----------------------------------------------
+ASUS PCI-L101-TB
+Accton ENI1203
+Cogent EM960PCI
+Compex ENET32-PCI
+D-Link DE-530
+Dayna DP1203, DP2100
+DEC DE435, DE450
+Danpex EN-9400P3
+JCIS Condor JC1260
+Linksys EtherPCI
+Mylex LNP101
+SMC EtherPower 10/100 (Model 9332)
+SMC EtherPower (Model 8432)
+TopWare TE-3500P
+Znyx (2.2.x) ZX312, ZX314, ZX342, ZX345, ZX346, ZX348
+ (3.x) ZX345Q, ZX346Q, ZX348Q, ZX412Q, ZX414, ZX442,
+ ZX444, ZX474, ZX478, ZX212, ZX214 (10mbps/hd)
+ </programlisting>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para> Почему я должен использовать FQDN для хостов не в моей сети?
</para></question><answer>
-<para>Вы, наверное, обнаружили, что хост, к которому вы обратились,
- оказался на самом деле в другом домене; например, если вы находитесь
- в домене foo.bar.edu и хотите обраттиться к хосту ``mumble'' в домене
- bar.edu, то должны указать его полное доменное имя, ``mumble.bar.edu'',
- а не просто ``mumble''.</para>
-
+ <para>Вы, наверное, обнаружили, что хост, к которому вы обратились,
+ оказался на самом деле в другом домене; например, если вы находитесь
+ в домене foo.bar.edu и хотите обратиться к хосту <hostid>mumble</hostid> в
+ домене <hostid role="domainname">bar.edu</hostid>, то должны указать его
+ полное доменное имя, <hostid role="fqdn">mumble.bar.edu</hostid>, а не
+ просто <hostid>mumble</hostid>.</para>
+
+ <para>Традиционно, это позволял делать ресолвер BSD BIND. Однако текущая
+ версия <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?named">bind</ulink>,
+ поставляемая с FreeBSD, больше не добавляет имена доменов, отличающихся от
+ того, в котором вы находитесь, для не полностью указанных имён хостов. Так
+ что неполно указанный хост <hostid>mumble</hostid> будет найден либо как
+ <hostid role="fqdn">mumble.foo.bar.edu</hostid>, либо будет искаться
+ в корневом домене.</para>
+
+ <para>Это отличается от предыдущего поведения, при котором поиск продолжался
+ в <hostid role="fqdn">mumble.bar.edu</hostid>
+ и <hostid role="domainname">mumble.edu</hostid>.
+ Посмотрите RFC 1535 о причинах объявления такого поведения плохой
+ практикой и даже ошибкой в безопасности.</para>
+
+ <para>Как хорошее решение, вы можете поместить строку</para>
-
-<para>Традиционно, это позволял делать ресолвер BSD BIND. Однако текущая
- версия <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?named">bind</ulink>,
- поставляемая с FreeBSD, больше не добавляет имена доменов,
- отличающихся от того, в котором вы находитесь, для не полностью
- указанных имён хостов. Так что неполно указанный хост <emphasis remap=tt>mumble</emphasis>
- будет найден либо как <filename>mumble.foo.bar.edu</filename>, либо будет искаться
- в корневом домене.</para>
-
+ <programlisting>
+search foo.bar.edu bar.edu
+ </programlisting>
-
-<para>Это отличается от предыдущего поведения, при котором поиск
- продолжался в <filename>mumble.bar.edu</filename>, и <filename>mumble.edu</filename>.
- Посмотрите RFC 1535 о причинах объявления такого поведения плохой
- практикой и даже ошибкой в безопасности.</para>
-
+ <para>вместо ранее используемой</para>
-
-<para>Как хорошее решение, вы можете поместить строку</para>
-
-<para>
-<literallayout> search foo.bar.edu bar.edu
- </literallayout>
-</para>
-
+ <programlisting>
+domain foo.bar.edu
+ </programlisting>
-
-<para>вместо ранее используемой</para>
-
-<para>
-<literallayout> domain foo.bar.edu
- </literallayout>
-</para>
-
+ <para>в файл <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?resolv.conf">
+ /etc/resolv.conf</ulink>. Однако удостоверьтесь, что порядок поиска не
+ нарушает <quote>границ полномочий между местным и внешним
+ администрированием</quote>, как это названо в RFC 1535.</para>
-
-<para>в файл <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?resolv.conf">/etc/resolv.conf</ulink>. Однако удостоверьтесь, что порядок поиска не
- нарушает ``границ полномочий между местным и внешним
- администрированием'', как это названо в RFC 1535.</para>
-
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
-<qandaentry><question>
-<para>``Permission denied'' для любых действий в сети.</para></question><answer>
+<qandaentry>
+ <question>
+ <para><literal>Permission denied</literal> для любых действий, связанных с
+ работой сети.</para>
+ </question>
-<para>Если вы компилировали ядро с опцией <acronym>IPFIREWALL</acronym>, имейте в
- виду, что политика по умолчанию настроена как в 2.1.7R (она
- на самом деле изменилась во время разработки 2.1-STABLE), то есть
- указан запрет на прохождение всех пакетов, которые явно не разрешены.</para>
-
+ <answer>
-
-<para>Если вы случайно неверно отконфигурировали брандмауэр, то для
- восстановления работоспособность сети дайте такую команду, войдя
- суперпользователем:</para>
-
-<para>
-<literallayout> ipfw add 65534 allow all from any to any
- </literallayout>
-</para>
-
+ <para>Если вы компилировали ядро с опцией <literal>IPFIREWALL</literal>,
+ имейте в виду, что политика по умолчанию настроена как в 2.1.7R (она
+ на самом деле изменилась во время разработки 2.1-STABLE), то есть указан
+ запрет на прохождение всех пакетов, которые явно не разрешены.</para>
-
-<para>Также вы можете установить "firewall_type='open'" в файле
- <filename>/etc/rc.conf</filename>.</para>
-
+ <para>Если вы случайно неверно отконфигурировали межсетевой экран, то для
+ восстановления работоспособность сети дайте такую команду, войдя
+ суперпользователем:</para>
-
-<para>Более подробная информация о конфигурировании брандмауэра в
- FreeBSD находится в <ulink URL="../../handbook/firewalls.html">соответствующем разделе</ulink> Руководства.</para>
-
+ <screen>
+&prompt.root; <userinput>ipfw add 65534 allow all from any to any</userinput>
+ </screen>
-
-</answer></qandaentry>
+ <para>Также вы можете установить <literal>firewall_type='open'</literal> в
+ файле <filename>/etc/rc.conf</filename>.</para>
-<qandaentry><question>
-<para>Какую нагрузку вызывает использование IPFW?</para></question><answer>
+ <para>Более подробная информация о конфигурировании межсетевого экрана в
+ FreeBSD находится в <ulink
+ URL="../../handbook/firewalls.html">соответствующем разделе</ulink>
+ Руководства.</para>
-<para>Ответ на этот вопрос зависит главным образом от набора правил
- и производительности процессора. Для большинства приложений, имеющих
- дело с ethernet и простым набором правил, ответ: незначительно. Для
- тех, кому нужны реальные цифры для удовлетвореия любопытства,
- читайте дальше.</para>
-
+ </answer>
+</qandaentry>
-
-<para>Следующие измерения были сделаны с использованием 2.2.5-STABLE на
- машине 486-66. IPFW был модифицирован для измерения времени,
- затрачиваемого внутри процедуры <symbol>ip_fw_chk</symbol> и вывода результатов
- на консоль каждую тысячу пакетов.</para>
-
-
-<para>Тестировались два набора по 1000 правил в каждом. Первый набор
- был предназначен для демонстрации наихудшего случая, повторяя условие</para>
-
-<para>
-<literallayout> ipfw add deny tcp from any to any 55555
- </literallayout>
-</para>
-
+<qandaentry>
+ <question>
+ <para>Какую нагрузку вызывает использование IPFW?</para>
+ </question>
-
-<para>Это наихудший случай, так как все условия IPFW будут проверены
- перед тем, как будет принято окончательное решение о том, что пакет
- не соответствует условию (мы меняли номер порта). После 999
- повторений этого условия находилось правило
- <emphasis remap=tt>allow ip from any to any</emphasis>.</para>
-
+ <answer>
-
-<para>Второй набор был предназначен для быстрого прерывания
- процесса проверки условий:</para>
-
-<para>
-<literallayout> ipfw add deny ip from 1.2.3.4 to 1.2.3.4
- </literallayout>
-</para>
-
+ <para>Ответ на этот вопрос зависит главным образом от набора правил
+ и производительности процессора. Для большинства приложений, имеющих
+ дело с ethernet и простым набором правил, ответ: незначительно. Для
+ тех, кому нужны реальные цифры для удовлетвореия любопытства,
+ читайте дальше.</para>
-
-<para>Неподходяший IP-адрес источника для указанного условия
- быстро вызывает пропуск этого правила. Как и ранее, последним правилом
- было <emphasis remap=tt>allow ip from any to any</emphasis>.</para>
-
+ <para>Следующие измерения были сделаны с использованием 2.2.5-STABLE на
+ машине 486-66. IPFW был модифицирован для измерения времени,
+ затрачиваемого внутри процедуры <literal>ip_fw_chk</literal> и вывода
+ результатов на консоль каждую тысячу пакетов.</para>
-
-<para>Затраты на обработку пакета в первом случае было примерно 2.703
- мс/пакет, или примерно 2.7 микросекунд на правило. Таким образом,
- теоретический предел скорости обработки пакетов с этими правилами
- равен примерно 370 пакетам в секунду. Предполагая использование
- ethernet 10Мб/с с размером пакета примерно 1500, мы можем достигнуть
- только 55.5% использования пропускной способности.</para>
-
+ <para>Тестировались два набора по 1000 правил в каждом. Первый набор был
+ предназначен для демонстрации наихудшего случая, повторяя условие</para>
-
-<para>В последнем случае на обработку каждого пакета было затрачено
- примерно 1.172мс, или около 1.2 микросекунд на правило. Теоретический
- предел обработки будет равен около 853 пакетам в секунду, что почти
- соответствует скорости 10Мб/с ethernet.</para>
-
+ <screen>
+&prompt.root; <userinput>ipfw add deny tcp from any to any 55555</userinput>
+ </screen>
-
-<para>Большое количество протестированных правил и природа этих правил
- не даёт представление о реальной жизни - они были использованы
- только для генерации информации о времени обработки. Вот
- несколько наблюдений, которые нужно иметь в виду для построении
- эффективного набора правил:</para>
-
-<para>
-<itemizedlist>
+ <para>Это наихудший случай, так как все условия IPFW будут проверены
+ перед тем, как будет принято окончательное решение о том, что пакет
+ не соответствует условию (мы меняли номер порта). После 999
+ повторений этого условия находилось правило
+ <literal>allow ip from any to any</literal>.</para>
-<listitem>
-<para>Поместите правило `established' в самое начало списка для
- обработки основного трафика TCP. Не помещайте перед ним никаких
- правил <emphasis remap=tt>allow tcp</emphasis>.
+ <para>Второй набор был предназначен для быстрого прерывания
+ процесса проверки условий:</para>
- </para>
-</listitem>
+ <screen>
+&prompt.root; <userinput>ipfw add deny ip from 1.2.3.4 to 1.2.3.4</userinput>
+ </screen>
-<listitem>
-<para>Старайтесь помещать часто вызываемые правила как можно раньше,
- а редко используемые - позже (<emphasis remap=bf>без изменения политики</emphasis>,
- конечно). Вы можете выяснить частоту использования правил с помощью
- вывода статистики командой <command>ipfw -a l</command>.
+ <para>Неподходяший IP-адрес источника для указанного условия
+ быстро вызывает пропуск этого правила. Как и ранее, последним правилом
+ было <literal>allow ip from any to any</literal>.</para>
- </para>
-</listitem>
+ <para>Затраты на обработку пакета в первом случае было примерно 2.703
+ мс/пакет, или примерно 2.7 микросекунд на правило. Таким образом,
+ теоретический предел скорости обработки пакетов с этими правилами
+ равен примерно 370 пакетам в секунду. Предполагая использование
+ ethernet 10Мб/с с размером пакета примерно 1500, мы можем достигнуть
+ только 55.5% использования пропускной способности.</para>
-</itemizedlist>
-</para>
-
+ <para>В последнем случае на обработку каждого пакета было затрачено
+ примерно 1.172мс, или около 1.2 микросекунд на правило. Теоретический
+ предел обработки будет равен около 853 пакетам в секунду, что почти
+ соответствует скорости 10Мб/с ethernet.</para>
-
-</answer></qandaentry>
+ <para>Большое количество протестированных правил и природа этих правил
+ не даёт представление о реальной жизни - они были использованы
+ только для генерации информации о времени обработки. Вот
+ несколько наблюдений, которые нужно иметь в виду для построении
+ эффективного набора правил:</para>
-<qandaentry><question>
-<para> Как можно перенаправить запросы с одной машины на другую?
- </para></question><answer>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>Поместите правило `established' в самое начало списка для
+ обработки основного трафика TCP. Не помещайте перед ним никаких
+ правил <literal>allow tcp</literal>.</para>
+ </listitem>
-<para>Вы можете перенаправить запрос на FTP (или другой сервис) с помощью
- пакаджа 'socket', доступного в дереве портов в категории 'sysutils'.
- Просто замените командную строку запуска сервиса на вызов socket,
- типа:</para>
-
-<para>
-<literallayout>ftp stream tcp nowait nobody /usr/local/bin/socket socket ftp.foo.com ftp</literallayout>
-</para>
-
+ <listitem>
+ <para>Старайтесь помещать часто вызываемые правила как можно раньше,
+ а редко используемые - позже (<emphasis remap=bf>без изменения
+ политики</emphasis>, конечно). Вы можете выяснить частоту
+ использования правил с помощью вывода статистики командой
+ <command>ipfw -a l</command>.</para>
+ </listitem>
+ </itemizedlist>
+ </para>
-
-<para>где 'ftp.foo.com' и 'ftp' являются соответственно хостом и портом
- для перенаправления.</para>
-
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Как можно перенаправить запросы с одной машины на другую?</para>
+ </question>
+
+ <answer>
+
+ <para>Вы можете перенаправить запрос на FTP (или другой сервис) с помощью
+ пакаджа <literal>socket</literal>, доступного в дереве портов в категории
+ <quote>sysutils</quote>. Просто замените командную строку запуска сервиса
+ на вызов socket, типа:</para>
+
+ <programlisting>
+ftp stream tcp nowait nobody /usr/local/bin/socket socket <replaceable>ftp.foo.com</replaceable> <replaceable>ftp</replaceable>
+ </programlisting>
+
+ <para>где <replaceable>ftp.foo.com</replaceable>
+ и <replaceable>ftp</replaceable> являются соответственно хостом и портом
+ для перенаправления.</para>
+
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question>
<para> Где можно найти средства управления сетевым трафиком?
@@ -7429,208 +7844,252 @@ id="networking">
</answer></qandaentry>
-<qandaentry><question>
-<para>Почему появляются сообщения
- `/dev/bpf0: device not configured'?</para></question><answer>
+<qandaentry>
+ <question>
+ <para>Почему появляются сообщения
+ <literal>/dev/bpf0: device not configured</literal>?</para>
+ </question>
-<para>Для работы программ, использующих Berkeley Packet Filter <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?bpf">(bpf)</ulink> необходимо
- включение в ядро соответствующего драйвера. Перекомпилируйте ядро, добавив
- в его конфигурационный файл следующую строку:</para>
-
-<para>
- <literallayout>
- pseudo-device bpfilter # Berkeley Packet Filter
- </literallayout>
-</para>
-
-<para>Затем, после перезапуска системы, вам нужно создать соответствующий файл
- устройства. Это можно сделать, сменив текущий каталог на
- <filename>/dev</filename> и выполнив команду</para>
-
-<para>
- <informalexample>
- <screen>
- # sh MAKEDEV bpf0
- </screen>
- </informalexample>
-</para>
+ <answer>
+
+ <para>Для работы программ, использующих Berkeley Packet Filter <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?bpf">(bpf)</ulink> необходимо
+ включение в ядро соответствующего драйвера. Перекомпилируйте ядро, добавив
+ в его конфигурационный файл следующую строку:</para>
+
+ <programlisting>
+pseudo-device bpfilter # Berkeley Packet Filter
+ </programlisting>
+
+ <para>Затем, после перезапуска системы, вам нужно создать соответствующий файл
+ устройства. Это можно сделать, сменив текущий каталог на
+ <filename>/dev</filename> и выполнив команду</para>
-<para>Обратитесь к разделу руководства, посвящённому <ulink
- URL="../../handbook/kernelconfig-nodes.html">созданию файлов
- устройств</ulink> за подробной информацией по этому вопросу.</para>
+ <screen>
+&prompt.root; <userinput>sh MAKEDEV bpf0</userinput>
+ </screen>
-</answer></qandaentry></qandaset>
+ <para>Обратитесь к разделу руководства, посвящённому <ulink
+ URL="../../handbook/kernelconfig-nodes.html">созданию файлов
+ устройств</ulink> за подробной информацией по этому вопросу.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Как смонтировать диск Windows-машины в моей локальной сети, как это
+ делает smbmount в Linux?</para>
+ </question>
+
+ <answer>
+
+ <para>Воспользуйтесь пакетом <ulink
+ URL="http://www.freebsd.org/cgi/ports.cgi?query=%5Esharity-light-&;amp;stype=name">sharity
+ light</ulink> из Коллекции Портов.</para>
+
+ <!-- XXX update for bp's SMBFS in CURRENT, when it is imported! -->
+ </answer>
+</qandaentry>
+
+</qandaset>
</chapter>
-<chapter
-id="ppp">
+<chapter id="ppp">
<title>PPP</title>
-<qandaset><qandaentry><question
-id="userppp">
+<qandaset>
+<qandaentry>
+ <question id="userppp">
+ <para>Не могу заставить работать ppp. Что я делаю не так?</para>
+ </question>
-<para>Не могу заставить работать ppp. Что я делаю не так?
- </para></question><answer>
+ <answer>
-<para>Первым делом прочтите <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ppp">страницы справочника</ulink>, посвящённые ppp, а также соответствующий
- <ulink URL="../../handbook/ppp-and-slip.html#USERPPP">раздел</ulink> руководства.
- Включите протоколирование командой</para>
-
-<para>
-<literallayout> set log Phase Chat Connect Carrier lcp ipcp ccp command
- </literallayout>
-</para>
-
-<para>Эта команда может быть набрана в командной строке <emphasis remap=bf>ppp</emphasis> или
- она может находиться в конфигурационном файле
- <filename>/etc/ppp/ppp.conf</filename> (начало секции <emphasis remap=bf>default</emphasis> - лучшее
- для неё место. Удостоверьтесь, что файл
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?syslog.conf">/etc/syslog.conf</ulink> содержит строки</para>
-
-<para>
-<literallayout> !ppp
- *.* /var/log/ppp.log
- </literallayout>
-</para>
-
-<para>и файл <filename>/var/log/ppp.log</filename> существует. Теперь вы сможете
- найти полную информацию о происходящем в файле протокола. Не
- беспокойтесь, если не всё вам будет там понятно. Если вы будете
- пользоваться чьей-то помощью, протокол вам пригодится.</para>
-
-<para>Если ваша версия ppp не понимает команду "set log", вы должны скачать
- <ulink URL="http://people.FreeBSD.org/~brian/">последнюю версию</ulink>.
- Она рассчитана на FreeBSD версий 2.1.5 и выше.</para>
-
-</answer></qandaentry>
+ <para>Первым делом прочтите <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?ppp">страницы
+ справочника</ulink>, посвящённые ppp, а также соответствующий <ulink
+ URL="../../handbook/ppp-and-slip.html#USERPPP">раздел</ulink> Руководства.
+ Включите протоколирование командой</para>
-<qandaentry><question>
-<para>Ppp просто зависает, когда я его запускаю</para></question><answer>
+ <programlisting>
+set log Phase Chat Connect Carrier lcp ipcp ccp command
+ </programlisting>
-<para>Обычно это происходит, когда не может быть определено имя
- вашего хоста. Наилучший способ исправить это -
- удостовериться, что файл <filename>/etc/hosts</filename> используется вашим
- ресолвером. Отредактируйте файл <filename>/etc/host.conf</filename>, поместив
- на первое место строчку <emphasis remap=tt>hosts</emphasis>. Затем просто добавьте
- записи о вашей машине в файл <filename>/etc/hosts</filename>. Если у вас нет
- локальной сети, измените строку <emphasis remap=tt>localhost</emphasis>:</para>
-
-<para>
-<literallayout>127.0.0.1 foo.bar.com foo localhost
- </literallayout>
-</para>
-
-<para> В противном случае просто добавьте ещё одну запись о вашем хосте.
- Обратитесь к соответствующим страницам справочника за подробным
- описанием.</para>
-
-<para>Если вы выполнили эти указания, вы сможете успешно выполнить
- команду <command>ping -c1 `hostname`</command>.</para>
-
-</answer></qandaentry>
+ <para>Эта команда может быть набрана в командной строке <emphasis
+ remap=bf>ppp</emphasis> или она может находиться в конфигурационном файле
+ <filename>/etc/ppp/ppp.conf</filename> (начало секции <emphasis
+ remap=bf>default</emphasis> - лучшее для неё место. Удостоверьтесь, что
+ файл <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?syslog.conf">
+ /etc/syslog.conf</ulink> содержит строки</para>
-<qandaentry><question>
-<para>Ppp не звонит в режиме -auto</para></question><answer>
+ <programlisting>
+!ppp
+*.* /var/log/ppp.log
+ </programlisting>
-<para>Во-первых, проверьте, что у вас есть маршрут по умолчанию.
- Запустив <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?netstat">netstat -rn</ulink>, вы должны увидеть две строки вида:</para>
-
-<para>
-<literallayout>Destination Gateway Flags Refs Use Netif Expire
+ <para>и файл <filename>/var/log/ppp.log</filename> существует. Теперь вы
+ сможете найти полную информацию о происходящем в файле протокола. Не
+ беспокойтесь, если не всё вам будет там понятно. Если вы будете
+ пользоваться чьей-то помощью, протокол вам пригодится.</para>
+
+ <para>Если ваша версия ppp не понимает команду <command>set log</command>, вы
+ должны скачать <ulink URL="http://people.FreeBSD.org/~brian/">последнюю
+ версию</ulink>. Она рассчитана на FreeBSD версий 2.1.5 и выше.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Ppp просто зависает, когда я его запускаю</para>
+ </question>
+
+ <answer>
+
+ <para>Обычно это происходит, когда не может быть определено имя вашего хоста.
+ Наилучший способ исправить это - удостовериться, что файл
+ <filename>/etc/hosts</filename> используется вашим ресолвером.
+ Отредактируйте файл <filename>/etc/host.conf</filename>, поместив
+ на первое место строчку <literal>hosts</literal>. Затем просто добавьте
+ записи о вашей машине в файл <filename>/etc/hosts</filename>. Если у вас
+ нет локальной сети, измените строку <hostid>localhost</hostid>:</para>
+
+ <programlisting>
+127.0.0.1 foo.bar.com foo localhost
+ </programlisting>
+
+ <para>В противном случае просто добавьте ещё одну запись о вашем хосте.
+ Обратитесь к соответствующим страницам справочника за подробным
+ описанием.</para>
+
+ <para>Если вы выполнили эти указания, вы сможете успешно выполнить
+ команду <command>ping -c1 `hostname`</command>.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Ppp не звонит в режиме -auto</para>
+ </question>
+
+ <answer>
+
+ <para>Во-первых, проверьте, что у вас есть маршрут по умолчанию. Выполнив
+ команду <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?netstat">netstat -rn</ulink>, вы
+ должны увидеть две строки такого вида:</para>
+
+ <programlisting>
+Destination Gateway Flags Refs Use Netif Expire
default 10.0.0.2 UGSc 0 0 tun0
10.0.0.2 10.0.0.1 UH 0 0 tun0
- </literallayout>
-</para>
-
-<para>Здесь предполагается, что вы использовали адреса,
- приведённые в Руководстве, Справочнике или файле
- ppp.conf.sample. Если у вас нет маршрута по умолчанию, это
- может быть из-за использования старой версии
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ppp">ppp</ulink>, которая не понимает слова <acronym>HISADDR</acronym> в файле
- ppp.conf. Если ваша версия <emphasis remap=bf>ppp</emphasis> из FreeBSD версий ранее
- чем 2.2.5, замените строку</para>
-
-<para>
-<literallayout> add 0 0 HISADDR
- </literallayout>
-</para>
-
-<para>на</para>
-
-<para>
-<literallayout> add 0 0 10.0.0.2
- </literallayout>
-</para>
-
-<para>Другой причиной отсутствия маршрута по умолчанию может быть
- то, что вы ошибочно установили маршрут по умолчанию в вашем файле
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?rc.conf">/etc/rc.conf</ulink> (этот файл назывался <filename>/etc/sysconfig</filename>
- до 2.2.2-RELEASE), и вы пропустили строку</para>
-
-<para>
-<literallayout> delete ALL
- </literallayout>
-</para>
-
-<para>в <filename>ppp.conf</filename>. В таком случае обратитесь к соответствующему
- <ulink URL="../../handbook/ppp-and-slip.html#USERPPP-FINAL">разделу</ulink> Руководства.</para>
-
-</answer></qandaentry>
+ </programlisting>
-<qandaentry><question>
-<para>Что означает сообщение "No route to host"?</para></question><answer>
+ <para>Здесь предполагается, что вы использовали адреса,
+ приведённые в Руководстве, Справочнике или файле
+ ppp.conf.sample. Если у вас нет маршрута по умолчанию, это
+ может быть из-за использования старой версии
+ <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ppp">ppp</ulink>, которая не
+ понимает слова <literal>HISADDR</literal> в файле
+ ppp.conf. Если ваша версия <emphasis remap=bf>ppp</emphasis> из FreeBSD
+ версий ранее чем 2.2.5, замените строку</para>
+
+ <programlisting>
+add 0 0 HISADDR
+ </programlisting>
+
+ <para>на</para>
+
+ <programlisting>
+add 0 0 10.0.0.2
+ </programlisting>
+
+ <para>Другой причиной отсутствия маршрута по умолчанию может быть
+ то, что вы ошибочно установили маршрут по умолчанию в вашем файле <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?rc.conf">/etc/rc.conf</ulink>
+ (этот файл назывался <filename>/etc/sysconfig</filename>
+ до 2.2.2-RELEASE), и вы пропустили строку</para>
+
+ <programlisting>
+delete ALL
+ </programlisting>
+
+ <para>в <filename>ppp.conf</filename>. В таком случае обратитесь к
+ соответствующему <ulink
+ URL="../../handbook/ppp-and-slip.html#USERPPP-FINAL">разделу</ulink>
+ Руководства.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Что означает сообщение <literal>No route to host</literal>?</para>
+ </question>
+
+ <answer>
+
+ <para>Эта ошибка появляется из-за отсутствующего раздела</para>
+
+ <programlisting>
+MYADDR:
+ delete ALL
+ add 0 0 HISADDR
+ </programlisting>
+
+ <para>в файле <filename>/etc/ppp/ppp.linkup</filename>. Он необходим, если ваш
+ IP адрес выделяется динамически или адрес маршрутизатора вам не
+ известен. Если вы используете интерактивный
+ режим, вы можете набрать следующие команды после входа в
+ <emphasis remap=tt>пакетный режим</emphasis> (пакетный режим
+ идентифицируется заглавными буквами <acronym>PPP</acronym> в
+ приглашении):</para>
+
+ <programlisting>
+delete ALL
+add 0 0 HISADDR
+ </programlisting>
+
+ <para>Обратитесь к разделу <ulink
+ URL="../../handbook/ppp-and-slip.html#USERPPP-DYNAMICIP">PPP и
+ динамические IP адреса</ulink> Руководства за подробной информацией.</para>
+
+ </answer>
+</qandaentry>
-<para>Эта ошибка появляется из-за отсутствующего раздела</para>
-
-<para>
-<literallayout> MYADDR:
- delete ALL
- add 0 0 HISADDR
- </literallayout>
-</para>
-
-<para>в файле <filename>/etc/ppp/ppp.linkup</filename>. Он необходим, если ваш
- IP адрес выделяется динамически или адрес маршрутизатора вам не
- известен. Если вы используете интерактивный
- режим, вы можете набрать следующие команды после входа в
- <emphasis remap=tt>пакетный режим</emphasis> (пакетный режим идентифицируется заглавными
- буквами <acronym>PPP</acronym> в приглашении):</para>
-
-<para>
-<literallayout> delete ALL
- add 0 0 HISADDR
- </literallayout>
-</para>
-
-<para>Обратитесь к разделу <ulink URL="../../handbook/ppp-and-slip.html#USERPPP-DYNAMICIP">PPP и динамические IP адреса</ulink> Руководства за подробной
- информацией.</para>
-
-</answer></qandaentry>
<qandaentry><question>
<para>Соединение разрывается через 3 минуты</para></question><answer>
<para>Таймаут для ppp по умолчанию равен 3 минутам. Это может быть
изменено строкой</para>
-
-<para>
-<literallayout> set timeout NNN
- </literallayout>
-</para>
-
-<para>где <acronym>NNN</acronym> - время неактивности в секундах, после которого
- соединение закывается. Если <acronym>NNN</acronym> равно нулю, соединение никогда
- не разрывается по таймауту. Эту команду можно поместить в файл
- <filename>ppp.conf</filename> или набрать ее в интерактивном режиме. Изменение
- этого параметра также возможно при активном соединении, если
- подключиться к сокету <emphasis remap=bf>ppp</emphasis> сервера с помощью программ
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?telnet">telnet</ulink>
- или <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?pppctl">pppctl</ulink>. Обратитесь к страницам Справочника, посвящённым
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ppp">ppp</ulink>.</para>
-
-</answer></qandaentry>
+
+ <programlisting>
+set timeout <replaceable>NNN</replaceable>
+ </programlisting>
+
+ <para>где <replaceable>NNN</replaceable> - время неактивности в секундах,
+ после которого соединение закывается. Если <replaceable>NNN</replaceable>
+ равно нулю, соединение никогда не разрывается по таймауту. Эту команду
+ можно поместить в файл <filename>ppp.conf</filename> или набрать ее в
+ интерактивном режиме. Изменение этого параметра также возможно при
+ активном соединении, если подключиться к сокету <emphasis
+ remap=bf>ppp</emphasis> сервера с помощью программ
+ <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?telnet">telnet</ulink>
+ или <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?pppctl">pppctl</ulink>.
+ Обратитесь к страницам Справочника, посвящённым
+ <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ppp">ppp</ulink>.</para>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para>Соединение разрывается при большой нагрузке</para></question><answer>
@@ -7640,13 +8099,14 @@ default 10.0.0.2 UGSc 0 0 tun0
что канал плох, и разрывает соединение. В FreeBSD до версии 2.2.5
LQR было включено по умолчанию. Сейчас оно по умолчанию выключено.
LQR можно выключить строкой</para>
-
-<para>
-<literallayout> disable lqr
- </literallayout>
-</para>
-
-</answer></qandaentry>
+
+ <programlisting>
+disable lqr
+ </programlisting>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para> Соединение разрывается в случайные промежутки времени
@@ -7661,13 +8121,12 @@ default 10.0.0.2 UGSc 0 0 tun0
это определяется значением регистра S10 в десятых долях секунды.
Чтобы сделать связь более устойчивой, добавьте следующую
последовательность посылок-ожиданий в строку набора:</para>
-
-<para>
-<literallayout> set dial "...... ATS10=10 OK ......"
- </literallayout>
-</para>
-
-<para>Обратитесь к руководству по вашему модему.</para>
+
+ <programlisting>
+set dial "...... ATS10=10 OK ......"
+ </programlisting>
+
+ <para>Обратитесь к руководству по вашему модему.</para>
</answer></qandaentry>
@@ -7678,70 +8137,74 @@ default 10.0.0.2 UGSc 0 0 tun0
<para>Многие сообщают об обрывах соединений без видимой причины. Первым
делом нужно выяснить, с какой стороны соединения рвётся связь. </para>
-<para>Если вы используете внешний модем, можете просто попробовать
- использовать утилиту <emphasis remap=tt>ping</emphasis> и посмотреть, мигает ли индикатор
- <acronym>TD</acronym> при передаче данных. Если он мигает (а индикатор <acronym>TD</acronym> нет),
- проблема с той стороны. Если индикатор <acronym>TD</acronym> не загорается, проблема
- с вашей стороны. При использовании внутреннего модема вам необходимо
- воспользоваться командой <emphasis remap=tt>set server</emphasis>, указав её в файле
- <filename>ppp.conf</filename>. Когда произойдёт обрыв связи, подключитесь к ppp с
- помощью pppctl. Если ваше сетевое подключение неожиданно восстановится
- (ppp оживает при проявлении активности на диагностическом сокете) или
- или если вы не сможете соединиться (здесь мы полагаем, что команда
- <emphasis remap=tt>set socket</emphasis> в начальный момент была выполнена успешно), то проблема
- имеет локальный характер. Если вы сможете подключиться, но связи всё
- равно нет, включите вывод отладочной информации командой <emphasis remap=tt>set log
- local async</emphasis> и запустите <emphasis remap=tt>ping</emphasis> из другого окна или терминала, чтобы
- проверить связь. В отладочном выводе будут показаны данные,
- передаваемые и получаемые из канала связи. Если данные посылаются,
- но не принимаются обратно, проблема с противоположной стороны.</para>
-
-<para>Выяснив, является эта проблема локальной или удалённой системы,
- вы имеете следующие возможности:</para>
-
-</answer></qandaentry>
+ <para>Если вы используете внешний модем, можете просто попробовать
+ использовать утилиту <command>ping</command> и посмотреть, мигает ли
+ индикатор <acronym>TD</acronym> при передаче данных. Если он мигает (а
+ индикатор <acronym>RD</acronym> нет), проблема с той стороны. Если
+ индикатор <acronym>TD</acronym> не загорается, проблема
+ с вашей стороны. При использовании внутреннего модема вам необходимо
+ воспользоваться командой <literal>set server</literal>, указав её в файле
+ <filename>ppp.conf</filename>. Когда произойдёт обрыв связи, подключитесь
+ к ppp с помощью pppctl. Если ваше сетевое подключение неожиданно
+ восстановится (ppp оживает при проявлении активности на диагностическом
+ сокете) или или если вы не сможете соединиться (здесь мы полагаем, что
+ команда <literal>set socket</literal> в начальный момент была выполнена
+ успешно), то проблема имеет локальный характер. Если вы сможете
+ подключиться, но связи всё равно нет, включите вывод отладочной информации
+ командой <literal>set log local async</literal> и запустите
+ <command>ping</command> из другого окна или терминала, чтобы проверить
+ связь. В отладочном выводе будут показаны данные,
+ передаваемые и получаемые из канала связи. Если данные посылаются,
+ но не принимаются обратно, проблема с противоположной стороны.</para>
+
+ <para>Выяснив, является эта проблема локальной или удалённой системы,
+ вы имеете следующие возможности:</para>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para>Удалённая система не отвечает</para></question><answer>
-<para>Здесь вы мало что можете сделать. Большинство провайдеров
- отказываются оказать помощь, если вы используете ОС не от Microsoft.
- Вы можете добавить команду <emphasis remap=tt>enable lqr</emphasis> в ваш <filename>ppp.conf</filename>, что
- позволит ppp отследить ошибки в удалённой системе и закрывать
- соединение, однако такое обнаружение достаточно медленное и поэтому
- не так уж полезно. Вы можете также просто не сообщать своему
- провайдеру, что запускаете user-ppp....</para>
-
-<para>Первым делом попробуйте отключить всю местную компрессию,
- указав в конфигурационном файле следующее:</para>
-
-<para>
-<literallayout> disable pred1 deflate deflate24 protocomp acfcomp shortseq vj
- deny pred1 deflate deflate24 protocomp acfcomp shortseq vj
- </literallayout>
-</para>
-
-<para>Теперь попробуйте установить соединение ещё раз и удостовериться,
- что ситуация не изменилась. Если качество соединения улучшилось
- или проблема окащалась полностью решённой, выясните, настройка
- чего приводила к проблемам методом проб и ошибок. Это даст вам
- дополнительную защиту, когда вы будете разговаривать с вашим
- провайдером (хотя при этом может обнаружиться, что вы работаете
- не с продуктом Microsoft). </para>
-
+ <para>Здесь вы мало что можете сделать. Большинство провайдеров
+ отказываются оказать помощь, если вы используете ОС не от Microsoft.
+ Вы можете добавить команду <literal>enable lqr</literal> в ваш
+ <filename>ppp.conf</filename>, что позволит ppp отследить ошибки в
+ удалённой системе и закрывать соединение, однако такое обнаружение
+ достаточно медленно и поэтому
+ не так уж полезно. Вы можете также просто не сообщать своему
+ провайдеру, что запускаете user-ppp....</para>
+
+ <para>Первым делом попробуйте отключить всю местную компрессию,
+ указав в конфигурационном файле следующее:</para>
+
+ <programlisting>
+disable pred1 deflate deflate24 protocomp acfcomp shortseq vj
+deny pred1 deflate deflate24 protocomp acfcomp shortseq vj
+ </programlisting>
+
+ <para>Теперь попробуйте установить соединение ещё раз и удостовериться,
+ что ситуация не изменилась. Если качество соединения улучшилось
+ или проблема окащалась полностью решённой, выясните, настройка
+ чего приводила к проблемам методом проб и ошибок. Это даст вам
+ дополнительную защиту, когда вы будете разговаривать с вашим
+ провайдером (хотя при этом может обнаружиться, что вы работаете
+ не с продуктом Microsoft). </para>
+
<para>Перед тем, как звонить провайдеру, включите вывод отладочной
информации, как вы это делали ранее и подождите, пока соединение
снова не прервётся. Правда, для этого требуется некоторое
дисковое пространство. Интерес могут представлять последние
прочитанные из порта данные. Обычно это данные в формате ascii
- и они могут даже содержать описание проблемы (``Memory fault,
- core dumped'' ?).</para>
+ и они могут даже содержать описание проблемы (<quote>Memory fault,
+ core dumped</quote> ?).</para>
<para>Если ваш провайдер согласен помочь вам, нужно будет включить
режим отладки с их стороны, а потом, когда связь прервётся в
следующий раз, они могут сказать вам, почему возникли проблемы
с их стороны. Будет хорошо, если вы пришлёте детальное описание
- на адрес <ulink URL="mailto:brian@Awfulhak.org">brian@Awfulhak.org</ulink>, или даже попросите провайдера связаться
+ на адрес &a.brian;, или даже попросите провайдера связаться
со мной напрямую.</para>
</answer></qandaentry>
@@ -7749,17 +8212,21 @@ default 10.0.0.2 UGSc 0 0 tun0
<qandaentry><question>
<para>Ppp зависает</para></question><answer>
-<para>Лучше всего в этом случае перекомпилировать ppp, добавив параметры
- <literal>CFLAGS+=-g</literal> и <literal>STRIP=</literal> в конец Makefile, а затем выполнить
- <emphasis remap=tt>make clean &amp;&amp; make &amp;&amp; make install</emphasis>. Когда ppp
- зависнет, найдите идентификатор процесса ppp с помощью команды
- <emphasis remap=tt>ps ajxww | fgrep ppp</emphasis> и выполните команду <emphasis remap=tt>gdb ppp PID</emphasis>.
- Затем в приглашении gdb вы можете использовать команду <emphasis remap=tt>bt</emphasis> для
- получения стека вызовов.</para>
-
-<para>Пошлите результат на адрес <ulink URL="mailto:brian@Awfulhak.org">brian@Awfulhak.org</ulink>.</para>
+ <para>Лучше всего в этом случае перекомпилировать ppp, добавив параметры
+ <literal>CFLAGS+=-g</literal> и <literal>STRIP=</literal> в конец
+ Makefile, а затем выполнить команду
+ <command>make clean &amp;&amp; make &amp;&amp; make install</command>.
+ Когда ppp зависнет, найдите идентификатор процесса ppp с помощью команды
+ <command>ps ajxww | fgrep ppp</command> и выполните команду
+ <command>gdb ppp <replaceable>PID</replaceable></command>. Затем в
+ приглашении gdb вы можете использовать команду <command>bt</command> для
+ получения стека вызовов.</para>
+
+ <para>Пошлите результат на адрес <email>brian@Awfulhak.org</email>.</para>
+
+ </answer>
+</qandaentry>
-</answer></qandaentry>
<qandaentry><question>
<para> Ничего не происходит после сообщения Login OK!
@@ -7771,12 +8238,11 @@ default 10.0.0.2 UGSc 0 0 tun0
начинают согласования и предполагают, что это сделает клиент.
Чтобы заставить <emphasis remap=bf>ppp</emphasis> инициировать согласование параметров
LCP, используйте следующую строку:</para>
-
-<para>
-<literallayout> set openmode active
- </literallayout>
-</para>
-
+
+ <programlisting>
+set openmode active
+ </programlisting>
+
<para><emphasis remap=bf>Замечание</emphasis>: Ничего страшного не произойдёт, если согласование
начнут обе стороны, поэтому режим инициирования сейчас
по умолчанию активный. Однако, в следующем разделе описывается
@@ -7785,11 +8251,12 @@ default 10.0.0.2 UGSc 0 0 tun0
</answer></qandaentry>
<qandaentry><question>
-<para> В протоколе есть сообщения о том, что 'magic being the same'.
+<para> В протоколе есть сообщения о том, что <quote>magic being the same</quote>.
</para></question><answer>
<para>Иногда, сразу же после установления соединения, вы можете увидеть
- сообщения в протоколе, говорящие что "magic is the same". Иногда
+ сообщения в протоколе, говорящие что <quote>magic is the same</quote>.
+ Иногда
эти сообщения проходят безболезненно, а иногда одна из сторон
прекращают работу. Большинство реализаций ppp не может справиться с
такой ситуацией, и, даже когда связь выглядит установившейся, вы
@@ -7805,13 +8272,14 @@ default 10.0.0.2 UGSc 0 0 tun0
проходящее между завершением работы getty и запуском ppp, ppp
со стороны клиента начинает посылать пакеты Line Control Protocol
(LCP). Так как режим эха остаётся всё ещё включенным, ppp клиента
- получает "отражения" своих запросов.</para>
-
-<para>Частью процесса согласования параметров LCP является определение
- "магического" числа для каждой стороны соединения для обнаружения
- "отражений". Согласно спецификации, когда одна сторона пытается
- использовать совпадающее "магическое" число, должен быть послан ответ
- NAK и должно быть выбрано новое "магическое" число. В тот момент,
+ получает <quote>отражения</quote> своих запросов.</para>
+
+ <para>Частью процесса согласования параметров LCP является определение
+ <quote>магического</quote> числа для каждой стороны соединения для
+ обнаружения <quote>отражений</quote>. Согласно спецификации, когда одна
+ сторона пытается использовать совпадающее "магическое" число, должен быть
+ послан ответ
+ NAK и должно быть выбрано новое "магическое" число. В тот момент,
когда на порту сервера включен режим эха, клиент ppp посылает пакеты
LCP, получает то же самое "магическое" число в отражённом пакете и
отвечает на него NAK. Он также видит отражённый NAK (который также
@@ -7826,21 +8294,19 @@ default 10.0.0.2 UGSc 0 0 tun0
<para>Этого можно избежать, позволив начинать согласование
противоположной стороне следующей строкой в файле ppp.conf:</para>
-
-<para>
-<literallayout> set openmode passive
- </literallayout>
-</para>
-
+
+ <programlisting>
+set openmode passive
+ </programlisting>
+
<para>Это заставит ppp ожидать начала согласования LCP. Некоторые
серверы, однако, могут никогда не начать согласование. Если это тот
самый случай, вы можете сделать следующее:</para>
-
-<para>
-<literallayout> set openmode active 3
- </literallayout>
-</para>
-
+
+ <programlisting>
+set openmode active 3
+ </programlisting>
+
<para>Это заставит ppp пассивно ждать 3 секунды, и только затем посылать
запросы LCP. Если противоположная сторона начнёт посылать в этот
момент запросы, ppp немедленно ответит, не ожидая истечения
@@ -7884,29 +8350,26 @@ default 10.0.0.2 UGSc 0 0 tun0
<para>Лучшим способом избежать этой ситуации является конфигурация
одной из сторон как <emphasis remap=bf>passive</emphasis>, чтобы она ждала другую для
начала согласования. Это можно сделать командой</para>
-
-<para>
-<literallayout> set openmode passive
- </literallayout>
-</para>
-
-<para> С этой командой нужно быть осторожным. Вы также должны будете
- использовать команду</para>
-
-<para>
-<literallayout> set stopped N
- </literallayout>
-</para>
-
+
+ <programlisting>
+set openmode passive
+ </programlisting>
+
+ <para>С этой командой нужно быть осторожным. Вы также должны будете
+ использовать команду</para>
+
+ <programlisting>
+set stopped N
+ </programlisting>
+
<para> для ограничения периода ожидания, в течении которого <emphasis remap=bf>ppp</emphasis> ждёт
начала согласования с противоположной стороны. Как вариант, может
быть использована строка</para>
-
-<para>
-<literallayout> set openmode active N
- </literallayout>
-</para>
-
+
+ <programlisting>
+set openmode active N
+ </programlisting>
+
<para> (где <emphasis remap=bf>N</emphasis> - период ожидания в секундах перед тем, как начать
согласование).</para>
@@ -7922,29 +8385,31 @@ default 10.0.0.2 UGSc 0 0 tun0
разные типы CCP (Compression Control Protocol). Эта проблема
сейчас решена, но если вы всё ещё используете старую версию
<emphasis remap=bf>ppp</emphasis>, проблема может быть обойдена с помощью строки</para>
-
-<para>
-<literallayout> disable pred1
- </literallayout>
-</para>
-
-</answer></qandaentry>
+
+ <programlisting>
+disable pred1
+ </programlisting>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para> Когда я выполняю команду shell для тестирования соединения,
ppp блокируется
</para></question><answer>
-<para>Когда вы выполняете команду <emphasis remap=tt>shell</emphasis> или <emphasis remap=tt>!</emphasis>, <emphasis remap=bf>ppp</emphasis>
- запускает оболочку (если были заданы параметры, <emphasis remap=bf>ppp</emphasis> их
- использует). Ppp будет ждать окончания выполнения команды, прежде
+ <para>Когда вы выполняете команду <command>shell</command> или
+ <command>!</command>, <command>ppp</command> запускает оболочку (если были
+ заданы параметры, <emphasis remap=bf>ppp</emphasis> их
+ использует). Ppp будет ждать окончания выполнения команды, прежде
чем продолжить. Если вы попытаетесь воспользоваться связью ppp
после запуска команды, связь будет выглядеть заблокированной. Это
- происходит из-за того, что <emphasis remap=bf>ppp</emphasis> ждёт завершения выполнения
- запущенной команды.</para>
-
-<para>Если вам необходимо выполнять подобные команды, используйте
- команду <emphasis remap=tt>!bg</emphasis>. В этом случае нужная команда будет выполняться
+ происходит из-за того, что <command>ppp</command> ждёт завершения
+ выполнения запущенной команды.</para>
+
+ <para>Если вам необходимо выполнять подобные команды, используйте
+ команду <command>!bg</command>. В этом случае нужная команда будет выполняться
в фоновом режиме, а ppp сможет продолжить обслуживание канала связи.</para>
</answer></qandaentry>
@@ -7957,12 +8422,11 @@ default 10.0.0.2 UGSc 0 0 tun0
Это происходит из-за метода использования сигнальных линий
нуль-модемного кабеля. При использовании такого типа соединения
всегда включайте LQR.</para>
-
-<para>
-<literallayout> enable lqr
- </literallayout>
-</para>
-
+
+ <programlisting>
+enable lqr
+ </programlisting>
+
<para>По умолчанию LQR включается, если это было затребовано с
противоположной стороны на этапе согласования параметров соединения.</para>
@@ -7976,12 +8440,11 @@ default 10.0.0.2 UGSc 0 0 tun0
звонков.</para>
<para>Для выяснения причины такого поведения, используйте строку:</para>
-
-<para>
-<literallayout> set log +tcp/ip
- </literallayout>
-</para>
-
+
+ <programlisting>
+set log +tcp/ip
+ </programlisting>
+
<para>Это включит протоколирование всего трафика через соединение. В
следующий раз, когда неожиданно будет установлено соединение,
вы установите причину по временным отметкам в файле протокола.</para>
@@ -7991,14 +8454,13 @@ default 10.0.0.2 UGSc 0 0 tun0
к DNS. Для предотвращения обращений к DNS и установления соединения
(что <emphasis remap=bf>не</emphasis> запретит <emphasis remap=bf>ppp</emphasis> пропускать пакеты через уже
установленное соединение), используйте такую комбинацию:</para>
-
-<para>
-<literallayout> set dfilter 1 deny udp src eq 53
- set dfilter 2 deny udp dst eq 53
- set dfilter 3 permit 0/0 0/0
- </literallayout>
-</para>
-
+
+ <programlisting>
+set dfilter 1 deny udp src eq 53
+set dfilter 2 deny udp dst eq 53
+set dfilter 3 permit 0/0 0/0
+ </programlisting>
+
<para>Это может вам не подойти, так как закроет возможность дозвонки
по запросу - большинству программ нужно обратиться к DNS до того,
как начать работать.</para>
@@ -8011,44 +8473,45 @@ default 10.0.0.2 UGSc 0 0 tun0
за подробным описанием создания конфигурационного файла и что туда
нужно поместить. Вам может понадобиться добавить в файл <filename>.mc</filename>
строку:</para>
-
-<para>
-<literallayout> define(`confDELIVERY_MODE', `d')dnl
- </literallayout>
-</para>
-
-<para>Это заставит sendmail ставить все сообщения в очередь до
- тех пор, пока не будет запущена её обработка (как правило,
- sendmail запускается с параметрами ``-bd -q30m'', указывающие, что
- обрабатывать очередь нужно каждые 30 минут) или до тех пор, пока
- не будет выполнена команда ``sendmail -q'' (может быть, из файла
- ppp.linkup).</para>
-
-</answer></qandaentry>
+
+ <programlisting>
+define(`confDELIVERY_MODE', `d')dnl
+ </programlisting>
+
+ <para>Это заставит sendmail ставить все сообщения в очередь до тех пор, пока
+ не будет запущена её обработка (как правило, sendmail запускается с
+ параметрами <option>-bd -q30m</option>, указывающими, что
+ обрабатывать очередь нужно каждые 30 минут) или до тех пор, пока
+ не будет выполнена команда <command>sendmail -q</command> (может быть, из
+ файла ppp.linkup).</para>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para>Что означают ошибки CCP</para></question><answer>
<para>В файле протокола появляются такие сообщения об ошибках:</para>
-
-<para>
-<literallayout> CCP: CcpSendConfigReq
- CCP: Received Terminate Ack (1) state = Req-Sent (6)
- </literallayout>
-</para>
-
+
+ <programlisting>
+CCP: CcpSendConfigReq
+CCP: Received Terminate Ack (1) state = Req-Sent (6)
+ </programlisting>
+
<para>Это происходит, если ppp пытается установить компрессию
типа Predictor1, а противоположная сторона не хочет устанавливать
никакой компрессии. Эти сообщения безобидны, но если вы хотите
от них избавиться, вы можете запретить компрессию Predictor1 и
у себя тоже:</para>
-
-<para>
-<literallayout> disable pred1
- </literallayout>
-</para>
-
-</answer></qandaentry>
+
+ <programlisting>
+disable pred1
+ </programlisting>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para> Ppp блокируется во время передачи файла с ошибками ввода-вывода
@@ -8077,88 +8540,90 @@ default 10.0.0.2 UGSc 0 0 tun0
<para>Для вывода протокола взаимодействия с модемом вам нужно
включить следующее:</para>
-
-<para>
-<literallayout> set log +connect
- </literallayout>
-</para>
-
-<para>Это заставит <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ppp">ppp</ulink>
- протоколировать всё вплоть до последней прочтённой через "expect"
- строки.</para>
-
-<para>Если вы хотите видеть скорость соединения и используете
- PAP или CHAP (и поэтому вам не нужно определять никаких сценариев
- входа через "set login" после получения строки CONNECT сценарием
- дозвонки dial), вы должны указать ppp, что нужно ожидать полную
- строку CONNECT, вроде следующего:</para>
-
-<para>
-<literallayout> set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 4 \"\" ATZ OK-ATZ-OK ATDT\\T TIMEOUT 60 CONNECT \\c \\n"
- </literallayout>
-</para>
-
+
+ <programlisting>
+set log +connect
+ </programlisting>
+
+ <para>Это заставит <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?ppp">ppp</ulink> протоколировать
+ всё, вплоть до последней прочтённой через <quote>expect</quote>
+ строки.</para>
+
+ <para>Если вы хотите видеть скорость соединения и используете
+ PAP или CHAP (и поэтому вам не нужно определять никаких сценариев
+ входа через <literal>set login</literal> после получения строки CONNECT
+ сценарием дозвонки dial), вы должны указать ppp, что нужно ожидать полную
+ строку CONNECT, вроде следующего:</para>
+
+ <programlisting>
+set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 4 \
+ \"\" ATZ OK-ATZ-OK ATDT\\T TIMEOUT 60 CONNECT \\c \\n"
+ </programlisting>
+
<para>Здесь мы получили строку CONNECT, ничего не посылаем, затем
ожидаем символа перевода строки, заставляя <emphasis remap=bf>ppp</emphasis> принять
полный ответ модема.</para>
</answer></qandaentry>
-<qandaentry><question>
-<para>Ppp игнорирует символ `\' в chat-скрипте</para></question><answer>
-
-<para>Ppp обрабатывает каждую строку в ваших конфигурационных файлах, так что
- он может проинтерпретировать строку вида
- <emphasis remap=tt>set phone "123 456 789"</emphasis> правильно (и
- обнаружить. что номер является на самом деле
- <emphasis remap=bf>единственным</emphasis> аргументом. Для того, чтобы
- указать символ `&quot;', вы должны экранировать его символом
- обратного слэша (`\').</para>
-
-<para>Когда интерпретатор chat обрабатывает каждую строку, он ещё раз
- просматривает аргумент для того, чтобы найти какую-либо специальную
- последовательность типа `\P' или `\T' (обратитесь к
- Справочнику). В результате этой двойной интерпретации вы должны всегда
- использовать правильное число экранирующих символов.</para>
-
-<para>Если вам нужно передать символ `\', например, вашему модему,
- вам необходимо указать что-то типа:</para>
-
-<para>
- <literallayout>
- set dial "\"\" ATZ OK-ATZ-OK AT\\\\X OK"
- </literallayout>
-</para>
-
-<para>что приведёт к такой последовательности:</para>
-
-<para>
- <literallayout>
- ATZ
- OK
- AT\X
- OK
- </literallayout>
-</para>
-
-<para>или</para>
-
-<para>
-<literallayout> set phone 1234567
- set dial "\"\" ATZ OK ATDT\\T"
- </literallayout>
-</para>
-
-<para>что даст такую последовательность:</para>
-
-<para>
-<literallayout> ATZ
- OK
- ATDT1234567
- </literallayout>
-</para>
-
-</answer></qandaentry>
+
+<qandaentry>
+ <question>
+ <para>Ppp игнорирует символ <literal>\</literal>
+ в chat-скрипте</para>
+ </question>
+
+ <answer>
+
+ <para>Ppp обрабатывает каждую строку в ваших конфигурационных файлах, так что
+ он может проинтерпретировать строку вида
+ <literal>set phone "123 456 789"</literal> правильно (и
+ обнаружить. что номер является на самом деле
+ <emphasis remap=bf>единственным</emphasis> аргументом. Для того, чтобы
+ указать символ <literal>"</literal>, вы должны экранировать его символом
+ обратного слэша (<literal>\</literal>).</para>
+
+ <para>Когда интерпретатор chat обрабатывает каждую строку, он ещё раз
+ просматривает аргумент для того, чтобы найти какую-либо специальную
+ последовательность типа <literal>\P</literal> или <literal>\T</literal>
+ (обратитесь к Справочнику). В результате этой двойной интерпретации вы
+ должны всегда использовать правильное число экранирующих символов.</para>
+
+ <para>Если вам нужно передать символ <literal>\</literal>, например, вашему
+ модему, вам необходимо указать что-то типа:</para>
+
+ <programlisting>
+set dial "\"\" ATZ OK-ATZ-OK AT\\\\X OK"
+ </programlisting>
+
+ <para>что приведёт к такой последовательности:</para>
+
+ <programlisting>
+ATZ
+OK
+AT\X
+OK
+ </programlisting>
+
+ <para>или</para>
+
+ <programlisting>
+set phone 1234567
+set dial "\"\" ATZ OK ATDT\\T"
+ </programlisting>
+
+ <para>что даст такую последовательность:</para>
+
+ <programlisting>
+ATZ
+OK
+ATDT1234567
+ </programlisting>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para> Ppp получает ошибку защиты, но я не вижу файла <filename>ppp.core</filename>
@@ -8172,19 +8637,18 @@ default 10.0.0.2 UGSc 0 0 tun0
или по другому сигналу, который вызывает создание дампа памяти,
<emphasis remap=bf>и</emphasis> вы уверены, что используете самую последнюю версию (смотрите
самое начало раздела), то вы должны сделать следующее:</para>
-
-<para>
-<literallayout> $ tar xfz ppp-*.src.tar.gz
- $ cd ppp*/ppp
- $ echo STRIP= &gt;&gt;Makefile
- $ echo CFLAGS+=-g &gt;&gt;Makefile
- $ make clean all
- $ su
- # make install
- # chmod 555 /usr/sbin/ppp
- </literallayout>
-</para>
-
+
+ <screen>
+&prompt.user; <userinput>tar xfz ppp-*.src.tar.gz</userinput>
+&prompt.user; <userinput>cd ppp*/ppp</userinput>
+&prompt.user; <userinput>echo STRIP= &gt;&gt;Makefile</userinput>
+&prompt.user; <userinput>echo CFLAGS+=-g &gt;&gt;Makefile</userinput>
+&prompt.user; <userinput>make clean all</userinput>
+&prompt.user; <userinput>su</userinput>
+&prompt.root; <userinput>make install</userinput>
+&prompt.root; <userinput>chmod 555 /usr/sbin/ppp</userinput>
+ </screen>
+
<para>Теперь у вас есть отладочная версия ppp. Вам нужно
стать суперпользователем для запуска ppp, так как соответствующие
биты прав были убраны. Когда запустите ppp, обратите особое внимание
@@ -8192,21 +8656,20 @@ default 10.0.0.2 UGSc 0 0 tun0
<para>Итак, если ppp получит ошибку нарушения защиты, он сбросит дамп
памяти с именем ppp.core. Затем вам нужно сделать следующее:</para>
-
-<para>
-<literallayout> $ su
- # gdb /usr/sbin/ppp ppp.core
- (gdb) bt
- .....
- (gdb) f 0
- .....
- (gdb) i args
- .....
- (gdb) l
- .....
- </literallayout>
-</para>
-
+
+ <screen>
+&prompt.user; <userinput>su</userinput>
+&prompt.root; <userinput>gdb /usr/sbin/ppp ppp.core</userinput>
+<prompt>(gdb)</prompt> <userinput>bt</userinput>
+.....
+<prompt>(gdb)</prompt> <userinput>f 0</userinput>
+....
+<prompt>(gdb)</prompt> <userinput>i args</userinput>
+....
+<prompt>(gdb)</prompt> <userinput>l</userinput>
+.....
+ </screen>
+
<para>Вся эта информация должна быть предоставлена вместе с вашим
вопросом, чтобы проблему можно было продиагностировать.</para>
@@ -8221,11 +8684,11 @@ default 10.0.0.2 UGSc 0 0 tun0
затребованного соединения
</para></question><answer>
-<para>Эта проблема проявлялась, когда <emphasis remap=bf>ppp</emphasis> в режиме auto был
- настроен на динамическое согласование локального IP-адреса с
- противоположной стороной. Это исправлено в последней версии -
- поищите на странице справочника слово <emphasis remap=bf>iface</emphasis>.</para>
-
+ <para>Эта проблема проявлялась, когда <emphasis remap=bf>ppp</emphasis> в
+ режиме auto был настроен на динамическое согласование локального IP-адреса
+ с противоположной стороной. Это исправлено в последней версии -
+ поищите на странице справочника слово <literal>iface</literal>.</para>
+
<para>Причиной было то, что когда эта программа использует системный
вызов <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?connect">connect(2)</ulink>, для сокета назначается IP-адрес tun-интерфейса.
Ядро создаёт первый исходящий пакет и записывает его в устройство
@@ -8289,7 +8752,7 @@ default 10.0.0.2 UGSc 0 0 tun0
запущенной программой является программное обеспечение, с которым вы
испытываете проблемы, затем напустите tcpdump на tun-интерфейс
маршрутизатора либо включите протоколирование tcp/ip
- в ppp (``set log +tcp/ip'') на маршрутизаторе.</para>
+ в ppp (<literal>set log +tcp/ip</literal>) на маршрутизаторе.</para>
<para>Когда вы запустите некорректно работающее программное обеспечение,
вы должны увидеть пакеты, проходящие через маршрутизатор. Когда
@@ -8301,15 +8764,15 @@ default 10.0.0.2 UGSc 0 0 tun0
разделе /etc/ppp/ppp.conf заставит программное обеспечение
функционировать нормально:</para>
- <para>
- <literallayout>
-nat port proto internalmachine:port port
- </literallayout>
- </para>
+ <programlisting>
+nat port <replaceable>proto</replaceable> <replaceable>internalmachine</replaceable>:<replaceable>port</replaceable> <replaceable>port</replaceable>
+ </programlisting>
- <para>Здесь ``proto'' - это ``tcp'' либо ``udp'', ``internalmachine'' -
- это машина, которой вы хотите перенаправлять пакеты, и ``port'' - это
- номер порта получателя пакетов.</para>
+ <para>Здесь <replaceable>proto</replaceable> - это <literal>tcp</literal>
+ либо <literal>udp</literal>, <replaceable>internalmachine</replaceable> -
+ это машина, которой вы хотите перенаправлять пакеты,
+ и <replaceable>port</replaceable> - это номер порта получателя
+ пакетов.</para>
<para>Несомненно, вы не сможете использовать программное обеспечение на
других машинах, не изменяя указанную выше команду, а также запускать
@@ -8320,24 +8783,27 @@ nat port proto internalmachine:port port
<para>Если номера портов непостоянны, есть ещё три варианта:</para>
<para><emphasis remap=bf>1)</emphasis> Настройте поддержку этого в
- libalias. Примеры ``особых случаев'' можно найти в
- /usr/src/lib/libalias/alias_*.c (alias_ftp.c - хорошее начало). Это
+ libalias. Примеры <quote>особых случаев</quote> можно найти в
+ <filename>/usr/src/lib/libalias/alias_*.c</filename>
+ (<filename>alias_ftp.c</filename> - хорошее начало). Это
означает, что вам нужно будет использовать чтение некоторых распознаваемых
исходящих пакетов, обнаруживать команды для установления внешней машиной
обратной связи на внутреннюю машину на конкретный (случайный) порт и
- настраивать ``маршрут'' в таблице соответствий так, чтобы последующие
- пакеты проходили нормально.</para>
+ настраивать <quote>маршрут</quote> в таблице соответствий так, чтобы
+ последующие пакеты проходили нормально.</para>
<para>Это самое трудоёмкое решение, но оно наилучшее и позволит программному
обеспечению работать на нескольких машинах.</para>
<para><emphasis remap=bf>2)</emphasis> Используйте прокси-сервера.
Приложение может поддерживать, например, socks5 или (как в случае
- ``cvsup'') может иметь режим ``passive'', обходящийся без запросов к
- противоположной стороне на открытие обратного соединения.</para>
+ <quote>cvsup</quote>) может иметь режим <quote>passive</quote>, обходящийся
+ без запросов к противоположной стороне на открытие обратного
+ соединения.</para>
<para><emphasis remap=bf>3)</emphasis> Переназначьте всё на внутреннюю
- машину с помощью команды ``nat addr''. Это решение в лоб.</para>
+ машину с помощью команды <literal>nat addr</literal>. Это решение в
+ лоб.</para>
</answer>
</qandaentry>
@@ -8349,92 +8815,70 @@ nat port proto internalmachine:port port
</question><answer>
<para>Пока нет, но ниже находится список, могущий таковым стать (если
- к этому будет проявлен какой-либо интерес). В каждом примере <emphasis
- remap=tt>internal</emphasis> должно быть заменено IP адресом машины,
+ к этому будет проявлен какой-либо интерес). В каждом примере
+ <replaceable>internal</replaceable> нужно заменить на IP-адрес машины,
участвующей в игре.</para>
- <para>
- <itemizedlist>
- <listitem>
- <para><emphasis remap=bf>Asheron's Call</emphasis></para>
+ <itemizedlist>
+ <listitem>
+ <para><application>Asheron's Call</application></para>
- <para><emphasis remap=tt>nat
- port udp internal:65000 65000</emphasis></para>
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>:65000 65000</literal></para>
- <para>Находясь в игре, вручную смените номер порта на 65000. Если
- у вас есть несколько машин, на которых вы хотите играть, назначьте
- каждой машине уникальный номер порта (то есть 65001, 65002 и так
- далее), и добавьте по строчке <emphasis remap=tt>nat port</emphasis>
- для каждой машины.</para>
- </listitem>
- </itemizedlist>
- </para>
+ <para>Находясь в игре, вручную смените номер порта на 65000. Если
+ у вас есть несколько машин, на которых вы хотите играть, назначьте
+ каждой машине уникальный номер порта (то есть 65001, 65002 и так
+ далее), и добавьте по строчке <literal>nat port</literal> для каждой
+ машины.</para>
+ </listitem>
- <para>
- <itemizedlist>
- <listitem>
- <para><emphasis remap=bf>Half Life</emphasis></para>
+ <listitem>
+ <para><application>Half Life</application></para>
- <para><emphasis remap=tt>nat
- port udp internal:27005 27015</emphasis></para>
- </listitem>
- </itemizedlist>
- </para>
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>:27005 27015</literal></para>
+ </listitem>
- <para>
- <itemizedlist>
- <listitem>
- <para><emphasis remap=bf>PCAnywhere 8.0</emphasis></para>
+ <listitem>
+ <para><application>PCAnywhere 8.0</application></para>
- <para><emphasis remap=tt>nat
- port udp internal:5632 5632</emphasis></para>
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>:5632 5632</literal></para>
- <para><emphasis remap=tt>nat
- port tcp internal:5631 5631</emphasis></para>
- </listitem>
- </itemizedlist>
- </para>
+ <para><literal>nat port tcp
+ <replaceable>internal</replaceable>:5631 5631</literal></para>
+ </listitem>
- <para>
- <itemizedlist>
- <listitem>
- <para><emphasis remap=bf>Quake</emphasis></para>
+ <listitem>
+ <para><application>Quake</application></para>
- <para><emphasis remap=tt>nat
- port udp internal:6112 6112</emphasis></para>
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>:6112 6112</literal></para>
- <para>Альтернативное решение, обеспечивающее поддержку прокси для
- Quake, можно найти на сервере <ulink
- URL="http://www.battle.net/support/proxy/">
- www.battle.net</ulink>.</para>
- </listitem>
- </itemizedlist>
- </para>
+ <para>Альтернативное решение, обеспечивающее поддержку прокси для
+ Quake, можно найти на сервере <ulink
+ URL="http://www.battle.net/support/proxy/">
+ www.battle.net</ulink>.</para>
+ </listitem>
- <para>
- <itemizedlist>
- <listitem>
- <para><emphasis remap=bf>Quake 2</emphasis></para>
+ <listitem>
+ <para><application>Quake 2</application></para>
- <para><emphasis remap=tt>nat
- port udp internal:27901 27910</emphasis></para>
- </listitem>
- </itemizedlist>
- </para>
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>:27901 27910</literal></para>
+ </listitem>
- <para>
- <itemizedlist>
- <listitem>
- <para><emphasis remap=bf>Red Alert</emphasis></para>
+ <listitem>
+ <para><application>Red Alert</application></para>
- <para><emphasis remap=tt>nat
- port udp internal:8675 8675</emphasis></para>
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>:8675 8675</literal></para>
- <para><emphasis remap=tt>nat
- port udp internal:5009 5009</emphasis></para>
- </listitem>
- </itemizedlist>
- </para>
+ <para><literal>nat port udp
+ <replaceable>internal</replaceable>:5009 5009</literal></para>
+ </listitem>
+ </itemizedlist>
</answer>
</qandaentry>
@@ -8443,13 +8887,15 @@ nat port proto internalmachine:port port
<qandaentry><question>
<para>Что такое ошибки FCS?</para></question><answer>
-<para>FCS является сокращением от <emphasis remap=bf>F</emphasis>rame <emphasis remap=bf>C</emphasis>heck <emphasis remap=bf>S</emphasis>equence
- (контроль последовательности кадров). Каждый кадр ppp имеет
- контрольную сумму для проверки того, что принятые данные совпадают
- с переданными. Если FCS принятого пакета некорректна, пакет
- отбрасывается и счётчик FCS для HDLC увеличиваетя. Значения ошибок
- уровня HDLC можно вывести командой <emphasis remap=tt>show hdlc</emphasis>.</para>
-
+ <para>FCS является сокращением от <emphasis
+ remap=bf>F</emphasis>rame <emphasis remap=bf>C</emphasis>heck <emphasis
+ remap=bf>S</emphasis>equence
+ (контроль последовательности кадров). Каждый кадр ppp имеет
+ контрольную сумму для проверки того, что принятые данные совпадают
+ с переданными. Если FCS принятого пакета некорректна, пакет
+ отбрасывается и счётчик FCS для HDLC увеличиваетя. Значения ошибок
+ уровня HDLC можно вывести командой <literal>show hdlc</literal>.</para>
+
<para>Если у вас плохая линия (или драйвер коммуникационного адаптера
отбрасывает пакеты), ошибки FCS неизбежны. Это обычно не является
причиной для волнений, хотя это существенно замедляет протоколы
@@ -8457,17 +8903,19 @@ nat port proto internalmachine:port port
экранирования соединительного кабеля - это может избавить от
проблемы.</para>
-<para>Если ваша связь замирает, как только вы соединились и
- наблюдается большое количество ошибок FCS, это может быть вызвано
- не полной прозрачностью канала для 8-битовых данных. Проверьте, что
- модем не использует программного управоения потоком, используйте
- команду <literal>set accmap 0x000a0000</literal> для указания <emphasis remap=bf>ppp</emphasis>
- экранировать символы ^Q и ^S.</para>
-
-<para>Другой причиной слишком большого количества ошибок FCS может
+ <para>Если ваша связь замирает, как только вы соединились и
+ наблюдается большое количество ошибок FCS, это может быть вызвано
+ не полной прозрачностью канала для 8-битовых данных. Проверьте, что
+ модем не использует программного управления потоком (XON/XOFF). Если же
+ оборудование <emphasis>должно</emphasis> , использовать программное
+ управление потоком, то воспользуйтесь командой <literal>set accmap
+ 0x000a0000</literal> для указания <command>ppp</command> экранировать
+ символы <literal>^Q</literal> и <literal>^S</literal>.</para>
+
+ <para>Другой причиной слишком большого количества ошибок FCS может
быть прекращение противоположной стороной сеанса <acronym>PPP</acronym>.
В этом случае Вам может понадобиться включить протоколирование
- <emphasis remap=tt>async</emphasis> для проверки того, не являются ли поступаемые из линии
+ <literal>async</literal> для проверки того, не являются ли поступаемые из линии
данные на самом деле приглашениями login или shell. Если вы
получили приглашение shell с противоположной стороны, возможно
завершение ppp без обрыва связи командой <emphasis remap=tt>close lcp</emphasis>
@@ -8483,23 +8931,27 @@ nat port proto internalmachine:port port
<qandaentry id=PPPoEwithNAT>
<question>
- <para>Почему в Windows 98 соединения замирают, когда на маршрутизаторе
- используется PPPoE</para>
+ <para>Почему при работе в MacOS и Windows 98 соединения замирают, когда на
+ маршрутизаторе используется PPPoE</para>
</question>
<answer>
<para>Мы благодарим Майкла Возняка (Michael Wozniak)
- <email>mwozniak@netcom.ca</email>, который сообщил следующее:</para>
-
- <para>Это происходит из-за эффекта, который можно назвать "чёрной дырой"
- на маршрутизаторе. Windows 98 (и, может быть, другие операционные системы
- от Microsoft), посылают пакеты TCP с запрашиваемым размером сегмента,
- который слишком велик для того, чтобы быть помещённым в кадр PPPoE (для
- сети ethernet размер MTU по умолчанию равен 1500) <emphasis
- remap=bf>и</emphasis> с установленным битом "не фрагментировать" (по
- умолчанию для TCP), а маршрутизаторы Telco не посылает пакет ICMP "нужно
- фрагментировать" обратно на сайт www, с которым вы работаете. Когда
+ <email>mwozniak@netcom.ca</email>, который сообщил следующую информацию, и
+ Дэна Флемминга (Dan Flemming) <email>danflemming@mac.com</email> за решение
+ проблемы в случае Mac:</para>
+
+ <para>Это происходит из-за эффекта, который можно назвать <quote>чёрной
+ дырой</quote> на маршрутизаторе. MacOS и Windows 98 (и, может быть,
+ другие операционные
+ системы от Microsoft), посылают пакеты TCP с запрашиваемым размером
+ сегмента, который слишком велик для того, чтобы быть помещённым в кадр
+ PPPoE (для сети ethernet размер MTU по умолчанию равен 1500) <emphasis
+ remap=bf>и</emphasis> с установленным битом <quote>не
+ фрагментировать</quote> (по умолчанию для TCP), а маршрутизаторы Telco не
+ посылает пакет ICMP <quote>нужно фрагментировать</quote> обратно на сайт
+ www, с которым вы работаете. Когда
www-сервер посылает вам кадры, которые не помещаются в поток PPPoE, то
маршрутизаторы Telco их отбрасывают и странички не загружаются (часть
страниц/графики всё же видно, потому что они меньше, чем MSS). Похоже,
@@ -8525,23 +8977,40 @@ HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\0000\MaxMTU
for Windows NT</quote> для получения подробной информации по изменению
MTU в Windoze для работы с маршрутизатором FreeBSD/NAT/PPPoE.</para>
+ <para>К несчастью, в MacOS нет возможности изменить настройки TCP/IP. Однако
+ имеется коммерческое программное обеспечение, такое, как OTAdvancedTuner
+ (OT for OpenTransport, the MacOS TCP/IP stack) компании <ulink
+ URL="http://www.softworks.com/">Sustainable Softworks</ulink>, которое
+ позволяет пользователям настраивать параметры TCP/IP. Пользователи MacOS
+ NAT должны выбрать <literal>ip_interface_MTU</literal> из выпадающего меню,
+ ввести число <literal>1450</literal> вместо <literal>1500</literal> в окне,
+ затем щёлкнуть на кнопке, следующей за <literal>Save as Auto
+ Configure</literal>, и щёлкнуть на <literal>Make Active</literal>.</para>
+
</answer>
</qandaentry>
-<qandaentry><question>
-<para>Ничего не помогает - я уже отчаялся!</para></question><answer>
-
-<para>Если всё уже перепробовано, и ничего не получается, пошлите нам
- максимальное количество информации, ваш конфигурационный файл,
- способ запуска <emphasis remap=bf>ppp</emphasis>, соответствующие части файла протокола, и
- вывод команды <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?netstat">netstat -rn</ulink>
- (до и после соединения) в адрес списка рассылки
- <ulink URL="mailto:freebsd-questions@FreeBSD.org">freebsd-questions@FreeBSD.org</ulink> или в телеконференцию
- <ulink URL="news:comp.unix.bsd.freebsd.misc">comp.unix.bsd.freebsd.misc</ulink>, и может быть, кто-нибудь
- укажет вам верное направление.</para>
-
-</answer></qandaentry></qandaset>
+<qandaentry>
+ <question>
+ <para>Ничего не помогает - я уже отчаялся!</para>
+ </question>
+
+ <answer>
+
+ <para>Если всё уже перепробовано, и ничего не получается, пошлите нам
+ максимальное количество информации, ваш конфигурационный файл,
+ способ запуска <emphasis remap=bf>ppp</emphasis>, соответствующие части
+ файла протокола, и вывод команды <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?netstat">netstat -rn</ulink>
+ (до и после соединения) в адрес списка рассылки
+ <email>freebsd-questions@FreeBSD.org</email> или в телеконференцию <ulink
+ URL="news:comp.unix.bsd.freebsd.misc">comp.unix.bsd.freebsd.misc</ulink>,
+ и может быть, кто-нибудь укажет вам верное направление.</para>
+
+ </answer>
+</qandaentry>
+</qandaset>
</chapter>
@@ -8561,46 +9030,40 @@ id="serial">
порты, с поддержкой которых было откомпилировано. Вы можете
повнимательней присмотреться к выдаваемым сообщениям либо выполнить
команду</para>
-
-<para>
-<literallayout> dmesg | grep sio
- </literallayout>
-</para>
-
-
-<para>после загрузки и запуска системы.</para>
-
+ <screen>
+&prompt.user; <userinput>dmesg | grep sio</userinput>
+ </screen>
-
-<para>Вот пример вывода указанной команды:</para>
-
-<para>
-<literallayout> sio0 at 0x3f8-0x3ff irq 4 on isa
- sio0: type 16550A
- sio1 at 0x2f8-0x2ff irq 3 on isa
- sio1: type 16550A
- </literallayout>
-</para>
-
+ <para>после загрузки и запуска системы.</para>
-
-<para>Здесь присутствуют два последовательных порта. Первый использует
- irq 4, порт ввода/вывода <literal>0x3f8</literal> и построен на микросхеме UART типа
- 16550A. Второй использует тот же тип микросхемы, но использует irq 3 и
- адрес порта ввода/вывода <literal>0x2f8</literal>. Внутренние модемы выглядят точно
- также, как последовательные порты, за исключением того, что к ним
- всегда ``подключен'' модем.</para>
-
-<para>В ядро <acronym>GENERIC</acronym> встроена поддержка двух
- последовательных портов, с irq и адресами портов ввода/вывода, как в
- примере выше. Если эти настройки не соответствуют вашим, или если вы
- добавили внутренние модемы, или у вас больше последовательных портов, чем
- описано в ядре, просто переконфигурируйте ядро. За дополнительной
- информацией обратитесь к разделу <link linkend="make-kernel">о построении
- ядра</link>.</para>
+ <para>Вот пример вывода указанной команды:</para>
+
+ <programlisting>
+sio0 at 0x3f8-0x3ff irq 4 on isa
+sio0: type 16550A
+sio1 at 0x2f8-0x2ff irq 3 on isa
+sio1: type 16550A
+ </programlisting>
+
+ <para>Здесь присутствуют два последовательных порта. Первый использует irq
+ 4, порт ввода/вывода <literal>0x3f8</literal> и построен на микросхеме
+ UART типа 16550A. Второй использует тот же тип микросхемы, но использует
+ irq 3 и адрес порта ввода/вывода <literal>0x2f8</literal>. Внутренние
+ модемы выглядят точно также, как последовательные порты, за исключением
+ того, что к модем ним <quote>подключен</quote> всегда.</para>
+
+ <para>В ядро <filename>GENERIC</filename> встроена поддержка двух
+ последовательных портов, с irq и адресами портов ввода/вывода, как в
+ примере выше. Если эти настройки не соответствуют вашим, или если вы
+ добавили внутренние модемы, или у вас больше последовательных портов, чем
+ описано в ядре, просто переконфигурируйте ядро. За дополнительной
+ информацией обратитесь к разделу <link linkend="make-kernel">о построении
+ ядра</link>.</para>
+
+ </answer>
+</qandaentry>
-</answer></qandaentry>
<qandaentry><question>
<para> Как узнать, какие внутренние модемы были обнаружены FreeBSD?
@@ -8612,17 +9075,22 @@ id="serial">
</answer></qandaentry>
-<qandaentry><question>
-<para> Я только что поставил 2.0.5 и не нашёл устройств <emphasis remap=tt>tty0X</emphasis>!
- </para></question><answer>
-<para>Не волнуйтесь, они были объединены с устройствами <emphasis remap=tt>ttydX</emphasis>.
- Вам придётся подправить конфигурационные файлы, которые вы раньше
- использовали.</para>
-
+<qandaentry>
+ <question>
+ <para>Я только что поставил 2.0.5 и не нашёл устройств
+ <filename>tty0X</filename>!</para>
+ </question>
+
+ <answer>
+
+ <para>Не волнуйтесь, просто они были объединены с устройствами
+ <filename>ttydX</filename>. Вам придётся подправить конфигурационные
+ файлы, которые вы раньше использовали.</para>
+
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question>
<para> Как осуществляется доступ к последовательным портам во FreeBSD?
@@ -8636,50 +9104,46 @@ id="serial">
-<para>Вы должны использовать <emphasis remap=tt>ttydX</emphasis> для входящих соединений. При
- открытии <filename>/dev/ttydX</filename> в блокирующем режиме, процесс будет
- ожидать неактивности соответствующего устройства <emphasis remap=tt>cuaaX</emphasis>, а затем
- появления сигнала о наличии несущей. При открытии устройства
- <emphasis remap=tt>cuaaX</emphasis>, он проверяет, что последовательный порт не используется
- уже устройством <emphasis remap=tt>ttydX</emphasis>. Если порт доступен, он ``похищает'' его
- у устройства <emphasis remap=tt>ttydX</emphasis>. Также устройство <emphasis remap=tt>cuaXX</emphasis> не следит за
- наличием несущей. С такой схемой работы и модемом, находящимся в
- режиме автоответа, вы можете позволить пользователям входить в
- систему и в то же время можете осуществлять исходящие звонки, а
- система позаботится о возможных конфликтах.</para>
-
+ <para>Вы должны использовать <filename>ttydX</filename> для входящих
+ соединений. При открытии <filename>/dev/ttydX</filename> в блокирующем
+ режиме, процесс будет ожидать неактивности соответствующего устройства
+ <filename>cuaaX</filename>, а затем появления сигнала о наличии несущей.
+ При открытии устройства <filename>cuaaX</filename>, он проверяет, что
+ последовательный порт не используется уже устройством
+ <filename>ttydX</filename>. Если порт доступен, он <quote>похищает</quote>
+ его у устройства <filename>ttydX</filename>. Также устройство
+ <filename>cuaXX</filename> не следит за наличием несущей. С такой схемой
+ работы и модемом, находящимся в режиме автоответа, вы можете позволить
+ пользователям входить в систему и в то же время можете осуществлять
+ исходящие звонки, а система позаботится о возможных конфликтах.</para>
+
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question>
<para> Как включить поддержку многопортовых последовательных адаптеров?
</para></question><answer>
-<para>Повторим ещё раз: информация о конфигурировании ядра содержится в
- разделе, посвящённом этому вопросу. Для многопортовых последовательных
- адаптеров в файле конфигурации ядра поместите ключевое слово
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?sio">sio</ulink>
- для каждого порта на адаптере. Но irq и вектор должен быть указан
- только у одного порта. Все порты на адаптере должны использовать одно
- и то же irq. Используйте последний последовательный порт для указания
- irq. Также включите опцию <symbol>COM_MULTIPORT</symbol>.</para>
-
+ <para>Повторим ещё раз: информация о конфигурировании ядра содержится в
+ разделе, посвящённом этому вопросу. Для многопортовых последовательных
+ адаптеров в файле конфигурации ядра поместите ключевое слово
+ <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?sio">sio</ulink>
+ для каждого порта на адаптере. Но irq и вектор должен быть указан
+ только у одного порта. Все порты на адаптере должны использовать одно
+ и то же irq. Используйте последний последовательный порт для указания
+ irq. Также включите опцию <literal>COM_MULTIPORT</literal>.</para>
-
<para>В следующем примере дано описание 4-портового адаптер AST на irq 7:</para>
-
-<para>
-<literallayout> options "COM_MULTIPORT"
- device sio4 at isa? port 0x2a0 tty flags 0x781
- device sio5 at isa? port 0x2a8 tty flags 0x781
- device sio6 at isa? port 0x2b0 tty flags 0x781
- device sio7 at isa? port 0x2b8 tty flags 0x781 irq 7 vector siointr
- </literallayout>
-</para>
-
-
+ <programlisting>
+options "COM_MULTIPORT"
+device sio4 at isa? port 0x2a0 tty flags 0x781
+device sio5 at isa? port 0x2a8 tty flags 0x781
+device sio6 at isa? port 0x2b0 tty flags 0x781
+device sio7 at isa? port 0x2b8 tty flags 0x781 irq 7 vector siointr
+ </programlisting>
+
<para>Флаги указывают, что управляющий порт имеет младший номер
устройства 7 (<literal>0x700</literal>), включена диагностика на время обнаружения
(<literal>0x080</literal>), и все порты используют одно и то же irq (<literal>0x001</literal>).</para>
@@ -8701,63 +9165,56 @@ id="serial">
<para> Можно ли установить режим работы по умолчанию для порта?
</para></question><answer>
-<para>Вашему приложению может понадобиться открыть устройства
- <emphasis remap=tt>ttydX</emphasis> (или <emphasis remap=tt>cuaaX</emphasis>). Когда процесс открывает устройство,
- оно имеет набор параметров ввода/вывода. Вы можете посмотреть их
- значения командой</para>
-
-<para>
-<literallayout> stty -a -f /dev/ttyd1
- </literallayout>
-</para>
-
+ <para>Вашему приложению может понадобиться открыть устройства
+ <filename>ttydX</filename> (или <filename>cuaaX</filename>). Когда процесс
+ открывает устройство, оно имеет набор параметров ввода/вывода. Вы можете
+ посмотреть их значения командой</para>
-
-<para>Когда вы меняете настройки этого устройства, они действуют
- вплоть до закрытия устройства. При повторном открытии оно будут
- иметь режимы работы по умолчанию. Чтобы изменить значения режимов
- работы по умолчанию, вы можете открыть и изменить настройки в
- устройстве ``начального состояния''. Например, чтобы сделать режимом
- по умолчанию режим <acronym>CLOCAL</acronym>, 8 бит, и управление потоком
- <filename>XON/XOFF</filename> для устройства ttyd5, сделайте следующее:</para>
-
-<para>
-<literallayout> stty -f /dev/ttyid5 clocal cs8 ixon ixoff
- </literallayout>
-</para>
-
+ <screen>
+&prompt.root; <userinput>stty -a -f /dev/ttyd1</userinput>
+ </screen>
-
-<para>Для выполнения таких действий предназначен скрипт
- <filename>/etc/rc.serial</filename>. Теперь при открытии устройства <emphasis remap=tt>ttyd5</emphasis>
- приложение будет иметь именно такой режим работы с портом. Оно,
- однако. может изменить эти режимы по своему усмотрению.</para>
-
+ <para>Когда вы меняете настройки этого устройства, они действуют
+ вплоть до закрытия устройства. При повторном открытии оно будут
+ иметь режимы работы по умолчанию. Чтобы изменить значения режимов
+ работы по умолчанию, вы можете открыть и изменить настройки в устройстве
+ <quote>начального состояния</quote>. Например, чтобы сделать режимом
+ по умолчанию режим <acronym>CLOCAL</acronym>, 8 бит, и управление потоком
+ <filename>XON/XOFF</filename> для устройства ttyd5, сделайте
+ следующее:</para>
-
-<para>Вы можете запретить изменение приложением некоторых режимов работы,
- выполнив настройки устройства ``постоянного состояния''. Например,
- чтобы сделать скорость работы <emphasis remap=tt>ttyd5</emphasis> постоянно равной 57600 bps,
- выполните</para>
-
-<para>
-<literallayout> stty -f /dev/ttyld5 57600
- </literallayout>
-</para>
-
+ <screen>
+&prompt.root; <userinput>stty -f /dev/ttyid5 clocal cs8 ixon ixoff</userinput>
+ </screen>
-
-<para>Теперь, если приложение откроет <emphasis remap=tt>ttyd5</emphasis> и попытается изменить
- скорость работы порта, она всё равно останется равной 57600 bps.</para>
-
+ <para>Для выполнения таких действий предназначен скрипт
+ <filename>/etc/rc.serial</filename>. Теперь при открытии устройства
+ <filename>ttyd5</filename> приложение будет иметь именно такой режим
+ работы с портом. Оно, однако. может изменить эти режимы по своему
+ усмотрению.</para>
+
+ <para>Вы можете запретить изменение приложением некоторых режимов работы,
+ выполнив настройки устройства <quote>постоянного состояния</quote>.
+ Например, чтобы сделать скорость работы <filename>ttyd5</filename>
+ постоянной и равной 57600 bps, выполните</para>
+
+ <screen>
+&prompt.root; <userinput>stty -f /dev/ttyld5 57600</userinput>
+ </screen>
+
+ <para>Теперь, если приложение откроет <filename>ttyd5</filename> и попытается
+ изменить скорость работы порта, она всё равно останется равной 57600
+ bps.</para>
+
+ <para>Естественно, вы должны сделать устройства начального и
+ постоянного состояний доступными на запись только пользователю
+ <username>root</username>. Скрипт <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?MAKEDEV">MAKEDEV</ulink>
+ при создании файлов устройств этого <emphasis>НЕ</emphasis> делает.</para>
+
+ </answer>
+</qandaentry>
-
-<para>Естественно, вы должны сделать устройства начального и
- постоянного состояний доступными на запись только пользователю
- <emphasis remap=tt>root</emphasis>. Скрипт <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?MAKEDEV">MAKEDEV</ulink>
- при создании файлов устройств этого <emphasis remap=bf>НЕ</emphasis> делает.</para>
-
-</answer></qandaentry>
<qandaentry><question>
<para>Как сделать вход через модем?</para></question><answer>
@@ -8778,12 +9235,11 @@ id="serial">
<para>Для большинства модемов, поддерживающих набор команд Hayes,
следующая последовательность команд выполнит эти настройки и
сохранит их в энергонезависимой памяти:</para>
-
-<para>
-<literallayout> AT &amp;C1 &amp;D3 &amp;K3 &amp;Q6 S0=1 &amp;W
- </literallayout>
-</para>
-
+
+ <programlisting>
+AT &amp;C1 &amp;D3 &amp;K3 &amp;Q6 S0=1 &amp;W
+ </programlisting>
+
<para>Информация о том, как сделать эти настройки без обращения к терминальным
программам MS-DOS, содержится в разделе о <link
linkend="direct-at">посылке AT-команд</link>.</para>
@@ -8791,66 +9247,60 @@ id="serial">
<para>Затем опишите модем в файле <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ttys">/etc/ttys</ulink>.
В нём перечислены все порты, с которых операционная система ожидает
входа пользователей. Добавьте строку, которая выглядит как эта:</para>
-
-<para>
-<literallayout> ttyd1 "/usr/libexec/getty std.57600" dialup on insecure
- </literallayout>
-</para>
-
-
-<para>В этой строке указано, что ко второму последовательному порту
- (<filename>/dev/ttyd1</filename>) подключен модем на скорости 57600 bps без
- контроля по чётности (<emphasis remap=tt>std.57600</emphasis>, что берётся из файла
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?gettytab">/etc/gettytab</ulink>). Тип терминала для этого порта определён
- как ``dialup''. Порт включен (``on'') и небезопасен (``insecure''),
- что означает, что попытки войти в систему пользователем root с этого
- порта будут отвергнуты. Для портов, обслуживающих входящие звонки,
- как этот, используйте устройства <emphasis remap=tt>ttydX</emphasis>.</para>
-
+ <programlisting>
+ttyd1 "/usr/libexec/getty std.57600" dialup on insecure
+ </programlisting>
-
-<para>Использование слова ``dialup'' в качестве имени терминала является
- обычной практикой. Многие пользователи включают в свои файлы
- .profile или .login скрипты для задания реального типа терминала, если
- начальным является тип dialup. В примере порт описан небезопасным.
- Чтобы войти администратором на этом порту, вам нужно войти обычным
- пользователем, а затем командой ``<ulink URL="http://www.FreeBSD.org/cgi/man.cgi?su">su</ulink>'' стать
- пользователем <emphasis remap=tt>root</emphasis>. Если порт имеет атрибут ``secure'', то
- пользователь <emphasis remap=tt>root</emphasis> может входить с этого порта непосредственно.</para>
-
+ <para>В этой строке указано, что ко второму последовательному порту
+ (<filename>/dev/ttyd1</filename>) подключен модем на скорости 57600 bps без
+ контроля по чётности (<literal>std.57600</literal>, что берётся из файла
+ <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?gettytab">/etc/gettytab</ulink>).
+ Тип терминала для этого порта определён как <literal>dialup</literal>.
+ Порт включен (<literal>on</literal>) и небезопасен
+ (<literal>insecure</literal>), что означает, что попытки войти в систему
+ пользователем root с этого порта будут отвергнуты. Для портов,
+ обслуживающих входящие звонки, как этот, используйте устройства вида
+ <literal>ttydX</literal>.</para>
+
+ <para>Использование слова <literal>dialup</literal> в качестве имени
+ терминала является обычной практикой. Многие пользователи включают в свои
+ файлы .profile или .login скрипты для задания реального типа терминала, если
+ начальным является тип dialup. В примере порт описан небезопасным.
+ Чтобы войти пользователем <username>root</username> на этом порту, вам
+ нужно сначала войти обычным пользователем, а затем командой
+ <command>su</command> стать пользователем <username>root</username>. Если
+ порт имеет атрибут <literal>secure</literal>, то пользователь
+ <username>root</username> может входить с этого порта
+ непосредственно.</para>
-
<para>После модифицирования <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ttys">/etc/ttys</ulink>, вам
нужно послать сигнал потери связи или <acronym>HUP</acronym> процессу <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?init">init</ulink>:</para>
-
-<para>
-<literallayout> kill -HUP 1
- </literallayout>
-</para>
-
-
-<para>Это заставит процесс init снова прочитать файл <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ttys">/etc/ttys</ulink>.
- Процесс init запустит процессы getty для всех включенных портов.
- Вы можете проверить, доступны ли входы с конкретного порта, выполнив
- команду</para>
-
-<para>
-<literallayout> ps -ax | grep '[t]tyd1'
- </literallayout>
-</para>
-
+ <screen>
+&prompt.root; <userinput>kill -HUP 1</userinput>
+ </screen>
+
+ <para>Это заставит процесс init снова прочитать файл <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?ttys">/etc/ttys</ulink>.
+ Процесс init запустит процессы getty для всех портов с характеристикой
+ <literal>on</literal>. Вы можете проверить, доступны ли входы с
+ конкретного порта, выполнив команду</para>
+
+ <screen>
+&prompt.user; <userinput>ps -ax | grep '[t]tyd1'</userinput>
+ </screen>
+
+ <para>Вы должны увидеть нечто вроде следующего:</para>
+
+ <programlisting>
+747 ?? I 0:00.04 /usr/libexec/getty std.57600 ttyd1
+ </programlisting>
+
+ </answer>
+</qandaentry>
-
-<para>Вы должны увидеть нечто вроде следующего:</para>
-
-<para>
-<literallayout> 747 ?? I 0:00.04 /usr/libexec/getty std.57600 ttyd1
- </literallayout>
-</para>
-
-</answer></qandaentry>
<qandaentry><question>
<para>Как подключить терминал к FreeBSD?</para></question><answer>
@@ -8859,108 +9309,107 @@ id="serial">
терминала для FreeBSD, соедините их послежовательные порты
нуль-модемным кабелем. Если у вас есть терминал, обратитесь к его
документации.</para>
-
-
<para>Затем модифицируйте файл <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?ttys">/etc/ttys</ulink>
описанным выше способом. Например, если вы подключаете терминал
WYSE-50 к пятому последовательному порту, используйте такую строчку:</para>
-
-<para>
-<literallayout> ttyd4 "/usr/libexec/getty std.38400" wyse50 on secure
- </literallayout>
-</para>
-
-
-<para>В этом примере описан порт на <filename>/dev/ttyd4</filename>, имеющий
- терминал wyse50, подключенный на скорости 34800 bps без контроля по
- четности (<emphasis remap=tt>std.38400</emphasis> из <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?gettytab">/etc/gettytab</ulink>) и разрешён непосредственный вход пользователя
- <emphasis remap=tt>root</emphasis> (secure).</para>
-
+ <programlisting>
+ttyd4 "/usr/libexec/getty std.38400" wyse50 on secure
+ </programlisting>
-
-</answer></qandaentry>
+ <para>В этом примере описан порт на <filename>/dev/ttyd4</filename>, имеющий
+ терминал wyse50, подключенный на скорости 34800 bps без контроля по
+ четности (<literal>std.38400</literal> из <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?gettytab">/etc/gettytab</ulink>) и
+ разрешён непосредственный вход пользователя <username>root</username>
+ (secure).</para>
-<qandaentry><question>
-<para>Почему не удаётся запустить <emphasis remap=tt>tip</emphasis> или <emphasis remap=tt>cu</emphasis>?</para></question><answer>
+ </answer>
+</qandaentry>
-<para>Скорее всего, в вашей системе запуск программ <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?tip">tip</ulink> и <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?cu">cu</ulink> разрешён только
- пользователю <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?uucp">uucp</ulink> и членам группы <emphasis remap=tt>dialer</emphasis>. Вы можете использовать
- группу <emphasis remap=tt>dialer</emphasis> для управления доступом к вашему модему или
- удалённым системам. Достаточно добавить пользоватея в группу dialer.</para>
-
-
-<para>Вы можете разрешить всем пользователям вашей системы запускать
- <emphasis remap=tt>tip</emphasis> и <emphasis remap=tt>cu</emphasis>, выполнив команды:</para>
-
-<para>
-<literallayout> # chmod 4511 /usr/bin/cu
- # chmod 4511 /usr/bin/tip
- </literallayout>
-</para>
-
+<qandaentry>
+ <question>
+ <para>Почему не удаётся запустить <command>tip</command> или
+ <command>cu</command>?</para>
+ </question>
+
+ <answer>
+
+ <para>Скорее всего, в вашей системе запуск программ <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?tip">tip</ulink> и <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?cu">cu</ulink> разрешён только
+ пользователю <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?uucp">uucp</ulink> и членам группы
+ <literal>dialer</literal>. Вы можете использовать группу
+ <literal>dialer</literal> для управления доступом к вашему модему или
+ удалённым системам. Достаточно добавить пользоватея в группу
+ dialer.</para>
+
+ <para>Вы можете разрешить всем пользователям вашей системы запускать
+ <command>tip</command> и <command>cu</command>, выполнив команды:</para>
+
+ <screen>
+&prompt.root; <userinput>chmod 4511 /usr/bin/cu</userinput>
+&prompt.root; <userinput>chmod 4511 /usr/bin/tip</userinput>
+ </screen>
+
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question>
<para> Мой модем Hayes не поддерживается---что можно сделать?
</para></question><answer>
-<para>На самом деле страница справочника о программе <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?tip">tip</ulink> устарела.
- Модемы Hayes поддерживаются системой. Просто добавьте
- ``<literal>at=hayes</literal>'' в ваш файл <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?remote">/etc/remote</ulink>.</para>
-
+ <para>На самом деле страница Справочника о программе <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?tip">tip</ulink> устарела. Модемы
+ Hayes поддерживаются системой. Просто добавьте
+ <literal>at=hayes</literal> в ваш файл <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?remote">/etc/remote</ulink>.</para>
+
+ <para>Драйвер модемов Hayes не достаточно умён, чтобы поддерживать
+ некоторые из новых возможностей современных модемов---сообщения
+ типа <literal>BUSY</literal>, <literal>NO DIALTONE</literal> или
+ <literal>CONNECT 115200</literal> будут приводить его в замешательство. Вы
+ должны выключить вывод таких сообщений при использовании программы <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?tip">tip</ulink> (командой
+ <literal>ATX0&amp;W</literal>).</para>
+
+ <para>Кроме того, значение таймаута по умолчанию для программы
+ <command>tip</command> равен 60 секундам. Ваш модем должен использовать
+ меньшее значение, иначе tip будет думать, что у вас проблемы со связью.
+ Попробуйте <literal>ATS7=45&amp;W</literal>.</para>
-
-<para>Драйвер модемов Hayes не достаточно умён, чтобы поддерживать
- некоторые из новых возможностей современных модемов---сообщения
- типа <acronym>BUSY</acronym>, <emphasis remap=tt>NO DIALTONE</emphasis>, или <emphasis remap=tt>CONNECT 115200</emphasis> будут
- приводить его в замешательство. Вы должны выключить вывод таких
- сообщений при использовании программы <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?tip">tip</ulink> (командой
- <emphasis remap=tt>ATX0&amp;W</emphasis>).</para>
-
-
-
-<para>Таймаут по умолчанию для программы <emphasis remap=tt>tip</emphasis> равен 60 секундам.
- Ваш модем должен использовать меньшее значение, иначе tip будет
- думать, что у вас проблемы со связью. Попробуйте <literal>ATS7=45&amp;W</literal>.</para>
-
-
-
<para>На самом деле <emphasis remap=tt>tip</emphasis> в том виде, каком поставляется, не
поддержимает можемы Hayes полностью. Решением является редактирование
файла <filename>tipconf.h</filename> в каталоге <filename>/usr/src/usr.bin/tip/tip</filename>.
Чтобы это сделать, вам нужен дистрибутив исходных текстов системы.</para>
-
-
-<para>Замените строку ``<emphasis remap=tt>#define HAYES 0</emphasis>'' на ``<emphasis remap=tt>#define HAYES
- 1</emphasis>''. Затем выполните ``<emphasis remap=tt>make</emphasis>'' и ``<emphasis remap=tt>make install</emphasis>''. После
- этих действий всё работает замечательно.</para>
-
+ <para>Замените строку <literal>#define HAYES 0</literal> на <literal>#define
+ HAYES 1</literal>. Затем выполните команды <command>make</command> и
+ <command>make install</command>. После этих действий всё работает
+ замечательно.</para>
+
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question
id="direct-at">
<para> Как я должен ввести эти AT-команды?
</para></question><answer>
-<para>Создайте так называемое ``<emphasis remap=tt>прямое</emphasis>'' описание в вашем файле
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?remote">/etc/remote</ulink>. Например, если ваш модем подключен к первому
- последовательному порту, <filename>/dev/cuaa0</filename>, сделайте такую строку:</para>
-
-<para>
-<literallayout> cuaa0:dv=/dev/cuaa0:br#19200:pa=none
- </literallayout>
-</para>
-
+ <para>Создайте так называемое <quote>прямое</quote> описание в вашем файле
+ <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?remote">/etc/remote</ulink>.
+ Например, если ваш модем подключен к первому последовательному порту,
+ <filename>/dev/cuaa0</filename>, сделайте такую строку:</para>
+
+ <programlisting>
+cuaa0:dv=/dev/cuaa0:br#19200:pa=none
+ </programlisting>
-
<para>Укажите максимальную скорость обмена с портом, поддерживаемую
модемом в параметре br. Затем выполните команду <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?tip">tip cuaa0</ulink> и
вы подключитесь к модему.</para>
@@ -8969,127 +9418,124 @@ id="direct-at">
<para>Если в вашей системе нет устройства <filename>/dev/cuaa0</filename>, сделайте
следующее:</para>
-
-<para>
-<literallayout> # cd /dev
- # ./MAKEDEV cuaa0
- </literallayout>
-</para>
-
-
+ <screen>
+&prompt.root; <userinput>cd /dev</userinput>
+&prompt.root; <userinput>sh MAKEDEV cuaa0</userinput>
+ </screen>
+
<para>Или используйте cu, войдя администратором, с такими параметрами:</para>
-
-<para>
-<literallayout> # cu -l``line'' -s``speed''
- </literallayout>
-</para>
-
-
-<para>где line - это имя последовательного порта (например,
- <filename>/dev/cuaa0</filename>), а speed - скорость работы модема с портом
- (например, <emphasis remap=tt>57600</emphasis>). После ввода AT-команд, наберите
- <emphasis remap=tt>~.</emphasis> для завершения работы.</para>
-
+ <screen>
+&prompt.root; <userinput>cu -l<replaceable>line</replaceable> -s<replaceable>speed</replaceable></userinput>
+ </screen>
-
-</answer></qandaentry>
+ <para>где line - это имя последовательного порта (например,
+ <filename>/dev/cuaa0</filename>), а speed - скорость работы модема с портом
+ (например, <literal>57600</literal>). После ввода AT-команд, наберите
+ <literal>~.</literal> для завершения работы.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Знак <literal>&lt;@&gt;</literal> для описания характеристики pn
+ не работает!
+ </para>
+ </question>
+
+ <answer>
+
+ <para>Знак <literal>&lt;@&gt;</literal> в характеристике, описывающей
+ номер телефона, указывает программе tip обратиться к файлу
+ <filename>/etc/phones</filename> для поиска телефонного номера. Однако
+ знак <literal>&lt;@&gt;</literal> является также и специальным символом в
+ файлах описания характеристик типа <filename>/etc/remote</filename>.
+ Экранируйте его символом обратного слэша:</para>
+
+ <programlisting>pn=\@</programlisting>
+
+ </answer>
+</qandaentry>
-<qandaentry><question>
-<para>Знак <emphasis remap=tt><@></emphasis> для описания характеристики pn
- не работает!</para></question><answer>
-
-<para>Знак <emphasis remap=tt><@></emphasis> в характеристике, описывающей
- номер телефона, указывает программе tip обратиться к файлу <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?phones(5)">/etc/phones</ulink>
- для поиска телефонного номера. Однако знак <emphasis
- remap=tt><@></emphasis> является также и специальным символом в файлах
- описания характеристик типа <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?remote">/etc/remote</ulink>.
- Экранируйте его символом обратного слэша:</para>
-
-<para>
-<literallayout> pn=\@
- </literallayout>
-</para>
-
-</answer></qandaentry>
<qandaentry><question>
<para>Как набрать телефонный номер из командной строки?</para></question><answer>
-<para>Поместите так называемое ``<emphasis remap=tt>общее</emphasis>'' описание в ваш файл
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?remote">/etc/remote</ulink>. Например:</para>
-
-<para>
-<literallayout> tip115200|Dial any phone number at 115200 bps:\
- :dv=/dev/cuaa0:br#115200:at=hayes:pa=none:du:
- tip57600|Dial any phone number at 57600 bps:\
- :dv=/dev/cuaa0:br#57600:at=hayes:pa=none:du:
- </literallayout>
-</para>
-
+ <para>Поместите так называемое <quote>общее</quote> описание в ваш файл
+ <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?remote">/etc/remote</ulink>.
+ Например:</para>
-
-<para>Тогда вы сможете выполнять команды вроде ``<command>tip -115200
- 5551234</command>''. Если предпочитаете программу <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?cu">cu</ulink>, а не <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?tip">tip</ulink>, используйте общее описание для cu:</para>
-
-<para>
-<literallayout> cu115200|Use cu to dial any number at 115200bps:\
+ <programlisting>
+tip115200|Dial any phone number at 115200 bps:\
+ :dv=/dev/cuaa0:br#115200:at=hayes:pa=none:du:
+tip57600|Dial any phone number at 57600 bps:\
+ :dv=/dev/cuaa0:br#57600:at=hayes:pa=none:du:
+ </programlisting>
+
+ <para>Тогда вы сможете выполнять команды вроде <command>tip -115200
+ 5551234</command>. Если предпочитаете программу <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?cu">cu</ulink>, а не <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?tip">tip</ulink>, используйте
+ общее описание для cu:</para>
+
+ <programlisting>
+cu115200|Use cu to dial any number at 115200bps:\
:dv=/dev/cuaa1:br#57600:at=hayes:pa=none:du:
- </literallayout>
-</para>
-
+ </programlisting>
-
-<para>и выполняйте команду ``<command>cu 5551234 -s 115200</command>''.</para>
-
+ <para>и выполняйте команду <command>cu 5551234 -s 115200</command>.</para>
+
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question>
<para> Нужно ли при этом каждый раз задавать скорость работы с портом?
</para></question><answer>
-<para>Создайте описание для <emphasis remap=tt>tip1200</emphasis> или <emphasis remap=tt>cu1200</emphasis>, но не
- останавливайтесь на этом и используйте подходящую скорость
- при задании характеристики br. <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?tip">Tip</ulink> полагает,
- что хорошим значением по умолчанию является 1200 bps, поэтому он
- использует описание для ``<emphasis remap=tt>tip1200</emphasis>''. Однако вас никто не
- заставляет использовать именно эту скорость.</para>
-
-</answer></qandaentry>
+ <para>Создайте описание для <literal>tip1200</literal> или
+ <literal>cu1200</literal>, но не останавливайтесь на этом и используйте
+ подходящую скорость при задании характеристики br. <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?tip">Tip</ulink> полагает,
+ что хорошим значением по умолчанию является 1200 bps, поэтому он
+ использует описание для <literal>tip1200</literal>. Однако вас никто не
+ заставляет использовать именно эту скорость.</para>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para> Мне нужно иметь доступ к нескольких хостам через терминальный сервер.
</para></question><answer>
-<para>Вместо того, чтобы каждый раз ожидать подключения к терминальному
- серверу, а затем набирать команду ``<emphasis remap=tt>CONNECT &lt;host&gt;</emphasis>'',
- используйте характеристику <emphasis remap=tt>cm</emphasis> программы tip. Например, вот такое
- описание в файле <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?remote">/etc/remote</ulink>:</para>
-
-<para>
-<literallayout> pain|pain.deep13.com|Forrester's machine:\
- :cm=CONNECT pain\n:tc=deep13:
- muffin|muffin.deep13.com|Frank's machine:\
- :cm=CONNECT muffin\n:tc=deep13:
- deep13:Gizmonics Institute terminal server:\
- :dv=/dev/cua02:br#38400:at=hayes:du:pa=none:pn=5551234:
- </literallayout>
-</para>
-
+ <para>Вместо того, чтобы каждый раз ожидать подключения к терминальному
+ серверу, а затем набирать команду <literal>CONNECT
+ <replaceable>host</replaceable></literal>, используйте характеристику
+ <literal>cm</literal> программы tip. Например, вот такое описание в файле
+ <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?remote">/etc/remote</ulink>:</para>
-
-<para>позволит вам просто набрать ``<emphasis remap=tt>tip pain</emphasis>'' или
- ``<emphasis remap=tt>tip muffin</emphasis>'' для подключения к хостам pain или muffin и
- ``<emphasis remap=tt>tip deep13</emphasis>'' для доступа к терминальному серверу.</para>
-
+ <programlisting>
+pain|pain.deep13.com|Forrester's machine:\
+ :cm=CONNECT pain\n:tc=deep13:
+muffin|muffin.deep13.com|Frank's machine:\
+ :cm=CONNECT muffin\n:tc=deep13:
+deep13:Gizmonics Institute terminal server:\
+ :dv=/dev/cua02:br#38400:at=hayes:du:pa=none:pn=5551234:
+ </programlisting>
+
+ <para>позволит вам просто набирать <command>tip pain</command> или
+ <command>tip muffin</command> для подключения к хостам
+ <hostid>pain</hostid> или <hostid>muffin</hostid> и
+ <command>tip deep13</command> для доступа к терминальному серверу.</para>
+
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question>
<para> Может ли tip использовать несколько телефонов для одного сайта?
@@ -9099,131 +9545,123 @@ id="direct-at">
модемных входов и несколько тысяч студентов, пытающихся ими
воспользоваться...</para>
-<para>Создайте описание для вашего университета в файле <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?remote">/etc/remote</ulink> и
- используйте символ <emphasis remap=tt><\@></emphasis> при задании
- характеристики <emphasis remap=tt>pn</emphasis>:</para>
-
-<para>
-<literallayout> big-university:\
- :pn=\@:tc=dialout
- dialout:\
- :dv=/dev/cuaa3:br#9600:at=courier:du:pa=none:
- </literallayout>
-</para>
-
+ <para>Создайте описание для вашего университета в файле <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?remote">/etc/remote</ulink> и
+ используйте <literal>&lt;\@&gt;</literal> при задании
+ характеристики <literal>pn</literal>:</para>
+
+ <programlisting>
+big-university:\
+ :pn=\@:tc=dialout
+dialout:\
+ :dv=/dev/cuaa3:br#9600:at=courier:du:pa=none:
+ </programlisting>
-
<para>После этого пропишите номера телефонов университета в файле
<ulink URL="http://www.FreeBSD.org/cgi/man.cgi?phones">/etc/phones</ulink>:</para>
-
-<para>
-<literallayout> big-university 5551111
- big-university 5551112
- big-university 5551113
- big-university 5551114
- </literallayout>
-</para>
-
-
-<para><ulink URL="http://www.FreeBSD.org/cgi/man.cgi?tip">Tip</ulink> будет пытаться воспользоваться всеми телефонными номерами
- в указанном порядке, прежде чем завершить работу. Если вы хотите,
- чтобы попытки были продолжены, запустите <emphasis remap=tt>tip</emphasis> в цикле while.</para>
-
+ <programlisting>
+big-university 5551111
+big-university 5551112
+big-university 5551113
+big-university 5551114
+ </programlisting>
+
+ <para><ulink URL="http://www.FreeBSD.org/cgi/man.cgi?tip">Tip</ulink> будет
+ пытаться воспользоваться всеми телефонными номерами в указанном порядке,
+ прежде чем завершить работу. Если вы хотите, чтобы попытки были
+ продолжены, запустите <command>tip</command> в цикле while.</para>
+
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question>
<para> Почему нужно нажимать CTRL+P дважды для посылки одного этого символа?
</para></question><answer>
-<para>По умолчанию CTRL+P является специальным символом ``принудительного
- ввода'', используемым для указания программе <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?tip">tip</ulink>, что
- следующий символ является байтом данных. Вы можете назначить
- функцию символа принудительного ввода любому другому символу с помощью
- команды <emphasis remap=tt>~s</emphasis>, которая предназначена для ``установки значений
- переменных''.</para>
-
+ <para>По умолчанию CTRL+P является специальным символом <quote>принудительного
+ ввода</quote>, используемым для указания программе <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?tip">tip</ulink>, что
+ следующий символ является байтом данных. Вы можете назначить
+ функцию символа принудительного ввода любому другому символу с помощью
+ команды <literal>~s</literal>, которая предназначена для <quote>установки
+ значений переменных</quote>.</para>
+
+ <para>Наберите
+ <literal>~sforce=<replaceable>single-char</replaceable></literal>'' с
+ начала новой строки. Здесь под <replaceable>single-char</replaceable>
+ имеется в виду любой одиночный символ. Если вы не зададите
+ <replaceable>single-char</replaceable>, то символом
+ принудительного ввода будет нулевой символ, который можно получить,
+ набрав CTRL+2 или CTRL+SPACE. Подходящим значением для
+ <replaceable>single-char</replaceable> может быть SHIFT+CTRL+6, который
+ используется только некоторыми терминальными серверами.</para>
+
+ <para>Вы можете задать любое значение для символа принудительного ввода,
+ указав его в вашем файле <filename>&#36;HOME/.tiprc</filename>:</para>
-
-<para>Наберите ``<literal>~sforce=&lt;single-char&gt;</literal>'' с начала новой
- строки. Здесь <emphasis remap=tt>&lt;single-char&gt;</emphasis> - любой одиночный символ.
- Если вы не зададите <emphasis remap=tt>&lt;single-char&gt;</emphasis>, то символом
- принудительного ввода будет нулевой символ, который можно получить,
- набрав CTRL+2 или CTRL+SPACE. Подходящим значением для
- <emphasis remap=tt>&lt;single-char&gt;</emphasis> может быть SHIFT+CTRL+6, который используется
- только некоторыми терминальными серверами.</para>
-
+ <programlisting>
+force=<replaceable>single-char</replaceable>
+ </programlisting>
-
-<para>Вы можете задать любое значение для символа принудительного ввода,
- указав его в вашем файле <filename>&#36;HOME/.tiprc</filename>:</para>
-
-<para>
-<literallayout> force=&lt;single-char&gt;
- </literallayout>
-</para>
-
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question>
<para>Неожиданно всё стало набираться ЗАГЛАВНЫМИ БУКВАМИ?</para></question><answer>
-<para>Должно быть, вы нажали CTRL+A, символ перехода в верхний регистр
- программы <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?tip">tip</ulink>, специально предназначенный для тех, у кого не работает
- клавиша caps-lock. Используйте команду <emphasis remap=tt>~s</emphasis>, как это было сделано
- выше, и установите значение переменной ``raisechar'' во что-нибудь
- подходящее. В действительности вы можете установить его равным
- символу принудительного ввода, если не собираетесь пользоваться этими
- особенностями.</para>
-
+ <para>Должно быть, вы нажали CTRL+A, символ <quote>перехода в верхний
+ регистр</quote>
+ программы <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?tip">tip</ulink>,
+ специально предназначенный для тех, у кого не работает клавиша caps-lock.
+ Используйте команду <literal>~s</literal>, как это было сделано
+ выше, и установите значение переменной <quote>raisechar</quote> во
+ что-нибудь подходящее. В действительности вы можете установить его равным
+ символу принудительного ввода, если не собираетесь пользоваться этими
+ особенностями.</para>
-
-<para>Следующий пример файла .tiprc должен понравиться пользователям
- редактора Emacs, которым часто приходится нажимать CTRL+2 и CTRL+A:</para>
-
-<para>
-<literallayout> force=^^
- raisechar=^^
- </literallayout>
-</para>
-
+ <para>Следующий пример файла .tiprc должен понравиться пользователям
+ редактора Emacs, которым часто приходится нажимать CTRL+2 и CTRL+A:</para>
-
-<para>Здесь ^^ это SHIFT+CTRL+6.</para>
-
+ <programlisting>
+force=^^
+raisechar=^^
+ </programlisting>
-
-</answer></qandaentry>
+ <para>Здесь ^^ обозначает SHIFT+CTRL+6.</para>
-<qandaentry><question>
-<para> Как можно передавать файлы с помощью программы <emphasis remap=tt>tip</emphasis>?
- </para></question><answer>
+ </answer>
+</qandaentry>
-<para>Если вы соединились с другой UNIX-системой, вы можете посылать и
- принимать файлы командами <emphasis remap=tt>~p</emphasis> (передача) и <emphasis remap=tt>~t</emphasis> (приём). Эти
- команды запускают программы <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?cat">cat</ulink> и <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?echo">echo</ulink> на
- удалённой системе, чтобы принять и послать файлы. Синтаксис вызова
- имеет такой вид:</para>
-
-<para>
-<literallayout> ~p &lt;local-file&gt; [&lt;remote-file&gt;]
- ~t &lt;remote-file&gt; [&lt;local-file&gt;]
- </literallayout>
-</para>
-
-
-<para>Контроль ошибок передачи при этом не осуществляется, так что вам
- может понадобиться другой протокол передачи, например, zmodem.</para>
-
+<qandaentry>
+ <question>
+ <para>Как можно передавать файлы с помощью программы
+ <command>tip</command>?</para>
+ </question><answer>
+
+ <para>Если вы соединились с другой UNIX-системой, вы можете посылать и
+ принимать файлы командами <literal>~p</literal> (передача) и
+ <literal>~t</literal> (приём). Эти
+ команды запускают программы <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?cat">cat</ulink> и <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?echo">echo</ulink> на
+ удалённой системе, чтобы принять и послать файлы. Синтаксис вызова
+ имеет такой вид:</para>
+
+ <programlisting>
+~p &lt;local-file&gt; [&lt;remote-file&gt;]
+~t &lt;remote-file&gt; [&lt;local-file&gt;]
+ </programlisting>
+
+ <para>Контроль ошибок передачи при этом не осуществляется, так что вам
+ может понадобиться другой протокол передачи, например, zmodem.</para>
+
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question>
<para>Как использовать zmodem вместе с <emphasis remap=tt>tip</emphasis>?</para></question><answer>
@@ -9232,24 +9670,22 @@ id="direct-at">
zmodem из коллекции портов (там есть парочка в категории comms,
<ulink URL="http://www.FreeBSD.org/cgi/ports.cgi?^lrzsz">lrzsz</ulink>
и <ulink URL="http://www.FreeBSD.org/cgi/ports.cgi?^rzsz">rzsz</ulink>).</para>
-
-
-<para>Для приёма файлов запустите программу передачи на противоположной
- стороне. Затем нажмите enter и наберите ``<emphasis remap=tt>~C rz</emphasis>'' (или
- ``<emphasis remap=tt>~C lrz</emphasis>'', если у вас установлеи lrzsz) для начала приёма их на
- локальную машину.</para>
-
+ <para>Для приёма файлов запустите программу передачи на противоположной
+ стороне. Затем нажмите enter и наберите <literal>~C rz</literal> (или
+ <literal>~C lrz</literal>, если у вас установлен
+ <application>lrzsz</application>) для начала приёма их на
+ локальную машину.</para>
-
-<para>Для посылки файлов, запустите программу приёма на противоположной
- стороне. Затем нажмите enter и наберите ``<emphasis remap=tt>~C sz &lt;files&gt;</emphasis>''
- (или ``<emphasis remap=tt>~C lsz &lt;files&gt;</emphasis>'') для посылки их на удалённую
- систему.</para>
-
+ <para>Для посылки файлов, запустите программу приёма на противоположной
+ стороне. Затем нажмите enter и наберите
+ <literal>~C sz <replaceable>files</replaceable></literal> (или
+ <literal>~C lsz <replaceable>files</replaceable></literal>) для посылки
+ файлов на удалённую систему.</para>
+
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question>
<para> FreeBSD не распознаёт последовательные порты на моей машине, хотя
@@ -9292,98 +9728,131 @@ id="misc">
</answer></qandaentry>
-<qandaentry><question>
-<para> Почему используются (и что из себя представляют) форматы выполнимых
- файлов a.aut и ELF?
- </para></question><answer>
-<para>Для понимания того, почему FreeBSD использует формат <filename>a.out</filename>,
- вы должны сначала получить представление о трёх "основных" форматах
- выполнимых файлов для UNIX:</para>
-
-<para>
-<itemizedlist>
+<qandaentry>
+ <question>
+ <para>Почему утилита &man.top.1; показывает очень маленький объём
+ свободной памяти, даже когда запущено всего лишь несколько
+ приложений?</para>
+ </question>
-<listitem>
-<para><ulink URL="http://www.FreeBSD.org/cgi/man.cgi?a.out(5)">a.out</ulink>
- </para>
+ <answer>
-<para>Это самый старый, `классический' формат объектных файлов для UNIX. В
- нём используется короткий и компактный заголовок с магическим числом в
- начале, которое часто используется для определения формата (за подробным
- описанием обратитесь к странице Справочника о <ulink
- URL="http://www.FreeBSD.org/cgi/man.cgi?a.out(5)">a.out(5)</ulink>).
- Он содержит три загружаемых сегмента: .text, .data и .bss плюс таблицу
- символов и таблицу строк.</para>
+ <para>Просто дело в том, что под свободной памятью подразумевается никак не
+ используемая память. Вся память, которая вашей программе явно не
+ выделялась, используется ядром FreeBSD для дискового кэша.
+ Значения, показываемые утилитой &man.top.1;, помеченные как
+ <literal>Inact</literal>, <literal>Cache</literal> и <literal>Buf</literal>
+ - это всё кэшированные данные разных степеней устаревания. То, что данные
+ находятся в кэше, означает, что система не будет обращаться к медленному
+ диску снова за теми данными, обращение к которым было недавно, повышая таким
+ образом общую производительность. В общем случае маленькие значения в
+ пункте <literal>Free</literal>, показываемые утилитой &man.top.1; для
+ свободной памяти - это хорошо, если, конечно они не
+ <emphasis>очень</emphasis> маленькие.</para>
-</listitem>
+ </answer>
+</qandaentry>
-<listitem>
-<para><acronym>COFF</acronym>
- </para>
-<para>Это формат объектных файлов SVR3. Дополнительно в заголовок
- включена таблица секций, так что вы можете иметь их больше, чем только
- .text, .data и .bss.</para>
-</listitem>
+<qandaentry>
+ <question>
+ <para>Почему используются (и что из себя представляют) форматы выполнимых
+ файлов a.aut и ELF?</para>
+ </question>
-<listitem>
-<para><acronym>ELF</acronym>
- </para>
+ <answer>
-<para>Преемник <acronym>COFF</acronym>, в который добавлены возможности иметь много
- секций и 32- или 64-разрядные значения. Один большой минус:
- <acronym>ELF</acronym> был спроектирован также в предположении, что для каждой
- аппаратной платформы будет существовать только один ABI. Это
- предположение достаточно некорректно, и даже в мире коммерческих
- реализаций SYSV (в котором имеется по крайней мере три ABI: SVR4,
- Solaris и SCO) это не так.</para>
-
-<para> </para>
-
-<para>FreeBSD каким-то образом пытается решить эту проблему, предоставляя
- утилиту для <emphasis>пометки</emphasis> конкретного выполнимого файла
- <acronym>ELF</acronym> с информацией о ABI, с которым он совместим.
- Обратитесь к странице Справочника об утилите
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?brandelf">brandelf</ulink>
- за подробной информацией.</para>
-</listitem>
+ <para>Для понимания того, почему FreeBSD использует формат
+ <filename>ELF</filename>, вы должны сначала получить представление о трёх
+ <quote>доминирующих</quote> форматах выполнимых файлов для UNIX:</para>
-</itemizedlist>
-</para>
-
-<para>FreeBSD выросла на "классических" традициях и традиционно использовала
- формат
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?a.out(5)">a.out</ulink>,
- технологию, опробованную и проверенную во многих
- вариациях BSD. Хотя давно уже можно было компилировать и выполнять
- родные выполнимые файлы (и ядро) в формате <acronym>ELF</acronym>, FreeBSD с самого
- начала сопротивлялась переходу на <acronym>ELF</acronym> как на формат, используемый
- по умолчанию. Почему? Когда мир Linux делал болезненный переход к
- <acronym>ELF</acronym>, причин отвергнуть формат <filename>a.out</filename> было не так уж и много,
- разве что их негибкий механизм работы с совместно используемыми
- библиотеками, который был основан на таблице переходов, что делало
- построение таких библиотек очень затруднительным для разработчиков.
- Так как средства работы с <acronym>ELF</acronym> предоставляли решение этой проблемы
- и это было в общем-то "шагом вперёд" в любом случае, цена перехода была
- признана стоящей того и переход был сделан.</para>
-
-
-
-<para>В случае FreeBSD, наш механизм работы с совместно используемыми
- библиотеками очень похож на механизм, применяемый в <emphasis remap=tt>SunOS</emphasis>,
- поэтому его очень легко использовать. Однако, начиная с 3.0, FreeBSD
- официально поддерживает <acronym>ELF</acronym> как формат, используемый по умолчанию.
- И, хотя формат <filename>a.out</filename> поддерживается в полной мере, разработчики
- из проекта GNU, являющиеся авторами компилятора, который мы используем,
- больше не поддерживают формат <filename>a.out</filename>. Это заставило нас поддерживать
- различные версии компилятора и компоновщика, и не позволило
- воспользоваться всеми возможностями последних разработок GNU.
- Потребность в наличии реализации ISO-C++, в основном конструкторов и
- деструкторов, также привела к поддержке <acronym>ELF</acronym> в будущих релизах
- FreeBSD.</para>
+ <para>
+ <note>
+ <para>До FreeBSD версии 3.x, во FreeBSD использовался формат
+ a.out.</para>
+ </note>
+ </para>
+
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para><ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?a.out(5)">a.out</ulink></para>
+
+ <para>Это самый старый, <quote>классический</quote> формат объектных
+ файлов для UNIX. В нём используется короткий и компактный заголовок
+ с магическим числом в начале, которое часто используется для
+ определения формата (за подробным описанием обратитесь к странице
+ Справочника о <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?a.out(5)">a.out(5)</ulink>).
+ Он содержит три загружаемых сегмента: .text, .data и .bss плюс таблицу
+ символов и таблицу строк.</para>
+ </listitem>
+
+ <listitem>
+ <para><acronym>COFF</acronym></para>
+
+ <para>Это формат объектных файлов SVR3. Дополнительно в заголовок
+ включена таблица секций, так что вы можете иметь их больше, чем только
+ .text, .data и .bss.</para>
+ </listitem>
+
+ <listitem>
+ <para><acronym>ELF</acronym></para>
+
+ <para>Преемник <acronym>COFF</acronym>, в который добавлены возможности
+ иметь много секций и 32- или 64-разрядные значения. Один большой
+ минус: <acronym>ELF</acronym> был спроектирован также в
+ предположении, что для каждой аппаратной платформы будет существовать
+ только один ABI. Это предположение достаточно некорректно, и даже в
+ мире коммерческих реализаций SYSV (в котором имеется по крайней мере
+ три ABI: SVR4, Solaris и SCO) это не так.</para>
+
+ <para>FreeBSD каким-то образом пытается решить эту проблему,
+ предоставляя утилиту для <emphasis>пометки</emphasis> конкретного
+ выполнимого файла <acronym>ELF</acronym> с информацией о ABI, с
+ которым он совместим. Обратитесь к странице Справочника об утилите
+ <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?brandelf">brandelf</ulink>
+ за подробной информацией.</para>
+ </listitem>
+ </itemizedlist>
+ </para>
-</answer></qandaentry>
+ <para>FreeBSD выросла на <quote>классических</quote> традициях и традиционно
+ использовала формат <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?a.out(5)">a.out</ulink>,
+ технологию, опробованную и проверенную во многих вариациях BSD. Хотя давно
+ уже можно было компилировать и выполнять родные выполнимые файлы (и ядро) в
+ формате <acronym>ELF</acronym>, FreeBSD с самого начала сопротивлялась
+ переходу на <acronym>ELF</acronym> как на формат, используемый по
+ умолчанию. Почему? Когда мир Linux делал болезненный переход к
+ <acronym>ELF</acronym>, причин отвергнуть формат <filename>a.out</filename>
+ было не так уж и много, разве что их негибкий механизм работы с совместно
+ используемыми библиотеками, который был основан на таблице переходов, что
+ делало построение таких библиотек очень затруднительным для разработчиков.
+ Так как средства работы с <acronym>ELF</acronym> предоставляли решение этой
+ проблемы и это было в общем-то <quote>шагом вперёд</quote> в любом случае,
+ цена перехода была признана стоящей того и переход был сделан.</para>
+
+ <para>В случае FreeBSD, наш механизм работы с совместно используемыми
+ библиотеками очень похож на механизм, применяемый в <emphasis
+ remap=tt>SunOS</emphasis>, поэтому его очень легко использовать. Однако,
+ начиная с 3.0, FreeBSD официально поддерживает <acronym>ELF</acronym> как
+ формат, используемый по умолчанию. И, хотя формат
+ <filename>a.out</filename> поддерживается в полной мере, разработчики из
+ проекта GNU, являющиеся авторами компилятора, который мы используем, больше
+ не поддерживают формат <filename>a.out</filename>. Это заставило нас
+ поддерживать различные версии компилятора и компоновщика, и не позволило
+ воспользоваться всеми возможностями последних разработок GNU.
+ Потребность в наличии реализации ISO-C++, в основном конструкторов и
+ деструкторов, также привела к поддержке <acronym>ELF</acronym> в будущих
+ релизах FreeBSD.</para>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para>Да, но почему так много разных форматов?</para></question><answer>
@@ -9489,36 +9958,37 @@ id="misc">
<para>Однако права на файл <filename>foo</filename> не изменятся.</para>
- <para>Чтобы это работало, используйте опции ``<option>-H</option>'' или
- ``<option>-L</option>'' вместе с опцией ``<option>-R</option>''.
+ <para>Чтобы это работало, используйте опции <option>-H</option> или
+ <option>-L</option> вместе с опцией <option>-R</option>.
Обратитесь к страницам Справочника по команде <ulink
URL="http://www.FreeBSD.org/cgi/man.cgi?chmod">chmod</ulink> и по <ulink
URL="http://www.FreeBSD.org/cgi/man.cgi?symlink">symlink</ulink>.</para>
- <para><emphasis remap=bf>ПРЕДУПРЕЖДЕНИЕ</emphasis> опция
- ``<option>-R</option>'' выполняет команду <emphasis
- remap=tt>chmod</emphasis> <emphasis remap=bf>РЕКУРСИВНО</emphasis>. Будьте
- осторожны, задавая каталоги или символические ссылки на каталоги в
- параметрах <emphasis remap=tt>chmod</emphasis>. Если вы хотите изменить
- права на каталог, на который указывает символическая ссылка, используйте
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?chmod">chmod</ulink>
- без опций и следуйте символической ссылке с помощью лидирующего слэша
- (``<filename>/</filename>''). Например, если ``<emphasis
- remap=tt>foo</emphasis>'' является символической ссылкой на каталог
- ``<emphasis remap=tt>bar</emphasis>'', а вы хотите изменить права на
- ``<emphasis remap=tt>foo</emphasis>'' (на самом деле ``<emphasis
- remap=tt>bar</emphasis>''), вы должны выполнить команду
- типа следующей:</para>
+ <para>
+ <warning>
+ <para>Опция <option>-R</option> выполняет команду <emphasis
+ remap=tt>chmod</emphasis> <acronym>РЕКУРСИВНО</acronym>. Будьте
+ осторожны, задавая каталоги или символические ссылки на каталоги в
+ параметрах <emphasis remap=tt>chmod</emphasis>. Если вы хотите изменить
+ права на каталог, на который указывает символическая ссылка, используйте
+ <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?chmod">chmod</ulink>
+ без опций и следуйте символической ссылке с помощью лидирующего слэша
+ (<filename>/</filename>). Например, если <filename>foo</filename>
+ является символической ссылкой на каталог <filename>bar</filename>, а
+ вы хотите изменить права на <filename>foo</filename> (на самом деле
+ <filename>bar</filename>), вы должны выполнить команду
+ типа следующей:</para>
- <para>
- <literallayout> chmod 555 foo/
- </literallayout>
- </para>
+ <screen>
+&prompt.user; <userinput>chmod 555 foo/</userinput>
+ </screen>
- <para>Если задан лидирующий слэш,
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?chmod">chmod</ulink> будет
- следовать символической ссылке, ``<emphasis remap=tt>foo</emphasis>'',
- меняя права на каталог ``<emphasis remap=tt>bar</emphasis>''.</para>
+ <para>Если задан лидирующий слэш, <ulink
+ URL="http://www.FreeBSD.org/cgi/man.cgi?chmod">chmod</ulink> будет
+ следовать символической ссылке, <filename>foo</filename>, меняя права
+ на каталог <filename>bar</filename>.</para>
+ </warning>
+ </para>
</answer>
</qandaentry>
@@ -9529,18 +9999,17 @@ id="misc">
8 символами?
</para></question><answer>
-<para>Наверное, вы думаете, что достаточно будет изменить значение
- константы <symbol>UT_NAMESIZE</symbol>, перекомпилировать полностью систему
- и всё будет работать. К несчастью, часть приложений и утилит (включая
- системные) имеют жёстко заданные малые значения (не всегда "8" или
- "9", но и такие странные, как "15" или "20") в структурах и буферах.
- Это приведёт не только к порче файлов журналов (из-за записи полей
- переменного размера там, где ожидается поле фиксированного размера), но
- может повлиять на работу клиентов системы Sun NIS и может в принципе
- вызвать другие проблемы при взаимодействии с другими системами UNIX.</para>
-
+ <para>Наверное, вы думаете, что достаточно будет изменить значение
+ константы <literal>UT_NAMESIZE</literal>, перекомпилировать полностью
+ систему и всё будет работать. К несчастью, часть приложений и утилит
+ (включая системные) имеют жёстко заданные малые значения (не всегда
+ <literal>8</literal> или <literal>9</literal>, но и такие странные, как
+ <literal>15</literal> или <literal>20</literal>) в структурах и буферах.
+ Это приведёт не только к порче файлов журналов (из-за записи полей
+ переменного размера там, где ожидается поле фиксированного размера), но
+ может повлиять на работу клиентов системы Sun NIS и может в принципе
+ вызвать другие проблемы при взаимодействии с другими системами UNIX.</para>
-
<para>Во FreeBSD 3.0 и старше, максимальная длина имени была увеличена
до 16 символов и все утилиты с предопределённым размером имени были
найдены и исправлены. Так как это касается столь многих областей в
@@ -9580,9 +10049,12 @@ id="misc">
</answer></qandaentry>
-<qandaentry><question>
-<para> Что такое ``<emphasis remap=tt>sup</emphasis>'' и как это можно использовать?
- </para></question><answer>
+<qandaentry>
+ <question>
+ <para>Что такое <command>sup</command> и как это можно использовать?</para>
+ </question>
+
+ <answer>
<para>Сокращение <ulink URL="http://www.FreeBSD.org/cgi/ports.cgi?^sup">SUP</ulink> означает Software Update Protocol, который был разработан в
CMU для синхронизации исходных текстов. Мы используем его для
@@ -9601,236 +10073,357 @@ id="misc">
<para>В. Кто-нибудь делал замеры температуры при работе FreeBSD? Я
знаю, что Linux греется меньше, чем DOS, но никогда не видел упоминания
FreeBSD. Наверное, он сильно греется.</para>
-
-
-<para>О. Нет, но мы сделали различные вкусовые тесты у добровольцев с
- завязанными глазами, которые до этого приняли по 250 микрограмм
- LSD-25. 35% добровольцев заявило, что FreeBSD имеет вкус апельсина,
- тогда как вкус Linux расценивался как фиолетовый туман. Насколько
- я помню, ни одна из групп не отметила значительной разницы в
- температуре. Вы хотели опубликовать полные результаты этого опроса,
- когда обнаружиди, что слишком много добровольцев покинули помещение
- во время тестов, что несколько смазало результаты. Я думаю, что
- большинство из них работают сейчас в Apple над их новым GUI
- ``чеши и нюхай''. Это старый добрый бизнес! </para>
-
+ <para>О. Нет, но мы сделали различные вкусовые тесты у добровольцев с
+ завязанными глазами, которые до этого приняли по 250 микрограмм
+ LSD-25. 35% добровольцев заявило, что FreeBSD имеет вкус апельсина,
+ тогда как вкус Linux расценивался как фиолетовый туман. Насколько
+ я помню, ни одна из групп не отметила значительной разницы в
+ температуре. Вы хотели опубликовать полные результаты этого опроса,
+ когда обнаружиди, что слишком много добровольцев покинули помещение
+ во время тестов, что несколько смазало результаты. Я думаю, что
+ большинство из них работают сейчас в Apple над их новым GUI
+ <quote>чеши и нюхай</quote>. Это старый добрый бизнес!</para>
+
+ <para>Серьёзно, и FreeBSD, и Linux используют инструкцию
+ <acronym>HLT</acronym> (halt), когда система простаивает, что уменьшает
+ потребление энергии и в свою очередь, выделение тепла. Вдобавок, если у
+ вас настроен APM (комплексное управление энергопотреблением), то FreeBSD
+ может переводить процессор в режим пониженного энергопотребления.</para>
-
-<para>Серьёзно, и FreeBSD, и Linux используют инструкцию ``<acronym>HLT</acronym>''
- (halt), когда система простаивает, что уменьшает потребление энергии
- и в свою очередь, выделение тепла. Вдобавок, если у вас настроен
- APM (автоматическое управление энергопотреблением), то FreeBSD
- может переводить процессор в режим пониженного энергопотребления.</para>
-
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
-<qandaentry><question>
-<para>Кто там скребётся в микросхемах памяти??</para></question><answer>
+<qandaentry>
+ <question>
+ <para>Кто там скребётся в микросхемах памяти??</para>
+ </question>
-<para>В. Делает ли FreeBSD что-нибудь эдакое при компиляции ядра, что
- вызывает поскрипывание микросхем памяти? При компиляции (и в короткий
- промежуток времени после обнаружения дисковода при старте системы)
- от микросхем памяти исходит странный царапающий звук.</para>
-
+ <answer>
-
-<para>О. Да! Вы, наверное, видели частое упоминание ``даемонов'' в
- документации по BSD, но не многие знают, что это настоящие нематериальные
- существа, которые теперь завладели вашим компьютером. Царапающий звук,
- издаваемый микросхемами памяти - это на самом деле высокочастотное
- перешёптывание между даемонами, когда они решают, как лучше справиться
- с различными задачами по администрированию системы.</para>
-
+ <para>В. Делает ли FreeBSD что-нибудь <quote>эдакое</quote> при компиляции
+ ядра, что вызывает поскрипывание микросхем памяти? При компиляции (и в
+ короткий промежуток времени после обнаружения дисковода при старте системы)
+ от микросхем памяти исходит странный царапающий звук.</para>
+
+ <para>О. Да! Вы, наверное, видели частое упоминание <quote>даемонов</quote>
+ в документации по BSD, но не многие знают, что это настоящие нематериальные
+ существа, которые теперь завладели вашим компьютером. Царапающий звук,
+ издаваемый микросхемами памяти - это на самом деле высокочастотное
+ перешёптывание между даемонами, когда они решают, как лучше справиться
+ с различными задачами по администрированию системы.</para>
+
+ <para>Если шум достиг ваших ушей, команда DOS <command>fdisk /mbr</command>
+ их спугнёт, но не удивляйтесь, если они отреагируют соответствующим
+ образом и попытаются вас остановить. Фактически, если во время
+ выполнения этой команды вы услышите сатанинский голос Билла Гейтса из
+ встроенного динамика, бегите и даже не оглядывайтесь! Избавленные
+ от противостояния с даемонами BSD, близнецы-демоны DOS и Windows часто
+ могут захватить полный контроль не только над вашей машиной и
+ навлечь вечное проклятие на вашу душу. Если бы у меня был выбор, я
+ думаю, что предпочёл бы царапающий звук.</para>
-
-<para>Если шум достиг ваших ушей. команда DOS ``<command>fdisk /mbr</command>''
- их спугнёт, но не удивляйтесь, если они отреагируют соответствующим
- образом и попытаются вас остановить. Фактически, если во время
- выполнения этой команды вы услышите сатанинский голос Билла Гейтса из
- встроенного динамика, бегите и даже не оглядывайтесь! Избавленные
- от противостояния с даемонами BSD, близнецы-демоны DOS и Windows часто
- могут захватить полный контроль не только над вашей машиной и
- навлечь вечное проклятие на вашу душу. Если бы у меня был выбор, я
- думаю, что предпочту царапающий звук.</para>
-
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
-<qandaentry><question>
-<para>Что такое 'MFC'?</para></question><answer>
+<qandaentry>
+ <question>
+ <para>Что такое <acronym>MFC</acronym>?</para>
+ </question>
-<para>MFC это сокращение от 'Merged From -CURRENT.' Оно используется в
- протоколах изменений CVS для отметки того, что изменение было
- перенесено в ветвь STABLE из CURRENT.</para>
-
+ <answer>
-
-</answer></qandaentry>
+ <para>MFC - это сокращение от <quote>Merged From -CURRENT</quote>. Оно
+ используется в протоколах изменений CVS для отметки того, что изменение
+ было перенесено в ветвь STABLE из CURRENT.</para>
-<qandaentry><question>
-<para>Что означает сокращение 'BSD'?</para></question><answer>
+ </answer>
+</qandaentry>
-<para>Это сокращение значит что-то на секретном языке, который могут знать
- только посвящённые. Это нельзя перевести один к одному, однако
- достаточно сказать, что перевод с BSD - это что-то между 'Команда
- Formula-1", 'Пингвины - это вкусные плюшки' и 'Мы прикольнее, чем
- Linux.' :-)</para>
-
-<para>Если серьёзно, то BSD является сокращением от 'Berkeley Software
- Distribution', названия, которое было выбрано Berkeley CSRG (Computer
- Systems Research Group) для их дистрибутива Unix.</para>
-
-</answer></qandaentry>
-<qandaentry><question>
-<para>Сколько требуется разработчиков FreeBSD, чтобы сменить лампочку?
- </para></question><answer>
+<qandaentry>
+ <question>
+ <para>Что означает сокращение <acronym>BSD</acronym>?</para>
+ </question>
-<para>Необходимо иметь ровно одну тысячу сто семьдесят два разработчика:</para>
-
-<para>Двадцать три сообщат в -CURRENT о том, что не горит свет;</para>
-
-<para>Четыре начнут утверждать, что это проблема конфигурации и такие
- сообщения нужно посылать в -questions;</para>
-
-<para>Трое оформят PR по этому поводу, причём одно их них будет направлено
- в doc и будет содержать только строчку "здесь темно";</para>
-
-<para>Один закоммитит неоттестированную лампочку, что сломает построение
- системы, а затем через пять минут вернёт все назад;</para>
-
-<para>Восемь поругаются с авторами PR по поводу включения патчей в PR;</para>
-
-<para>Пять сообщат о том, что не проходит компиляция системы;</para>
-
-<para>Тридцать один человек ответит, что у них всё работает и наверное, те
- выполняли cvsup в неподходящее время;</para>
-
-<para>Один пошлёт патч для новой лампочки в -hackers;</para>
-
-<para>Один пожалуется, что у него имелись патчики ещё три года назад,
- но когда он послал их в -CURRENT, они были проигнорированы и он имел
- неудачный опыт работы с системой PR; кроме того предлагаемая лампочка
- не имеет отражателя.</para>
-
-<para>Тридцать семь начнут кричать, что лампочки не относятся к базовой
- системе, что коммиттеры не имеют права делать такие вещи без опроса
- обшественности и ЧТО ВООБЩЕ -CORE ДЕЛАЕТ ПО ЭТОМУ ПОВОДУ?</para>
-
-<para>Две сотни напишут о цвете велосипедных фар;</para>
-
-<para>Трое скажут, что этот патч не соответствует style(9);</para>
-
-<para>Семнадцать возразят, что предлагаемая новая лампа подпадает под
- лицензию GPL;</para>
-
-<para>Пятьсот восемьдесят шесть раздуют флэйм по поводу сравнения
- лицензий GPL, BSD, MIT, NPL и личных мнений о неизвестных основателей
- FSF;</para>
-
-<para>Семеро пошлют различные части этих обсуждений в -chat и
- -advocacy;</para>
-
-<para>Один закоммитит предлагаемую лампу, хотя она светит хуже, чем
- старая;</para>
-
-<para>Двое откатят эти изменения с ужасной руганью в журнале коммита
- о том, что лучше FreeBSD будет сидеть в темноте, чем с тусклой лампой.</para>
-
-<para>Сорок шесть громко воспротивятся этому изменению и потрубуют
- объяснений от -core;</para>
-
-<para>Одиннадцать попросят уменьшить размер лампочки, чтобы она подошла
- к их Тамагочи на случай, если мы когда-нибудь соберёмся переносить
- FreeBSD на эту платформу;</para>
-
-<para>Семьдесят три заявят о SNR в -hackers и -chat и в знак протеста
- отпишутся;</para>
-
-<para>Тринадцать пошлют письма "unsubscribe", "How do I unsubscribe?",
- и "Please remove me from the list" с обычной подписью;</para>
-
-<para>Один закоммитит работающую лампочку в то время, как все будут
- слишком заняты руганью, чтобы это заметить;</para>
-
-<para>Тридцать один человек напишет, что новая лампочка будет светить на
- 0.364% ярче, если её откомпилировать с помощью TenDRA (хотя при этом
- она приобретёт форму куба) и что FreeBSD должна перейти на компилятор
- TenDRA, а не на EGCS;</para>
-
-<para>Один заметит, что у лампочки отсутствует цоколь;</para>
-
-<para>Девять (включая авторов PR) спросят "что такое MFC?";</para>
-
-<para>Спустя две недели после смены лампочки пятьдесят семь человек сообщат
- о том, что света всё равно нет.</para>
-
-<para><emphasis><ulink URL="mailto:nik@FreeBSD.org">Ник Клэйтон</ulink> (Nik
- Clayton) добавил:</emphasis></para>
+ <answer>
+
+ <para>Это сокращение значит что-то на секретном языке, который могут знать
+ только посвящённые. Это нельзя перевести один к одному, однако
+ достаточно сказать, что перевод с BSD - это что-то между <quote>Команда
+ Formula-1</quote>, <quote>Пингвины - это вкусные плюшки</quote> и <quote>Мы
+ прикольнее, чем Linux</quote>. :-)</para>
+
+ <para>Если серьёзно, то BSD является сокращением от <quote>Berkeley Software
+ Distribution</quote>, названия, которое было выбрано Berkeley
+ <acronym>CSRG</acronym> (Computer Systems Research Group) для их
+ дистрибутива Unix.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Что такое repo-copy?</para>
+ </question>
+
+ <answer>
+
+ <para>repo-copy (что является краткой формой от <quote>repository
+ copy</quote>) обозначает прямое копирование файлов внутри репозитория
+ CVS.</para>
+
+ <para>Без repo-copy, если есть необходимость скопировать или переместить
+ файл в другое место репозитория, то коммиттер должен выполнять команды
+ <command>cvs add</command> для помещения файла на новое место, а затем
+ <command>cvs rm</command>, чтобы удалить старый файл, если старая копия
+ должна быть удалена.</para>
+
+ <para>Минусом этого метода является то, что история (то есть записи в
+ журналах CVS) работы с файлом не копируются в новое место. Так как
+ Проект FreeBSD осознаёт важность сохранения истории, вместо описанного
+ процесса зачастую используется копирование в репозитории. Это действие
+ заключается в том, что один из хозяев репозитория копирует файлы
+ непосредственно внутри репозитория, не пользуясь командами
+ <command>cvs</command>.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Почему я должен беспокоиться о цвете фар велосипеда?</para>
+ </question>
+
+ <answer>
+
+ <para>На самом деле краткий, очень краткий ответ на этот вопрос заключается в
+ том, что вы этого делать не должны. Если давать более подробный ответ,
+ то ваше умение делать фары не должно означать, что вы должны препятствовать
+ другим делать их просто потому, что вам не нравится цвет, в который
+ они собираются их окрашивать. Эта метафора означает, что вам не нужно
+ обсуждать каждую мелочь просто потому, что вы знаете о ней
+ достаточно много. Некоторые люди отмечают, что объём шума, генерируемый
+ при появлении некоторого изменения, находится в обратной зависимости от
+ сложности самого изменения.</para>
+
+ <para>Более пространный и полный ответ заключается в том, что после очень
+ долгого обсуждения того, должна ли утилита &man.sleep.1; обрабатывать
+ дробное число, заданное в качестве второго аргумента, &a.phk;
+ опубликовал большое сообщение, озаглавленное <quote><ulink
+ url="http://www.FreeBSD.org/cgi/getmsg.cgi?fetch=506636+517178+/usr/local/www/db/text/1999/freebsd-hackers/19991003.freebsd-hackers">
+ Велосипедная фара (любого цвета) на зелёной траве...</ulink></quote>.
+ Соответствующие части этого сообщения цитируются ниже.</para>
+
+ <blockquote>
+ <attribution>&a.phk; on freebsd-hackers,
+ October 2, 1999</attribution>
+
+ <para><quote>Что там насчёт этой велосипедной фары?</quote> Кто-то
+ из вас меня спрашивал.</para>
+
+ <para>Это долгая история, или же это старая история, но на самом деле
+ она коротка. В начале 1960-х годов Паркинсон (C. Northcote Parkinson)
+ написал книгу <quote>Закон Паркинсона</quote>, которая содержит много
+ интересных взглядов на процесс управления.</para>
+
+ <para>[немного выдержек из краткого содержания книги]</para>
+
+ <para>В конкретном примере с велосипедной фарой другим важным объектом
+ является атомная электростанция. Я полагаю, что это иллюстрирует
+ древность книги.</para>
+
+ <para>Паркинсон показал, что вы можете прийти на совещание руководителей
+ и получить добро на строительство многомиллионной или даже
+ многомиллиардной атомной электростанции, но если вы хотите получить
+ финансирование производства велосипедных фар, то погрязнете в
+ бесконечных обсуждениях.</para>
+
+ <para>Паркинсон объясняет это тем, что атомная станция настолько большой,
+ дорогой и сложный объект, что люди не могут его осознать и вместо того,
+ чтобы попробовать это сделать, они полагаются на то, что кто-то уже
+ проверил все мелочи до того, как всё зашло так далеко. В своей книге
+ Ричард П. Фейнманн (Richard P. Feynmann) даёт несколько интересных и
+ очень поучительных примеров, связанных с Лос Аламос.</para>
+
+ <para>Велосипедная фара - это противоположный случай. Любой может
+ сделать фару за один уикэнд, и у него ещё останется время посмотреть
+ футбол по телевизору. Так что не важно, насколько хорошо вы готовились
+ к обсуждению, насколько убедительны будут ваши аргументы, кто-нибудь
+ воспользуется шансом показать, что он не зря ест свой хлеб, что он
+ обращает внимание, что он <emphasis>здесь</emphasis>.</para>
+
+ <para>В Дании это называется <quote>оставить отпечаток своего
+ пальца</quote>. Это касается личной гордости и престижа, это похоже
+ на возможность указать куда-то и сказать: <quote> Вон там! Это сделал
+ <emphasis>я</emphasis>.</quote> Это сильно выражено в политиках, но
+ присутствует во многих людях, которые получают возможность сделать
+ это. Просто вспомните об отпечатках ног во влажном цементе.</para>
+ </blockquote>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>Сколько требуется разработчиков FreeBSD, чтобы сменить
+ электрическую лампочку?</para>
+ </question>
+
+ <answer>
+
+ <para>Необходимо иметь ровно одну тысячу сто семьдесят два
+ разработчика:</para>
+
+ <para>Двадцать три сообщат в -CURRENT о том, что не горит свет;</para>
+
+ <para>Четыре начнут утверждать, что это проблема конфигурации и такие
+ сообщения нужно посылать в -questions;</para>
+
+ <para>Трое оформят PR по этому поводу, причём одно их них будет направлено
+ в doc и будет содержать только строчку "здесь темно";</para>
+
+ <para>Один закоммитит неоттестированную лампочку, что сломает построение
+ системы, а затем через пять минут вернёт все назад;</para>
+
+ <para>Восемь поругаются с авторами PR по поводу включения патчей в PR;</para>
+
+ <para>Пять сообщат о том, что не проходит компиляция системы;</para>
-<para><emphasis>Я сильно смеялся над всем этим.</emphasis></para>
+ <para>Тридцать один человек ответит, что у них всё работает и наверное, те
+ выполняли cvsup в неподходящее время;</para>
+
+ <para>Один пошлёт патч для новой лампочки в -hackers;</para>
-<para><emphasis>И тогда я подумал, "Постойте-ка, найдётся ли кто-нибудь,
- чтобы задокументировать это где-нибудь?"</emphasis></para>
+ <para>Один пожалуется, что у него имелись патчики ещё три года назад,
+ но когда он послал их в -CURRENT, они были проигнорированы и он имел
+ неудачный опыт работы с системой PR; кроме того предлагаемая лампочка
+ не имеет отражателя.</para>
+
+ <para>Тридцать семь начнут кричать, что лампочки не относятся к базовой
+ системе, что коммиттеры не имеют права делать такие вещи без опроса
+ обшественности и ЧТО ВООБЩЕ -CORE ДЕЛАЕТ ПО ЭТОМУ ПОВОДУ?</para>
+
+ <para>Две сотни напишут о цвете велосипедных фар;</para>
+
+ <para>Трое скажут, что этот патч не соответствует style(9);</para>
+
+ <para>Семнадцать возразят, что предлагаемая новая лампа подпадает под
+ лицензию GPL;</para>
+
+ <para>Пятьсот восемьдесят шесть раздуют флэйм по поводу сравнения
+ лицензий GPL, BSD, MIT, NPL и личных мнений о неизвестных основателей
+ FSF;</para>
+
+ <para>Семеро пошлют различные части этих обсуждений в -chat и
+ -advocacy;</para>
+
+ <para>Один закоммитит предлагаемую лампу, хотя она светит хуже, чем
+ старая;</para>
+
+ <para>Двое откатят эти изменения с ужасной руганью в журнале коммита о том,
+ что лучше FreeBSD будет сидеть в темноте, чем с тусклой лампой.</para>
+
+ <para>Сорок шесть громко воспротивятся этому изменению и потрубуют
+ объяснений от -core;</para>
+
+ <para>Одиннадцать попросят уменьшить размер лампочки, чтобы она подошла
+ к их Тамагочи на случай, если мы когда-нибудь соберёмся переносить
+ FreeBSD на эту платформу;</para>
+
+ <para>Семьдесят три заявят о SNR в -hackers и -chat и в знак протеста
+ отпишутся;</para>
+
+ <para>Тринадцать пошлют письма "unsubscribe", "How do I unsubscribe?",
+ и "Please remove me from the list" с обычной подписью;</para>
+
+ <para>Один закоммитит работающую лампочку в то время, как все будут
+ слишком заняты руганью, чтобы это заметить;</para>
+
+ <para>Тридцать один человек напишет, что новая лампочка будет светить на
+ 0.364% ярче, если её откомпилировать с помощью TenDRA (хотя при этом
+ она приобретёт форму куба) и что FreeBSD должна перейти на компилятор
+ TenDRA, а не на EGCS;</para>
+
+ <para>Один заметит, что у лампочки отсутствует цоколь;</para>
+
+ <para>Девять (включая авторов PR) спросят "что такое MFC?";</para>
+
+ <para>Спустя две недели после смены лампочки пятьдесят семь человек сообщат
+ о том, что света всё равно нет.</para>
+
+ <para><emphasis>&a.nik; добавил:</emphasis></para>
+
+ <para><emphasis>Я сильно смеялся над всем этим.</emphasis></para>
-<para><emphasis>И на меня снизошло озарение :-)</emphasis></para>
+ <para><emphasis>И тогда я подумал, "Постойте-ка, найдётся ли кто-нибудь,
+ чтобы задокументировать это где-нибудь?"</emphasis></para>
-<para><emphasis>Авторские права на этот параграф: Copyright &copy; 1999 <ulink
- URL="mailto:des@FreeBSD.org">Dag-Erling Coidan Smorgrav</ulink>.
- Пожалуйста, не воспроизводите этот материал без указания авторских
- прав.</emphasis></para>
+ <para><emphasis>И на меня снизошло озарение :-)</emphasis></para>
-</answer></qandaentry></qandaset>
+ <para><emphasis>Авторские права на этот параграф:
+ Copyright &copy; 1999 &a.des;. Пожалуйста, не воспроизводите этот материал
+ без указания авторских прав.</emphasis></para>
+
+ </answer>
+</qandaentry>
+</qandaset>
</chapter>
-<chapter
-id="hackers">
+<chapter id="hackers">
<title>Только для серьёзных хакеров FreeBSD</title>
-<qandaset><qandaentry><question>
-<para>Что такое SNAP и RELEASE?</para></question><answer>
+<qandaset>
+<qandaentry>
+ <question>
+ <para>Что такое SNAP и RELEASE?</para>
+ </question>
-<para>В <ulink URL="http://www.FreeBSD.org/cgi/cvsweb.cgi">дереве CVS</ulink>
- сейчас находятся три активно/полуактивно развивающихся ветки
- FreeBSD:</para>
+ <answer>
+
+ <para>В <ulink URL="http://www.FreeBSD.org/cgi/cvsweb.cgi">Репозитории
+ CVS</ulink> сейчас находятся три активно/полуактивно развивающихся ветки
+ FreeBSD (ветвь RELENG_2 меняется от силы пару раз в год, вот почему в
+ разработке только три активных ветки):</para>
<para>
<itemizedlist>
<listitem>
- <para><symbol>RELENG_2_2</symbol>
- AKA <emphasis remap=bf>2.2-STABLE</emphasis></para>
+ <para><literal>RELENG_2_2</literal>
+ AKA <emphasis>2.2-STABLE</emphasis></para>
</listitem>
<listitem>
- <para><symbol>RELENG_3</symbol>
- AKA <emphasis remap=bf>3.X-STABLE</emphasis></para>
+ <para><literal>RELENG_3</literal>
+ AKA <emphasis>3.X-STABLE</emphasis></para>
</listitem>
<listitem>
- <para><symbol>RELENG_4</symbol>
- AKA <emphasis remap=bf>4.X-STABLE</emphasis></para>
+ <para><literal>RELENG_4</literal>
+ AKA <emphasis>4-STABLE</emphasis></para>
</listitem>
<listitem>
- <para><acronym>HEAD</acronym> AKA <option>-CURRENT</option>
- AKA <emphasis remap=bf>5.0-CURRENT</emphasis></para>
+ <para><literal>HEAD</literal> AKA <emphasis>-CURRENT</emphasis>
+ AKA <emphasis>5.0-CURRENT</emphasis></para>
</listitem>
</itemizedlist>
</para>
- <para><acronym>HEAD</acronym> - это не реальный тэг ветки, как другие два, а
- просто символьная константа для обозначения <emphasis>"текущего, не
- ветвящегося, находящегося в разработке дерева"</emphasis>, то есть
- <option>-CURRENT</option>.</para>
+ <para><literal>HEAD</literal> - это не реальный тэг ветки, как другие два;
+ это просто символьная константа для обозначения <quote><emphasis>текущего,
+ не ветвящегося, находящегося в разработке дерева</emphasis></quote>, то есть
+ <quote>-CURRENT</quote>.</para>
- <para>На данный момент <option>-CURRENT</option> является находящимся в
+ <para>На данный момент <quote>-CURRENT</quote> является находящимся в
разработке деревом 5.0, ветка <emphasis remap=bf>4-STABLE</emphasis>,
- <symbol>RELENG_4</symbol>, отделилась от <option>-CURRENT</option> в марте
+ <symbol>RELENG_4</symbol>, отделилась от <quote>-CURRENT</quote> в марте
2000 года.</para>
<para>Ветвь <emphasis remap=bf>2.2-STABLE</emphasis>,
@@ -9841,127 +10434,149 @@ id="hackers">
</qandaentry>
-<qandaentry><question
-id="custrel">
-<para>Как самим сделать релиз?</para></question><answer>
+<qandaentry>
+ <question id="custrel">
+ <para>Как самим сделать релиз?</para>
+ </question>
-<para>Чтобы сделать релиз, вам нужно иметь три вещи: Во-первых, вам нужно
- работать с ядром, включающим драйвер
- <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?vn">vn</ulink>. Добавьте
- его в файл конфигурации ядра и откомпилируйте новое ядро:</para>
-
-<para>
-<literallayout> pseudo-device vn #Vnode driver (turns a file into a device)
- </literallayout>
-</para>
-
-<para>Во-вторых, вам нужно иметь на диске полное дерево CVS. Чтобы добиться
+ <answer>
+
+ <para>Чтобы сделать релиз, вам нужно иметь три вещи: Во-первых, вам нужно
+ работать с ядром, включающим драйвер
+ <ulink URL="http://www.FreeBSD.org/cgi/man.cgi?vn">vn</ulink>. Добавьте
+ его в файл конфигурации ядра и откомпилируйте новое ядро:</para>
+
+ <programlisting>
+pseudo-device vn #Vnode driver (turns a file into a device)
+ </programlisting>
+
+ <para>Во-вторых, вам нужно иметь на диске полное дерево CVS. Чтобы добиться
этого, вы можете использовать <ulink
URL="../../handbook/synching.html#CVSUP">CVSUP</ulink>, указав в файле
supfile в качестве имени релиза cvs и удалив все поля с тегами и
датами:</para>
-
-<para>
- <literallayout>
- *default prefix=/home/ncvs
- *default base=/a
- *default host=cvsup.FreeBSD.org
- *default release=cvs
- *default delete compress use-rel-suffix
-
- ## Main Source Tree
- src-all
- src-eBones
- src-secure
-
- # Other stuff
- ports-all
- www
- doc-all
- </literallayout>
-</para>
-
-<para>После этого запустите <command>cvsup -g supfile</command> для выкачки всех
- нужных исходных текстов на ваш компьютер...</para>
-
-<para>Наконец, вам нужно свободное место для построения системы. Допустим, что
- свободное место есть в каталоге <filename>/some/big/filesystem</filename>
- и, как в примере выше, вы поместили дерево CVS в каталог
- <filename>/home/ncvs</filename>:</para>
-
-<para>
-<literallayout> setenv CVSROOT /home/ncvs # or export CVSROOT=/home/ncvs
- cd /usr/src/release
- make release BUILDNAME=3.0-MY-SNAP CHROOTDIR=/some/big/filesystem/release
- </literallayout>
-</para>
-
-
-<para>Полный релиз будет строиться в каталоге
- <filename>/some/big/filesystem/release</filename> и по окончании этого
- процесса дистрибутив, готовый к помещению на FTP-сервер, будет находиться в
- каталоге <filename>/some/big/filesystem/release/R/ftp</filename>. Если вы
- захотите построить SNAP другой ветки, не -CURRENT, то можете указать
- <literal>RELEASETAG=SOMETAG</literal> в командной строке make release выше,
- например, при указании <literal>RELEASETAG=RELENG_2_2</literal>, будет
- строиться самый свежий снэпшот ветки 2.2-STABLE.</para>
-
-</answer></qandaentry>
+ <programlisting>
+*default prefix=/home/ncvs
+*default base=/a
+*default host=cvsup.FreeBSD.org
+*default release=cvs
+*default delete compress use-rel-suffix
+
+## Main Source Tree
+src-all
+src-eBones
+src-secure
+
+# Other stuff
+ports-all
+www
+doc-all
+ </programlisting>
-<qandaentry><question>
-<para>Как создать инсталляционные диски?</para></question><answer>
-
-<para>Весь процесс создания инсталляционных дисков и дистрибутивов исходных
- текстов и бинарников автоматизирован в файле
- <filename>/usr/src/release/Makefile</filename>. Информации, в нём
- содержащейся, должно быть достаточно, чтобы начать. Однако, должны вас
- предупредить, что этот процесс включает в себя выполнение ``make world''
- и поэтому занимает много времени и дискового пространства.</para>
-
-</answer></qandaentry>
+ <para>После этого запустите <command>cvsup -g supfile</command> для выкачки
+ всех нужных исходных текстов на ваш компьютер...</para>
-<qandaentry><question>
-<para> По команде ``make world'' были переустановлены все программы.
- </para></question><answer>
+ <para>Наконец, вам нужно свободное место для построения системы. Допустим,
+ что свободное место есть в каталоге
+ <filename>/some/big/filesystem</filename> и, как в примере выше, вы
+ поместили дерево CVS в каталог <filename>/home/ncvs</filename>:</para>
-<para>Да, так и должно быть; как говорит название этой команды, ``make
- world'' выполняет построение всех системных файлов с нуля, так
- что в итоге можете быть уверены, что получите чистую рабочую
- систему (вот почему это занимает столько времени).</para>
-
+ <screen>
+&prompt.root; <userinput>setenv CVSROOT /home/ncvs</userinput> # or export CVSROOT=/home/ncvs
+&prompt.root; <userinput>cd /usr/src</userinput>
+&prompt.root; <userinput>make buildworld</userinput>
+&prompt.root; <userinput>cd /usr/src/release</userinput>
+&prompt.root; <userinput>make release BUILDNAME=3.0-MY-SNAP CHROOTDIR=/some/big/filesystem/release</userinput>
+ </screen>
-
-<para>Если в момент запуска команд ``<emphasis remap=tt>make world</emphasis>'' или ``<emphasis remap=tt>make
- install</emphasis>'' определена переменная окружения <acronym>DESTDIR</acronym>, то вновь
- создаваемые файлы будут помещены в дерево каталогов. идентичное
- существующему, с корнем, располагающимся в
- <emphasis remap=tt>&#36;{DESTDIR}</emphasis>. Однако некоторые случайные
- комбинации модификаций совместно используемых библиотек и версий
- компилируемых программ при исполнении команды ``<emphasis remap=tt>make world</emphasis>'',
- может этому помешать.</para>
-
+ <blockquote>
+ <note>
+ <para>Пожалуйста, отметьте, что вам <emphasis>не нужно</emphasis>
+ выполнять процедуру построения системы полностью, если у вас уже
+ есть заполненный <filename>/usr/obj</filename>.</para>
+ </note>
+ </blockquote>
+
+ <para>Полный релиз будет строиться в каталоге
+ <filename>/some/big/filesystem/release</filename> и по окончании этого
+ процесса дистрибутив, готовый к помещению на FTP-сервер, будет находиться в
+ каталоге <filename>/some/big/filesystem/release/R/ftp</filename>. Если вы
+ захотите построить SNAP другой ветки, не -CURRENT, то можете указать
+ <literal>RELEASETAG=SOMETAG</literal> в командной строке make release выше,
+ например, при указании <literal>RELEASETAG=RELENG_2_2</literal>, будет
+ строиться самый свежий снэпшот ветки 2.2-STABLE.</para>
-
-</answer></qandaentry>
+ </answer>
+</qandaentry>
-<qandaentry><question>
-<para> При загрузке системы выдаётся сообщение ``(bus speed defaulted)''.
- </para></question><answer>
-<para>Адаптеры SCSI Adaptec 1542 позволяют программно изменять скорость
- доступа к шине. Предыдущие версии драйвера 1542 пытались определить
- максимально возможную скорость работы и установить это значение. Мы
- обнаружили, что у некоторых пользователей это приводило к нарушению
- работоспособности системы, поэтому эта возможность сейчас вынесена
- в параметр конфигурации ядра ``<symbol>TUNE_1542</symbol>''. Использование
- этой опции на тех системах, где она работает, может привести к
- ускорению доступа к дискам, а там, где это не работает, может привести
- к потере данных.</para>
-
+<qandaentry>
+ <question>
+ <para>Как создать инсталляционные диски?</para>
+ </question>
+
+ <answer>
+
+ <para>Весь процесс создания инсталляционных дисков и дистрибутивов исходных
+ текстов и бинарников автоматизирован в файле
+ <filename>/usr/src/release/Makefile</filename>. Информации, в нём
+ содержащейся, должно быть достаточно, чтобы начать. Однако, должны вас
+ предупредить, что этот процесс включает в себя выполнение
+ <command>make world</command> и поэтому занимает много времени и дискового
+ пространства.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>По команде <command>make world</command> были переустановлены все
+ программы.</para>
+ </question>
+
+ <answer>
+
+ <para>Да, так и должно быть; как говорит название этой команды, <command>make
+ world</command> выполняет построение всех системных файлов с нуля, так
+ что в итоге можете быть уверены, что получите чистую рабочую
+ систему (вот почему это занимает столько времени).</para>
+
+ <para>Если в момент запуска команд <command>make world</command> или
+ <command>make install</command> определена переменная окружения
+ <literal>DESTDIR</literal>, то вновь создаваемые файлы будут помещены в
+ дерево каталогов. идентичное существующему, с корнем, располагающимся в
+ <literal>&#36;{DESTDIR}</literal>. Однако некоторые случайные
+ комбинации модификаций совместно используемых библиотек и версий
+ компилируемых программ при исполнении команды
+ <command>make world</command>, может этому помешать.</para>
+
+ </answer>
+</qandaentry>
+
+
+<qandaentry>
+ <question>
+ <para>При загрузке системы выдаётся сообщение <quote>(bus speed
+ defaulted)</quote>.</para>
+ </question>
+
+ <answer>
+
+ <para>Адаптеры SCSI Adaptec 1542 позволяют программно изменять скорость
+ доступа к шине. Предыдущие версии драйвера 1542 пытались определить
+ максимально возможную скорость работы и установить это значение. Мы
+ обнаружили, что у некоторых пользователей это приводило к нарушению
+ работоспособности системы, поэтому эта возможность сейчас вынесена
+ в параметр конфигурации ядра <symbol>TUNE_1542</symbol>. Использование
+ этой опции на тех системах, где она работает, может привести к
+ ускорению доступа к дискам, а там, где это не работает, может привести
+ к потере данных.</para>
+
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question
id="ctm">
@@ -9979,26 +10594,24 @@ id="ctm">
<qandaentry><question>
<para>Как вы разделяете дистрибутив на файлы по 240К?</para></question><answer>
-<para>Команда split в современных BSD-системах имеет опцию ``<option>-b</option>'',
- позволяющую разрезать файлы на части с точностью до байта.</para>
-
+ <para>Команда split в современных BSD-системах имеет опцию
+ <option>-b</option>, позволяющую разрезать файлы на части с точностью до
+ байта.</para>
-
<para>Вот пример из файла <filename>/usr/src/Makefile</filename>.</para>
-
-<para>
-<literallayout> bin-tarball:
- (cd ${DISTDIR}; \
- tar cf - . \
- gzip --no-name -9 -c | \
- split -b 240640 - \
- ${RELEASEDIR}/tarballs/bindist/bin_tgz.)
- </literallayout>
-</para>
-
-
-</answer></qandaentry>
+ <programlisting>
+bin-tarball:
+(cd ${DISTDIR}; \
+tar cf - . \
+gzip --no-name -9 -c | \
+split -b 240640 - \
+${RELEASEDIR}/tarballs/bindist/bin_tgz.)
+ </programlisting>
+
+ </answer>
+</qandaentry>
+
<qandaentry><question>
<para> Я написал некоторое добавление к ядру, кому его послать?
@@ -10022,98 +10635,83 @@ id="ctm">
-<para>Если рассматривать на самом низком уровне, то существует несколько
- портов ввода/вывода, в которые должны выводить информацию все адаптеры
- PnP, когда компьютер пытается выполнить запрос о наличии установленных
- адаптеров. Так что, когда запускается процедура определения адаптеров
- PnP, она выполняет запрос о наличии каких-либо адаптеров PnP, а все
- такие адаптеры выдают свой номер модели при чтении того же порта
- ввода/вывода, поэтому процедура определения получит ответ на свой
- запрос, состоящий из логически наложенных номеров моделей,
- интерпретируемый как ``да''. В этом ответе по крайней мере один бит
- будет установлен в единицу. Затем код определения адаптеров может
- ``выключать'' адаптеры с ID (назначаемыми Microsoft/Intel), меньшими,
- чем X. Потом следует попытка определить, остались ли ещё адаптеры,
- отвечающие на запрос. Если ответ ``<emphasis remap=tt>0</emphasis>'', то адаптеров с
- ID, большими чем X, нет. После этого делается попытка определить
- наличие адаптеров с номерами, меньшими чем ``X''. Если они есть,
- то становится известно, что есть адаптеры с номерами, меньшими чем X.
- Тогда происходит запрос адаптерам, большим чем X-(limit-4), на
- выключение. Запрос повторяется. Применив этот метод полудвоичного
- поиска границ расположения ID достаточное количество раз, код
- идентификации найдёт все адаптеры PnP, установленные в данной машине
- за число итераций, гораздо меньшее, чем может занять перебор 2^64
- возможных вариантов ID.</para>
-
-
-
-<para>ID представляет собой два 32-разрядные числа (всего их 2^64)
- + 8 бит контрольной суммы. Первые 32 бита являются идентификатором
- производителя. Они никогда не сообщаются, однако часто бывает, что
- различные типы адаптеров от одного и того же производителя имеют
- различные 32-битные значения идентификатора производителя.
- Необходимость в 32 разрядах только для задания производителя адаптера
- выглядит несколько излишним.</para>
-
-
-
-<para>Оставшиеся 32 бита являются серийным номером, ethernet-адресом,
- чем-либо, делающим этот адаптер уникальным. Производитель не должен
- выпускать других адаптеров, имеющих то же самое значение этих битов,
- если, конечно, у них не разные идентификаторы производителя. Таким
- образом, вы можете иметь несколько адаптеров одинакового типа, но с
- различными 64-разрядными номерами.</para>
-
-
-
-<para>Группы по 32 бита не богут быть нулевыми. Это позволяет при
- логическом объединении OR их номеров получать ненулевое значение во
- время начального поиска адаптеров.</para>
-
+ <para>Если рассматривать на самом низком уровне, то существует несколько
+ портов ввода/вывода, в которые должны выводить информацию все адаптеры
+ PnP, когда компьютер пытается выполнить запрос о наличии установленных
+ адаптеров. Так что, когда запускается процедура определения адаптеров
+ PnP, она выполняет запрос о наличии каких-либо адаптеров PnP, а все
+ такие адаптеры выдают свой номер модели при чтении того же порта
+ ввода/вывода, поэтому процедура определения получит ответ на свой
+ запрос, состоящий из логически наложенных номеров моделей,
+ интерпретируемый как <quote>да</quote>. В этом ответе по крайней мере
+ один бит будет установлен в единицу. Затем код определения адаптеров может
+ <quote>выключать</quote> адаптеры с ID (назначаемыми Microsoft/Intel),
+ большими, чем X. Потом следует попытка определить, остались ли ещё
+ адаптеры, отвечающие на запрос. Если ответ <literal>0</literal>, то
+ адаптеров с ID, большими чем X, нет. После этого делается попытка
+ определить наличие адаптеров с номерами, меньшими чем <literal>X</literal>.
+ Если они есть, то становится известно, что есть адаптеры с номерами,
+ меньшими, чем X. Тогда происходит запрос адаптерам, большим чем
+ X-(limit-4), на выключение. Запрос повторяется. Применив этот метод
+ полудвоичного поиска границ расположения ID достаточное количество раз, код
+ идентификации найдёт все адаптеры PnP, установленные в данной машине
+ за число итераций, гораздо меньшее, чем может занять перебор 2^64
+ возможных вариантов ID.</para>
+
+ <para>ID представляет собой два 32-разрядные числа (всего их 2^64)
+ + 8 бит контрольной суммы. Первые 32 бита являются идентификатором
+ производителя. Они никогда не сообщаются, однако часто бывает, что
+ различные типы адаптеров от одного и того же производителя имеют
+ различные 32-битные значения идентификатора производителя.
+ Необходимость в 32 разрядах только для задания производителя адаптера
+ выглядит несколько излишним.</para>
+
+ <para>Оставшиеся 32 бита являются серийным номером, ethernet-адресом,
+ чем-либо, делающим этот адаптер уникальным. Производитель не должен
+ выпускать других адаптеров, имеющих то же самое значение этих битов,
+ если, конечно, у них не разные идентификаторы производителя. Таким
+ образом, вы можете иметь несколько адаптеров одинакового типа, но с
+ различными 64-разрядными номерами.</para>
+
+ <para>Группы по 32 бита не богут быть нулевыми. Это позволяет при
+ логическом объединении OR их номеров получать ненулевое значение во
+ время начального поиска адаптеров.</para>
+
+ <para>Как только система определила ID всех адаптеров, она активизирует
+ каждый адаптер, по одному за раз (через те же порты ввода/вывода), и
+ определяет, какие ресурсы требуются данному адаптеру, какие возможные
+ прерывания доступны итд. Сканирование и сбор информации происходит
+ по всем адаптерам.</para>
+
+ <para>Эта информация соотносится с содержащейся в файлах ECU на диске
+ или в MLB BIOS. Поддержка PnP из ECU и BIOS для аппаратуры на
+ MLB обычно имеет синтетический характер, и периферия не выполняет
+ полностью поцедуру настоящего PnP. Однако, используя BIOS и
+ информацию из ECU, процедура инициализации может обнаружить устройства
+ PnP, которые не могут быть найдены другим способом.</para>
+
+ <para>Затем устройства PnP опрашиваются ещё раз для назначения им портов
+ ввода/вывода, DMA, IRQ и адресов отображаемой памяти. Теперь
+ устройства должны иметь именно такие настройки и они должны оставаться
+ такими до следующей перезагрузки, хотя нигде не сказано, что вы не
+ можете их менять, когда захотите.</para>
+
+ <para>Здесь сделано много упрощений, однако общую идею вы должны
+ уловить.</para>
+
+ <para>Microsoft использовала для PnP некоторые порты статуса первого
+ принтера, по их логике, не существует адаптеров, использующих эти
+ адреса для ввода/вывода. Я обнаружил один такой адаптер принтера от
+ IBM, который декодирует запись в порт статуса в момент начального
+ опроса устройств PnP, на что MS ответил <quote>хулиган</quote>. Так что они
+ выполняют запись в порт статуса принтера для установки адресов,
+ вдобавок используют этот адрес + <literal>0x800</literal>, и ещё один порт
+ ввода/вывода, который может располагаться где угодно в диапазоне между
+ <literal>0x200</literal> и <literal>0x3ff</literal>, для чтения.</para>
-
-<para>Как только система определила ID всех адаптеров, она активизирует
- каждый адаптер, по одному за раз (через те же порты ввода/вывода), и
- определяет, какие ресурсы требуются данному адаптеру, какие возможные
- прерывания доступны итд. Сканирование и сбор информации происходит
- по всем адаптерам.</para>
-
-
-
-<para>Эта информация соотносится с содержащейся в файлах ECU на диске
- или в MLB BIOS. Поддержка PnP из ECU и BIOS для аппаратуры на
- MLB обычно имеет синтетический характер, и периферия не выполняет
- полностью поцедуру настоящего PnP. Однако, используя BIOS и
- информацию из ECU, процедура инициализации может обнаружить устройства
- PnP, которые не могут быть найдены другим способом.</para>
-
-
-
-<para>Затем устройства PnP опрашиваются ещё раз для назначения им портов
- ввода/вывода, DMA, IRQ и адресов отображаемой памяти. Теперь
- устройства должны иметь именно такие настройки и они должны оставаться
- такими до следующей перезагрузки, хотя нигде не сказано, что вы не
- можете их менять, когда захотите.</para>
-
-
-
-<para>Здесь сделано много упрощений, однако общую идею вы должны уловить.</para>
-
-
-
-<para>Microsoft использовала для PnP некоторые порты статуса первого
- принтера, по их логике, не существует адаптеров, использующих эти
- адреса для ввода/вывода. Я обнаружил один такой адаптер принтера от
- IBM, который декодирует запись в порт статуса в момент начального
- опроса устройств PnP, на что MS ответил ``хулиган''. Так что они
- выполняют запись в порт статуса принтера для установки адресов,
- плюс используют этот адрес + <literal>0x800</literal>, и ещё один порт ввода/вывода,
- который может располагаться где угодно в диапазоне между <literal>0x200</literal> и
- <literal>0x3ff</literal>, для чтения.</para>
-
+ </answer>
+</qandaentry>
-
-</answer></qandaentry>
<qandaentry><question>
<para>Поддерживает ли FreeBSD платформы, отличные от x86?</para></question><answer>
@@ -10191,29 +10789,32 @@ id="ctm">
</answer></qandaentry>
-<qandaentry><question>
-<para>Что делать при аварийном остановах системы</para></question><answer>
-
-<para><emphasis>[Этот раздел был вырезан из письма, написанного <ulink
- URL="mailto:wpaul@FreeBSD.org">Биллом Полом</ulink> (Bill Paul)
- в <link linkend="mailing">список рассылки</link> freebsd-current <ulink
- URL="mailto:des@FreeBSD.org">Дэгом-Элингом Коиданом Смёгравом</ulink>
- (Dag-Erling Coidan Smorgrav), который исправил несколько
- опечаток и добавил комментарии в квадратных скобках]</emphasis></para>
-
-<para>
-<literallayout>From: Bill Paul &lt;wpaul@skynet.ctr.columbia.edu&gt;
+
+<qandaentry>
+ <question>
+ <para>Что делать при аварийном остановах системы</para>
+ </question>
+
+ <answer>
+
+ <para><emphasis>[Этот раздел был вырезан из письма, написанного &a.wpaul; в
+ <link linkend="mailing">список рассылки</link> freebsd-current
+ &a.des;, который исправил несколько опечаток и добавил комментарии в
+ квадратных скобках]</emphasis></para>
+
+ <programlisting>
+From: Bill Paul &lt;wpaul@skynet.ctr.columbia.edu&gt;
Subject: Re: the fs fun never stops
To: ben@rosengart.com
Date: Sun, 20 Sep 1998 15:22:50 -0400 (EDT)
Cc: current@FreeBSD.org
- </literallayout>
-</para>
+ </programlisting>
-<para> <emphasis>[&lt;ben@rosengart.com&gt; отправил письмо, содержащее следующее
- аварийное сообщение системы]</emphasis>
-
-<literallayout>&gt; Fatal trap 12: page fault while in kernel mode
+ <para><emphasis>[&lt;ben@rosengart.com&gt; отправил письмо, содержащее
+ следующее аварийное сообщение системы]</emphasis>
+
+ <programlisting>
+&gt; Fatal trap 12: page fault while in kernel mode
&gt; fault virtual address = 0x40
&gt; fault code = supervisor read, page not present
&gt; instruction pointer = 0x8:0xf014a7e5
@@ -10227,62 +10828,56 @@ Cc: current@FreeBSD.org
&gt; interrupt mask =
&gt; trap number = 12
&gt; panic: page fault
- </literallayout>
-</para>
-
+ </programlisting>
-
-<para>[Если] вы увидите такое сообщение, просто его воспроизвести и
- послать нам не достаточно. Указатель инструкций, выделенный мною,
- важен, к сожалению, его значение зависит от конфигурации ядра.
- Другими словами, его значение меняется в зависимости от конкретного
- ядра, которое вы используете. Если вы используете ядро GENERIC
- одного из снэпшотов, то кто-то ещё может отследить функцию, вызвавшую
- ошибку, но если вы работаете со специально отконфигурированным ядром,
- то только <emphasis>вы</emphasis> можете сказать нам, где случилась ошибка.</para>
-
+ [Если] вы увидите такое сообщение, просто его воспроизвести и
+ послать нам не достаточно. Указатель инструкций, выделенный мною,
+ важен, к сожалению, его значение зависит от конфигурации ядра.
+ Другими словами, его значение меняется в зависимости от конкретного
+ ядра, которое вы используете. Если вы используете ядро GENERIC
+ одного из снэпшотов, то кто-то ещё может отследить функцию, вызвавшую
+ ошибку, но если вы работаете со специально отконфигурированным ядром,
+ то только <emphasis>вы</emphasis> можете сказать нам, где случилась
+ ошибка.</para>
-
-<para>Вот что вы должны сделать:</para>
-
-<para>
-<itemizedlist>
+ <para>Вот что вы должны сделать:</para>
-<listitem>
-<para>Запишите значение указателя инструкций. Заметьте, что
- часть <literal>0x8:</literal> в этом случае не важна: нам нужна часть
- <literal>0xf0xxxxxx</literal>.
-</para>
-</listitem>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>Запишите значение указателя инструкций. Заметьте, что
+ часть <literal>0x8:</literal> в этом случае не важна: нам нужна часть
+ <literal>0xf0xxxxxx</literal>.</para>
+ </listitem>
-<listitem>
-<para>Когда система перезагрузится, сделайте следующее:
-
-<literallayout>% nm /kernel.that.caused.the.panic | grep f0xxxxxx
- </literallayout>
-
- где <literal>f0xxxxxx</literal> - это значение указателя инструкций. Однако
- неприятность заключается в том, что вы не получите точного
- соответствия, так как в таблице имен ядра для точек входа в функции
- даны адреса на начало функций, а указатель инструкций будет указывать
- куда-то внутрь её тела. Если вы не получили точного соответствия,
- опустите последнюю цифру в значении указателя инструкций и попробуйте
- снова, то есть:
-
-<literallayout>% nm /kernel.that.caused.the.panic | grep f0xxxxx
- </literallayout>
-
- Если и это не привело ни к каким результатам, отрежьте следующую
- цифру. Повторяйте, пока не получите хоть что-то. Результатом будет
- список функций, которые, возможно, привели к аварийному останову.
- Этот механизм обнаружения ошибочного места довольно неточен, но это
- всё же лучше чем ничего.
- </para>
-</listitem>
+ <listitem>
+ <para>Когда система перезагрузится, сделайте следующее:
+
+ <screen>
+&prompt.user; <userinput>nm /kernel.that.caused.the.panic | grep f0xxxxxx</userinput>
+ </screen>
+
+ где <literal>f0xxxxxx</literal> - это значение указателя инструкций.
+ Однако неприятность заключается в том, что вы не получите точного
+ соответствия, так как в таблице имен ядра для точек входа в функции
+ даны адреса на начало функций, а указатель инструкций будет указывать
+ куда-то внутрь её тела. Если вы не получили точного соответствия,
+ опустите последнюю цифру в значении указателя инструкций и попробуйте
+ снова, то есть:
+
+ <screen>
+&prompt.user; <userinput>nm /kernel.that.caused.the.panic | grep f0xxxxx</userinput>
+ </screen>
+
+ Если и это не привело ни к каким результатам, отрежьте следующую
+ цифру. Повторяйте, пока не получите хоть что-то. Результатом будет
+ список функций, которые, возможно, привели к аварийному останову.
+ Этот механизм обнаружения ошибочного места довольно неточен, но это
+ всё же лучше, чем ничего.</para>
+ </listitem>
+ </itemizedlist>
+ </para>
-</itemizedlist>
-</para>
-
<para>Зачастую люди приводят подобные аварийные сообщения, на редко кто
утруждается привести соотвествие указателя инструкций с функцией в
таблице символов ядра.</para>
@@ -10297,39 +10892,42 @@ Cc: current@FreeBSD.org
CD).</para>
<para>Во всяком случае, обычно я использую такой способ:</para>
-
-<para>
- <itemizedlist>
- <listitem>
- <para>Отредактируйте конфигурационный файл ядра, добавив строку
- 'options DDB', если вам зачем-то понадобился встроенный отладчик.
- (Я использую его в основном для указания точек останова, если
- подозреваю возникновение бесконечных циклов.)</para>
- </listitem>
- <listitem>
- <para>Выполните <command>config -g KERNELCONFIG</command> для создания
- каталога построения ядра.</para>
- </listitem>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>Отредактируйте конфигурационный файл ядра, добавив строку
+ <literal>options DDB</literal>, если вам зачем-то понадобился
+ встроенный отладчик. (Я использую его в основном для указания точек
+ останова, если подозреваю возникновение бесконечных циклов.)</para>
+ </listitem>
- <listitem>
- <para><command>cd /sys/compile/KERNELCONFIG; make</command></para>
- </listitem>
+ <listitem>
+ <para>Выполните
+ <command>config -g <replaceable>KERNELCONFIG</replaceable></command>
+ для создания каталога построения ядра.</para>
+ </listitem>
- <listitem>
- <para>Дождитесь окончания компиляции ядра.</para>
- </listitem>
+ <listitem>
+ <para>
+ <command>cd /sys/compile/<replaceable>KERNELCONFIG</replaceable>;
+ make</command></para>
+ </listitem>
- <listitem>
- <para><command>make install</command></para>
- </listitem>
+ <listitem>
+ <para>Дождитесь окончания компиляции ядра.</para>
+ </listitem>
+
+ <listitem>
+ <para><command>make install</command></para>
+ </listitem>
+
+ <listitem>
+ <para>reboot</para>
+ </listitem>
+ </itemizedlist>
+ </para>
- <listitem>
- <para>reboot</para>
- </listitem>
- </itemizedlist>
-</para>
-
<para>В процессе выполнения команды &man.make.1; будут построены два ядра,
<filename>kernel</filename> и <filename>kernel.debug</filename>.
<filename>kernel</filename> будет установлен как
@@ -10350,29 +10948,32 @@ Cc: current@FreeBSD.org
<command>savecore(8)</command> автоматически и поместят аварийный дамп в
каталог <filename>/var/crash</filename>.</para>
-<para>ЗАМЕЧАНИЕ: аварийные дампы FreeBSD обычно имеют размер, равный
- физическому объёму оперативной памяти вашей машины. Так что если у вас 64МБ
- ОЗУ, вы получите дамп размером 64МБ. Поэтому вы должны удостовериться, что
- в каталоге <filename>/var/crash</filename> достаточно места для хранения
- дампа. Либо вы можете вручную запустить <command>savecore(8)</command>
- и создать аварийный дамп в другом каталоге, где достаточно места. Размер
- аварийного дампа можно уменьшить, указав в конфигурации ядра
- <literal>options MAXMEM=(размер)</literal> подходящее значение для объёма
- памяти, которое будет использоваться ядром. Например, если у вас
- 128 МБ ОЗУ, вы можете ограничить использование памяти ядром 16 мегабайтами,
- так что размер аварийного дампа будет равен 16МБ, а не 128.</para>
-
+ <para>
+ <note>
+ <para>Аварийные дампы FreeBSD обычно имеют размер, равный физическому
+ объёму оперативной памяти вашей машины. Так что если у вас 64МБ
+ ОЗУ, вы получите дамп размером 64МБ. Поэтому вы должны удостовериться,
+ что в каталоге <filename>/var/crash</filename> достаточно места для
+ хранения дампа. Либо вы можете вручную запустить
+ <command>savecore(8)</command> и создать аварийный дамп в другом
+ каталоге, где достаточно места. Размер аварийного дампа можно
+ уменьшить, указав в конфигурации ядра
+ <literal>options MAXMEM=(размер)</literal> подходящее значение для
+ объёма памяти, которое будет использоваться ядром. Например, если у вас
+ 128 МБ ОЗУ, вы можете ограничить использование памяти ядром 16
+ мегабайтами, так что размер аварийного дампа будет равен 16МБ, а не
+ 128.</para>
+ </note>
+ </para>
+
<para>Как только вы получили аварийный дамп, вы можете выполнить трассировку
вызовов с помощью <command>gdb(1)</command> таким образом:</para>
-
-<para>
-<literallayout>% gdb -k /sys/compile/KERNELCONFIG/kernel.debug /var/crash/vmcore.0
-(gdb) where
- </literallayout>
-</para>
-
-
+ <screen>
+&prompt.user; <userinput>gdb -k /sys/compile/KERNELCONFIG/kernel.debug /var/crash/vmcore.0</userinput>
+<prompt>(gdb)</prompt> <userinput>where</userinput>
+ </screen>
+
<para>Заметьте, что при этом может быть выведено несколько экранов
информации; в идеале вы должны использовать <command>script(1)</command> для их
перехвата. При использовании необработанного образа ядра со всей
@@ -10418,61 +11019,58 @@ Cc: current@FreeBSD.org
</answer></qandaentry>
-<qandaentry><question>
-<para>Увеличение и уменьшение адресного пространства ядра</para></question><answer>
-<para>По умолчанию размер адресного пространства ядра равен 256 МБ во
- FreeBSD 3.x и 1 ГБ во FreeBSD 4.x. Если вы используете FreeBSD
- в качестве сервера с интенсивной сетевой нагрузкой (скажем,
- большой FTP или HTTP сервер), вы можете обнаружить, что 256 МБ
- недостаточно.</para>
-
+<qandaentry>
+ <question>
+ <para>Увеличение и уменьшение адресного пространства ядра</para>
+ </question>
-
-<para>Каким же образом можно увеличить адресное пространство? Здесь
- есть два момента. Во-первых, вам нужно указать ядру выделить
- большее количество адресного пространства для самого ядра. Во-вторых,
- так как ядро загружается в верхнюю часть адресного пространства, вам
- нужно уменьшить адрес загрузки так, чтобы он не вышел за верхнюю
- границу. </para>
-
+ <answer>
-
-<para>Первая проблема решается увеличением значения константы
- <acronym>NKPDE</acronym> в файле <filename>src/sys/i386/include/pmap.h</filename>. В случае 1
- ГБ адресного пространства он должен выглядеть примерно так:</para>
-
-<para>
-<literallayout>#ifndef NKPDE
+ <para>По умолчанию размер адресного пространства ядра равен 256 МБ во
+ FreeBSD 3.x и 1 ГБ во FreeBSD 4.x. Если вы используете FreeBSD
+ в качестве сервера с интенсивной сетевой нагрузкой (скажем,
+ большой FTP или HTTP сервер), вы можете обнаружить, что 256 МБ
+ недостаточно.</para>
+
+ <para>Каким же образом можно увеличить адресное пространство? Здесь
+ есть два момента. Во-первых, вам нужно указать ядру выделить
+ большее количество адресного пространства для самого ядра. Во-вторых,
+ так как ядро загружается в верхнюю часть адресного пространства, вам
+ нужно уменьшить адрес загрузки так, чтобы он не вышел за верхнюю
+ границу. </para>
+
+ <para>Первая проблема решается увеличением значения константы
+ <literal>NKPDE</literal> в
+ файле <filename>src/sys/i386/include/pmap.h</filename>. В случае 1 ГБ
+ адресного пространства он должен выглядеть примерно так:</para>
+
+ <programlisting>
+#ifndef NKPDE
#ifdef SMP
#define NKPDE 254 /* addressable number of page tables/pde's */
#else
#define NKPDE 255 /* addressable number of page tables/pde's */
#endif /* SMP */
#endif
- </literallayout>
-</para>
-
+ </programlisting>
-
-<para>Для вычисления значения <acronym>NKPDE</acronym> разделите желаемый объём
- адресного пространства (в мегабайтах) на четыре и вычтите из
- получившегося числа единичку в случае однопроцессорной машины и
- двоечку в случае многопроцессорного ядра.</para>
-
+ <para>Для вычисления значения <literal>NKPDE</literal> разделите желаемый
+ объём адресного пространства (в мегабайтах) на четыре и вычтите из
+ получившегося числа единичку в случае однопроцессорной машины и
+ двоечку в случае многопроцессорного ядра.</para>
-
-<para>Для достижения второй цели вам нужно правильный адрес для загрузки
- ядра: просто отнимите размер адресного пространства (в байтах) от
- 0x100100000; результат будет равным 0xc0100000 для адресного пространства
- в 1 ГБ. Установите значение константы <symbol>LOAD_ADDRESS</symbol>
- в файле <filename>src/sys/i386/conf/Makefile.i386</filename> в это
- значение; затем установите значение счётчика в начале списка секций в
- файле <filename>src/sys/i386/conf/kernel.script</filename> в то же самое
- значение, как это сделано здесь:</para>
-
-<para>
-<literallayout>OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
+ <para>Для достижения второй цели вам нужно правильный адрес для загрузки
+ ядра: просто отнимите размер адресного пространства (в байтах) от
+ 0x100100000; результат будет равным 0xc0100000 для адресного пространства
+ в 1 ГБ. Установите значение константы <symbol>LOAD_ADDRESS</symbol>
+ в файле <filename>src/sys/i386/conf/Makefile.i386</filename> в это
+ значение; затем установите значение счётчика в начале списка секций в
+ файле <filename>src/sys/i386/conf/kernel.script</filename> в то же самое
+ значение, как это сделано здесь:</para>
+
+ <programlisting>
+OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
OUTPUT_ARCH(i386)
ENTRY(btext)
SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/obj/elf/home/src/tmp/usr/i386-unknown-freebsdelf/lib);
@@ -10481,128 +11079,97 @@ SECTIONS
/* Read-only sections, merged into text segment: */
. = 0xc0100000 + SIZEOF_HEADERS;
.interp : { *(.interp) }
- </literallayout>
-</para>
-
+ </programlisting>
-
-<para>После этого переконфигурируйте и перестройте ядро. Вы можете
- столкнуться с проблемами при работе утилит <command>ps(1)</command>, <command>top(1)</command>
- и подобных им; решить их может <emphasis remap=tt>make world</emphasis> (или ручная
- перекомпиляция <emphasis remap=tt>libkvm</emphasis>, <emphasis remap=tt>ps</emphasis> и <emphasis remap=tt>top</emphasis> после копирования
- исправленного <filename>pmap.h</filename> в <filename>/usr/include/vm/)</filename>.</para>
-
-<para>ЗАМЕЧАНИЕ: Размер адресного пространства ядра должен быть
- кратен четырём мегабайтам.</para>
+ <para>После этого переконфигурируйте и перестройте ядро. Вы можете
+ столкнуться с проблемами при работе утилит <command>ps(1)</command>,
+ <command>top(1)</command> и подобных им; решить их может
+ <emphasis remap=tt>make world</emphasis> (или ручная перекомпиляция
+ <emphasis remap=tt>libkvm</emphasis>, <emphasis remap=tt>ps</emphasis> и
+ <emphasis remap=tt>top</emphasis> после копирования исправленного
+ <filename>pmap.h</filename>
+ в <filename>/usr/include/vm/)</filename>.</para>
+
+ <para>ЗАМЕЧАНИЕ: Размер адресного пространства ядра должен быть
+ кратен четырём мегабайтам.</para>
-<para>[<ulink URL="mailto:dg@FreeBSD.org">Дэвид Гринмэн</ulink>
- (David Greenman) добавил: <emphasis> Я думаю, что размер адресного
- пространства ядра должен быть степенью двойки, но я в этом не уверен.
- Для работы с верхними адресами памяти использовался код старого
- загрузчика, и я ожидаю по крайней мере точность в 256 МБ.]</emphasis></para>
-
+ <para>[&a.dg; добавил: <emphasis> Я думаю, что размер адресного пространства
+ ядра должен быть степенью двойки, но я в этом не уверен. Для работы с
+ верхними адресами памяти использовался код старого загрузчика, и я ожидаю
+ по крайней мере точность в 256 МБ.]</emphasis></para>
-
-</answer></qandaentry></qandaset>
+ </answer>
+</qandaentry>
+</qandaset>
</chapter>
-<chapter
-id="acknowledgments">
-<title>Наши благодарности</title>
-
-<para>
-<literallayout> Если вы обнаружили неточности в этом FAQ или хотите что-то в него
- добавить, пожалуйста, напишите нам по адресу &lt;FAQ@FreeBSD.org&gt;.
- Мы ждём ваши отзывы и пожелания, чтобы с вашей помощью сделать этот
- документ ещё лучше!
-
-
- FreeBSD Core Team
- </literallayout>
-</para>
-
-<para>
-<variablelist>
-<varlistentry><term>Jordan Hubbard</term>
-<listitem>
-<para>Различные упорядочения и добавления в FAQ.</para>
-
-
-
-</listitem>
-</varlistentry>
-
-<varlistentry><term>Doug White</term>
+<chapter id="acknowledgments">
+ <title>Наши благодарности</title>
-<listitem>
-<para>Работа со списком рассылки freebsd-questions</para>
-
+ <blockquote>
+ <attribution>FreeBSD Core Team</attribution>
-
-</listitem>
-</varlistentry>
-
-<varlistentry><term>Joerg Wunsch</term>
-
-<listitem>
-<para>Работа с телеконференциями Usenet</para>
-
-
-
-</listitem>
-</varlistentry>
-
-<varlistentry><term>Garrett Wollman</term>
-
-<listitem>
-<para>Раздел о сети и форматирование</para>
-
+ <para>Если вы обнаружили неточности в этом FAQ или хотите что-то
+ в него добавить, пожалуйста, напишите нам по адресу &a.faq;.
+ Мы ждём ваши отзывы и пожелания, чтобы с вашей помощью сделать этот
+ документ ещё лучше!</para>
+ </blockquote>
-
-</listitem>
-</varlistentry>
+ <para>
+ <variablelist>
+ <varlistentry><term>&a.jkh;</term>
+ <listitem>
+ <para>Различные упорядочения и добавления в FAQ.</para>
+ </listitem>
+ </varlistentry>
-<varlistentry><term>Jim Lowe</term>
+ <varlistentry><term>&a.dwhite;</term>
+ <listitem>
+ <para>Работа со списком рассылки freebsd-questions</para>
+ </listitem>
+ </varlistentry>
-<listitem>
-<para>Информация о протоколе многоадресной передачи</para>
-
+ <varlistentry><term>&a.joerg;</term>
+ <listitem>
+ <para>Работа с телеконференциями Usenet</para>
+ </listitem>
+ </varlistentry>
-
-</listitem>
-</varlistentry>
+ <varlistentry><term>&a.wollman;</term>
+ <listitem>
+ <para>Раздел о сети и форматирование</para>
+ </listitem>
+ </varlistentry>
-<varlistentry><term>Peter da Silva</term>
+ <varlistentry><term>Jim Lowe</term>
+ <listitem>
+ <para>Информация о протоколе многоадресной передачи</para>
+ </listitem>
+ </varlistentry>
-<listitem>
-<para>Раб-наборщик</para>
-
-</listitem>
-</varlistentry>
+ <varlistentry><term>&a.pds;</term>
+ <listitem>
+ <para>Раб-наборщик</para>
+ </listitem>
+ </varlistentry>
-<varlistentry><term>Andrey Zakhvatov</term>
+ <varlistentry><term>Andrey Zakhvatov</term>
+ <listitem>
+ <para>Перевод на русский язык</para>
+ </listitem>
+ </varlistentry>
-<listitem>
-<para>Перевод на русский язык</para>
-
-</listitem>
-</varlistentry>
+ <varlistentry><term>The FreeBSD Team</term>
+ <listitem>
+ <para>Охи, вздохи, стоны, добавления</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
-<varlistentry><term>The FreeBSD Team</term>
+ <para>И всем остальным, оставшимся неизвестными, наши глубочайшие
+ извинения и сердечные благодарности!</para>
-<listitem>
-<para>Охи, вздохи, стоны, добавления
- </para>
-
-</listitem>
-</varlistentry>
-</variablelist>
-</para>
-
-<para>И всем остальным, оставшимся неизвестными, наши глубочайшие
- извинения и сердечные благодарности!
- </para>
-
</chapter>
</book>