diff --git a/ru/FAQ/admin.sgml b/ru/FAQ/admin.sgml index 322c0d23f8..96c9fd04ee 100644 --- a/ru/FAQ/admin.sgml +++ b/ru/FAQ/admin.sgml @@ -1,938 +1,992 @@ - + Системное администрирование Где расположены файлы конфигурации системы?

Для FreeBSD версий от 2.0.5R до 2.2.1R основным конфигурационным файлом является /etc/sysconfig. Все параметры указываются здесь, а остальные конфигурационные файлы, такие, как и /etc/netstart просто его используют.

Посмотрите файл /etc/sysconfig и измените значения переменных на соответствующие вашей системе. В файле содержатся комментарии, описывающие смысл этих переменных и способ их задания.

В системах выше 2.2.1 и в 3.0 файл /etc/sysconfig сменил название на говорящее само за себя , синтаксис описания переменных был несколько улучшен. /etc/netstart тоже был переименован в /etc/rc.network, так что все конфигурационные файлы теперь можно перенести одной командой /usr/src/etc/rc* /etc.

/etc/rc.local как обычно, можно использовать для запуска дополнительных местных служб типа или для настройки дополнительных параметров.

Файл /etc/rc.serial предназначен для инициализации коммуникационных адаптеров (например, установки характеристик работы последовательных портов итд).

Файл /etc/rc.i386 предназначен для настройки специфичных для архитектуры Intel параметров, таких, как эмуляция iBCS2 или характеристик системной консоли ПК.

Начиная с версии 2.1.0R, вы можете иметь "местные" файлы автозапуска в каталоге, указанном в файле /etc/sysconfig (или /etc/rc.conf): # Location of local startup files. local_startup=/usr/local/etc/rc.local.d

Каждый файл, оканчивающийся на Если вам нужно добиться определённого порядка выполнения не меняя имён файлов, можно использовать схему, в которой для упорядочения используются цифры, предшествующие имени файла. 10news.sh 15httpd.sh 20ssh.sh

Это может выглядеть безобразно (как SysV :-)), но это простой и понятный метод для добавления дополнительных служб без шаманства с редактированием /etc/rc.local. Многие порты/пакаджи предполагают, что каталог /usr/local/etc/rc.d предназначен для размещения запускаемых при загрузке системы скриптов. Как проще всего добавить пользователя?

Используйте команду .

Существует также пакет, называющийся ``<roberto@FreeBSD.ORG>. В настоящий момент это пакет находится в стадии доработки.

Чтобы удалить пользователя, используйте команду . Как добавить в систему новый диск?

Обратитесь к Руководству по форматированию дисков на сервере . Как использовать устройство для чтения сменных дисков?

Каким бы ни было это устройство, типа ZIP, EZ (или даже обычным дисководом, если вы хотите его использовать) или каким-то другим, как только оно будет установлено и распознано системой, и вы вставите в него картридж/дискету/что-там-ещё, всё будет выглядеть примерно одинаково.

Если это устройство ZIP или обычный дисковод, и у вас уже есть файловая система DOS на дискетах, то вы можете нспользовать команду типа: mount -t msdos /dev/fd0c /floppy

для обычных дискет, или mount -t msdos /dev/sd2s4 /zip

для дискет ZIP со стандартной конфигурацией.

Для других дисков посмотрите их параметры с помощью /stand/sysinstall.

Остальные примеры даны для привода ZIP на sd2, третьем диске SCSI.

Если это дискета или сменный диск, который будет использоваться для обмена информацией с другими людьми, хорошой идеей будет помещение туда файловой системы BSD. Вы получите поддержку длинных имён файлов, увеличение производительности по крайней мере в два раза и гораздо большую надёжность. Первым делом вам снова будет нужно выполнить разбиение диска на разделы/файловые системы. Вы можете воспользоваться утилитой либо /stand/sysinstall, а в случае небольшого диска, на котором не нужно располагать несколько операционных систем, просто сотрите таблицу разделов (слайсов) FAT и используйте разбиение на разделы BSD. dd if=/dev/zero of=/dev/rsd2 count=2 disklabel -Brw sd2 auto

Вы можете использовать disklabel или /stand/sysinstall для создания нескольких разделов BSD. Вам наверняка придётся это сделать, если вы станете добавлять место для раздела подкачки на винчестере, хотя это не имеет отношения к устройствам типа ZIP.

В итоге вы должны создать новую файловую систему (в этом примере она занимает весь наш диск ZIP): newfs /dev/rsd2c

и смонтировать её: mount /dev/sd2c /zip

Хорошо ещё добавить строку типа следующей в файл , чтобы в будущем можно было просто давать команду "mount /zip": /dev/sd2c /zip ffs rw,noauto 0 0 Как смонтировать вторичный раздел DOS?

Вторичные разделы DOS находятся после ВСЕХ первичных разделов. Например, если раздел "E" является вторым разделом DOS на втором диске SCSI, вам нужно создать специальные файлы для пятого "слайса" в каталоге /dev, затем смонтировать /dev/sd1s5: # cd /dev # ./MAKEDEV sd1s5 # mount -t msdos /dev/sd1s5 /dos/e Можно ли смонтировать другие файловые системы?

Компакт-диски с файловой системой UFS от . +

. +

Нас интересует любая дополнительная информация по этому вопросу. Как можно использовать загрузчик NT для запуска FreeBSD?

Идея заключается в копировании первого сектора корневого раздела FreeBSD в файл, находящийся в разделе DOS/NT. Предположим, что вы назвали этот файл c:\bootsect.bsd (по аналогии с c:\bootsect.dos), после чего можете отредактировать файл c:\boot.ini, чтобы он выглядел примерно так: [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"

Здесь предполагается, что DOS, NT, FreeBSD или другая операционная система были установлены в их соответствующие разделы fdisk на Смонтируйте дискету в формате DOS (если вы используете NTFS) или раздел FAT, скажем, в каталог /mnt. dd if=/dev/rsd0a of=/mnt/bootsect.bsd bs=512 count=1

Перезапустите DOS или NT. Пользователи NTFS должны скопировать файл attrib -s -r c:\boot.ini

Отредактируйте этот файл, добавив соответствующие строки из примерного attrib -r -s c:\boot.ini

Если FreeBSD загружается из MBR, восстановите его командой DOS `` Как загрузить FreeBSD и Linux с помощью LILO?

Если у вас установлены FreeBSD и Linux на одном и том же диске, следуйте указаниям по установке LILO о загрузке не-Linux операционных систем. Они сводятся к следующему:

Загрузите Linux, и добавьте слеующие строки в файл /etc/lilo.conf: other=/dev/hda2 table=/dev/hda label=FreeBSD (здесь вы предполагаем, что слайс с FreeBSD известен Linux как /dev/hda2; измените эту строку в соответствии с вашей конфигурацией). Затем достаточно будет запустить lilo, войдя в систему администратором.

Если FreeBSD располагается на другом диске, вам нужно добавить строчку ``loader=/boot/chain.b'' в конфигурационный файл LILO. Например: other=/dev/sdb4 table=/dev/sdb loader=/boot/chain.b label=FreeBSD

В некоторых случаях для успешной загрузки со второго диска вам может потребоваться указать номер диска BIOS загрузчику FreeBSD. Например, если диск SCSI с FreeBSD определяется BIOS как диск 1, в приглашении загрузчика FreeBSD нужно указать: Boot: 1:sd(0,a)/kernel

Во FreeBSD 2.2.5 и выше вы можете настроить на автоматическое принятие таких параметров во время загрузки.

В документе содержится много информации, касающейся взаимодействия FreeBSD и Linux. Как загрузить FreeBSD и Linux с помощью BootEasy?

Установите LILO в начало загрузочного раздела Linux, а не в Master Boot Record. После этого можно запустить LILO из BootEasy.

Это рекомендуется сделать в любом случае при одновременном использовании Windows-95 и Linux, чтобы упростить восстановление работоспособности Linux после переинсталляции Windows95 (которая является Недоброжелательной Операционной Системой и не терпит присутствия других операционных систем в Master Boot Record). Не угрожает ли режим ``dangerously dedicated'' моему здоровью?

Хотя это самый распространённый способ, использумый в мире - персональных компьютеров, те, кто пришёл из мира Unix или - собирается устанавливать машину для работы FreeBSD и только FreeBSD, - чаще используют классический подход Unix, при котором операционная - система занимает диск полностью, с самого первого по самый последний - сектор. Таблица разделов fdisk в этом случае не используется никак, - на машине работает FreeBSD 24 часа в сутки, 7 дней в неделю, запуск - других операционных систем здесь даже не предусмотрен. Так что, если - вы выберите ``A)ll FreeBSD'' в редакторе разделов fdisk инсталлятора, - и ответите на последующий вопрос ``No'', вы получите такой режим. - Заметьте, что это значит, что начальный загрузчик BSD также формирует - iи MBR для этого диска, так что не остаётся места ни для чего, даже - менеджера загрузки. Даже не пробуйте его установить, вы испортите - загрузчик BSD. + загрузки для переключения между операционными системами. Либо вы + можете выделить диск полностью под FreeBSD, не заботясь о совместимости + с другими операционными системами.

Почему же этот режим называется ``dangerous''? Дело в том, что диск в этом режиме не будет содержать того, что обычные утилиты для ПК распознают как таблицу разделов. В зависимости от того, насколько хорошо они написаны, они могут сообщить вам об этом, как только обнаружат такой диск, или, что гораздо хуже, могут запортить загрузчик - BSD, даже не спрашивая и не сообщая об этом. Некоторые операционные - системы, достаточно распространённые на ПК, славятся таким - ``недружелюбным'' поведением (конечно, называя его ``дружественным'' - интерфейсом). По крайней мере, Award BIOS, которые, к примеру, - используются в серверах серии HP Netserver (и не только там) известен - игнорированием винчестеров, не содержащим нормальной, по его понятиям, - таблицы разделов. При загрузке такой диск просто игнорируется, - BIOS обращается к дисководу, и выдаёт сообщение ``Read error''. - Впечатляет, правда? Наверное, они тоже называют такое поведение - ``дружественным'', кто знает? - -

Плюсы от использования этого режима: FreeBSD использует диск - полностью, не теряя нескольких `дорожек' на поддержку простой модели - разбиения диска разработки 1980 года, которая вынуждает следовать - искусственным и достаточно бессмысленным правилам на то, как это - разбиение должно быть выполнено. Такие натянутости зачастую вызывают - то, что является самой большой головной болью при инсталляции ОС на ПК, - а именно проблему несовпадения адресации дисков из-за двух различных - способов представления информации в таблице разделов. Обратитесь к - главе об ошибке . - В режиме ``dangerously dedicated'' загрузчик BSD располагается в - секторе 0, и это единственный сектор, который всегда транслируется - в то же самое значение C/H/S вне зависимости от типа `трансляции', - используемой BIOS. Таким образом, вы сможете переставлять такие - диски между системами/контроллерами, использующими различные схемы - трансляции, без риска их испортить. - + BSD, даже не спрашивая и не сообщая об этом. К тому же известно, что + разметка диска в режиме ``dangerously dedicated'' вводит в заблуждение + BIOS многих производителей, включая AWARD (которые используются в + компьютерах HP Netserver, Micronics и многих других) и Symbios/NCR + (производителя популярных SCSI-контроллеров серии 53C8xx). И это не + полный список, есть ещё другие производители. Симптомами подобных + проблем является сообщение "read error", выводимое загрузчиком FreeBSD, + когда он не может найти сам себя, а также зависания системы при загрузке. + +

Тогда зачем вообще нужен этот режим? Он экономит всего лишь + несколько килобайт дискового пространства и может вызвать серьёзные + проблемы при новой инсталляции. Причиной появления этого режима + является желание избежать появления одной из самых распространённых + проблем, с которой сталкиваются новички - соответствие параметров + BIOS и реальных параметров диска. + +

``Параметры'' диска являются устаревшей концепцией, но она лежит + в основе работы BIOS с диском. Когда программа установки FreeBSD + создаёт слайсы, она записывает их расположение в соответствии с тем, + как с ними будет работать BIOS. Если это делается неправильно, вы не + сможете выполнить загрузку системы. + +

Режим ``dangerously dedicated'' пытается обойти это, упрощая решение + данной проблемы. Иногда он делает это правильно. Однако это значит, + что его нужно использовать только как последнюю альтернативу - есть + способы получше, решающие проблему в 99 случаях из 100. + +

Итак, как избежать использования режима ``DD'' во время установки? + Сначала запишите параметры диска, которые сообщает BIOS. Вы можете + выяснить это, заставив ядро вывести эти параметры при загрузке, указав + ``-v'' в приглашении ``boot:'', или используя ``boot -v'' в загрузчике. + Перед тем, как запустится программа установки, ядро выведет параметры, + используемые BIOS. Не волнуйтесь - подождите запуска программы + установки, а затем воспользуйтесь скроллингом, чтобы посмотреть + значения этих параметров. Как правило, BIOS нумерует диски в том же + порядке, что и FreeBSD, сначала IDE, затем SCSI. + +

Когда вы разбиваете диск на слайсы, проверьте, что параметры диска, + выводимые в окне программы FDISK, корректны (то есть они соответствуют + параметрам BIOS); если это не так, воспользуйтесь командой ``g'', чтобы + их исправить. Вы можете это сделать, если на диске нет абсолютно + ничего или если этот диск был перенесён с другой системы. Заметьте, + что это касается только загрузочного диска; FreeBSD прекрасно разберётся + с остальными дисками, которые могут у вас быть. + +

Как только вы добились соответствия параметров диска в BIOS и + FreeBSD, скорее всего, проблем у вас больше не будет, и использовать + режим ``DD'' не потребуется. Если, однако, страшной сообщение + ``read error'' продолжает появляться при загрузке, самое время + перекреститься и попробовать этот режим - вам больше нечего терять. +

Чтобы вернуть диск из режима ``dangerously dedicated'' к нормальному режиму использования, есть два способа. Первый заключается в том, что вы записываете достаточное количество байтов NULL поверх MBR, чтобы любой инсталлятор думал, что это чистый диск. Это можно сделать, например, командой dd if=/dev/zero of=/dev/rsd0 count=15

Другой способ - недокументированной командой DOS fdisk /mbr

проинсталлировать новую MBR, удалив загрузчик BSD. Как добавить дополнительную виртуальную память? -

Наилучший способом является увеличение размера раздела подкачки, - может быть, добавив для этого ещё один диск. +

Наилучший способ - увеличить размер раздела подкачки, может быть, + добавив для этого ещё один диск. Общим правилом является выбор + размера виртуальной памяти, в два раза превышающий объём физической + памяти. Однако, если у вас очень мало физической памяти, этот объём + гораздо больше. Хорошей практикой является задание достаточного + объёма виртуальной памяти в ожидании добавления физической памяти, + чтобы потом не испытывать трудностей.

Перенос виртуальной памяти на отдельный диск увеличивает быстродействие системы по сравнению с добавлением виртуальной памяти на том же диске. Например, компиляция исходных текстов происходит быстрее, если они находятся не на том же диске, что и раздел подкачки. Особенно это заметно для дисков SCSI. +

Если у вас имеется несколько дисков, размещение раздела подкачки + на каждом из них, даже на рабочем диске, обычно бывает полезно. + Как правило, каждый быстрый диск в вашей системе должен иметь раздел + подкачки. FreeBSD поддерживает по умолчанию до 4 устройств подкачки с + чередованием. При задании нескольких разделов подкачки вам захочется + сделать их одинакового размера, однако иногда первичный раздел подкачки + делается несколько больше для того, чтобы он мог поместить аварийный + образ ядра. Размер вашего первичного раздела подкачки должен по крайней + мере быть равным объёму физической памяти, чтобы поместить аварийный + образ ядра. +

Диски IDE не позволяют реализовать одновременный доступ к обоим дискам по одному каналу (FreeBSD не поддерживает режим 4, так что весь ввод/вывод для дисков IDE ``программируется''). Однако я всё равно советую перенести раздел подкачки на отдельный диск. Диски достаточно дешёвы, и экономить тут не на чем. -

Очень плохой идеей является размещение файла подкачки на диске NFS, - если, конечно, вы не работаете в очень быстрой сети с хорошим сервером. +

Использование NFS для размещения раздела подкачки рекомендуется + только в случае, если у вас нет локального диска. Подкачка поверх + NFS медленна и неэффективна в релизах FreeBSD до 4.x, хотя достаточно + быстра в релизах 4.0 и выше. Кроме того, её скорость будет ограничена + реальной пропускной способностью сети и это даст дополнительную нагрузку + на NFS-сервер.

Вот пример vn-файла подкачки размером 64Мб (/usr/swap0, хотя, конечно, вы можете выбрать любое другое имя.

Удостоверьтесь, что ядро откомпилировано со строкой pseudo-device vn 1 #Vnode driver (turns a file into a device)

в конфигурационном файле. Ядро GENERIC её содержит создайте vn-устройство cd /dev sh ./MAKEDEV vn0 создайте файл подкачки (/usr/swap0) dd if=/dev/zero of=/usr/swap0 bs=1024k count=64 + Установите корректные права на файл (/usr/swap0) + + + chmod 0600 /usr/swap0 + + Включите использование файла подкачки в /etc/rc.conf swapfile="/usr/swap0" # Set to name of swapfile if aux swapfile desired. перезагрузите машину

Чтобы включить использование файла подкачки немедленно, наберите vnconfig -ce /dev/vn0c /usr/swap0 swap У меня проблемы с установкой принтера.

Обратитесь к соответствующему Руководства, посвящённому печати. В нём описаны решения большинства ваших проблем. Раскладка клавиатуры неверна.

Программа kbdcontrol имеет параметр, задающий файл раскладки. Файлы раскладок находятся в каталоге /usr/share/syscons/keymaps. Выберите соответствующий вашей системе и загрузите его. kbdcontrol -l uk.iso

Программа предполагает использование каталога /usr/share/syscons/keymaps и расширения Это может быть настроено в файле /etc/sysconfig (или ). Обратитесь к соответствующим комментариям в этом файле.

В системах 2.0.5R и выше, всё, относящееся к знакогенератору, раскладке клавиатуры, находится в каталоге /usr/share/examples/syscons.

На данный момент поддерживаются следующие раскладки: Belgian ISO-8859-1 Brazilian 275 keyboard Codepage 850 Brazilian 275 keyboard ISO-8859-1 Danish Codepage 865 Danish ISO-8859-1 French ISO-8859-1 German Codepage 850 German ISO-8859-1 Italian ISO-8859-1 Japanese 106 Japanese 106x Latin American Norwegian ISO-8859-1 Polish ISO-8859-2 (programmer's) Russian Codepage 866 (alternative) Russian koi8-r (shift) Russian koi8-r Spanish ISO-8859-1 Swedish Codepage 850 Swedish ISO-8859-1 Swiss-German ISO-8859-1 United Kingdom Codepage 850 United Kingdom ISO-8859-1 United States of America ISO-8859-1 United States of America dvorak United States of America dvorakx Не получается заставить работать дисковые квоты.

Не включайте квотирование на '/', Помещайте файл с квотами в ту файловую систему, которую он обслуживает, то есть: ФС ФАЙЛ КВОТ /usr /usr/admin/quotas /home /home/admin/quotas ... Что не так с устройством ccd?

Симптом выглядит так: # ccdconfig -C ccdconfig: ioctl (CCDIOCSET): /dev/ccd0c: Inappropriate file type or format #

Это сообщение обычно выдаётся, когда вы пытаетесь объединить разделы 'c', по умолчанию имеющие тип 'unused'. Драйвер ccd требует, чтобы используемые разделы имели тип FS_BSDFFS. Отредактируйте метки тех дисков, которые вы хотите использовать, сменив типы разделов на '4.2BSD'. Почему невозможно отредактировать метку диска ccd?

Симптом выглядит так: # disklabel ccd0 (здесь выводится информация о диске, пробуем отредактировать метку) # disklabel -e ccd0 (редактирование, сохранение, выход) disklabel: ioctl DIOCWDINFO: No disk label on disk; use "disklabel -r" to install initial label #

Это происходит из-за того, что метка диска, возвращаемая ccd, на самом деле 'ненастоящая', не соответствующая реально располагающейся на диске. Вы можете решить эту проблему, явно записав эту метку обратно следующим образом: # disklabel ccd0 > /tmp/disklabel.tmp # disklabel -Rr ccd0 /tmp/disklabel.tmp # disklabel -e ccd0 (теперь это будет работать) Поддерживает ли FreeBSD вызовы IPC из System V?

Да, FreeBSD поддерживает IPC из System V, а именно совместно используемую память, сообщения и семафоры. Чтобы они работали, вам нужно добавить следующие строки в файл конфигурации ядра. options SYSVSHM options "SHMMAXPGS=64" # 256Kb of sharable memory options SYSVSEM # enable for semaphores options SYSVMSG # enable for messaging

Перекомпилируйте и проинсталлируйте ядро.

Как настроить sendmail для доставки почты по UUCP?

Конфигурация sendmail, поставляемая с FreeBSD, предназначена для сайтов, которые имеют непосредственный выход в Internet. Сайты, которым требуется обмениваться почтой по UUCP, должны использовать другой конфигурационный файл.

Ковыряние в файле /etc/sendmail.cf вручную - это занятие для пуристов (и мазохистов). Восьмая версия sendmail поставляется с новой системой генерации конфигурационных файлов с использованием препроцессора , в которой ручная конфигурация перенесена на более высокий уровень абстракции. Используйте конфигурационные файлы в каталоге /usr/src/usr.sbin/sendmail/cf

Если вы не собираетесь инсталлировать все исходные тексты системы, специально для вас конфигурационные файлы sendmail выделены в отдельный дистрибутив. Если вы имеете смонтированный компакт-диск, выполните такую команду: cd /usr/src tar -xvzf /cdrom/dists/src/ssmailcf.aa

Не волнуйтесь, эти файлы занимают всего лишь несколько сотен килобайт. Файл README в каталоге cf может быть использован как начальное введение в конфигурацию m4.

Для доставки почты по UUCP лучше всего использовать mailertable. В этом файле содержится база данных, используемая sendmail при маршрутизации почты.

Первым делом создайте ваш файл .mc. Для таких файлов предназначен каталог /usr/src/usr.sbin/sendmail/cf/cf. Посмотрите в нём, там есть уже несколько примеров. Положим, что вы назвали ваш файл foo.mc, всё, что вам нужно для перобразования его в нормальный sendmail.cf, это: cd /usr/src/usr.sbin/sendmail/cf/cf make foo.cf cp foo.cf /etc/sendmail.cf

Типичный файл .mc выглядит примерно так: include(`../m4/cf.m4') VERSIONID(`Your version number') OSTYPE(bsd4.4) FEATURE(nodns) FEATURE(nocanonify) FEATURE(mailertable) define(`UUCP_RELAY', your.uucp.relay) define(`UUCP_MAX_SIZE', 200000) MAILER(local) MAILER(smtp) MAILER(uucp) Cw your.alias.host.name Cw youruucpnodename.UUCP

Параметры nodns и nocanonify подавляют использование DNS в процессе доставки. Строка UUCP_RELAY может понадобиться только в очень странных случаях, не спрашивайте о них. Просто поместите здесь имя хоста Internet, который может обрабатывать адреса с псевдо-доменами .UUCP; в большинстве случаев достаточно поставить сюда имя почтового шлюза вашего провайдера.

Как только вы сгенерируете конфигурационный файл, вам понадобится /etc/mailertable. Типичный пример такого файла: # # makemap hash /etc/mailertable.db < /etc/mailertable # horus.interface-business.de uucp-dom:horus .interface-business.de uucp-dom:if-bus interface-business.de uucp-dom:if-bus .heep.sax.de smtp8:%1 horus.UUCP uucp-dom:horus if-bus.UUCP uucp-dom:if-bus . uucp-dom:sax

Как видите, это часть реально существующего файла. Первые три строки описывают особые случаи, когда почта, направленная на некоторые домены, будет посылаться не по стандартному маршруту, а на некоторую близлежащую UUCP-систему для `сокращения' маршрута доставки. Следующая строка описывает, что почта на локальный домен в сети Ethernet может быть доставлена по SMTP. В конце файла описаны близлежащие системы UUCP в псевдо-домене .UUCP, что позволит выполнять правильную доставку почты на адреса ``uucp-система!получатель''. В последней строке всегда присутствует одна точка, соответствующая всем остальным доменам, с доставкой по UUCP на блишнюю систему UUCP, который является универсальный почтовым шлюзом во весь остальной мир. Все имена узлов после uucp-dom: должны быть реально существующими узлами UUCP, что можно проверить командой uuname.

Как напоминание о том, что этот файл должен быть преобразован в формат базы данных DBM перед использованием, командная строка, выполняющая это действие, помещена как комментарий в начало файла. При изменении mailertable всегда нужно выполнять эту команду.

Последняя подсказка: если вы не уверены в правильности настройки маршрутизаци почты, используйте sendmail с опцией -bt. Она переводит sendmail в режим проверки адресов; введите ``0 '', а затем адрес, который вы хотите протестировать на правильность маршрутизации. В последней строке будут указаны используемый почтовый агент, хост получателя, с которым будет работать этот агент, и (может быть преобразованный) адрес. Выход их этого режима осуществляется по Control-D. j@uriah 191% sendmail -bt ADDRESS TEST MODE (ruleset 3 NOT automatically invoked) Enter

> 0 foo@interface-business.de rewrite: ruleset 0 input: foo @ interface-business . de ... rewrite: ruleset 0 returns: $# uucp-dom $@ if-bus $: foo \ < @ interface-business . de > > ^D j@uriah 192% Как настроить почту при коммутируемом соединении с Internet?

Если вам выделен статический IP-адрес, вам не нужно ничего менять. Установите имя вашего хоста в соответствии с выделенным именем DNS, а sendmail сделаёт всё остальное.

Если ваш IP-адрес выделяется динамически при коммутируемом соединении по Чтобы забирать почту из вашего почтового ящика, вам нужно установить соответствующий агент. Хорошим агентов является /etc/ppp/ppp.linkup: MYADDR: !bg su user -c fetchmail +

Если вы используете sendmail (как показано ниже) для + доставки почты для внешних пользователей, поместите команду + + + !bg su user -c "sendmail -q" + + + после вышеуказанной строки. Это заставит sendmail обработать вашу + очередь почтовых сообщений, как только будет осуществлено подключение + к сети. +

Предположим, что вы имеет учётную запись для poll myISP.com protocol pop3 fetchall pass MySecret;

Излишним будет напоминание о том, что этот файл никому не должен быть доступен для чтения, кроме пользователя Чтобы посылать почту с правильным заголовком Следующий файл VERSIONID(`bsd.home.mc version 1.0') OSTYPE(bsd4.4)dnl FEATURE(nouucp)dnl MAILER(local)dnl MAILER(smtp)dnl Cwlocalhost Cwbsd.home MASQUERADE_AS(`myISP.com')dnl FEATURE(allmasquerade)dnl FEATURE(masquerade_envelope)dnl FEATURE(nocanonify)dnl FEATURE(nodns)dnl define(SMART_HOST, `relay.myISP.com') Dmbsd.home define(`confDOMAIN_NAME',`bsd.home')dnl define(`confDELIVERY_MODE',`deferred')dnl

В предыдущем разделе описано, как преобразовать файл Ой! Я забыл пароль администратора!

Без паники! Просто перезапустите систему, наберите -s в приглашении Boot: для входа в однопользовательский режим. На вопрос об используемой оболочке нажмите ENTER. На приглашение # введите mount -u /, чтобы перемонтировать корневую файловую систему в режиме чтения/записи, затем выполните команду Как запретить перезагрузку по клавишам Control-Alt-Delete?

Отредактируйте используемый вами для консоли файл раскладки клавиатуры, заменив ключевые слова /usr/share/syscons/keymaps/us.iso.kbd. Вам может потребоваться явно указать в файле /etc/rc.conf загрузку этой раскладки, чтобы она действительно поменялась. Конечно, если в вашей стране вы используете другую раскладку, вы должны отредактировать именно её. Как преобразовать текстовые файлы DOS в формат UNIX?

Используйте такую команду: -perl -i.bak -pe 's/\r\n/\n/g' file ... +perl -i.bak -npe 's/\r\n/\n/g' file ...

где file - это имя файла(ов) для преобразования. Преобразование делается в том же самом файле, оригинальные файлы сохраняются с расширением .bak.

Это преобразование также можно выполнить с помощью команды : tr -d '\r' < dos-text-file > unix-file

где dos-text-file - это имя файла, содержащего текст DOS, а в файл unix-file будет помещён уже преобразованный текст. Этот способ может работать гораздо быстрее, чем при использовании perl. Как прервать процесс по имени?

Используйте команду . Почему su выдаёт сообщение о том, что я не вхожу в root ACL?

Эта ошибка выдаётся распределённой системой аутентификации Kerberos. Эта ошибка не фатальна, однако это раздражает. Вы можете запустит su с ключом -K либо деинсталлировать Kerberos, как описано в следующем разделе. Как деинсталлировать Kerberos?

Чтобы убрать Kerberos из системы, переинсталлируйте дистрибутив bin того релиза, который у вас запущен. Если у вас есть CDROM, вы можете смонтировать компакт-диск (положим, в каталог /cdrom) и выполнить команду cd /cdrom/bin ./install.sh Как добавить в систему дополнительные псевдотерминалы?

Если у вас много пользователей, работающий в сеансах telnet, ssh, X или в screen, вам можете столкнуться с проблемой нехватки псевдотерминалов. Их количество можно уыеличить следующим образом: Откомпилируйте и инсталлируйте новое ядро, в конфигурационный файл которого входит строка pseudo-device pty 256 Выполните команду # cd /dev # ./MAKEDEV pty{1,2,3,4,5,6,7}

для создания 256 дополнительных файлов устройств для новых терминалов. Отредактируйте файл /etc/ttys, добавив по строке для каждого из 256 терминалов. Они должны соответствовать формату существующих строк, то есть должны выглядеть как ttyqc none network

Порядок назначения букв при записи в виде регулярного выражения имеет вид tty[pqrsPQRS][0-9a-v]. Теперь осталось только перезапустить систему с новым ядром. diff --git a/ru/FAQ/hackers.sgml b/ru/FAQ/hackers.sgml index 36f77090a0..e6b25a2743 100644 --- a/ru/FAQ/hackers.sgml +++ b/ru/FAQ/hackers.sgml @@ -1,508 +1,525 @@ - + Только для серьёзных FreeBSD хакеров Что такое SNAP и RELEASE?

В сейчас находятся три активно/полуактивно развивающихся ветки FreeBSD: -

На данный момент Ветвь Ветвь Как самим сделать релиз?

Чтобы сделать релиз, вам нужно иметь три вещи: Во-первых, вам нужно работать с ядром, включающим драйвер . Добавьте его в файл конфигурации ядра и откомпилируйте новое ядро: pseudo-device vn #Vnode driver (turns a file into a device)

Во-вторых, вам нужно иметь на диске полное дерево CVS. Чтобы добиться этого, вы можете использовать , указав в файле supfile именем релиза cvs и удалив все поля с тегами и датами: *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

После этого запустите Наконец, вам нужно свободное место для построения системы. Допустим, что свободное место есть в каталоге /some/big/filesystem и, как в примере выше, вы поместили дерево CVS в каталог /home/ncvs: 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

Полный релиз будет строиться в каталоге /some/big/filesystem/release и по окончании этого процесса дистрибутив, готовый к помещению на FTP-сервер, будет находиться в каталоге /some/big/filesystem/release/R/ftp. Если вы захотите построить SNAP другой ветки, не -current, то можете указать Как создать инсталляционные диски?

Весь процесс создания инсталляционных дисков и дистрибутивов исходных текстов и бинарников автоматизирован в файле /usr/src/release/Makefile. Информации, в нём содержащейся, должно быть достаточно, чтобы начать. Однако, должны вас предупредить, что этот процесс включает в себя выполнение ``make world'' и поэтому занимает много времени и дискового пространства. По команде ``make world'' были переустановлены все программы.

Да, так и должно быть; как говорит название этой команды, ``make world'' выполняет построение всех системных файлов с нуля, так что в итоге можете быть уверены, что получите чистую рабочую систему (вот почему это занимает столько времени).

Если в момент запуска команд ``${DESTDIR}. Однако некоторые случайные комбинации модификаций совместно используемых библиотек и версий компилируемых программ при исполнении команды `` При загрузке системы выдаётся сообщение ``(bus speed defaulted)''.

Адаптеры SCSI Adaptec 1542 позволяют программно изменять скорость доступа к шине. Предыдущие версии драйвера 1542 пытались определить максимально возможную скорость работы и установить это значение. Мы обнаружили, что у некоторых пользователей это приводило к нарушению работоспособности системы, поэтому эта возможность сейчас вынесена в параметр конфигурации ядра `` Можно ли работать с current при ограниченном доступе в Internet?

Да, это можно делать . Как вы разделяете дистрибутив на файлы по 240К?

Команда split в современных BSD-системах имеет опцию ``Вот пример из файла /usr/src/Makefile. bin-tarball: (cd ${DISTDIR}; \ tar cf - . \ gzip --no-name -9 -c | \ split -b 240640 - \ ${RELEASEDIR}/tarballs/bindist/bin_tgz.) Я написал некоторое добавление к ядру, кому его послать?

Обратитесь к соответствующему Руководства, в котором описано, как это сделать.

И спасибо вам за ваши усилия! Как распознаются и инициализируются адаптеры ISA Plug N Play?

От: (Frank Durda IV)

Если рассматривать на самом низком уровне, то существует несколько портов ввода/вывода, в которые должны выводить информацию все адаптеры PnP, когда компьютер пытается выполнить запрос о наличии установленных адаптеров. Так что, когда запускается процедура определения адаптеров PnP, она выполняет запрос о наличии каких-либо адаптеров PnP, а все такие адаптеры выдают свой номер модели при чтении того же порта ввода/вывода, поэтому процедура определения получит ответ на свой запрос, состоящий из логически наложенных номеров моделей, интерпретируемый как ``да''. В этом ответе по крайней мере один бит будет установлен в единицу. Затем код определения адаптеров может ``выключать'' адаптеры с ID (назначаемыми Microsoft/Intel), меньшими, чем X. Потом следует попытка определить, остались ли ещё адаптеры, отвечающие на запрос. Если ответ ``ID представляет собой два 32-разрядные числа (всего их 2ˆ64) + 8 бит контрольной суммы. Первые 32 бита являются идентификатором производителя. Они никогда не сообщаются, однако часто бывает, что различные типы адаптеров от одного и того же производителя имеют различные 32-битные значения идентификатора производителя. Необходимость в 32 разрядах только для задания производителя адаптера выглядит несколько излишним.

Оставшиеся 32 бита являются серийным номером, ethernet-адресом, чем-либо, делающим этот адаптер уникальным. Производитель не должен выпускать других адаптеров, имеющих то же самое значение этих битов, если, конечно, у них не разные идентификаторы производителя. Таким образом, вы можете иметь несколько адаптеров одинакового типа, но с различными 64-разрядными номерами.

Группы по 32 бита не богут быть нулевыми. Это позволяет при логическом объединении OR их номеров получать ненулевое значение во время начального поиска адаптеров.

Как только система определила ID всех адаптеров, она активизирует каждый адаптер, по одному за раз (через те же порты ввода/вывода), и определяет, какие ресурсы требуются данному адаптеру, какие возможные прерывания доступны итд. Сканирование и сбор информации происходит по всем адаптерам.

Эта информация соотносится с содержащейся в файлах ECU на диске или в MLB BIOS. Поддержка PnP из ECU и BIOS для аппаратуры на MLB обычно имеет синтетический характер, и периферия не выполняет полностью поцедуру настоящего PnP. Однако, используя BIOS и информацию из ECU, процедура инициализации может обнаружить устройства PnP, которые не могут быть найдены другим способом.

Затем устройства PnP опрашиваются ещё раз для назначения им портов ввода/вывода, DMA, IRQ и адресов отображаемой памяти. Теперь устройства должны иметь именно такие настройки и они должны оставаться такими до следующей перезагрузки, хотя нигде не сказано, что вы не можете их менять, когда захотите.

Здесь сделано много упрощений, однако общую идею вы должны уловить.

Microsoft использовала для PnP некоторые порты статуса первого принтера, по их логике, не существует адаптеров, использующих эти адреса для ввода/вывода. Я обнаружил один такой адаптер принтера от IBM, который декодирует запись в порт статуса в момент начального опроса устройств PnP, на что MS ответил ``хулиган''. Так что они выполняют запись в порт статуса принтера для установки адресов, плюс используют этот адрес + Поддерживает ли FreeBSD платформы, отличные от x86?

Интерес к работе над многоплатформенной поддержкой во FreeBSD проявили несколько групп разработчиков, и одна из попыток переноса, FreeBSD/AXP (ALPHA), оказавшейся достаточно удачной, в настоящее время доступна в виде релиза 3.0 SNAP по адресу . Эта реализация для ALPHA сейчас поддерживаёт всё увеличивающееся число машин ALPHA, в частности, модели AlphaStation, AXPpci, PC164, Miata и Multia. Нельзя сказать, что это настоящий релиз, он и не будет полным, пока в него не будут включены все утилиты для инсталляции и не будет сделан дистрибутивный CDROM, включающий достаточное количество рабочих портов и пакаджей. FreeBSD/AXP сейчас находится в стадии BETA. Чтобы быть в курсе событий, происходящих с этим портом, подпишитесь на соответствующий <freebsd-alpha@FreeBSD.ORG>. Также был проявлен интерес к переносу FreeBSD на платформу SPARC, если вы хотите подключиться к этому проекту, подпишитесь на соответствующий <freebsd-sparc@FreeBSD.ORG> . Для обсуждение общих вопросов, касающихся новых аппаратных платформ, предназначен <freebsd-platforms@FreeBSD.ORG>. Мне нужно старшее число для написанного мною драйвера устройства.

Всё зависит от того, планируете вы сделать этот драйвер общедоступным или нет. Если это так, то, пожалуйста, пошлите нам копию исходных текстов драйвера вместе с соответствующими модификациями в файле files.i386, пример описания устройства в файле конфигурации ядра и соответствующий код для создания специальных файлов устройств, которые использует ваше устройство. Если это не так. или это невозможно из-за лицензионных ограничений, то для старшего числа символьного устройства и старшего числа блочного устройства для этих целей были зарезервированы значения 32 и 8 соответственно; используйте их. В любом случае. мы будем рады услышать о вашем драйвере в списке рассылки <freebsd-hackers@FreeBSD.ORG>. Альтернативный метод размещения каталогов

В ответ на вопрос о других методах размещения каталогов могу сказать, что используемая в настоящее схема не претерпела изменений с 1983 года. Эти соглашения были предназначены для оригинальной файловой системы FFS, я никогда их не пересматривал. Эта схема прекрасно работает, позволяя избежать переполнения групп дорожек. Как некоторые из вас замечали, она работает плохо при поиске. Большинство файловых систем создаются из архивов, которые были созданы с глубиной первого поиска (aka ftw). Это приводит к тому, что их каталоги размещаются на нескольких группах дорожек, создавая наихудший случай для последующего поиска глубиной один. Если бы было известно общее количество каталогов, которые должны быть созданы, быходом было бы создание (общее количество / количество групп дорожек) на дорожку группу перед переходом. Обычно это число определяется чисто эвристически. Даже при использовании маленького фиксированное числа, скажем 10, значительно улучшает ситуацию. Чтобы различать операции восстановления от обычных операций (где текущий алгоритм подходит), вы можете использовать объединение в кластеры объёмом до 10, если они делаются в окне, равным 10 секундам. Во всяком случае, я думаю, что это требует некоторых экспериментов.

Кирк МакКузик (Kirk McKusick), Сентябрь 1998

Что делать при аварийном остановах системы

[Этот раздел был вырезан из письма, написанного (Bill Paul) в список рассылки freebsd-current (Dag-Erling Coïdan Smørgrav), который исправил несколько опечаток и добавил комментарии в квадратных скобках]

From: Bill Paul 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

[<ben@rosengart.com> отправил письмо, содержащее следующее аварийное сообщение системы] > Fatal trap 12: page fault while in kernel mode > fault virtual address = 0x40 > fault code = supervisor read, page not present > instruction pointer = 0x8:0xf014a7e5 ^^^^^^^^^^ > stack pointer = 0x10:0xf4ed6f24 > frame pointer = 0x10:0xf4ed6f28 > code segment = base 0x0, limit 0xfffff, type 0x1b > = DPL 0, pres 1, def32 1, gran 1 > processor eflags = interrupt enabled, resume, IOPL = 0 > current process = 80 (mount) > interrupt mask = > trap number = 12 > panic: page fault

[Если] вы увидите такое сообщение, просто его воспроизвести и послать нам не достаточно. Указатель инструкций, выделенный мною, важен, к сожалению, его значение зависит от конфигурации ядра. Другими словами, его значение меняется в зависимости от конкретного ядра, которое вы используете. Если вы используете ядро GENERIC одного из снэпшотов, то кто-то ещё может отследить функцию, вызвавшую ошибку, но если вы работаете со специально отконфигурированным ядром, то только Вот что вы должны сделать: Запишите значение указателя инструкций. Заметьте, что часть Когда система перезагрузится, сделайте следующее: % nm /kernel.that.caused.the.panic | grep f0xxxxxx где % nm /kernel.that.caused.the.panic | grep f0xxxxx Если и это не привело ни к каким результатам, отрежьте следующую цифру. Повторяйте, пока не получите хоть что-то. Результатом будет список функций, которые, возможно, привели к аварийному останову. Этот механизм обнаружения ошибочного места довольно неточен, но это всё же лучше чем ничего.

Зачастую люди приводят подобные аварийные сообщения, на редко кто утруждается привести соотвествие указателя инструкций с функцией в таблице символов ядра.

Лучшим способом выяснить причину, вызвавшую аварийный останов, является создание аварийного дампа системы, а затем использование Во всяком случае, обычно я использую такой способ: Отредактируйте конфигурационный файл ядра, добавив строку 'options DDB', если вам зачем-то понадобился встроенный отладчик. (Я использую его в основном для указания точек останова, если подозреваю возникновение бесконечных циклов.) Выполните cd /sys/compile/KERNELCONFIG; make Дождитесь окончания компиляции ядра. cp kernel / reboot

[Замечание: Так как теперь ядра FreeBSD 3.x по умолчанию имеют формат Elf, вы должны использовать команду

Заметьте, что ВАМ Чтобы включить сброс аварийного дампа, вам нужно отредактировать файла /etc/rc.conf, чтобы /etc/rc.conf, скрипты /var/crash.

ЗАМЕЧАНИЕ: аварийные дампы FreeBSD обычно имеют размер, равный физическому объёму оперативной памяти вашей машины. Так что если у вас 64МБ ОЗУ, вы получите дамп размером 64МБ. Поэтому вы должны удостовериться, что в каталоге /var/crash достаточно места для хранения дампа. Либо вы можете вручную запустить Как только вы получили аварийный дамп, вы можете выполнить трассировку вызовов с помощью % gdb -k /sys/compile/KERNELCONFIG/kernel.debug /var/crash/vmcore.0 (gdb) where

Заметьте, что при этом может быть выведено несколько экранов информации; в идеале вы должны использовать Теперь, если вы в самом деле душевнобольной и у вас есть второй компьютер, то можете настроить [Билл (Bill) добавил: "Я забыл обратить ваше внимание на одну вещь: если у вас включена поддержка DDB и ядро переходит в режим отладки, вы можете намеренно вызвать аварийный останов (и создание аварийного дампа), набрав 'panic' в командной строке ddb. Этот процесс может снова вызвать отладчик. В этом случае наберите 'continue' и процесс будет завершён созданием аварийного - дампа."] + дампа." -ed] + + Перестала работать функция dlsym() для ELF! + +

По умолчанию при работе с форматом ELF символы, определённые в + выполнимом файле, не доступны динамическому загрузчику. Поэтому + при вызове функции dlsym(), которая осуществляет поиск по + дескриптору, полученному после вызова dlopen(NULL, flags), + желаемый результат достигнут не будет. + +

Если вы хотите осуществить поиск в выполнимом файле процесса с + помощью функции dlsym(), вам нужно компоновать выполнимый + файл с опцией -export-dynamic . + diff --git a/ru/FAQ/preface.sgml b/ru/FAQ/preface.sgml index 679898c080..e712cfa1c6 100644 --- a/ru/FAQ/preface.sgml +++ b/ru/FAQ/preface.sgml @@ -1,640 +1,646 @@ - + Предисловие

Добро пожаловать в FreeBSD 2.X FAQ! Для чего предназначен этот FAQ?

Как и обычный FAQ конференций Usenet, этот документ содержит большинство из часто задаваемых вопросов, касающихся операционной системы FreeBSD (и, конечно, ответы на них). Первоначально предназначенный для уменьшения потока сообщений и избежания повторения одних и тех же вопросов, постепенно FAQ превратился в ценный источник информации.

Мы прилагаем все усилия, чтобы сделать этот FAQ максимально информативным; если у вас есть идеи по его усовершенствованию, пожалуйста, напишите . FreeBSD - что это такое?

В двух словах, FreeBSD 2.X - это UN*X-подобная операционная система, основанная на версии 4.4BSD Калифорнийского Университета (Беркли) для платформы i386. Также она косвенно базируется на 386BSD (BSD Net/2, перенесённой на платформу i386 Вильямом Джолитцем (William Jolitz)), хотя от того первоначального кода осталось очень мало. Более подробные объяснения того, что представляет из себя FreeBSD и для чего она может вам пригодиться, можно найти на .

FreeBSD используется компаниями, Интернет-провайдерами, научными работниками, профессионалами в вычислительной технике, студентами и рядовыми пользователями по всему миру для работы, образования и отдыха. Вы можете увидеть некоторых из них в нашей .

Для более детального ознакомления с FreeBSD, пожалуйста, обращайтесь к Каковы цели FreeBSD?

Цели, преследуемые проектом FreeBSD - это предоставление программного обеспечения, которое может быть использовано в любых целях без всяческих ограничений. Многие из нас вкладывают значительные усилия в её разработку (и проектирование) и определённо были бы не против получения финансовой поддержки, но мы не собираемся её требовать. Мы надеемся, что наша основная и самая значительная "миссия" - предоставить код всем желающим, для любых целей, так чтобы он нашел самое широкое применение и принес наибольшую пользу. Это, на наш взгляд, одна из самых фундаментальных целей Free Software, которую мы с энтузиазмом поддерживаем.

Исходный код, который подпадает под действие GNU Public License (GPL) или GNU Library Public License (GLPL), имеет несколько больше ограничений, хотя это и навязывание доступа к исходным текстам, а не наоборот, как обычно. Из-за дополнительных сложностей, которые могут возникнуть в случае коммерческого использования программного обеспечения GPL, мы стараемся, где это только возможно, заменить подобное программное обеспечение аналогичным, но подпадающим под более свободную лицензию BSD. Почему система называется именно FreeBSD?

Она может использоваться безо всяческих выплат, даже для извлечения выгоды. Все исходные тексты операционной системы свободно доступны, на её использование в других разработках (как коммерческих, так и некоммерческих) и дальнейшее распространение наложены минимальные ограничения. Любой, у кого есть усовершенствования и/или исправления, может предоставить свой код и он будет (правда, с парой оговорок) добавлен в исходные тексты системы.

Для тех наших читателей, для которых английский не является родным языком, можно добавить, что слово ``free'' используется здесь в двух смыслах, один означает ``бесплатно'', а другой ``вы можете делать все что хотите''. За исключением пары вещей, которые вы Какова последняя версия FreeBSD? -

Версия является самой последней стабильной версией; - она была выпущена в декабре 1998 года. Она также является самым - последним релизом. +

Версия , выпущенная в декабре 1998 года, является самой последней + стабильной версией. Она также является самым последним + релизом.

Короче говоря, ветка -stable предназначена поставщикам услуг Internet или другим корпоративным пользователям, которым нужна надёжность и не слишком большое количество изменений по сравнению с возможностями последнего релиза. Какое-то время эти версии неотличимы друг от друга, однако это только до тех пор, пока ветка -current не будет готова для релиза. -

Нельзя сказать, что снэпшоты 3.0-current совсем нельзя использовать, +

Нельзя сказать, что релиз 3.0-STABLE совсем нельзя использовать, поэтому те, кому нужны некоторые её специфические возможности (новый компилятор, быстрый сетевой код, итд), успешно их используют. Мы просто не хотим настаивать на том, что 3.0 полностью - готова к использованию, пока она окончательно не отлажена. + готова к использованию, пока она не будет выпущена как 3.1-RELEASE в + феврале 1999. Что такое FreeBSD-current?

- это версия операционной системы, находящаяся в стадии разработки - до момента выпуска 3.0.1-RELEASE. Таким образом, она представляет + до момента выпуска 4.0-RELEASE. Таким образом, она представляет реальный интерес только для разработчиков системы и её фанатов. Обратитесь к соответствующему для прояснения деталей работы с -current.

Если вы не специалист по операционным системам или не в состоянии отличить реальную проблему от временных явлений, вы не должны использовать FreeBSD-current. Эта ветвь зачастую меняется очень быстро и вполне может быть просто не работоспособна некоторое время. Те, кто используют FreeBSD-current, должны быть в состоянии анализировать любые проблемы и сообщать о них, если это действительно ошибки, а не ``глюки''. Сообщения типа ``make world produces some error about groups'' в списке рассылки -current иногда воспринимаются пренебрежительно.

Из ветви -current регулярно делаются , некоторые из которых доступны на CDROM. Их предназначение: Тестирование самой последней версии инсталлятора. Дать людям, которые хотят работать с -current, но не имеют времени и/или мозможности (пропускной способности) для отслеживания ежедневных измененений, простой способ её установки. Фиксация точки для последующих ссылок в случае, если позже мы что-нибудь очень сильно сломаем. (Хотя CVS, как правило, не позволяет случиться ничему такому ужасному :) Любые новые возможности, которым требуется тестирование, должны иметь как можно больше потенциальных тестеров.

Не утверждается, что всякий снапшот имеет качество ``готового продукта''. Для стабильной и надежной работы вам нужно подождать полного релиза.

Снапшоты доступны непосредственно с и, как правило, - генерируются ежедневно для веток 3.0-current и 2.2-stable. + генерируются ежедневно для веток 4.0-current и 3.0-stable. В чём смысл FreeBSD-stable?

После того, как была выпущена FreeBSD 2.0.5, мы решили разделить разработку FreeBSD на две части. Одна ветка была названа , с тем предназначением, что в ней будут делаться только хорошо оттестированные исправления и маленькие последовательные усовершенствования (для провайдеров услуг Интернет и других коммерческих пользователей, для которых неожиданные изменения или экспериментальные возможности весьма нежелательны). Другой ветвью является , которая - по существу является прямой линией, ведущей к 3.0-RELEASE (и + по существу является прямой линией, ведущей к 4.0-RELEASE (и последующим) с тех пор, как была выпущена 2.0. Если вам поможет картинка, то вот как это выглядит: 2.0 | | | [2.1-stable] *ВЕТВЬ* 2.0.5 -> 2.1 -> 2.1.5 -> 2.1.6 -> 2.1.7.1 [конец 2.1-stable] | (Мар 1997) | | | [2.2-stable] *ВЕТВЬ* 2.2.1 -> 2.2.2-RELEASE -> 2.2.5 -> 2.2.6 -> 2.2.7 -> 2.2.8 [конец] | (Мар 1997) (Окт 97) (Апр 98) (Июл 98) (Дек 98) | | 3.0-SNAPs (начало в I квартале 1997) | | 3.0.0-RELEASE (Окт 1998) | | [3.0-stable] - *ВЕТВЬ* 3.0.1 (Фев 1999) -> ... будущие релизы 3.0.x ... + *ВЕТВЬ* 3.1 (Фев 1999) -> ... будущие релизы 3.x ... | | \|/ + - [продолжение 3.1-current] + [продолжение 4.0-current] -

Ветвь -current постепенно переходит в 3.0.1 и выше, тогда как +

Ветвь -current постепенно переходит в 4.0 и выше, тогда как предыдущая ветвь, 2.2-stable, была вытеснена релизом 2.2.8. - 3.0-current будет оставаться веткой, где ведётся активная разработка, - вплоть до настоящего релиза 3.0.1 в начале 1999. В этот момент 3.0 - станет еще одной веткой, а 3.1-current станет следующей "текущей - ветвью". + Теперь его заменила ветвь 3.0-stable, первый релиз которой, 3.1, + выйдет в начале 1999 года. "Текущей веткой" сейчас является + 4.0-current, первый релиз которой появится в первом квартале 2000 года. В какой момент выпускаются новые версии FreeBSD?

Как правило, основная группа разработчиков выпускает новую версию, только когда они уверены, что добавленных новых возможностей и/или внесённых исправлений уже достаточно и новый релиз не потеряет стабильности. Многие пользователи оценивают эту осторожность как одну из лучших сторон FreeBSD, хотя она несколько разочаровывает, если вам не терпится попробовать новые возможности..

В среднем новые версии выпускаются примерно каждые четыре месяца.

Для тех, кому не терпится, предназначены SNAP-релизы, выпускаемые более часто, в частности, в течении месяца перед релизом. FreeBSD доступна только для персональных компьютеров?

В настоящее время FreeBSD 3.x работает как на архитектуре x86, так и на платформе . Некоторый интерес был проявлен к переносу на SPARC, однако подробности этого проекта ещё не ясны. Если ваш компьютер имеет другую архитектуру и вам нужно что-то прямо сейчас, советуем попробовать или . Кто разрабатывает FreeBSD?

Решения, которые касаются ключевых моментов в проекте FreeBSD, такие, как общее направление развития проекта или кто может добавлять код к дереву исходных текстов, принимаются разработчиков (core team), состоящей из 15 человек. Также существует гораздо большая группа из более 100 (committers), которые могут делать изменения прямо в дереве исходных текстов FreeBSD.

Однако, большинство нетривиальных изменений широко обсуждается в , и не существует никаких ограничений на участие в подобных дискуссиях. Где можно найти FreeBSD?

Все основные релизы FreeBSD доступны по ftp с : Текущий релиз 2.2-stable, 2.2.8R, находится в каталоге - . - Текущий релиз 3.0-current, 3.0-SNAP, находится в каталоге - . + Текущий релиз 3.0-stable, 3.0-RELEASE, находится в каталоге + . Релизы делаются ежедневно из ветки RELENG_2_2 (после 2.2.8), которая постепенно переходит в режим сопровождения. Ветвь RELENG_2_2 ведётся очень аккуратно и сейчас туда не вносятся изменений, кроме как жизненно необходимых по соображениям безопасности и надёжности. + Выпуски также делаются ежедневно из ветки RELENG_3 + (после 3.0-release), пока она переходит в 3.1-RELEASE. + Выпуски , которые также деляются ежедневно из ветви + name="4.0 Snapshot">, которые деляются ежедневно из ветви , предназначены для тестеров и разработчиков.

FreeBSD также доступна через CDROM, по такому алресу:

Walnut Creek CDROM 4041 Pike Lane, Suite F Concord, CA 94520 USA Orders: +1 800 786-9907 Questions: +1 925 674-0783 FAX: +1 925 674-0821 email: WWW:

В Австралии вы можете найти по адресу:

Advanced Multimedia Distributors Factory 1/1 Ovata Drive Tullamarine, Melbourne Victoria Australia Voice: +61 3 9338 6777 CDROM Support BBS 17 Irvine St Peppermint Grove WA 6011 Voice: +61 9 385-3793 Fax: +61 9 385-2360 И в Великобритании: The Public Domain & Shareware Library Winscombe House, Beacon Rd Crowborough Sussex. TN6 1UL Voice: +44 1892 663-298 Fax: +44 1892 667-473 Где найти информацию по спискам рассылки FreeBSD?

Исчерпывающая информация содержится в Руководства, который посвящен спискам рассылки. Какие существуют телеконференции по FreeBSD?

Полная информация о группах новостей есть в Руководства, касающемся телеконференций. Существуют ли каналы IRC (Internet Relay Chat) по FreeBSD?

Да, большинство сетей IRC имеют канал FreeBSD: Канал #FreeBSD в сети EFNet посвящён FreeBSD, но не обращайтесь туда за технической поддержкой и даже не пытайтесь найти человека, который поможет вам обойтись без чтения страниц Справочника или собственных изысканий. Этот канал предназначен в первую и основную очередь для общения, и в круг обсуждаемых тем входит секс, спорт, ядерное оружие, как будто это и есть FreeBSD. В общем, вас предупредили! Канал доступен на сервере irc.chat.org. Канал #FreeBSD в сети DALNET доступен на сервере irc.dal.net в США и на irc.eu.dal.net в Европе. Канал #FreeBSD в сети UNDERNET доступен на серверах us.undernet.org в США и eu.undernet.org в Европе. Похож на канал в сети EFNET - не задавайте вопросов или научитесь задавать их чрезвычайно вежливо, если хотите получить помощь. Это канал для общения, а не для получения помощи. Наконец, вы можете подключиться к каналу #FreeBSD в сети BSDNET, посвящённой исключительно BSD, на сервере irc.FreeBSD.org. Эта сеть пытается быть посвящённой в большей степени технической поддержке и не быть такой анархистской, как EFNET, UNDERNET или DALNET, однако по этой же причине она и не столь популярна. Почему бы сегодня кому-нибудь не взяться и поотвечать на вопросы на BSDNET?

Все эти каналы разные и не имеют отношения друг к другу. Их стили общения также отличаются, так что вам, может быть, придётся попробовать все, чтобы найти тот, который соответствует вашему стилю. Как и обычно с *любым* каналом IRC, если вы легко раздражаетесь или не можете иметь дела с большим количеством лиц школьного (и младшего школьного) возраста, пытающихся озвучить свои попытки самоутверждения, не обращайте на это внимания. Книги по FreeBSD

Вы можете обратиться в FreeBSD Documentation Project (а ещё лучше к нему присоединиться) через список рассылки doc: . Этот список рассылки предназначен для обсуждения документации FreeBSD. Для вопросов по системе предназначен список рассылки questions: .

``Руководство'' по FreeBSD доступно и может быть найдено на . Заметьте, что этот проект находится в процессе разработки, так что некоторые части могут отсутствовать.

Прекрасным печатным руководством по FreeBSD является книга ``The Complete FreeBSD'', написанная Грегом Лиэем (Greg Lehay) и изданная Walnut Creek CDROM Books. В настоящее время вышло второе издание, содержащее 1,750 страниц руководств по установке и администрированию системы и прикладных программ, а также страницы Справочника. Книга (и последний релиз FreeBSD) может быть заказана у , , или в вашем любимом книжном магазине. Индекс ISBN 1-57176-227-2.

Так как FreeBSD 2.2.X основана на выпуске Berkeley 4.4BSD-Lite2, большинство руководств по 4.4BSD подходят к FreeBSD 2.2.X. O'Reilly and Associates издают следующие руководства: 4.4BSD System Manager's Manual By Computer Systems Research Group, UC Berkeley 1st Edition June 1994, 804 pages : 1-56592-080-5 4.4BSD User's Reference Manual By Computer Systems Research Group, UC Berkeley 1st Edition June 1994, 905 pages : 1-56592-075-9 4.4BSD User's Supplementary Documents By Computer Systems Research Group, UC Berkeley 1st Edition July 1994, 712 pages : 1-56592-076-7 4.4BSD Programmer's Reference Manual By Computer Systems Research Group, UC Berkeley 1st Edition June 1994, 886 pages : 1-56592-078-3 4.4BSD Programmer's Supplementary Documents By Computer Systems Research Group, UC Berkeley 1st Edition July 1994, 596 pages : 1-56592-079-1

Описание этих книг может быть найдено через WWW: . Из-за малых объёмов продаж, эти книги найти труднее.

Вы не ошибётесь, если для подробного ознакомления с устройством ядра 4.4BSD kernel обратитесь к следующей литературе:

McKusick, Marshall Kirk, Keith Bostic, Michael J Karels, and John Quarterman.

The Design and Implementation of the 4.4BSD Operating System. Reading, Mass. : Addison-Wesley, 1996. 0-201-54979-4

Хорошей книгой по системному администрированию является:

Evi Nemeth, Garth Snyder, Scott Seebass & Trent R. Hein, ``Unix System Administration Handbook'', Prentice-Hall, 1995 : 0-13-151051-7

Эта книга касается основ администрирования, в том числе протоколов TCP/IP, DNS, NFS, SLIP/PPP, sendmail, INN/NNTP, системы печати итд.. Она сравнительно дорогая (примерно US$45-$55), но стоит того. К ней прилагается также компакт-диск с исходными текстами различных утилит; большинство их них, однако, также присутствуют на диске FreeBSD 2.2.6R (на котором к тому же часто находятся более свежие версии). Как можно получить доступ к вашей базе сообщений о проблемах (Problem Report)?

Сообщения пользователей о всех открытых проблемах могут быть запрошены (или добавлены) с помощью нашего и . Команда send-pr(1) также может быть использована для передачи сообщений о проблеме и изменении запроса через электронную почту. Где можно найти FAQ в форматах ASCII/PostScript?

Актуальная версия FAQ в форматах PostScript и обычного текста (7 бит ASCII и 8 бит Latin1) доступна с веб-сервера FreeBSD или с любого его зеркала.

Как PostScript (примерно 370Кб):

Как текст ASCII (примерно 220Кб):

Как текст ISO 8859-1 (примерно 220Кб): Где можно найти Руководство в форматах ASCII/PostScript?

Актуальная версия Руководства в форматах PostScript и обычного текста (7 бит ASCII и 8 бит Latin1) доступна с веб-сервера FreeBSD или с любого его зеркала.

Как PostScript (примерно 1.7Мб):

Как текст ASCII (примерно 1080Кб):

Как текст ISO 8859-1 (примерно 1080Кб): Руководство в формате ASCII - не чистый текст!

Действительно, FAQ и Руководство в форматах ASCII и Latin1 не являются чисто текстовыми документами; они содержат символы форматирования для вывода на печать. Если вам нужно преобразовать эти документы к виду, пригодному для чтения, обработайте файл программой col: $ col -b < inputfile > outputfile Могу ли я зазеркалировать веб-сервер FreeBSD?

Несомненно! Есть несколько способов это сделать. С помошью CVSUP: Вы можете скачивать отформатированные файлы с помощью CVSUP с сервера cvsup.freebsd.org. Добавьте следующую строку в конфигурационный файл cvsup: www release=current hostname=/home base=/usr/local/etc/cvsup prefix=/usr/local/www/data/www.freebsd.org delete old use-rel-suffix С помощью rsync: Обратитесь к странице, посвященной . С помощью зеркалирования ftp: Вы можете скачать копию веб-сервера, находящуюся на ftp, используя ваше любимое средство зеркалирования ftp. Просто начните с каталога ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/www. Я могу перевести документацию на язык племени мумбо-юмбо.

Хорошо. Хотя мы не сможем заплатить, в наших силах подарить вам бесплатный CD или футболку и внести вас в список составителей Руководства, если вы предоставите перевод. Другие источники информации.

Следующие телеконференции содержат информацию о FreeBSD, которая будет полезна её пользователям: (модерируемая)

Ресурсы Internet: .

В Руководстве по FreeBSD имеется достаточно полный , который стоит посмотреть, если вы хотите подыскать книгу по системе. diff --git a/ru_RU.KOI8-R/FAQ/admin.sgml b/ru_RU.KOI8-R/FAQ/admin.sgml index 322c0d23f8..96c9fd04ee 100644 --- a/ru_RU.KOI8-R/FAQ/admin.sgml +++ b/ru_RU.KOI8-R/FAQ/admin.sgml @@ -1,938 +1,992 @@ - + Системное администрирование Где расположены файлы конфигурации системы?

Для FreeBSD версий от 2.0.5R до 2.2.1R основным конфигурационным файлом является /etc/sysconfig. Все параметры указываются здесь, а остальные конфигурационные файлы, такие, как и /etc/netstart просто его используют.

Посмотрите файл /etc/sysconfig и измените значения переменных на соответствующие вашей системе. В файле содержатся комментарии, описывающие смысл этих переменных и способ их задания.

В системах выше 2.2.1 и в 3.0 файл /etc/sysconfig сменил название на говорящее само за себя , синтаксис описания переменных был несколько улучшен. /etc/netstart тоже был переименован в /etc/rc.network, так что все конфигурационные файлы теперь можно перенести одной командой /usr/src/etc/rc* /etc.

/etc/rc.local как обычно, можно использовать для запуска дополнительных местных служб типа или для настройки дополнительных параметров.

Файл /etc/rc.serial предназначен для инициализации коммуникационных адаптеров (например, установки характеристик работы последовательных портов итд).

Файл /etc/rc.i386 предназначен для настройки специфичных для архитектуры Intel параметров, таких, как эмуляция iBCS2 или характеристик системной консоли ПК.

Начиная с версии 2.1.0R, вы можете иметь "местные" файлы автозапуска в каталоге, указанном в файле /etc/sysconfig (или /etc/rc.conf): # Location of local startup files. local_startup=/usr/local/etc/rc.local.d

Каждый файл, оканчивающийся на Если вам нужно добиться определённого порядка выполнения не меняя имён файлов, можно использовать схему, в которой для упорядочения используются цифры, предшествующие имени файла. 10news.sh 15httpd.sh 20ssh.sh

Это может выглядеть безобразно (как SysV :-)), но это простой и понятный метод для добавления дополнительных служб без шаманства с редактированием /etc/rc.local. Многие порты/пакаджи предполагают, что каталог /usr/local/etc/rc.d предназначен для размещения запускаемых при загрузке системы скриптов. Как проще всего добавить пользователя?

Используйте команду .

Существует также пакет, называющийся ``<roberto@FreeBSD.ORG>. В настоящий момент это пакет находится в стадии доработки.

Чтобы удалить пользователя, используйте команду . Как добавить в систему новый диск?

Обратитесь к Руководству по форматированию дисков на сервере . Как использовать устройство для чтения сменных дисков?

Каким бы ни было это устройство, типа ZIP, EZ (или даже обычным дисководом, если вы хотите его использовать) или каким-то другим, как только оно будет установлено и распознано системой, и вы вставите в него картридж/дискету/что-там-ещё, всё будет выглядеть примерно одинаково.

Если это устройство ZIP или обычный дисковод, и у вас уже есть файловая система DOS на дискетах, то вы можете нспользовать команду типа: mount -t msdos /dev/fd0c /floppy

для обычных дискет, или mount -t msdos /dev/sd2s4 /zip

для дискет ZIP со стандартной конфигурацией.

Для других дисков посмотрите их параметры с помощью /stand/sysinstall.

Остальные примеры даны для привода ZIP на sd2, третьем диске SCSI.

Если это дискета или сменный диск, который будет использоваться для обмена информацией с другими людьми, хорошой идеей будет помещение туда файловой системы BSD. Вы получите поддержку длинных имён файлов, увеличение производительности по крайней мере в два раза и гораздо большую надёжность. Первым делом вам снова будет нужно выполнить разбиение диска на разделы/файловые системы. Вы можете воспользоваться утилитой либо /stand/sysinstall, а в случае небольшого диска, на котором не нужно располагать несколько операционных систем, просто сотрите таблицу разделов (слайсов) FAT и используйте разбиение на разделы BSD. dd if=/dev/zero of=/dev/rsd2 count=2 disklabel -Brw sd2 auto

Вы можете использовать disklabel или /stand/sysinstall для создания нескольких разделов BSD. Вам наверняка придётся это сделать, если вы станете добавлять место для раздела подкачки на винчестере, хотя это не имеет отношения к устройствам типа ZIP.

В итоге вы должны создать новую файловую систему (в этом примере она занимает весь наш диск ZIP): newfs /dev/rsd2c

и смонтировать её: mount /dev/sd2c /zip

Хорошо ещё добавить строку типа следующей в файл , чтобы в будущем можно было просто давать команду "mount /zip": /dev/sd2c /zip ffs rw,noauto 0 0 Как смонтировать вторичный раздел DOS?

Вторичные разделы DOS находятся после ВСЕХ первичных разделов. Например, если раздел "E" является вторым разделом DOS на втором диске SCSI, вам нужно создать специальные файлы для пятого "слайса" в каталоге /dev, затем смонтировать /dev/sd1s5: # cd /dev # ./MAKEDEV sd1s5 # mount -t msdos /dev/sd1s5 /dos/e Можно ли смонтировать другие файловые системы?

Компакт-диски с файловой системой UFS от . +

. +

Нас интересует любая дополнительная информация по этому вопросу. Как можно использовать загрузчик NT для запуска FreeBSD?

Идея заключается в копировании первого сектора корневого раздела FreeBSD в файл, находящийся в разделе DOS/NT. Предположим, что вы назвали этот файл c:\bootsect.bsd (по аналогии с c:\bootsect.dos), после чего можете отредактировать файл c:\boot.ini, чтобы он выглядел примерно так: [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"

Здесь предполагается, что DOS, NT, FreeBSD или другая операционная система были установлены в их соответствующие разделы fdisk на Смонтируйте дискету в формате DOS (если вы используете NTFS) или раздел FAT, скажем, в каталог /mnt. dd if=/dev/rsd0a of=/mnt/bootsect.bsd bs=512 count=1

Перезапустите DOS или NT. Пользователи NTFS должны скопировать файл attrib -s -r c:\boot.ini

Отредактируйте этот файл, добавив соответствующие строки из примерного attrib -r -s c:\boot.ini

Если FreeBSD загружается из MBR, восстановите его командой DOS `` Как загрузить FreeBSD и Linux с помощью LILO?

Если у вас установлены FreeBSD и Linux на одном и том же диске, следуйте указаниям по установке LILO о загрузке не-Linux операционных систем. Они сводятся к следующему:

Загрузите Linux, и добавьте слеующие строки в файл /etc/lilo.conf: other=/dev/hda2 table=/dev/hda label=FreeBSD (здесь вы предполагаем, что слайс с FreeBSD известен Linux как /dev/hda2; измените эту строку в соответствии с вашей конфигурацией). Затем достаточно будет запустить lilo, войдя в систему администратором.

Если FreeBSD располагается на другом диске, вам нужно добавить строчку ``loader=/boot/chain.b'' в конфигурационный файл LILO. Например: other=/dev/sdb4 table=/dev/sdb loader=/boot/chain.b label=FreeBSD

В некоторых случаях для успешной загрузки со второго диска вам может потребоваться указать номер диска BIOS загрузчику FreeBSD. Например, если диск SCSI с FreeBSD определяется BIOS как диск 1, в приглашении загрузчика FreeBSD нужно указать: Boot: 1:sd(0,a)/kernel

Во FreeBSD 2.2.5 и выше вы можете настроить на автоматическое принятие таких параметров во время загрузки.

В документе содержится много информации, касающейся взаимодействия FreeBSD и Linux. Как загрузить FreeBSD и Linux с помощью BootEasy?

Установите LILO в начало загрузочного раздела Linux, а не в Master Boot Record. После этого можно запустить LILO из BootEasy.

Это рекомендуется сделать в любом случае при одновременном использовании Windows-95 и Linux, чтобы упростить восстановление работоспособности Linux после переинсталляции Windows95 (которая является Недоброжелательной Операционной Системой и не терпит присутствия других операционных систем в Master Boot Record). Не угрожает ли режим ``dangerously dedicated'' моему здоровью?

Хотя это самый распространённый способ, использумый в мире - персональных компьютеров, те, кто пришёл из мира Unix или - собирается устанавливать машину для работы FreeBSD и только FreeBSD, - чаще используют классический подход Unix, при котором операционная - система занимает диск полностью, с самого первого по самый последний - сектор. Таблица разделов fdisk в этом случае не используется никак, - на машине работает FreeBSD 24 часа в сутки, 7 дней в неделю, запуск - других операционных систем здесь даже не предусмотрен. Так что, если - вы выберите ``A)ll FreeBSD'' в редакторе разделов fdisk инсталлятора, - и ответите на последующий вопрос ``No'', вы получите такой режим. - Заметьте, что это значит, что начальный загрузчик BSD также формирует - iи MBR для этого диска, так что не остаётся места ни для чего, даже - менеджера загрузки. Даже не пробуйте его установить, вы испортите - загрузчик BSD. + загрузки для переключения между операционными системами. Либо вы + можете выделить диск полностью под FreeBSD, не заботясь о совместимости + с другими операционными системами.

Почему же этот режим называется ``dangerous''? Дело в том, что диск в этом режиме не будет содержать того, что обычные утилиты для ПК распознают как таблицу разделов. В зависимости от того, насколько хорошо они написаны, они могут сообщить вам об этом, как только обнаружат такой диск, или, что гораздо хуже, могут запортить загрузчик - BSD, даже не спрашивая и не сообщая об этом. Некоторые операционные - системы, достаточно распространённые на ПК, славятся таким - ``недружелюбным'' поведением (конечно, называя его ``дружественным'' - интерфейсом). По крайней мере, Award BIOS, которые, к примеру, - используются в серверах серии HP Netserver (и не только там) известен - игнорированием винчестеров, не содержащим нормальной, по его понятиям, - таблицы разделов. При загрузке такой диск просто игнорируется, - BIOS обращается к дисководу, и выдаёт сообщение ``Read error''. - Впечатляет, правда? Наверное, они тоже называют такое поведение - ``дружественным'', кто знает? - -

Плюсы от использования этого режима: FreeBSD использует диск - полностью, не теряя нескольких `дорожек' на поддержку простой модели - разбиения диска разработки 1980 года, которая вынуждает следовать - искусственным и достаточно бессмысленным правилам на то, как это - разбиение должно быть выполнено. Такие натянутости зачастую вызывают - то, что является самой большой головной болью при инсталляции ОС на ПК, - а именно проблему несовпадения адресации дисков из-за двух различных - способов представления информации в таблице разделов. Обратитесь к - главе об ошибке . - В режиме ``dangerously dedicated'' загрузчик BSD располагается в - секторе 0, и это единственный сектор, который всегда транслируется - в то же самое значение C/H/S вне зависимости от типа `трансляции', - используемой BIOS. Таким образом, вы сможете переставлять такие - диски между системами/контроллерами, использующими различные схемы - трансляции, без риска их испортить. - + BSD, даже не спрашивая и не сообщая об этом. К тому же известно, что + разметка диска в режиме ``dangerously dedicated'' вводит в заблуждение + BIOS многих производителей, включая AWARD (которые используются в + компьютерах HP Netserver, Micronics и многих других) и Symbios/NCR + (производителя популярных SCSI-контроллеров серии 53C8xx). И это не + полный список, есть ещё другие производители. Симптомами подобных + проблем является сообщение "read error", выводимое загрузчиком FreeBSD, + когда он не может найти сам себя, а также зависания системы при загрузке. + +

Тогда зачем вообще нужен этот режим? Он экономит всего лишь + несколько килобайт дискового пространства и может вызвать серьёзные + проблемы при новой инсталляции. Причиной появления этого режима + является желание избежать появления одной из самых распространённых + проблем, с которой сталкиваются новички - соответствие параметров + BIOS и реальных параметров диска. + +

``Параметры'' диска являются устаревшей концепцией, но она лежит + в основе работы BIOS с диском. Когда программа установки FreeBSD + создаёт слайсы, она записывает их расположение в соответствии с тем, + как с ними будет работать BIOS. Если это делается неправильно, вы не + сможете выполнить загрузку системы. + +

Режим ``dangerously dedicated'' пытается обойти это, упрощая решение + данной проблемы. Иногда он делает это правильно. Однако это значит, + что его нужно использовать только как последнюю альтернативу - есть + способы получше, решающие проблему в 99 случаях из 100. + +

Итак, как избежать использования режима ``DD'' во время установки? + Сначала запишите параметры диска, которые сообщает BIOS. Вы можете + выяснить это, заставив ядро вывести эти параметры при загрузке, указав + ``-v'' в приглашении ``boot:'', или используя ``boot -v'' в загрузчике. + Перед тем, как запустится программа установки, ядро выведет параметры, + используемые BIOS. Не волнуйтесь - подождите запуска программы + установки, а затем воспользуйтесь скроллингом, чтобы посмотреть + значения этих параметров. Как правило, BIOS нумерует диски в том же + порядке, что и FreeBSD, сначала IDE, затем SCSI. + +

Когда вы разбиваете диск на слайсы, проверьте, что параметры диска, + выводимые в окне программы FDISK, корректны (то есть они соответствуют + параметрам BIOS); если это не так, воспользуйтесь командой ``g'', чтобы + их исправить. Вы можете это сделать, если на диске нет абсолютно + ничего или если этот диск был перенесён с другой системы. Заметьте, + что это касается только загрузочного диска; FreeBSD прекрасно разберётся + с остальными дисками, которые могут у вас быть. + +

Как только вы добились соответствия параметров диска в BIOS и + FreeBSD, скорее всего, проблем у вас больше не будет, и использовать + режим ``DD'' не потребуется. Если, однако, страшной сообщение + ``read error'' продолжает появляться при загрузке, самое время + перекреститься и попробовать этот режим - вам больше нечего терять. +

Чтобы вернуть диск из режима ``dangerously dedicated'' к нормальному режиму использования, есть два способа. Первый заключается в том, что вы записываете достаточное количество байтов NULL поверх MBR, чтобы любой инсталлятор думал, что это чистый диск. Это можно сделать, например, командой dd if=/dev/zero of=/dev/rsd0 count=15

Другой способ - недокументированной командой DOS fdisk /mbr

проинсталлировать новую MBR, удалив загрузчик BSD. Как добавить дополнительную виртуальную память? -

Наилучший способом является увеличение размера раздела подкачки, - может быть, добавив для этого ещё один диск. +

Наилучший способ - увеличить размер раздела подкачки, может быть, + добавив для этого ещё один диск. Общим правилом является выбор + размера виртуальной памяти, в два раза превышающий объём физической + памяти. Однако, если у вас очень мало физической памяти, этот объём + гораздо больше. Хорошей практикой является задание достаточного + объёма виртуальной памяти в ожидании добавления физической памяти, + чтобы потом не испытывать трудностей.

Перенос виртуальной памяти на отдельный диск увеличивает быстродействие системы по сравнению с добавлением виртуальной памяти на том же диске. Например, компиляция исходных текстов происходит быстрее, если они находятся не на том же диске, что и раздел подкачки. Особенно это заметно для дисков SCSI. +

Если у вас имеется несколько дисков, размещение раздела подкачки + на каждом из них, даже на рабочем диске, обычно бывает полезно. + Как правило, каждый быстрый диск в вашей системе должен иметь раздел + подкачки. FreeBSD поддерживает по умолчанию до 4 устройств подкачки с + чередованием. При задании нескольких разделов подкачки вам захочется + сделать их одинакового размера, однако иногда первичный раздел подкачки + делается несколько больше для того, чтобы он мог поместить аварийный + образ ядра. Размер вашего первичного раздела подкачки должен по крайней + мере быть равным объёму физической памяти, чтобы поместить аварийный + образ ядра. +

Диски IDE не позволяют реализовать одновременный доступ к обоим дискам по одному каналу (FreeBSD не поддерживает режим 4, так что весь ввод/вывод для дисков IDE ``программируется''). Однако я всё равно советую перенести раздел подкачки на отдельный диск. Диски достаточно дешёвы, и экономить тут не на чем. -

Очень плохой идеей является размещение файла подкачки на диске NFS, - если, конечно, вы не работаете в очень быстрой сети с хорошим сервером. +

Использование NFS для размещения раздела подкачки рекомендуется + только в случае, если у вас нет локального диска. Подкачка поверх + NFS медленна и неэффективна в релизах FreeBSD до 4.x, хотя достаточно + быстра в релизах 4.0 и выше. Кроме того, её скорость будет ограничена + реальной пропускной способностью сети и это даст дополнительную нагрузку + на NFS-сервер.

Вот пример vn-файла подкачки размером 64Мб (/usr/swap0, хотя, конечно, вы можете выбрать любое другое имя.

Удостоверьтесь, что ядро откомпилировано со строкой pseudo-device vn 1 #Vnode driver (turns a file into a device)

в конфигурационном файле. Ядро GENERIC её содержит создайте vn-устройство cd /dev sh ./MAKEDEV vn0 создайте файл подкачки (/usr/swap0) dd if=/dev/zero of=/usr/swap0 bs=1024k count=64 + Установите корректные права на файл (/usr/swap0) + + + chmod 0600 /usr/swap0 + + Включите использование файла подкачки в /etc/rc.conf swapfile="/usr/swap0" # Set to name of swapfile if aux swapfile desired. перезагрузите машину

Чтобы включить использование файла подкачки немедленно, наберите vnconfig -ce /dev/vn0c /usr/swap0 swap У меня проблемы с установкой принтера.

Обратитесь к соответствующему Руководства, посвящённому печати. В нём описаны решения большинства ваших проблем. Раскладка клавиатуры неверна.

Программа kbdcontrol имеет параметр, задающий файл раскладки. Файлы раскладок находятся в каталоге /usr/share/syscons/keymaps. Выберите соответствующий вашей системе и загрузите его. kbdcontrol -l uk.iso

Программа предполагает использование каталога /usr/share/syscons/keymaps и расширения Это может быть настроено в файле /etc/sysconfig (или ). Обратитесь к соответствующим комментариям в этом файле.

В системах 2.0.5R и выше, всё, относящееся к знакогенератору, раскладке клавиатуры, находится в каталоге /usr/share/examples/syscons.

На данный момент поддерживаются следующие раскладки: Belgian ISO-8859-1 Brazilian 275 keyboard Codepage 850 Brazilian 275 keyboard ISO-8859-1 Danish Codepage 865 Danish ISO-8859-1 French ISO-8859-1 German Codepage 850 German ISO-8859-1 Italian ISO-8859-1 Japanese 106 Japanese 106x Latin American Norwegian ISO-8859-1 Polish ISO-8859-2 (programmer's) Russian Codepage 866 (alternative) Russian koi8-r (shift) Russian koi8-r Spanish ISO-8859-1 Swedish Codepage 850 Swedish ISO-8859-1 Swiss-German ISO-8859-1 United Kingdom Codepage 850 United Kingdom ISO-8859-1 United States of America ISO-8859-1 United States of America dvorak United States of America dvorakx Не получается заставить работать дисковые квоты.

Не включайте квотирование на '/', Помещайте файл с квотами в ту файловую систему, которую он обслуживает, то есть: ФС ФАЙЛ КВОТ /usr /usr/admin/quotas /home /home/admin/quotas ... Что не так с устройством ccd?

Симптом выглядит так: # ccdconfig -C ccdconfig: ioctl (CCDIOCSET): /dev/ccd0c: Inappropriate file type or format #

Это сообщение обычно выдаётся, когда вы пытаетесь объединить разделы 'c', по умолчанию имеющие тип 'unused'. Драйвер ccd требует, чтобы используемые разделы имели тип FS_BSDFFS. Отредактируйте метки тех дисков, которые вы хотите использовать, сменив типы разделов на '4.2BSD'. Почему невозможно отредактировать метку диска ccd?

Симптом выглядит так: # disklabel ccd0 (здесь выводится информация о диске, пробуем отредактировать метку) # disklabel -e ccd0 (редактирование, сохранение, выход) disklabel: ioctl DIOCWDINFO: No disk label on disk; use "disklabel -r" to install initial label #

Это происходит из-за того, что метка диска, возвращаемая ccd, на самом деле 'ненастоящая', не соответствующая реально располагающейся на диске. Вы можете решить эту проблему, явно записав эту метку обратно следующим образом: # disklabel ccd0 > /tmp/disklabel.tmp # disklabel -Rr ccd0 /tmp/disklabel.tmp # disklabel -e ccd0 (теперь это будет работать) Поддерживает ли FreeBSD вызовы IPC из System V?

Да, FreeBSD поддерживает IPC из System V, а именно совместно используемую память, сообщения и семафоры. Чтобы они работали, вам нужно добавить следующие строки в файл конфигурации ядра. options SYSVSHM options "SHMMAXPGS=64" # 256Kb of sharable memory options SYSVSEM # enable for semaphores options SYSVMSG # enable for messaging

Перекомпилируйте и проинсталлируйте ядро.

Как настроить sendmail для доставки почты по UUCP?

Конфигурация sendmail, поставляемая с FreeBSD, предназначена для сайтов, которые имеют непосредственный выход в Internet. Сайты, которым требуется обмениваться почтой по UUCP, должны использовать другой конфигурационный файл.

Ковыряние в файле /etc/sendmail.cf вручную - это занятие для пуристов (и мазохистов). Восьмая версия sendmail поставляется с новой системой генерации конфигурационных файлов с использованием препроцессора , в которой ручная конфигурация перенесена на более высокий уровень абстракции. Используйте конфигурационные файлы в каталоге /usr/src/usr.sbin/sendmail/cf

Если вы не собираетесь инсталлировать все исходные тексты системы, специально для вас конфигурационные файлы sendmail выделены в отдельный дистрибутив. Если вы имеете смонтированный компакт-диск, выполните такую команду: cd /usr/src tar -xvzf /cdrom/dists/src/ssmailcf.aa

Не волнуйтесь, эти файлы занимают всего лишь несколько сотен килобайт. Файл README в каталоге cf может быть использован как начальное введение в конфигурацию m4.

Для доставки почты по UUCP лучше всего использовать mailertable. В этом файле содержится база данных, используемая sendmail при маршрутизации почты.

Первым делом создайте ваш файл .mc. Для таких файлов предназначен каталог /usr/src/usr.sbin/sendmail/cf/cf. Посмотрите в нём, там есть уже несколько примеров. Положим, что вы назвали ваш файл foo.mc, всё, что вам нужно для перобразования его в нормальный sendmail.cf, это: cd /usr/src/usr.sbin/sendmail/cf/cf make foo.cf cp foo.cf /etc/sendmail.cf

Типичный файл .mc выглядит примерно так: include(`../m4/cf.m4') VERSIONID(`Your version number') OSTYPE(bsd4.4) FEATURE(nodns) FEATURE(nocanonify) FEATURE(mailertable) define(`UUCP_RELAY', your.uucp.relay) define(`UUCP_MAX_SIZE', 200000) MAILER(local) MAILER(smtp) MAILER(uucp) Cw your.alias.host.name Cw youruucpnodename.UUCP

Параметры nodns и nocanonify подавляют использование DNS в процессе доставки. Строка UUCP_RELAY может понадобиться только в очень странных случаях, не спрашивайте о них. Просто поместите здесь имя хоста Internet, который может обрабатывать адреса с псевдо-доменами .UUCP; в большинстве случаев достаточно поставить сюда имя почтового шлюза вашего провайдера.

Как только вы сгенерируете конфигурационный файл, вам понадобится /etc/mailertable. Типичный пример такого файла: # # makemap hash /etc/mailertable.db < /etc/mailertable # horus.interface-business.de uucp-dom:horus .interface-business.de uucp-dom:if-bus interface-business.de uucp-dom:if-bus .heep.sax.de smtp8:%1 horus.UUCP uucp-dom:horus if-bus.UUCP uucp-dom:if-bus . uucp-dom:sax

Как видите, это часть реально существующего файла. Первые три строки описывают особые случаи, когда почта, направленная на некоторые домены, будет посылаться не по стандартному маршруту, а на некоторую близлежащую UUCP-систему для `сокращения' маршрута доставки. Следующая строка описывает, что почта на локальный домен в сети Ethernet может быть доставлена по SMTP. В конце файла описаны близлежащие системы UUCP в псевдо-домене .UUCP, что позволит выполнять правильную доставку почты на адреса ``uucp-система!получатель''. В последней строке всегда присутствует одна точка, соответствующая всем остальным доменам, с доставкой по UUCP на блишнюю систему UUCP, который является универсальный почтовым шлюзом во весь остальной мир. Все имена узлов после uucp-dom: должны быть реально существующими узлами UUCP, что можно проверить командой uuname.

Как напоминание о том, что этот файл должен быть преобразован в формат базы данных DBM перед использованием, командная строка, выполняющая это действие, помещена как комментарий в начало файла. При изменении mailertable всегда нужно выполнять эту команду.

Последняя подсказка: если вы не уверены в правильности настройки маршрутизаци почты, используйте sendmail с опцией -bt. Она переводит sendmail в режим проверки адресов; введите ``0 '', а затем адрес, который вы хотите протестировать на правильность маршрутизации. В последней строке будут указаны используемый почтовый агент, хост получателя, с которым будет работать этот агент, и (может быть преобразованный) адрес. Выход их этого режима осуществляется по Control-D. j@uriah 191% sendmail -bt ADDRESS TEST MODE (ruleset 3 NOT automatically invoked) Enter

> 0 foo@interface-business.de rewrite: ruleset 0 input: foo @ interface-business . de ... rewrite: ruleset 0 returns: $# uucp-dom $@ if-bus $: foo \ < @ interface-business . de > > ^D j@uriah 192% Как настроить почту при коммутируемом соединении с Internet?

Если вам выделен статический IP-адрес, вам не нужно ничего менять. Установите имя вашего хоста в соответствии с выделенным именем DNS, а sendmail сделаёт всё остальное.

Если ваш IP-адрес выделяется динамически при коммутируемом соединении по Чтобы забирать почту из вашего почтового ящика, вам нужно установить соответствующий агент. Хорошим агентов является /etc/ppp/ppp.linkup: MYADDR: !bg su user -c fetchmail +

Если вы используете sendmail (как показано ниже) для + доставки почты для внешних пользователей, поместите команду + + + !bg su user -c "sendmail -q" + + + после вышеуказанной строки. Это заставит sendmail обработать вашу + очередь почтовых сообщений, как только будет осуществлено подключение + к сети. +

Предположим, что вы имеет учётную запись для poll myISP.com protocol pop3 fetchall pass MySecret;

Излишним будет напоминание о том, что этот файл никому не должен быть доступен для чтения, кроме пользователя Чтобы посылать почту с правильным заголовком Следующий файл VERSIONID(`bsd.home.mc version 1.0') OSTYPE(bsd4.4)dnl FEATURE(nouucp)dnl MAILER(local)dnl MAILER(smtp)dnl Cwlocalhost Cwbsd.home MASQUERADE_AS(`myISP.com')dnl FEATURE(allmasquerade)dnl FEATURE(masquerade_envelope)dnl FEATURE(nocanonify)dnl FEATURE(nodns)dnl define(SMART_HOST, `relay.myISP.com') Dmbsd.home define(`confDOMAIN_NAME',`bsd.home')dnl define(`confDELIVERY_MODE',`deferred')dnl

В предыдущем разделе описано, как преобразовать файл Ой! Я забыл пароль администратора!

Без паники! Просто перезапустите систему, наберите -s в приглашении Boot: для входа в однопользовательский режим. На вопрос об используемой оболочке нажмите ENTER. На приглашение # введите mount -u /, чтобы перемонтировать корневую файловую систему в режиме чтения/записи, затем выполните команду Как запретить перезагрузку по клавишам Control-Alt-Delete?

Отредактируйте используемый вами для консоли файл раскладки клавиатуры, заменив ключевые слова /usr/share/syscons/keymaps/us.iso.kbd. Вам может потребоваться явно указать в файле /etc/rc.conf загрузку этой раскладки, чтобы она действительно поменялась. Конечно, если в вашей стране вы используете другую раскладку, вы должны отредактировать именно её. Как преобразовать текстовые файлы DOS в формат UNIX?

Используйте такую команду: -perl -i.bak -pe 's/\r\n/\n/g' file ... +perl -i.bak -npe 's/\r\n/\n/g' file ...

где file - это имя файла(ов) для преобразования. Преобразование делается в том же самом файле, оригинальные файлы сохраняются с расширением .bak.

Это преобразование также можно выполнить с помощью команды : tr -d '\r' < dos-text-file > unix-file

где dos-text-file - это имя файла, содержащего текст DOS, а в файл unix-file будет помещён уже преобразованный текст. Этот способ может работать гораздо быстрее, чем при использовании perl. Как прервать процесс по имени?

Используйте команду . Почему su выдаёт сообщение о том, что я не вхожу в root ACL?

Эта ошибка выдаётся распределённой системой аутентификации Kerberos. Эта ошибка не фатальна, однако это раздражает. Вы можете запустит su с ключом -K либо деинсталлировать Kerberos, как описано в следующем разделе. Как деинсталлировать Kerberos?

Чтобы убрать Kerberos из системы, переинсталлируйте дистрибутив bin того релиза, который у вас запущен. Если у вас есть CDROM, вы можете смонтировать компакт-диск (положим, в каталог /cdrom) и выполнить команду cd /cdrom/bin ./install.sh Как добавить в систему дополнительные псевдотерминалы?

Если у вас много пользователей, работающий в сеансах telnet, ssh, X или в screen, вам можете столкнуться с проблемой нехватки псевдотерминалов. Их количество можно уыеличить следующим образом: Откомпилируйте и инсталлируйте новое ядро, в конфигурационный файл которого входит строка pseudo-device pty 256 Выполните команду # cd /dev # ./MAKEDEV pty{1,2,3,4,5,6,7}

для создания 256 дополнительных файлов устройств для новых терминалов. Отредактируйте файл /etc/ttys, добавив по строке для каждого из 256 терминалов. Они должны соответствовать формату существующих строк, то есть должны выглядеть как ttyqc none network

Порядок назначения букв при записи в виде регулярного выражения имеет вид tty[pqrsPQRS][0-9a-v]. Теперь осталось только перезапустить систему с новым ядром. diff --git a/ru_RU.KOI8-R/FAQ/hackers.sgml b/ru_RU.KOI8-R/FAQ/hackers.sgml index 36f77090a0..e6b25a2743 100644 --- a/ru_RU.KOI8-R/FAQ/hackers.sgml +++ b/ru_RU.KOI8-R/FAQ/hackers.sgml @@ -1,508 +1,525 @@ - + Только для серьёзных FreeBSD хакеров Что такое SNAP и RELEASE?

В сейчас находятся три активно/полуактивно развивающихся ветки FreeBSD: -

На данный момент Ветвь Ветвь Как самим сделать релиз?

Чтобы сделать релиз, вам нужно иметь три вещи: Во-первых, вам нужно работать с ядром, включающим драйвер . Добавьте его в файл конфигурации ядра и откомпилируйте новое ядро: pseudo-device vn #Vnode driver (turns a file into a device)

Во-вторых, вам нужно иметь на диске полное дерево CVS. Чтобы добиться этого, вы можете использовать , указав в файле supfile именем релиза cvs и удалив все поля с тегами и датами: *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

После этого запустите Наконец, вам нужно свободное место для построения системы. Допустим, что свободное место есть в каталоге /some/big/filesystem и, как в примере выше, вы поместили дерево CVS в каталог /home/ncvs: 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

Полный релиз будет строиться в каталоге /some/big/filesystem/release и по окончании этого процесса дистрибутив, готовый к помещению на FTP-сервер, будет находиться в каталоге /some/big/filesystem/release/R/ftp. Если вы захотите построить SNAP другой ветки, не -current, то можете указать Как создать инсталляционные диски?

Весь процесс создания инсталляционных дисков и дистрибутивов исходных текстов и бинарников автоматизирован в файле /usr/src/release/Makefile. Информации, в нём содержащейся, должно быть достаточно, чтобы начать. Однако, должны вас предупредить, что этот процесс включает в себя выполнение ``make world'' и поэтому занимает много времени и дискового пространства. По команде ``make world'' были переустановлены все программы.

Да, так и должно быть; как говорит название этой команды, ``make world'' выполняет построение всех системных файлов с нуля, так что в итоге можете быть уверены, что получите чистую рабочую систему (вот почему это занимает столько времени).

Если в момент запуска команд ``${DESTDIR}. Однако некоторые случайные комбинации модификаций совместно используемых библиотек и версий компилируемых программ при исполнении команды `` При загрузке системы выдаётся сообщение ``(bus speed defaulted)''.

Адаптеры SCSI Adaptec 1542 позволяют программно изменять скорость доступа к шине. Предыдущие версии драйвера 1542 пытались определить максимально возможную скорость работы и установить это значение. Мы обнаружили, что у некоторых пользователей это приводило к нарушению работоспособности системы, поэтому эта возможность сейчас вынесена в параметр конфигурации ядра `` Можно ли работать с current при ограниченном доступе в Internet?

Да, это можно делать . Как вы разделяете дистрибутив на файлы по 240К?

Команда split в современных BSD-системах имеет опцию ``Вот пример из файла /usr/src/Makefile. bin-tarball: (cd ${DISTDIR}; \ tar cf - . \ gzip --no-name -9 -c | \ split -b 240640 - \ ${RELEASEDIR}/tarballs/bindist/bin_tgz.) Я написал некоторое добавление к ядру, кому его послать?

Обратитесь к соответствующему Руководства, в котором описано, как это сделать.

И спасибо вам за ваши усилия! Как распознаются и инициализируются адаптеры ISA Plug N Play?

От: (Frank Durda IV)

Если рассматривать на самом низком уровне, то существует несколько портов ввода/вывода, в которые должны выводить информацию все адаптеры PnP, когда компьютер пытается выполнить запрос о наличии установленных адаптеров. Так что, когда запускается процедура определения адаптеров PnP, она выполняет запрос о наличии каких-либо адаптеров PnP, а все такие адаптеры выдают свой номер модели при чтении того же порта ввода/вывода, поэтому процедура определения получит ответ на свой запрос, состоящий из логически наложенных номеров моделей, интерпретируемый как ``да''. В этом ответе по крайней мере один бит будет установлен в единицу. Затем код определения адаптеров может ``выключать'' адаптеры с ID (назначаемыми Microsoft/Intel), меньшими, чем X. Потом следует попытка определить, остались ли ещё адаптеры, отвечающие на запрос. Если ответ ``ID представляет собой два 32-разрядные числа (всего их 2ˆ64) + 8 бит контрольной суммы. Первые 32 бита являются идентификатором производителя. Они никогда не сообщаются, однако часто бывает, что различные типы адаптеров от одного и того же производителя имеют различные 32-битные значения идентификатора производителя. Необходимость в 32 разрядах только для задания производителя адаптера выглядит несколько излишним.

Оставшиеся 32 бита являются серийным номером, ethernet-адресом, чем-либо, делающим этот адаптер уникальным. Производитель не должен выпускать других адаптеров, имеющих то же самое значение этих битов, если, конечно, у них не разные идентификаторы производителя. Таким образом, вы можете иметь несколько адаптеров одинакового типа, но с различными 64-разрядными номерами.

Группы по 32 бита не богут быть нулевыми. Это позволяет при логическом объединении OR их номеров получать ненулевое значение во время начального поиска адаптеров.

Как только система определила ID всех адаптеров, она активизирует каждый адаптер, по одному за раз (через те же порты ввода/вывода), и определяет, какие ресурсы требуются данному адаптеру, какие возможные прерывания доступны итд. Сканирование и сбор информации происходит по всем адаптерам.

Эта информация соотносится с содержащейся в файлах ECU на диске или в MLB BIOS. Поддержка PnP из ECU и BIOS для аппаратуры на MLB обычно имеет синтетический характер, и периферия не выполняет полностью поцедуру настоящего PnP. Однако, используя BIOS и информацию из ECU, процедура инициализации может обнаружить устройства PnP, которые не могут быть найдены другим способом.

Затем устройства PnP опрашиваются ещё раз для назначения им портов ввода/вывода, DMA, IRQ и адресов отображаемой памяти. Теперь устройства должны иметь именно такие настройки и они должны оставаться такими до следующей перезагрузки, хотя нигде не сказано, что вы не можете их менять, когда захотите.

Здесь сделано много упрощений, однако общую идею вы должны уловить.

Microsoft использовала для PnP некоторые порты статуса первого принтера, по их логике, не существует адаптеров, использующих эти адреса для ввода/вывода. Я обнаружил один такой адаптер принтера от IBM, который декодирует запись в порт статуса в момент начального опроса устройств PnP, на что MS ответил ``хулиган''. Так что они выполняют запись в порт статуса принтера для установки адресов, плюс используют этот адрес + Поддерживает ли FreeBSD платформы, отличные от x86?

Интерес к работе над многоплатформенной поддержкой во FreeBSD проявили несколько групп разработчиков, и одна из попыток переноса, FreeBSD/AXP (ALPHA), оказавшейся достаточно удачной, в настоящее время доступна в виде релиза 3.0 SNAP по адресу . Эта реализация для ALPHA сейчас поддерживаёт всё увеличивающееся число машин ALPHA, в частности, модели AlphaStation, AXPpci, PC164, Miata и Multia. Нельзя сказать, что это настоящий релиз, он и не будет полным, пока в него не будут включены все утилиты для инсталляции и не будет сделан дистрибутивный CDROM, включающий достаточное количество рабочих портов и пакаджей. FreeBSD/AXP сейчас находится в стадии BETA. Чтобы быть в курсе событий, происходящих с этим портом, подпишитесь на соответствующий <freebsd-alpha@FreeBSD.ORG>. Также был проявлен интерес к переносу FreeBSD на платформу SPARC, если вы хотите подключиться к этому проекту, подпишитесь на соответствующий <freebsd-sparc@FreeBSD.ORG> . Для обсуждение общих вопросов, касающихся новых аппаратных платформ, предназначен <freebsd-platforms@FreeBSD.ORG>. Мне нужно старшее число для написанного мною драйвера устройства.

Всё зависит от того, планируете вы сделать этот драйвер общедоступным или нет. Если это так, то, пожалуйста, пошлите нам копию исходных текстов драйвера вместе с соответствующими модификациями в файле files.i386, пример описания устройства в файле конфигурации ядра и соответствующий код для создания специальных файлов устройств, которые использует ваше устройство. Если это не так. или это невозможно из-за лицензионных ограничений, то для старшего числа символьного устройства и старшего числа блочного устройства для этих целей были зарезервированы значения 32 и 8 соответственно; используйте их. В любом случае. мы будем рады услышать о вашем драйвере в списке рассылки <freebsd-hackers@FreeBSD.ORG>. Альтернативный метод размещения каталогов

В ответ на вопрос о других методах размещения каталогов могу сказать, что используемая в настоящее схема не претерпела изменений с 1983 года. Эти соглашения были предназначены для оригинальной файловой системы FFS, я никогда их не пересматривал. Эта схема прекрасно работает, позволяя избежать переполнения групп дорожек. Как некоторые из вас замечали, она работает плохо при поиске. Большинство файловых систем создаются из архивов, которые были созданы с глубиной первого поиска (aka ftw). Это приводит к тому, что их каталоги размещаются на нескольких группах дорожек, создавая наихудший случай для последующего поиска глубиной один. Если бы было известно общее количество каталогов, которые должны быть созданы, быходом было бы создание (общее количество / количество групп дорожек) на дорожку группу перед переходом. Обычно это число определяется чисто эвристически. Даже при использовании маленького фиксированное числа, скажем 10, значительно улучшает ситуацию. Чтобы различать операции восстановления от обычных операций (где текущий алгоритм подходит), вы можете использовать объединение в кластеры объёмом до 10, если они делаются в окне, равным 10 секундам. Во всяком случае, я думаю, что это требует некоторых экспериментов.

Кирк МакКузик (Kirk McKusick), Сентябрь 1998

Что делать при аварийном остановах системы

[Этот раздел был вырезан из письма, написанного (Bill Paul) в список рассылки freebsd-current (Dag-Erling Coïdan Smørgrav), который исправил несколько опечаток и добавил комментарии в квадратных скобках]

From: Bill Paul 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

[<ben@rosengart.com> отправил письмо, содержащее следующее аварийное сообщение системы] > Fatal trap 12: page fault while in kernel mode > fault virtual address = 0x40 > fault code = supervisor read, page not present > instruction pointer = 0x8:0xf014a7e5 ^^^^^^^^^^ > stack pointer = 0x10:0xf4ed6f24 > frame pointer = 0x10:0xf4ed6f28 > code segment = base 0x0, limit 0xfffff, type 0x1b > = DPL 0, pres 1, def32 1, gran 1 > processor eflags = interrupt enabled, resume, IOPL = 0 > current process = 80 (mount) > interrupt mask = > trap number = 12 > panic: page fault

[Если] вы увидите такое сообщение, просто его воспроизвести и послать нам не достаточно. Указатель инструкций, выделенный мною, важен, к сожалению, его значение зависит от конфигурации ядра. Другими словами, его значение меняется в зависимости от конкретного ядра, которое вы используете. Если вы используете ядро GENERIC одного из снэпшотов, то кто-то ещё может отследить функцию, вызвавшую ошибку, но если вы работаете со специально отконфигурированным ядром, то только Вот что вы должны сделать: Запишите значение указателя инструкций. Заметьте, что часть Когда система перезагрузится, сделайте следующее: % nm /kernel.that.caused.the.panic | grep f0xxxxxx где % nm /kernel.that.caused.the.panic | grep f0xxxxx Если и это не привело ни к каким результатам, отрежьте следующую цифру. Повторяйте, пока не получите хоть что-то. Результатом будет список функций, которые, возможно, привели к аварийному останову. Этот механизм обнаружения ошибочного места довольно неточен, но это всё же лучше чем ничего.

Зачастую люди приводят подобные аварийные сообщения, на редко кто утруждается привести соотвествие указателя инструкций с функцией в таблице символов ядра.

Лучшим способом выяснить причину, вызвавшую аварийный останов, является создание аварийного дампа системы, а затем использование Во всяком случае, обычно я использую такой способ: Отредактируйте конфигурационный файл ядра, добавив строку 'options DDB', если вам зачем-то понадобился встроенный отладчик. (Я использую его в основном для указания точек останова, если подозреваю возникновение бесконечных циклов.) Выполните cd /sys/compile/KERNELCONFIG; make Дождитесь окончания компиляции ядра. cp kernel / reboot

[Замечание: Так как теперь ядра FreeBSD 3.x по умолчанию имеют формат Elf, вы должны использовать команду

Заметьте, что ВАМ Чтобы включить сброс аварийного дампа, вам нужно отредактировать файла /etc/rc.conf, чтобы /etc/rc.conf, скрипты /var/crash.

ЗАМЕЧАНИЕ: аварийные дампы FreeBSD обычно имеют размер, равный физическому объёму оперативной памяти вашей машины. Так что если у вас 64МБ ОЗУ, вы получите дамп размером 64МБ. Поэтому вы должны удостовериться, что в каталоге /var/crash достаточно места для хранения дампа. Либо вы можете вручную запустить Как только вы получили аварийный дамп, вы можете выполнить трассировку вызовов с помощью % gdb -k /sys/compile/KERNELCONFIG/kernel.debug /var/crash/vmcore.0 (gdb) where

Заметьте, что при этом может быть выведено несколько экранов информации; в идеале вы должны использовать Теперь, если вы в самом деле душевнобольной и у вас есть второй компьютер, то можете настроить [Билл (Bill) добавил: "Я забыл обратить ваше внимание на одну вещь: если у вас включена поддержка DDB и ядро переходит в режим отладки, вы можете намеренно вызвать аварийный останов (и создание аварийного дампа), набрав 'panic' в командной строке ddb. Этот процесс может снова вызвать отладчик. В этом случае наберите 'continue' и процесс будет завершён созданием аварийного - дампа."] + дампа." -ed] + + Перестала работать функция dlsym() для ELF! + +

По умолчанию при работе с форматом ELF символы, определённые в + выполнимом файле, не доступны динамическому загрузчику. Поэтому + при вызове функции dlsym(), которая осуществляет поиск по + дескриптору, полученному после вызова dlopen(NULL, flags), + желаемый результат достигнут не будет. + +

Если вы хотите осуществить поиск в выполнимом файле процесса с + помощью функции dlsym(), вам нужно компоновать выполнимый + файл с опцией -export-dynamic . + diff --git a/ru_RU.KOI8-R/FAQ/preface.sgml b/ru_RU.KOI8-R/FAQ/preface.sgml index 679898c080..e712cfa1c6 100644 --- a/ru_RU.KOI8-R/FAQ/preface.sgml +++ b/ru_RU.KOI8-R/FAQ/preface.sgml @@ -1,640 +1,646 @@ - + Предисловие

Добро пожаловать в FreeBSD 2.X FAQ! Для чего предназначен этот FAQ?

Как и обычный FAQ конференций Usenet, этот документ содержит большинство из часто задаваемых вопросов, касающихся операционной системы FreeBSD (и, конечно, ответы на них). Первоначально предназначенный для уменьшения потока сообщений и избежания повторения одних и тех же вопросов, постепенно FAQ превратился в ценный источник информации.

Мы прилагаем все усилия, чтобы сделать этот FAQ максимально информативным; если у вас есть идеи по его усовершенствованию, пожалуйста, напишите . FreeBSD - что это такое?

В двух словах, FreeBSD 2.X - это UN*X-подобная операционная система, основанная на версии 4.4BSD Калифорнийского Университета (Беркли) для платформы i386. Также она косвенно базируется на 386BSD (BSD Net/2, перенесённой на платформу i386 Вильямом Джолитцем (William Jolitz)), хотя от того первоначального кода осталось очень мало. Более подробные объяснения того, что представляет из себя FreeBSD и для чего она может вам пригодиться, можно найти на .

FreeBSD используется компаниями, Интернет-провайдерами, научными работниками, профессионалами в вычислительной технике, студентами и рядовыми пользователями по всему миру для работы, образования и отдыха. Вы можете увидеть некоторых из них в нашей .

Для более детального ознакомления с FreeBSD, пожалуйста, обращайтесь к Каковы цели FreeBSD?

Цели, преследуемые проектом FreeBSD - это предоставление программного обеспечения, которое может быть использовано в любых целях без всяческих ограничений. Многие из нас вкладывают значительные усилия в её разработку (и проектирование) и определённо были бы не против получения финансовой поддержки, но мы не собираемся её требовать. Мы надеемся, что наша основная и самая значительная "миссия" - предоставить код всем желающим, для любых целей, так чтобы он нашел самое широкое применение и принес наибольшую пользу. Это, на наш взгляд, одна из самых фундаментальных целей Free Software, которую мы с энтузиазмом поддерживаем.

Исходный код, который подпадает под действие GNU Public License (GPL) или GNU Library Public License (GLPL), имеет несколько больше ограничений, хотя это и навязывание доступа к исходным текстам, а не наоборот, как обычно. Из-за дополнительных сложностей, которые могут возникнуть в случае коммерческого использования программного обеспечения GPL, мы стараемся, где это только возможно, заменить подобное программное обеспечение аналогичным, но подпадающим под более свободную лицензию BSD. Почему система называется именно FreeBSD?

Она может использоваться безо всяческих выплат, даже для извлечения выгоды. Все исходные тексты операционной системы свободно доступны, на её использование в других разработках (как коммерческих, так и некоммерческих) и дальнейшее распространение наложены минимальные ограничения. Любой, у кого есть усовершенствования и/или исправления, может предоставить свой код и он будет (правда, с парой оговорок) добавлен в исходные тексты системы.

Для тех наших читателей, для которых английский не является родным языком, можно добавить, что слово ``free'' используется здесь в двух смыслах, один означает ``бесплатно'', а другой ``вы можете делать все что хотите''. За исключением пары вещей, которые вы Какова последняя версия FreeBSD? -

Версия является самой последней стабильной версией; - она была выпущена в декабре 1998 года. Она также является самым - последним релизом. +

Версия , выпущенная в декабре 1998 года, является самой последней + стабильной версией. Она также является самым последним + релизом.

Короче говоря, ветка -stable предназначена поставщикам услуг Internet или другим корпоративным пользователям, которым нужна надёжность и не слишком большое количество изменений по сравнению с возможностями последнего релиза. Какое-то время эти версии неотличимы друг от друга, однако это только до тех пор, пока ветка -current не будет готова для релиза. -

Нельзя сказать, что снэпшоты 3.0-current совсем нельзя использовать, +

Нельзя сказать, что релиз 3.0-STABLE совсем нельзя использовать, поэтому те, кому нужны некоторые её специфические возможности (новый компилятор, быстрый сетевой код, итд), успешно их используют. Мы просто не хотим настаивать на том, что 3.0 полностью - готова к использованию, пока она окончательно не отлажена. + готова к использованию, пока она не будет выпущена как 3.1-RELEASE в + феврале 1999. Что такое FreeBSD-current?

- это версия операционной системы, находящаяся в стадии разработки - до момента выпуска 3.0.1-RELEASE. Таким образом, она представляет + до момента выпуска 4.0-RELEASE. Таким образом, она представляет реальный интерес только для разработчиков системы и её фанатов. Обратитесь к соответствующему для прояснения деталей работы с -current.

Если вы не специалист по операционным системам или не в состоянии отличить реальную проблему от временных явлений, вы не должны использовать FreeBSD-current. Эта ветвь зачастую меняется очень быстро и вполне может быть просто не работоспособна некоторое время. Те, кто используют FreeBSD-current, должны быть в состоянии анализировать любые проблемы и сообщать о них, если это действительно ошибки, а не ``глюки''. Сообщения типа ``make world produces some error about groups'' в списке рассылки -current иногда воспринимаются пренебрежительно.

Из ветви -current регулярно делаются , некоторые из которых доступны на CDROM. Их предназначение: Тестирование самой последней версии инсталлятора. Дать людям, которые хотят работать с -current, но не имеют времени и/или мозможности (пропускной способности) для отслеживания ежедневных измененений, простой способ её установки. Фиксация точки для последующих ссылок в случае, если позже мы что-нибудь очень сильно сломаем. (Хотя CVS, как правило, не позволяет случиться ничему такому ужасному :) Любые новые возможности, которым требуется тестирование, должны иметь как можно больше потенциальных тестеров.

Не утверждается, что всякий снапшот имеет качество ``готового продукта''. Для стабильной и надежной работы вам нужно подождать полного релиза.

Снапшоты доступны непосредственно с и, как правило, - генерируются ежедневно для веток 3.0-current и 2.2-stable. + генерируются ежедневно для веток 4.0-current и 3.0-stable. В чём смысл FreeBSD-stable?

После того, как была выпущена FreeBSD 2.0.5, мы решили разделить разработку FreeBSD на две части. Одна ветка была названа , с тем предназначением, что в ней будут делаться только хорошо оттестированные исправления и маленькие последовательные усовершенствования (для провайдеров услуг Интернет и других коммерческих пользователей, для которых неожиданные изменения или экспериментальные возможности весьма нежелательны). Другой ветвью является , которая - по существу является прямой линией, ведущей к 3.0-RELEASE (и + по существу является прямой линией, ведущей к 4.0-RELEASE (и последующим) с тех пор, как была выпущена 2.0. Если вам поможет картинка, то вот как это выглядит: 2.0 | | | [2.1-stable] *ВЕТВЬ* 2.0.5 -> 2.1 -> 2.1.5 -> 2.1.6 -> 2.1.7.1 [конец 2.1-stable] | (Мар 1997) | | | [2.2-stable] *ВЕТВЬ* 2.2.1 -> 2.2.2-RELEASE -> 2.2.5 -> 2.2.6 -> 2.2.7 -> 2.2.8 [конец] | (Мар 1997) (Окт 97) (Апр 98) (Июл 98) (Дек 98) | | 3.0-SNAPs (начало в I квартале 1997) | | 3.0.0-RELEASE (Окт 1998) | | [3.0-stable] - *ВЕТВЬ* 3.0.1 (Фев 1999) -> ... будущие релизы 3.0.x ... + *ВЕТВЬ* 3.1 (Фев 1999) -> ... будущие релизы 3.x ... | | \|/ + - [продолжение 3.1-current] + [продолжение 4.0-current] -

Ветвь -current постепенно переходит в 3.0.1 и выше, тогда как +

Ветвь -current постепенно переходит в 4.0 и выше, тогда как предыдущая ветвь, 2.2-stable, была вытеснена релизом 2.2.8. - 3.0-current будет оставаться веткой, где ведётся активная разработка, - вплоть до настоящего релиза 3.0.1 в начале 1999. В этот момент 3.0 - станет еще одной веткой, а 3.1-current станет следующей "текущей - ветвью". + Теперь его заменила ветвь 3.0-stable, первый релиз которой, 3.1, + выйдет в начале 1999 года. "Текущей веткой" сейчас является + 4.0-current, первый релиз которой появится в первом квартале 2000 года. В какой момент выпускаются новые версии FreeBSD?

Как правило, основная группа разработчиков выпускает новую версию, только когда они уверены, что добавленных новых возможностей и/или внесённых исправлений уже достаточно и новый релиз не потеряет стабильности. Многие пользователи оценивают эту осторожность как одну из лучших сторон FreeBSD, хотя она несколько разочаровывает, если вам не терпится попробовать новые возможности..

В среднем новые версии выпускаются примерно каждые четыре месяца.

Для тех, кому не терпится, предназначены SNAP-релизы, выпускаемые более часто, в частности, в течении месяца перед релизом. FreeBSD доступна только для персональных компьютеров?

В настоящее время FreeBSD 3.x работает как на архитектуре x86, так и на платформе . Некоторый интерес был проявлен к переносу на SPARC, однако подробности этого проекта ещё не ясны. Если ваш компьютер имеет другую архитектуру и вам нужно что-то прямо сейчас, советуем попробовать или . Кто разрабатывает FreeBSD?

Решения, которые касаются ключевых моментов в проекте FreeBSD, такие, как общее направление развития проекта или кто может добавлять код к дереву исходных текстов, принимаются разработчиков (core team), состоящей из 15 человек. Также существует гораздо большая группа из более 100 (committers), которые могут делать изменения прямо в дереве исходных текстов FreeBSD.

Однако, большинство нетривиальных изменений широко обсуждается в , и не существует никаких ограничений на участие в подобных дискуссиях. Где можно найти FreeBSD?

Все основные релизы FreeBSD доступны по ftp с : Текущий релиз 2.2-stable, 2.2.8R, находится в каталоге - . - Текущий релиз 3.0-current, 3.0-SNAP, находится в каталоге - . + Текущий релиз 3.0-stable, 3.0-RELEASE, находится в каталоге + . Релизы делаются ежедневно из ветки RELENG_2_2 (после 2.2.8), которая постепенно переходит в режим сопровождения. Ветвь RELENG_2_2 ведётся очень аккуратно и сейчас туда не вносятся изменений, кроме как жизненно необходимых по соображениям безопасности и надёжности. + Выпуски также делаются ежедневно из ветки RELENG_3 + (после 3.0-release), пока она переходит в 3.1-RELEASE. + Выпуски , которые также деляются ежедневно из ветви + name="4.0 Snapshot">, которые деляются ежедневно из ветви , предназначены для тестеров и разработчиков.

FreeBSD также доступна через CDROM, по такому алресу:

Walnut Creek CDROM 4041 Pike Lane, Suite F Concord, CA 94520 USA Orders: +1 800 786-9907 Questions: +1 925 674-0783 FAX: +1 925 674-0821 email: WWW:

В Австралии вы можете найти по адресу:

Advanced Multimedia Distributors Factory 1/1 Ovata Drive Tullamarine, Melbourne Victoria Australia Voice: +61 3 9338 6777 CDROM Support BBS 17 Irvine St Peppermint Grove WA 6011 Voice: +61 9 385-3793 Fax: +61 9 385-2360 И в Великобритании: The Public Domain & Shareware Library Winscombe House, Beacon Rd Crowborough Sussex. TN6 1UL Voice: +44 1892 663-298 Fax: +44 1892 667-473 Где найти информацию по спискам рассылки FreeBSD?

Исчерпывающая информация содержится в Руководства, который посвящен спискам рассылки. Какие существуют телеконференции по FreeBSD?

Полная информация о группах новостей есть в Руководства, касающемся телеконференций. Существуют ли каналы IRC (Internet Relay Chat) по FreeBSD?

Да, большинство сетей IRC имеют канал FreeBSD: Канал #FreeBSD в сети EFNet посвящён FreeBSD, но не обращайтесь туда за технической поддержкой и даже не пытайтесь найти человека, который поможет вам обойтись без чтения страниц Справочника или собственных изысканий. Этот канал предназначен в первую и основную очередь для общения, и в круг обсуждаемых тем входит секс, спорт, ядерное оружие, как будто это и есть FreeBSD. В общем, вас предупредили! Канал доступен на сервере irc.chat.org. Канал #FreeBSD в сети DALNET доступен на сервере irc.dal.net в США и на irc.eu.dal.net в Европе. Канал #FreeBSD в сети UNDERNET доступен на серверах us.undernet.org в США и eu.undernet.org в Европе. Похож на канал в сети EFNET - не задавайте вопросов или научитесь задавать их чрезвычайно вежливо, если хотите получить помощь. Это канал для общения, а не для получения помощи. Наконец, вы можете подключиться к каналу #FreeBSD в сети BSDNET, посвящённой исключительно BSD, на сервере irc.FreeBSD.org. Эта сеть пытается быть посвящённой в большей степени технической поддержке и не быть такой анархистской, как EFNET, UNDERNET или DALNET, однако по этой же причине она и не столь популярна. Почему бы сегодня кому-нибудь не взяться и поотвечать на вопросы на BSDNET?

Все эти каналы разные и не имеют отношения друг к другу. Их стили общения также отличаются, так что вам, может быть, придётся попробовать все, чтобы найти тот, который соответствует вашему стилю. Как и обычно с *любым* каналом IRC, если вы легко раздражаетесь или не можете иметь дела с большим количеством лиц школьного (и младшего школьного) возраста, пытающихся озвучить свои попытки самоутверждения, не обращайте на это внимания. Книги по FreeBSD

Вы можете обратиться в FreeBSD Documentation Project (а ещё лучше к нему присоединиться) через список рассылки doc: . Этот список рассылки предназначен для обсуждения документации FreeBSD. Для вопросов по системе предназначен список рассылки questions: .

``Руководство'' по FreeBSD доступно и может быть найдено на . Заметьте, что этот проект находится в процессе разработки, так что некоторые части могут отсутствовать.

Прекрасным печатным руководством по FreeBSD является книга ``The Complete FreeBSD'', написанная Грегом Лиэем (Greg Lehay) и изданная Walnut Creek CDROM Books. В настоящее время вышло второе издание, содержащее 1,750 страниц руководств по установке и администрированию системы и прикладных программ, а также страницы Справочника. Книга (и последний релиз FreeBSD) может быть заказана у , , или в вашем любимом книжном магазине. Индекс ISBN 1-57176-227-2.

Так как FreeBSD 2.2.X основана на выпуске Berkeley 4.4BSD-Lite2, большинство руководств по 4.4BSD подходят к FreeBSD 2.2.X. O'Reilly and Associates издают следующие руководства: 4.4BSD System Manager's Manual By Computer Systems Research Group, UC Berkeley 1st Edition June 1994, 804 pages : 1-56592-080-5 4.4BSD User's Reference Manual By Computer Systems Research Group, UC Berkeley 1st Edition June 1994, 905 pages : 1-56592-075-9 4.4BSD User's Supplementary Documents By Computer Systems Research Group, UC Berkeley 1st Edition July 1994, 712 pages : 1-56592-076-7 4.4BSD Programmer's Reference Manual By Computer Systems Research Group, UC Berkeley 1st Edition June 1994, 886 pages : 1-56592-078-3 4.4BSD Programmer's Supplementary Documents By Computer Systems Research Group, UC Berkeley 1st Edition July 1994, 596 pages : 1-56592-079-1

Описание этих книг может быть найдено через WWW: . Из-за малых объёмов продаж, эти книги найти труднее.

Вы не ошибётесь, если для подробного ознакомления с устройством ядра 4.4BSD kernel обратитесь к следующей литературе:

McKusick, Marshall Kirk, Keith Bostic, Michael J Karels, and John Quarterman.

The Design and Implementation of the 4.4BSD Operating System. Reading, Mass. : Addison-Wesley, 1996. 0-201-54979-4

Хорошей книгой по системному администрированию является:

Evi Nemeth, Garth Snyder, Scott Seebass & Trent R. Hein, ``Unix System Administration Handbook'', Prentice-Hall, 1995 : 0-13-151051-7

Эта книга касается основ администрирования, в том числе протоколов TCP/IP, DNS, NFS, SLIP/PPP, sendmail, INN/NNTP, системы печати итд.. Она сравнительно дорогая (примерно US$45-$55), но стоит того. К ней прилагается также компакт-диск с исходными текстами различных утилит; большинство их них, однако, также присутствуют на диске FreeBSD 2.2.6R (на котором к тому же часто находятся более свежие версии). Как можно получить доступ к вашей базе сообщений о проблемах (Problem Report)?

Сообщения пользователей о всех открытых проблемах могут быть запрошены (или добавлены) с помощью нашего и . Команда send-pr(1) также может быть использована для передачи сообщений о проблеме и изменении запроса через электронную почту. Где можно найти FAQ в форматах ASCII/PostScript?

Актуальная версия FAQ в форматах PostScript и обычного текста (7 бит ASCII и 8 бит Latin1) доступна с веб-сервера FreeBSD или с любого его зеркала.

Как PostScript (примерно 370Кб):

Как текст ASCII (примерно 220Кб):

Как текст ISO 8859-1 (примерно 220Кб): Где можно найти Руководство в форматах ASCII/PostScript?

Актуальная версия Руководства в форматах PostScript и обычного текста (7 бит ASCII и 8 бит Latin1) доступна с веб-сервера FreeBSD или с любого его зеркала.

Как PostScript (примерно 1.7Мб):

Как текст ASCII (примерно 1080Кб):

Как текст ISO 8859-1 (примерно 1080Кб): Руководство в формате ASCII - не чистый текст!

Действительно, FAQ и Руководство в форматах ASCII и Latin1 не являются чисто текстовыми документами; они содержат символы форматирования для вывода на печать. Если вам нужно преобразовать эти документы к виду, пригодному для чтения, обработайте файл программой col: $ col -b < inputfile > outputfile Могу ли я зазеркалировать веб-сервер FreeBSD?

Несомненно! Есть несколько способов это сделать. С помошью CVSUP: Вы можете скачивать отформатированные файлы с помощью CVSUP с сервера cvsup.freebsd.org. Добавьте следующую строку в конфигурационный файл cvsup: www release=current hostname=/home base=/usr/local/etc/cvsup prefix=/usr/local/www/data/www.freebsd.org delete old use-rel-suffix С помощью rsync: Обратитесь к странице, посвященной . С помощью зеркалирования ftp: Вы можете скачать копию веб-сервера, находящуюся на ftp, используя ваше любимое средство зеркалирования ftp. Просто начните с каталога ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/www. Я могу перевести документацию на язык племени мумбо-юмбо.

Хорошо. Хотя мы не сможем заплатить, в наших силах подарить вам бесплатный CD или футболку и внести вас в список составителей Руководства, если вы предоставите перевод. Другие источники информации.

Следующие телеконференции содержат информацию о FreeBSD, которая будет полезна её пользователям: (модерируемая)

Ресурсы Internet: .

В Руководстве по FreeBSD имеется достаточно полный , который стоит посмотреть, если вы хотите подыскать книгу по системе.