Авторские права © 1995-2012 The FreeBSD Documentation Project
Распространение и использование исходных (SGML DocBook) и <<скомпилированных>> форм (SGML, HTML, PDF, PostScript, RTF и прочих) с модификацией или без оной, разрешены при соблюдении следующих соглашений:
Распространяемые копии исходного кода (SGML DocBook) должны сохранять вышеупомянутые объявления copyright, этот список положений и следующий отказ от ответственности в первых строках этого файла в неизменном виде.
Распространяемые копии скомпилированных форм (преобразованные в другие DTD, конвертированные в PDF, PostScript, RTF и другие форматы) должны повторять вышеупомянутые объявления copyright, этот список положений и следующий отказ от ответственности в документации и/или других материалах, поставляемых с дистрибьюцией.
ЭТА ДОКУМЕНТАЦИЯ ПОСТАВЛЯЕТСЯ ПРОЕКТОМ ДОКУМЕНТАЦИИ FREEBSD "КАК ЕСТЬ" И ЛЮБЫЕ ЯВНЫЕ ИЛИ НЕЯВНЫЕ ГАРАНТИИ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ НЕЯВНЫМИ ГАРАНТИЯМИ, КОММЕРЧЕСКОЙ ЦЕННОСТИ И ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ ОТРИЦАЮТСЯ. НИ ПРИ КАКИХ УСЛОВИЯХ ПРОЕКТ ДОКУМЕНТИРОВАНИЯ FREEBSD НЕ НЕСЕТ ОТВЕТСТВЕННОСТИ ЗА ЛЮБОЙ ПРЯМОЙ, КОСВЕННЫЙ, СЛУЧАЙНЫЙ, СПЕЦИАЛЬНЫЙ, ОБРАЗЦОВЫЙ ИЛИ ПОСЛЕДУЮЩИЙ УЩЕРБЫ (ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ПОСТАВКОЙ ТОВАРОВ ЗАМЕНЫ ИЛИ УСЛУГ; ПОТЕРЮ ДАННЫХ ИЛИ ИХ НЕПРАВИЛЬНУЮ ПЕРЕДАЧУ ИЛИ ПОТЕРИ; ПРИОСТАНОВЛЕНИЕ БИЗНЕСА), И ТЕМ НЕ МЕНЕЕ ВЫЗВАННЫЕ И В ЛЮБОЙ ТЕОРИИ ОТВЕТСТВЕННОСТИ, НЕЗАВИСИМО ОТ КОНТРАКТНОЙ, СТРОГОЙ ОТВЕТСТВЕННОСТИ, ИЛИ ПРАВОНАРУШЕНИИ (ВКЛЮЧАЯ ХАЛАТНОСТЬ ИЛИ ИНЫМ СПОСОБОМ), ВОЗНИКШЕМ ЛЮБЫМ ПУТЕМ ПРИ ИСПОЛЬЗОВАНИИ ЭТОЙ ДОКУМЕНТАЦИИ, ДАЖЕ ЕСЛИ БЫ БЫЛО СООБЩЕНО О ВОЗМОЖНОСТИ ТАКОГО УЩЕРБА.
FreeBSD это зарегистрированная торговая марка FreeBSD Foundation.
3Com и HomeConnect это зарегистрированные торговые марки 3Com Corporation.
Adobe, Acrobat, Acrobat Reader и PostScript это или зарегистрированные торговые марки или торговые марки Adobe Systems Incorporated в Соединенных Штатах и/или других странах.
Sound Blaster это торговая марка Creative Technology Ltd. в Соединенных Штатах и/или других странах.
CVSup это зарегистрированная торговая марка John D. Polstra.
IBM, AIX, OS/2, PowerPC, PS/2, S/390 и ThinkPad это торговые марки International Business Machines Corporation в Соединенных Штатах, других странах, или по всему миру.
IEEE, POSIX и 802 это зарегистрированные торговые марки Institute of Electrical and Electronics Engineers, Inc. в Соединенных Штатах.
Intel, Celeron, EtherExpress, i386, i486, Itanium, Pentium и Xeon это торговые марки или зарегистрированные торговые марки Intel Corporation или ее дочерних компаний в Соединенных Штатах и других странах.
Iomega, Zip, и Jaz это или зарегистрированные торговые марки или торговые марки Iomega Corporation в Соединенных Штатах и/или других странах.
Linux это зарегистрированная торговая марка Linus Torvalds.
Microsoft, FrontPage, IntelliMouse, MS-DOS, Outlook, Windows, Windows Media и Windows NT это или зарегистрированные торговые марки или торговые марки Microsoft Corporation в Соединенных Штатах и/или других странах.
MIPS и R4000 это зарегистрированные торговые марки MIPS Technologies, Inc. в Соединенных Штатах и других странах.
Netscape и Netscape Navigator это зарегистрированные торговые марки Netscape Communications Corporation в США и других странах.
Motif, OSF/1 и UNIX это зарегистрированные торговые марки, а IT DialTone и The Open Group это торговые марки Open Group в Соединенных Штатах и других странах.
Oracle это зарегистрированная торговая марка Oracle Corporation.
Silicon Graphics, SGI, и OpenGL это зарегистрированные торговые марки Silicon Graphics, Inc., в Соединенных Штатах и/или других странах по всему миру.
Sparc, Sparc64, и UltraSPARC это торговые марки SPARC International, Inc в Соединенных Штатах и других странах. Продукты с торговой маркой SPARC основаны на архитектуре, разработанной Sun Microsystems, Inc.
Sun, Sun Microsystems, Java, Java Virtual Machine, JDK, JRE, JSP, JVM, Netra, Solaris, StarOffice, SunOS это торговые марки или зарегистрированные торговые марки Sun Microsystems, Inc. в Соединенных Штатах и других странах.
U.S. Robotics и Sportster это зарегистрированные торговые марки U.S. Robotics Corporation.
XFree86 это торговая марка XFree86 Project, Inc.
Многие из обозначений, используемые производителями и продавцами для обозначения своих продуктов, заявляются в качестве торговых марок. Когда такие обозначения появляются в этом документе, и Проекту FreeBSD известно о торговой марке, к обозначению добавляется знак <<TM>> или <<(R)>>.
Этот документ является так называемым FAQ (Frequently Asked
Questions), то есть списком Часто Задаваемых Вопросов по FreeBSD версий
7.X
, 8.X
и 9.X
.
Если не оговорено обратное, предполагается, что все замечания
справедливы для версий FreeBSD 7.X
и выше.
Если вы
хотите помочь в составлении этого документа, пошлите письмо в Список рассылки Проекта Документации FreeBSD.
Последняя редакция этого документа всегда доступна с
Web-сервера FreeBSD. Его также
можно получить в виде одного большого
HTML-файла по HTTP или в виде обычного текстового файла, файла
формата PostScript(R), PDF или другого формата с FTP-сервера.
Вы также можете осуществить поиск в
FAQ.
Добро пожаловать в FAQ по FreeBSD
7.X
, 8.X
и 9.X
!
Как и обычный FAQ конференций Usenet, этот документ содержит большинство из часто задаваемых вопросов, касающихся операционной системы FreeBSD (и, конечно же, ответы на них). Первоначально предназначенный для уменьшения потока сообщений и избежания повторения одних и тех же вопросов, постепенно FAQ превратился в ценный источник информации.
Мы прилагаем все усилия, чтобы сделать этот FAQ максимально информативным; если у вас есть идеи по его усовершенствованию, пожалуйста, напишите нам на адрес Список рассылки Проекта Документации FreeBSD.
1.1. | FreeBSD - что это такое? |
В двух словах, FreeBSD - это UNIX(R)-подобная операционная система для платформ AMD64 и Intel(R) EM64T, i386TM, PC-98, IA-64, ARM(R), PowerPC(R) и UltraSPARC(R), разработанная на основе операционной системы <<4.4BSD-Lite>> с некоторыми усовершенствованиями, взятыми из <<4.4BSD-Lite2>> Калифорнийского Университета (Беркли). Также она косвенно базируется на 386BSD (BSD Net/2, перенесённой на платформу i386TM Уильямом Джолитцем (William Jolitz)), хотя от того первоначального кода осталось очень мало. Более подробные объяснения того, что представляет из себя FreeBSD и для чего она может вам пригодиться, можно найти на домашней странице FreeBSD. FreeBSD используется компаниями, Интернет-провайдерами, научными работниками, профессионалами в вычислительной технике, студентами и рядовыми пользователями по всему миру для работы, образования и отдыха. Для более детального знакомства с FreeBSD, пожалуйста, обратитесь к Руководству по FreeBSD. | |
1.2. | Какова цель FreeBSD? |
Цель, преследуемая проектом FreeBSD - это предоставление программного обеспечения, которое может быть использовано в любых целях без каких бы то ни было ограничений. Многие из нас вкладывают значительные усилия в её разработку (и проектирование) и определённо были бы не против получения финансовой поддержки, но требовать её мы не будем. Мы надеемся, что наша основная и самая значительная <<миссия>> - предоставить код всем желающим, для любых целей, так чтобы он нашел самое широкое применение и принёс наибольшую пользу. Это, на наш взгляд, одна из самых фундаментальных целей Free Software, которую мы с энтузиазмом поддерживаем. Часть исходного кода нашей системы, подпадающая под действие GNU General Public License (GPL) или GNU Library General Public License (LGPL), имеет несколько больше ограничений, хотя и представляет собой навязывание доступа к исходным текстам, а не наоборот, как обычно. Из-за дополнительных сложностей, которые могут возникнуть в случае коммерческого использования программного обеспечения GPL, мы стараемся, где только это возможно, заменить подобное программное обеспечение аналогичным, но подпадающим под менее строгую лицензию FreeBSD. | |
1.3. | Есть ли в лицензии FreeBSD какие-то ограничения? |
Да. Эти ограничения не касаются того, как именно вы используете код, но главным образом описывают ваше отношение при этом в целом к Проекту FreeBSD. Если у вас есть серьезные проблемы с лицензированием, прочтите собственно текст лицензионного соглашения. Упрощенно оно может быть вкратце изложено следующим образом.
| |
1.4. | Может ли FreeBSD заменить операционную систему, используемую мною сейчас? |
Для большинства людей, да. Но этот ответ не так уж однозначен. Большинство пользователей на самом деле не используют операционную систему. Они работают с приложениями. Именно прикладные программы и используют операционную систему. FreeBSD разработана для того, чтобы дать надежное и полнофункциональное окружение для приложений. Она поддерживает широкий спектр Web-браузеров, офисных пакетов, программ для работы с электронной почтой, графических пакетов, программных сред, сетевых серверов и практически все, что вы можете захотеть. Большинство этих приложений могут быть получено из Коллекции Портов. Если вам необходимо использовать приложение, которое доступно только для одной операционной системы, вам просто нельзя заменять операционную систему. Однако есть вероятность, что похожая программа существует для FreeBSD. Если вам нужен стабильно работающий сервер для офиса или сервер Интернет, надежная рабочая станция или просто возможность выполнять работу без сбоев, FreeBSD практически всегда справится со всем, что вам нужно. Многие пользователи по всему миру, включая как новичков, так и опытных администраторов UNIX(R), используют FreeBSD в качестве своей единственной настольной операционной системы. Если вы переходите на FreeBSD с какого-то другого варианта UNIX(R), вы уже знаете большинство ваших потребностей. Если вы привыкли к таким графическими операционными системам, как Windows(R) или старым версиям Mac OS(R), будьте готовы к затратам дополнительного времени на изучение подхода UNIX(R) к работе. Этот FAQ и Руководство по FreeBSD являются прекрасным способом начать это изучение. | |
1.5. | Почему система называется именно FreeBSD? |
Следует отметить, что слово <<free>> используется здесь в двух смыслах, один означает <<бесплатно>>, а другой <<вы можете делать всё, что хотите>>. За исключением пары вещей, которые вы не можете делать с FreeBSD, например, претендовать на то, что являетесь её разработчиком, на самом деле можно делать с ней всё, что вам заблагорассудится. | |
1.6. | В чём заключается разница между FreeBSD и NetBSD, OpenBSD и другими операционными системами с открытыми кодами семейства BSD? |
Джеймс Ховард (James Howard) создал хорошее описание истории и различий между различными проектами под названием Семейное древо BSD, в котором даётся подробный ответ на этот вопрос. | |
1.7. | Какова последняя версия FreeBSD? |
На любом этапе разработки FreeBSD может существовать
несколько параллельных веток. Релизы 9. До выпуска 8.0 линейка 7. Версия 10.1, выпущенная Январь 2014, является самым последним релизом в ветке 9-STABLE. Версия 9.3, выпущенная Сентябрь 2013, является самым последним релизом в ветке 8-STABLE. Если вкратце, то ветка -STABLE предназначена поставщикам услуг Internet, корпоративным пользователям, а также всем тем, кому в первую очередь нужна надёжность и минимальное количество отличий от последнего релиза по сравнению с новыми (и, возможно, ненадёжно работающими) возможностями последнего снэпшота -CURRENT. Релизы можно делать из любой ветки, но -CURRENT можно использовать только в том случае, если вы уверены, что готовы к постоянным (по сравнению со -STABLE) изменениям в работе системы. Релизы делаются раз в несколько месяцев. Хотя многие стараются отслеживать актуальное состояние исходных текстов FreeBSD (обратите внимание на вопросы о FreeBSD-CURRENT и FreeBSD-STABLE), делать это не обязательно, так как исходные тексты постоянно меняются. Более полную информацию о релизах FreeBSD можно получить со страницы о Процессе выпуска релизов на Web-сайте FreeBSD. | |
1.8. | Что такое FreeBSD-CURRENT? |
FreeBSD-CURRENT - это версия операционной системы, находящаяся в стадии разработки, которая должна потом стать новой веткой FreeBSD-STABLE. Таким образом, она представляет реальный интерес только для разработчиков системы и её фанатов. Обратитесь к соответствующему разделу Руководства для прояснения деталей работы с -CURRENT. Если вы не специалист по операционным системам или не в состоянии отличить реальную проблему от временных явлений, вы не должны использовать FreeBSD-CURRENT. Эта ветвь зачастую меняется очень быстро и иногда может быть не работоспособна. Те, кто используют FreeBSD-CURRENT, должны быть в состоянии анализировать любые проблемы и сообщать о них, если это действительно ошибки, а не <<глюки>>. Сообщения типа <<make world produces some error about groups>>, отправленные в Список рассылки, посвящённый обсуждению FreeBSD-CURRENT, могут быть восприняты пренебрежительно. Ежемесячно из веток -CURRENT и -STABLE делаются снэпшоты. Их предназначение:
Не утверждается, что всякий снэпшот -CURRENT имеет качество <<готового продукта>>. Если вам нужна стабильно работающая и полностью оттестированная система, то необходимо дождаться выхода полного релиза или воспользоваться снэпшотами -STABLE. Снэпшот-релизы доступны непосредственно отсюда. Официальные снэпшоты постоянно генерируются каждый месяц
для всех активно разрабатываемых веток. Также ежедневно
делаются снэпшоты популярных веток i386 и amd64
и доступны на | |
1.9. | В чём смысл FreeBSD-STABLE? |
После того, как была выпущена FreeBSD 2.0.5, разработка FreeBSD разделилась на две части. Одна ветка получила название -STABLE, а другая -CURRENT. FreeBSD-STABLE предназначена для провайдеров услуг Интернет и других коммерческих пользователей, для которых неожиданные изменения или экспериментальные возможности весьма нежелательны. В неё вносятся только хорошо оттестированные исправления и другие небольшие последовательные усовершенствования. С другой стороны, FreeBSD-CURRENT являлась единой веткой, не разрываемой с момента выхода версии 2.0 и ведущей к 10.1-RELEASE и последующим релизам. Для получения более подробной информации по веткам обратитесь к разделу статьи << Подготовка релизов FreeBSD: Создание ветки релиза>>. Статус веток и расписание предстоящих релизов можно получить на странице Информация о подготовке релизов. Ветвь 2.2-STABLE была завершена выходом релиза 2.2.8. Ветвь
3-STABLE была завершена выходом релиза 3.5.1, последнего из
3. Активно разрабатываемой веткой -STABLE является 10.1-STABLE. Последним релизом в ветке 10.1-STABLE является 10.1-RELEASE, выпущенный Январь 2014. Активно разрабатываемой веткой -CURRENT является ветка 10-CURRENT, которая движется к созданию следующего поколения FreeBSD. Прочтите ответ на вопрос Что такое FreeBSD-CURRENT? для получения более подробной информации об этой ветке. | |
1.10. | В какой момент выпускаются новые версии FreeBSD? |
Группа Выпуска Релизов FreeBSD Дополнительная информация о процессе подготовки релиза (в том числе планы выпуска последующих релизов) может быть найдена на страницах Web-сайта FreeBSD, посвящённых выпуску релизов. Для тех, кому нужно или хочется, ежедневно выпускаются бинарные релизы, как это описано выше. | |
1.11. | Кто разрабатывает FreeBSD? |
Решения, которые касаются ключевых моментов в проекте FreeBSD, такие, как общее направление развития проекта или кто может добавлять код к дереву исходных текстов, принимаются основной командой разработчиков (Core Team), состоящей из 9 человек. Также существует многочисленная группа, состоящая из более чем 350 так называемых коммиттеров (committers), которые могут вносить изменения прямо в дерево исходных текстов FreeBSD. Однако большинство нетривиальных изменений широко обсуждается в списках рассылки, и не существует никаких ограничений на участие в подобных дискуссиях. | |
1.12. | Где можно найти FreeBSD? |
Все основные релизы FreeBSD доступны по FTP с FTP-сервера FreeBSD:
Информация о получении/приобретении FreeBSD на CD, DVD и других носителях доступна в Руководстве. | |
1.13. | Как можно получить доступ к базе сообщений о проблемах (Problem Report)? |
База данных всех сообщений пользователей о проблемах может быть запрошена с помощью нашего Web-интерфейса. Команда send-pr(1) может быть использована для передачи и изменения сообщений о проблемах через электронную почту. Альтернативно можно использовать Web-интерфейс для отсылки сообщений об ошибках через браузер. Перед тем, как посылать сообщение об ошибке, пожалуйста, прочтите статью Составление сообщений о проблеме во FreeBSD о том, как писать хорошие сообщения об ошибках. | |
1.14. | Другие источники информации. |
Пожалуйста, посмотрите список имеющейся документации на главной странице сайта FreeBSD. |
2.1. | Есть ли хорошие книги по FreeBSD? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
В рамках проекта создан широкий спектр документации, которая
доступна on-line по следующей ссылке: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2.2. | Есть ли версии документации в другом формате, например, в виде обычного текста ASCII или PostScript(R)? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Да. Документация имеется в нескольких различных форматах и упакованная разными способами на FTP-сервере FreeBSD, и находится она в каталоге /pub/FreeBSD/doc/. Документация подразделяется на категории различными способами. Это включает:
После выбора формата и способа компрессии, в котором вы хотите получить файл, вам нужно самим сгрузить упакованные файлы, распаковать их, а затем скопировать документацию в соответствующие места. Например, версия FAQ в виде отдельных HTML-файлов, упакованная
при помощи bzip2(1), находится в файле
У вас получится набор файлов | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2.3. | Где найти информацию по спискам рассылки FreeBSD? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Исчерпывающая информация содержится в разделе Руководства, который посвящён спискам рассылки. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2.4. | Какие существуют телеконференции по FreeBSD? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Полная информация о группах новостей есть в разделе Руководства, касающемся телеконференций. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2.5. | Существуют ли каналы IRC (Internet Relay Chat) по FreeBSD? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Да, большинство сетей IRC имеют канал FreeBSD:
Все эти каналы разные и не имеют отношения друг к другу. Их стили общения также отличаются, так что вам, может быть, придётся попробовать все, чтобы найти тот, который соответствует вашему стилю. Как и обычно с любым каналом IRC, если вы легко раздражаетесь или не можете иметь дела с большим количеством лиц школьного (и младшего школьного) возраста, пытающихся озвучить свои попытки самоутвердиться, не обращайте на это внимания. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2.6. | Есть ли какие-нибудь web-форумы для обсуждения FreeBSD? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Официальные форумы FreeBSD расположены по адресу http://forums.FreeBSD.org/. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2.7. | Где можно пройти платные курсы по FreeBSD и получить поддержку? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
iXsystems, Inc., дочерней компанией которой является FreeBSD Mall, предоставляет поддержку FreeBSD и программного обеспечения PC-BSD на коммерческой основе, в дополнение к разработке FreeBSD и решениям, требующим тонкой настройки. BSD Certification Group, Inc. предоставляет сертификацию системного администрирования DragonFly BSD, FreeBSD, NetBSD, OpenBSD. Если вы в этом заинтересованы, посетите их сайт. Чтобы попасть в этот список, другие организации, осуществляющие обучение и поддержку, должны обратиться к нам в Проект. |
3.1. | Какой файл нужно скачать для установки FreeBSD? | ||||||||||||||||||
Вам нужны образы трёх дискет:
Если вы хотите скачать дистрибутив самостоятельно (например, для установки с раздела DOS), вот список рекомендованных частей дистрибутива:
Полные инструкции по этой процедуре и об установке вообще можно найти в разделе Руководства, посвящённом установке FreeBSD. | |||||||||||||||||||
3.2. | Помогите! Загрузочный файл не помещается на дискету! | ||||||||||||||||||
На дискету размером 3.5 дюйма (1.44 Мбайт) может поместиться 1,474,560 байт данных. Образ дискеты имеет размер ровно 1,474,560 байт. Типичные ошибки при подготовке загрузочной дискеты:
| |||||||||||||||||||
3.3. | Где инструкции по установке FreeBSD? | ||||||||||||||||||
Инструкции по установке могут быть найдены в главе Руководства, посвящённой установке FreeBSD. | |||||||||||||||||||
3.4. | Что мне нужно иметь для запуска FreeBSD? | ||||||||||||||||||
Для работы FreeBSD необходим ПК класса 486 и выше с оперативной памятью объёмом не менее 24 Мбайт и жёстким диском объёмом не менее 150 Мбайт. Все версии FreeBSD могут работать с недорогими графическими адаптерами MDA, но для работы с Xorg требуется адаптер стандарта VGA или лучше. Обратитесь также к Глава 4, Аппаратная совместимость. | |||||||||||||||||||
3.5. | Как сделать оригинальную загрузочную дискету? | ||||||||||||||||||
В настоящий момент нет простого способа сделать оригинальную загрузочную дискету. Вам придётся делать новый релиз полностью, включая загрузочную дискету. Чтобы сделать оригинальный релиз, следуйте инструкциям в статье о процессе выпуска релизов. | |||||||||||||||||||
3.6. | Может ли Windows(R) сосуществовать с FreeBSD? | ||||||||||||||||||
Сначала установите Windows(R), а затем FreeBSD. Менеджер загрузки FreeBSD будет управлять процессом загрузки Windows(R) или FreeBSD. Если после этого вы ещё раз выполните процедуру установки Windows(R), то при этом менеджер загрузки будет грубо удалён. Если такое случится, обратитесь к следующему разделу. | |||||||||||||||||||
3.7. | Windows(R) уничтожила мой менеджер загрузки! Как мне его вернуть? | ||||||||||||||||||
Вы можете переустановить менеджер загрузки FreeBSD тремя способами:
| |||||||||||||||||||
3.8. | На компьютерах IBM Thinkpad серий A, T и X операционная система устанавливается, но при следующей перезагрузке машины зависают. Как можно от этого избавиться? | ||||||||||||||||||
Из-за ошибки в первых версиях BIOS от IBM раздел FreeBSD на этих машинах распознаётся как возможный служебный раздел FAT для режима сна. Когда BIOS пытается обработать раздел FreeBSD, происходит зависание. Согласно IBM[1], исправление включено в следующие релизы моделей/BIOS.
Сообщалось, что в более поздних версиях BIOS от IBM эта
ошибка может появиться снова. Это
сообщение от Jacques Vidrine Если у вас BIOS более ранней версии и обновление для вас не представляется возможным, то это можно обойти, установив FreeBSD, изменив идентификатор раздела, используемый FreeBSD и установив новые загрузочные блоки, которые могут работать с различными ID разделов. Во-первых, вам нужно привести компьютер в состояние, когда он проходит через экран самотестирования. Для этого требуется включить машину, не позволяя ей найти раздел FreeBSD на ведущем диске. Одним из способов сделать это является извлечение винчестера и временное его установка на более старый ThinkPad (такой, как ThinkPad 600) или настольный ПК с подходящим переходным кабелем. Здесь вы можете удалить раздел FreeBSD и вернуть диск на место. ThinkPad должен загружаться снова. С работающей машиной вы можете использовать процедуру, описанную здесь, для получения рабочей системы FreeBSD.
Случай, когда вы хотите загружать OpenBSD и FreeBSD на одном и том же лэптопе, оставлен читателю в качестве упражнения. | |||||||||||||||||||
3.9. | Можно ли производить установку на диск с повреждёнными блоками? | ||||||||||||||||||
Вы можете это сделать, но это плохая идея. Если вы обнаружите испорченные блоки на современном диске IDE, то весьма вероятно, что он скоро выйдет из строя совсем (собственная способность переносить испорченные блоки исчерпана, что означает очень большую порчу поверхности); мы рекомендуем приобрести новый диск. Если повреждённые блоки находятся на SCSI диске, взгляните на такое решение. | |||||||||||||||||||
3.10. | Странные вещи происходят при загрузке с установочного диска! | ||||||||||||||||||
Если вы видите, что машина зависает или неожиданно перезагружается, когда вы пытаетесь загрузиться с установочной дискеты, вы должны задать себе три вопроса:
Есть сведения, что Netscape(R) вызывает проблемы при скачивании загрузочного диска, так что лучше всего использовать специальную программу FTP, если она у вас есть. | |||||||||||||||||||
3.11. | Я загрузился с ATAPI CD-ROM, однако программа установки сообщила, что CD-ROM не найден. Куда он подевался? | ||||||||||||||||||
Обычной причиной возникновения такой проблемы является неправильно сконфигурированный привод CD-ROM. Теперь зачастую ПК продаются с CD-ROM, установленным как ведомое устройство на втором контроллере IDE, но без ведущего устройства на этом контроллере. Согласно спецификации ATAPI, такая конфигурация неверна, однако Windows(R) в таком случае всё же работает, и BIOS игнорирует это при загрузке. Вот почему BIOS может видеть CD-ROM при загрузке, а FreeBSD для завершения установки - нет. Переконфигурируйте вашу систему так, чтобы CD-ROM оказался либо основным устройством на том IDE-контроллере, на котором он установлен, либо ведомым устройством на контроллере IDE, который имеет ведущее устройство. | |||||||||||||||||||
3.12. | Можно ли я установить систему на лэптоп через PLIP (Parallel Line IP)? | ||||||||||||||||||
Да. Используйте стандартный кабель Laplink. Если необходимо, обратитесь к разделу Руководства о PLIP для выяснения деталей о работе в сети через параллельный порт. | |||||||||||||||||||
3.13. | Какие параметры диска я должен использовать? | ||||||||||||||||||
Примечание:Под <<параметрами>> диска мы понимаем число дорожек, головок и секторов на дорожку на диске, что для простоты обозначается как C/H/S. Именно так работает BIOS персональных компьютеров при чтении или записи диска. Это вызывает много недоразумений у начинающих системных администраторов. Прежде всего, физические параметры диска SCSI не имеют никакого значения, так как FreeBSD работает в терминах дисковых блоков. Фактически нет такого показателя, как физические параметры, так как плотность размещения секторов различна по всему диску. То, что производители называют физическими параметрами, есть не что иное, как параметры, которые они получили по занимаемому пространству. Для дисков IDE, FreeBSD работает в терминах C/H/S, но во всех современных дисках они преобразовываются во внутреннее представление. Имеют значение только логические параметры. Это то, что получает BIOS, когда спрашивает <<какие у тебя параметры?>> Затем они используются для обращения к диску. Так как FreeBSD использует BIOS при загрузке, очень важно получить верные параметры. В частности, если у вас на диске находятся несколько операционных систем, они обе должны иметь одинаковое представление о параметрах диска. В противном случае серьёзные проблемы при загрузке неизбежны! В случае дисков SCSI, параметры используются в зависимости от
того, включена ли поддержка расширенной трансляции на вашем
контроллере (что часто обозначается как <<поддержка дисков
DOS >1GB>> или что-то похожее). Если эта возможность
выключена, то используйте Если трансляция включена (что обычно
используется для преодоления некоторых ограничений MS-DOS(R)) и
ёмкость диска превышает 1 Гбайт, используйте
Если вы не уверены, или FreeBSD ошибается при определении параметров диска во время установки, самый простой способ решить эту проблему - создать на диске маленький раздел DOS. После этого BIOS должна определить параметры диска правильно (и вы всегда можете удалить раздел DOS в редакторе разделов, если вы не хотите его сохранить. Однако вы можете оставить его для настройки сетевых адаптеров и тому подобных вещей. Кроме того, существует свободно доступная утилита,
распространяемая вместе с FreeBSD, которая называется
| |||||||||||||||||||
3.14. | Есть ли ограничения на разбиение диска? | ||||||||||||||||||
Да. Вы должны убедиться, что корневой раздел находится до 1024 дорожки, так чтобы BIOS могла загрузить с него ядро. (Заметьте, что это ограничение BIOS компьютера, а не FreeBSD). Для диска SCSI, это, как правило, будет означать, что корневой раздел располагается в первых 1024 Мбайтах (или в первых 4096 Мбайтах, если включен режим расширенной трансляции - посмотрите предыдущий вопрос). Для дисков IDE соответствующее значение равно 504 Мбайтам. | |||||||||||||||||||
3.15. | Совместима ли FreeBSD с менеджерами дисков? | ||||||||||||||||||
FreeBSD распознаёт Ontrack Disk Manager и допускает его использование. Другие менеджеры дисков не поддерживаются. Если вы хотите использовать диск с FreeBSD, вам не нужен менеджер диска. Отконфигурируйте диск на столько пространства, сколько сможет обработать BIOS (обычно 504 Мбайта), и FreeBSD распознает, сколько места у вас есть на самом деле. Если вы используете старый диск с контроллером MFM, вам может потребоваться точно указать FreeBSD количество используемых дорожек. Если вы хотите использовать FreeBSD совместно с другой операционной системой, это можно сделать и без менеджера диска: удостоверьтесь, что загрузочный раздел FreeBSD и раздел для другой операционной системы не выходят за пределы 1024 дорожки. Если вы будете осторожны, 20 мегабайтного раздела для загрузки будет достаточно. | |||||||||||||||||||
3.16. | При загрузке FreeBSD первый раз после установки выдаётся сообщение Missing Operating System. В чём дело? | ||||||||||||||||||
Это классический случай, когда FreeBSD и DOS или другая операционная система конфликтуют по поводу параметров диска. Вам нужно будет переустановить FreeBSD, но имейте в виду, что инструкции, данные выше, помогают всегда. | |||||||||||||||||||
3.17. | После приглашения менеджера загрузки | ||||||||||||||||||
Это ещё один признак проблемы, описанной в предыдущем разделе.
Параметры диска в BIOS и параметры, используемые FreeBSD, не
совпадают. Если ваш контроллер или BIOS поддерживают трансляцию
дорожек (часто обозначаемую как | |||||||||||||||||||
3.18. | Нужно ли устанавливать все исходные тексты системы? | ||||||||||||||||||
В общем случае, нет. Однако мы настоятельно рекомендуем
установить, как минимум, исходные тексты набора
Наличие исходных текстов системы значительно облегчает процесс перехода на новые версии FreeBSD. Для выбора подмножества исходных текстов, которое вы хотите установить, используйте пункт меню , когда находитесь в меню программы установки. | |||||||||||||||||||
3.19. | Нужно ли перекомпилировать ядро? | ||||||||||||||||||
Изначально построение нового ядра в большинстве случаев являлось неотъемлемым шагом при установке FreeBSD, однако последние релизы предоставляют более дружественные методы конфигурации ядра. Выполнить конфигурацию ядра очень просто с помощью более гибкой системы параметров <<hints>>, которые можно задать в приглашении загрузчика. В дальнейшем всё же стоит построить новое ядро, содержащее только те драйверы, которые вам нужны, для того, чтобы сэкономить немного ОЗУ, хотя для большинства систем это делать больше не обязательно. | |||||||||||||||||||
3.20. | Какой из паролей DES, Blowfish или MD5 я должен использовать, и как указать, какого типа пароли используются пользователями? | ||||||||||||||||||
По умолчанию во FreeBSD используется формат паролей на основе
MD5. Это делается в предположении, что он
более защищён, чем традиционный формат паролей UNIX(R), в котором
используется схема на основе алгоритма DES.
Пароли DES остаются применимыми, если вам нужно использовать файл
паролей совместно с более старыми операционными системами, в
которых используется менее защищённый формат паролей.
FreeBSD также позволяет использовать пароли
в более защищённом формате Blowfish. Управление выбором
используемого формата для новых паролей осуществляется через
параметр входа | |||||||||||||||||||
3.21. | Загрузка с установочной дискеты прерывается на сообщении
| ||||||||||||||||||
Если у вас установлены устройства IDE Zip(R) или jaz;, уберите их и попробуйте снова. Они могут мешать установочной программе. После того, как система будет установлена, вы можете снова подключить устройства. Надеемся, что это будет исправлено в более поздних релизах. | |||||||||||||||||||
3.22. | Почему появляется сообщение panic: cant mount root после перезагрузки только что установленной системы. | ||||||||||||||||||
Эта ошибка проявляется, когда есть несогласованность между
представлениями загрузочного блока и ядра о дисковых устройствах.
Эта ошибка обычно проявляется на системах с двумя дисками IDE, с
винчестерами, установленными как ведущий или единственный на
отдельных контроллерах IDE, с FreeBSD, установленной на втором
контроллере IDE. Программа в загрузочных блоках полагает, что
система установлена на Для решения этой проблемы выполните одно из следующих действий:
| |||||||||||||||||||
3.23. | Какие имеются ограничения на объём оперативной памяти? | ||||||||||||||||||
Ограничение на память зависит от используемой платформы. Для стандартной системы i386TM размер оперативной памяти ограничен величиной 4 Гбайт, дополнительный объём памяти поддерживается через pae(4). Смотрите инструкции по использованию 4 Гбайт памяти или больше на i386TM. FreeBSD/pc98 имеет ограничение в 4 ГБ оперативной памяти, PAE здесь использовать невозможно. Остальные архитектуры, поддерживаемые FreeBSD, имеют гораздо большие теоретические ограничения объёмов памяти (многие терабайты). | |||||||||||||||||||
3.24. | Какие существуют ограничения для файловой системы FFS? | ||||||||||||||||||
Для файловой системы FFS максимальный теоретический размер равен 8 ТБ (2Г блоков) или 16 ТБ при стандартном размере блока 8 КБ. На практике есть программное ограничение в 1 ТБ, но с некоторыми модификациями достижимы 4 ТБ (и такие системы существуют). Максимальный размер одного файла FFS равен примерно 1 млрд. блоков, или 4 ТБ при размере блока 4 КБ. Таблица 3.1. Максимальные размеры файлов
При размере блока файловой системы 4 КБ тройная косвенная адресация блоков работает, и всё должно быть ограничено максимальным количеством блоков, которое задаётся в виде тройной переадресации блока (примерно 10243 + 10242 + 1024), однако всё ограничивается (ошибочным) лимитом 1 млрд. - 1 на количество блоков файловой системы. Это ограничение должно быть равным 2 млрд. - 1. При количестве блоков, приближающемся к 2 млрд. - 1, появляются некоторые ошибки, но этот предел недостижим при размере блока 4 КБ. При размере блока 8 КБ и больше всё должно быть ограничено лимитом 2 млрд. - 1 на количество блоков файловой системы, но реально ограничено пределом в 1 млрд. - 1. Использование верного ограничения в 2 млрд. - 1 блоков вызывает проблемы. | |||||||||||||||||||
3.25. | Я скомпилировал новое ядро и при загрузке получил сообщение об ошибке archsw.readin.failed. | ||||||||||||||||||
Это произошло, потому что ваше ядро и компоненты системы не
синхронизированы. Такая ситуация не поддерживается. Убедитесь,
что вы используете команды
Вы можете загрузить систему, непосредственно указав ядро на
втором этапе загрузки, нажав любую клавишу до запуска загрузчика
при появлении символов | |||||||||||||||||||
3.26. | Установка аварийно завершается ещё при загрузке системы. Что я могу сделать? | ||||||||||||||||||
Попытайтесь отключить поддержку ACPI. Когда загрузится загрузчик, нажмите Пробел. Система отобразит следующее: OK Наберите:
А затем:
|
4.1.1. | Я хочу приобрести аппаратуру для моей системы FreeBSD. Какая модель/производитель/тип лучше всего? |
Это постоянно обсуждается в списках рассылки FreeBSD. Так как аппаратура меняется так быстро, мы это ожидаем. Мы всё же настоятельно рекомендуем, чтобы вы прочитали Hardware Notes для FreeBSD 10.1 или 9.3, а также выполнили поиск по архивам списков рассылки перед тем, как задавать вопросы о самом последнем и лучшем оборудовании. Весьма вероятно, что обсуждение требуемого вам оборудование как раз было на прошлой неделе. Если вы подбираете лэптоп, посмотрите архивы Список рассылки FreeBSD, посвящённый переносным компьютерам. В противном случае вам нужны архивы Список рассылки, посвящённый вопросам и ответам пользователей FreeBSD или, возможно, специфичные списки рассылки по конкретному типу оборудования. |
4.2.1. | Поддерживает ли FreeBSD больше 4 Гбайт памяти (ОЗУ)? Больше 16 Гбайт? Больше 48 Гбайт? |
Да. FreeBSD как операционная система в целом поддерживает столько же физической памяти (ОЗУ), сколько аппаратная платформа, на которой она работает. Имейте в виду, что различные платформы имеют различные ограничения на память; например, i386TM без PAE поддерживает максимум 4 Гбайт памяти (и обычно еще меньше из-за адресного пространства PCI), а i386TM с PAE поддерживает максимум 64 Гбайт. Платформы AMD64, существующие на текущий момент, ограничены объемом 1 Тбайт физической памяти. | |
4.2.2. | Почему FreeBSD видит меньше 4 Гбайт памяти, когда система установлена на машину i386TM? |
Общее адресное пространство для машин i386TM является 32-разрядным; это означает, что адресоваться (т.е. быть получено) может не более 4 Гбайт памяти. Более того, некоторые адреса в этом диапазоне зарезервированы для различных целей аппаратным обеспечением, например, для использования и управления устройствами PCI, для доступа к видеопамяти, и так далее. Таким образом, общий объем памяти, используемой операционной системой для ядра и приложений, ограничен размером, значительно меньшим, чем 4 Гбайт. В такой конфигурации максимально доступная физическая память составляет от 3.2 Гбайт до 3.7 Гбайт. Для преодоления ограничения в 3.2 Гбайт-3.7 Гбайт установленной памяти (т.е. для получения 4 Гбайт, но также более 4 Гбайт) должен использоваться специальный механизм, именуемый PAE. Сокращение PAE расшифровывается как Physical Address Extension (расширение физического адреса) и предоставляет для 32-разрядных x86 процессоров способ адресовать более 4 Гбайт памяти. PAE переназначает память, которая иначе была бы перекрыта адресными резервациями для аппаратных устройств выше диапазона 4 Гбайт, и использует ее как дополнительную физическую память (смотрите pae(4)). Использование PAE имеет свои недостатки; такая модель доступа к памяти является чуть более медленной по сравнению с обычным режимом (без PAE), и также не работают динамически загружаемые модули (смотрите kld(4)). Это означает, что все драйверы должны присутствовать статически в самом ядре. Самый общий способ включить PAE - это собрать
новое ядро со специальным уже подготовленным файлом
конфигурации ядра, именуемым options PAE PAE не является широко используемым в настоящее время, поскольку большинство нового x86 аппаратного обеспечения также поддерживает работу в 64-разрядном режиме, также известном как AMD64 или Intel(R) 64. Этот режим имеет большее адресное пространство и не нуждается в таких трюках. FreeBSD поддерживает AMD64, и рекомендуется использование этой версии FreeBSD вместо версии i386TM, если требуется больше 4 Гбайт памяти. |
4.3.1. | Поддерживает ли FreeBSD аппаратные платформы, отличные от x86? |
Да. В настоящее время FreeBSD работает на архитектурах Intel x86 и AMD64. Также поддерживаются архитектуры Intel EM64T, IA-64, ARM(R), PowerPC(R) и Sparc64(R). Планируются к поддержке платформы MIPS(R) и S/390(R). Дополнительную информацию о происходящей работе над платформой MIPS(R) можно получить, подписавшись на Список рассылки, посвящённый портированию FreeBSD на архитектуру MIPS. Для обсуждения общих вопросов, касающихся новых аппаратных платформ, предназначен Список рассылки, посвящённый портированию FreeBSD на не-Intel платформы. Если аппаратная платформа Вашего компьютера не поддерживается FreeBSD и Вам нужно его запустить прямо сейчас, мы советуем обратить Ваш взгляд также на NetBSD и OpenBSD. | |
4.3.2. | Поддерживает ли FreeBSD многопроцессорные системы (SMP)? |
Системы с симметричным мультипроцессированием (SMP) во FreeBSD в целом поддерживаются, хотя в некоторых случаях ошибки в BIOS или системной плате могут вызывать определенные проблемы. FreeBSD задействует преимущества HyperThreading (HTT) на
процессорах Intel, которые это поддерживают. Ядро с включенной
|
4.4.1. | Какие типы винчестеров поддерживает FreeBSD? |
FreeBSD работает с дисками стандартов EIDE, SATA, SCSI и SAS (с совместимыми контроллерами; смотрите следующий раздел), и всеми дисками, использующими оригинальный интерфейс <<Western Digital>> (MFM, RLL, ESDI и, конечно же, IDE). Некоторые контроллеры ESDI, использующие собственные интерфейсы, могут и не работать: к таким относятся WD1002/3/6/7 и их клоны. | |
4.4.2. | Какие поддерживаются контроллеры SCSI или SAS? |
Полный список приведён в Hardware Notes для FreeBSD 10.1 или 9.3. | |
4.4.3. | Какие типы стримеров поддерживаются? |
FreeBSD поддерживает устройства SCSI и QIC-36 (с интерфейсом QIC-02), включая 8-мм (Exabyte) и DAT. Некоторые ранние модели 8-мм стримеров не совсем соответствуют стандарту SCSI-2 и могут работать не совсем хорошо. | |
4.4.4. | Поддерживает ли FreeBSD роботов для смены лент? |
FreeBSD поддерживает роботизированные устройства SCSI через устройство ch(4) и команду chio(1). Подробная информация об управлении такими роботами может быть найдена на странице Справочника по команде chio(1). Если вы не используете AMANDA или другое программное обеспечение, умеющее работать с роботами, имейте в виду, что они могут только переносить ленты с одного места на другое, так что вам нужно самим отслеживать, в каком слоте находится нужная лента, и в какой слот нужно вернуть ленту, находящуюся в стримере. | |
4.4.5. | Какие приводы CD-ROM поддерживаются во FreeBSD? |
Поддерживаются любые SCSI-устройства чтения компакт дисков, подключенные к поддерживаемому контроллеру. Поддерживается большинство ATAPI-совместимых IDE CD-ROM. | |
4.4.6. | Какие приводы CD-RW поддерживаются во FreeBSD? |
FreeBSD поддерживает все ATAPI-совместимые IDE-приводы CD-R или CD-RW. Более полную информацию можно найти на справочной странице по команде burncd(8). FreeBSD поддерживает также все SCSI-приводы CD-R или CD-RW.
Установите и используйте программу |
4.5.1. | Поддерживает ли FreeBSD USB клавиатуры? |
FreeBSD имеет встроенную поддержку клавиатур USB.
После включения поддержки USB-клавиатуры в системе
AT-клавиатуре будет соответствовать
Если вы хотите использовать клавиатуру USB на консоли, вы должны явно указать драйверу консоли на использование имеющейся клавиатуры USB. Это может быть сделано в процессе инициализации системы следующей командой.
Заметьте, что если клавиатура USB является единственной
присутствующей, она доступна как
Примечание:Чтобы сохранить это изменение, добавьте в
Как только вы всё это сделаете, клавиатура USB будет работать и в X-окружении без каких-либо особых настроек. Если вам нужно переключиться обратно на клавиатуру, используемую по умолчанию, выполните такую команду:
Для одновременной работы второй USB клавиатуры и первой AT клавиатуры в консоли через драйвер kbdmux(4), наберите следующие команды:
За дополнительной информацией обратитесь к страницам справочной системы ukbd(4), kbdcontrol(1) и kbdmux(4). Примечание:Выключение и включение USB-клавиатуры на ходу может ещё не работать совершенно корректно. Во избежание неприятностей мы рекомендуем подключить клавиатуру перед запуском системы и не отключать её до завершения работы системы. | |
4.5.2. | У меня необычная мышь типа bus mouse. Как её настроить? |
FreeBSD поддерживает мыши типов bus mouse и InPort bus mouse
от таких производителей, как Microsoft, Logitech и ATI. В ядре
device mse0 at isa? port 0x23c irq5 Мыши типа bus mouse обычно поставляются с отдельными интерфейсными адаптерами. Они позволяют установить адрес порта ввода/вывода и номер IRQ, отличающиеся от приведённых выше. Для получения дополнительной информации обратитесь к документации по вашей мыши и странице Справочника mse(4). | |
4.5.3. | Как использовать мышь PS/2 (типа <<mouse port>> или <<keyboard>>)? |
Мышь PS/2 системой поддерживается. Необходимый драйвер
устройства, Если в вашем ядре его нет, то добавьте следующую строку в файл конфигурации ядра и постройте новое ядро. device psm0 at atkbdc? irq 12 После того, как ядро правильно обнаружило устройство
| |
4.5.4. | Можно ли каким-либо образом использовать мышь, кроме X Window? |
Если вы используете стандартный драйвер консоли, syscons(4), то можете использовать указатель мыши в текстовых консолях для выделения и переноса текста. Запустите демон мыши, moused(8), и включите отображение указателя мыши на виртуальной консоли:
Здесь Если у вас мышь типа PS/2, просто добавьте строчку
После запуска даемона мыши, доступ к мыши должен согласовываться между даемоном мыши и другими программами типа X Window. Обратитесь к вопросу из FAQ Почему моя мышь не работает с X? для получения более полной информации по этому вопросу. | |
4.5.5. | Как можно вырезать и копировать текст с помощью мыши в текстовой консоли? |
После того, как вы запустили даемон мыши (посмотрите предыдущий раздел), нажмите кнопку 1 (левую) и двигайте мышь для выделения текста. Затем нажмите кнопку 2 (среднюю) для его вставки с позиции текстового курсора. Нажатие кнопки 3 (правой) <<расширит>> выбранную текстовую область. Если у вашей мыши отсутствует средняя кнопка, вы можете её сэмулировать или переназначить кнопки опциями даемона мыши. Обратитесь к справочным страницам по moused(8) для получения полной информации. | |
4.5.6. | У моей мыши есть дополнительные колёсико и кнопочки. Можно ли их использовать во FreeBSD? |
Ответ, к сожалению, <<в зависимости от обстоятельств>>. Эти мышки с дополнительными возможностями, как правило, требуют наличия специальных драйверов. До тех пор, пока драйвер мыши или прикладная программа не будут иметь отдельную поддержку такой мыши, она будет работать как стандартная двух- или трёхкнопочная мышь. Возможные способы использования колёсиков мыши при работе в X Window описаны в другом разделе. | |
4.5.7. | Как использовать мышь/трэкболл/сенсорную панель на лэптопе? |
Посмотрите ответ на предыдущий вопрос. | |
4.5.8. | Как использовать клавишу delete в |
Для Bourne Shell добавьте
следующие строки в ваш bind ^? ed-delete-next-char # для консоли bind ^[[3~ ed-delete-next-char # для xterm Для C Shell добавьте следующие
строки в ваш bindkey ^? delete-char # для консоли bindkey ^[[3~ delete-char # для xterm За дополнительной информацией обращайтесь к этой странице. |
4.6.1. | Какие сетевые адаптеры поддерживает FreeBSD? |
Обратитесь к файлу Hardware Notes, поставляемому с каждым релизом FreeBSD, для получения полного списка. | |
4.6.2. | Существует ли собственный драйвер для адаптеров Broadcom 43xx? |
Да, многие из адаптеров Broadcom 43xx поддерживаются драйверами bwn(4) и bwi(4). | |
4.6.3. | Какие многопортовые последовательные адаптеры поддерживаются во FreeBSD? |
Список таких устройств находится в главе Руководства Последовательные соединения. Некоторые безымянные клоны таких адаптеров тоже работают нормально, особенно те, которые заявляют о своей совместимости с AST. Прочтите страницы Справочника о sio(4) для получения подробной информации о конфигурировании таких адаптеров. | |
4.6.4. | Как сделать, чтобы приглашение boot: выводилось на консоль на последовательном порту? |
Подробная информация находится в этом разделе Руководства. |
4.7.1. | Какие звуковые адаптеры поддерживаются во FreeBSD? |
FreeBSD поддерживает различные звуковые адаптеры (дополнительную информацию можно найти в Информации о релизе FreeBSD и странице справочной системы по snd(4)). Имеется также ограниченная поддержка MPU-401 и совместимых с ним адаптеров. Поддерживаются и адаптеры, соответствующие спецификации Microsoft(R) Sound System. Примечание:Это касается только звука! Этот драйвер не поддерживает CD-ROM, SCSI или джойстики ни на каких подобных адаптерах, кроме SoundBlaster(R). Поддерживаются устройства на SCSI-интерфейсе SoundBlaster(R) и не-SCSI CD-ROM, но загрузиться с них невозможно. | |
4.7.2. | Есть ли решение проблемы отсутствия звука при использовании звуковых адаптеров pcm(4)? |
Некоторые звуковые адаптеры при каждой загрузке сбрасывают уровень громкости в 0. Выполняйте следующую команду при каждой загрузке машины:
|
4.8.1. | Поддерживает ли FreeBSD управление энергосбережением на лэптопах? |
FreeBSD поддерживает APM на некоторых машинах. Более полная информация может быть найдена в справочной странице по apm(4). FreeBSD также поддерживает функции ACPI, реализованные в основной массе современного оборудования. Дополнительную информацию можно найти на странице справочной системы acpi(4). Если система поддерживает как APM, так и ACPI, можно использовать любую из них. Мы рекомендуем опробовать обе и выбрать ту, что подходит вам в большей степени. | |
4.8.2. | Как я могу отключить ACPI? |
Добавьте следующую строчку в файл
hint.acpi.0.disabled="1" | |
4.8.3. | Компьютеры Micron зависают при загрузке |
Некоторые материнские платы Micron имеют BIOS, не удовлетворяющую стандарту PCI BIOS, что приводит к печальным последствиям при загрузке FreeBSD, потому что имеет место несоответствие устройств PCI занимаемым ими адресам. Для устранения этой проблемы отключите в BIOS опцию <<Plug and Play Operating System>>. | |
4.8.4. | При загрузке с установочной дискеты машины с материнской платой ASUS K7V зависают. Как это исправить? |
Войдите в настройку BIOS и выключите <<защиту от загрузочных вирусов>>. | |
4.8.5. | Почему сетевой адаптер 3Com(R) PCI не работает с компьютерами Micron? |
Смотрите предыдущий ответ. |
5.1. | Почему FreeBSD определяет неправильное количество памяти на аппаратуре i386TM? |
Наиболее вероятная причина заключается в различии между адресами физической и виртуальной памяти. Существующее соглашение для большинства оборудования ПК заключается в использовании пространства памяти, лежащей в диапазоне между 3.5 ГБ и 4 ГБ для специальных нужд (обычно для нужд PCI). Это пространство адресов используется для доступа к PCI оборудованию. Как результат, реальная физическая память не может быть получена в данном адресном пространстве. Какие действия выполняются с памятью в данном регионе зависит от вашего оборудования. К сожалению, некоторое оборудование ничего не выполняет и возможность использовать эти 500 МБ ОЗУ полностью потеряна. К счастью, большинство оборудования перераспределяет память к более верхней позиции, так что она всё ещё может использоваться. Тем не менее, это может вызвать некоторое замешательство, если вы посмотрите сообщения, выдаваемые при загрузке. На 32-битной версии FreeBSD кажется, что эта память потерялась. На самом деле она перераспределится в промежуток, лежащий за 4 ГБ, который не видим для 32 битного ядра. В данном случае, решение заключается в сборке ядра, с включенной опцией PAE. За дополнительной информацией обращайтесь к статье об ограничениях памяти и о различных ограничениях памяти на различных платформах. На 64nbsp;битной версии FreeBSD или в случае использования ядра с включённым PAE FreeBSD корректно определит и перераспределит память, так, что она станет годной к использованию. Тем не менее, во время загрузки может показаться, что FreeBSD определяет больше памяти, чем реально имеется в системе из-за описанного перераспределения. Это нормально, и информация о доступной памяти будет скорректирована по окончанию процесса загрузки. | |
5.2. | На моём винчестеры есть запорченные блоки! |
Если это SCSI-устройство, то винчестер должен иметь возможность автоматической переадресации таких блоков. Однако во многих поставляемых дисках эта возможность отключена. Для включения переадресации запорченных блоков, измените
режим работы устройства, что может быть выполнено пользователем
и изменить значения параметров AWRE и ARRE с 0 на 1: AWRE (Auto Write Reallocation Enbld): 1 ARRE (Auto Read Reallocation Enbld): 1 Контроллеры современных IDE-дисков имеют встроенную функцию переадресации запорченных блоков, которая на момент продажи включена. Если вы увидите предупреждения о запорченных блоках (на любом типе устройства), это значит, что пришло время подумать над заменой диска. Вы можете воспользоваться диагностической программой производителя диска для поиска этих запорченных блоков, и в лучшем случае это только отнимет ваше время. | |
5.3. | Почему FreeBSD не распознаёт SCSI-контроллер на машине HP Netserver? |
В общем-то это известная проблема. EISA-контроллеры SCSI, расположенные на материнской плате машин HP Netserver, занимают EISA-слот номер 11, так что все <<настоящие>> слоты EISA будут ему предшествовать. Так как адресное пространство для слотов EISA выше 10 пересекается с адресным пространством, предназначенным для PCI, то автоконфигуратор FreeBSD в настоящее время не может эту проблему нормально обойти. Так что пока лучшее, что вы можете предпринять, это попытаться
указать, что пересечения диапазонов адресов нет :), установив опцию
ядра Конечно, это даст вам типичную ситуации "курица или яйцо" при установке системы на такой машине. Для обхода этой проблемы внутри UserConfig есть специальный хак. Не используя <<визуального>> интерфейса, а только интерфейс командной строки, просто наберите следующую команду в приглашении и установите систему как обычно. eisa 12 quit В любом случае рекомендуется, что вы отконфигурируете и установите собственное ядро. Надеемся, что будущие версии будут содержать полное решение этой проблемы. Примечание:Вы не сможете использовать режим | |
5.4. | Выдаются сообщения типа ed1: timeout. |
Обычно это вызвано конфликтом прерываний (например, двух
адаптеров, использующих один и тот же IRQ). Загрузите систему с
опцией Если вы используете разъём BNC сетевого адаптера, таймауты устройства могут быть вызваны плохим терминированием. Чтобы это проверить, подключите терминатор к адаптеру (без кабеля) и посмотрите, не исчезли ли сообщения об ошибках. Некоторые NE2000-совместимые адаптеры выдают такую ошибку, если нет связи по UTP-порту или отключен кабель. | |
5.5. | Почему мой адаптер 3Com(R) 3C509 перестал работать без всякой видимой причины? |
Этот адаптер имеет странную привычку терять информацию о своих
настройках. Обновите настройки вашего адаптера при помощи утилиты
| |
5.6. | Мой параллельный принтер печатает невероятно медленно. Что тут можно сделать? |
Если проблема только в том, что принтер работает ужасно медленно, попробуйте сменить режим работы порта принтера так, как это описано в разделе Настройка принтера Руководства. | |
5.7. | Программы аварийно завершают работу с ошибкой Signal 11. |
Ошибки выполнения, связанные с сигналом 11, происходят, когда ваш процесс пытается обратиться к области памяти, доступ к которой ему не был дан операционной системой. Если что-то подобное происходит в случайные, на первый взгляд, промежутки времени, то вам нужно попытаться выяснить подробности происходящих событий более детально. Эти проблемы могут быть классифицированы следующим образом:
В частности, достоверно не ошибка FreeBSD, если вы сталкиваетесь с проблемой при компиляции программы, но при работе компилятора место сбоя каждый раз изменяется. Например, положим, что вы запускаете команду Что вы должны сделать: В первом случае вы должны воспользоваться отладчиком, к примеру, gdb(1), для нахождения точки программы, в которой делается попытка доступа к неверному адресу и затем исправить эту ошибку. Во втором случае вам нужно проверить, что ваше оборудование исправно. Среди часто приводящих к этому причин:
Вы также должны прочитать FAQ по SIG11 (ссылка дана ниже), в котором даны прекрасные описания всех этих проблем, хотя и с точки зрения Linux(R). Также обсуждается, как аппаратура или программное обеспечение для тестирования памяти могут пропускать сбойную память. Наконец, если ничего из этого не помогает, то возможно, что просто вы нашли ошибку во FreeBSD и должны следовать инструкциям по посылке сообщений о проблемах. Подробная информация по этому вопросу содержится в FAQ по проблеме SIG11. | |
5.8. | Моя система аварийно завершает работу с сообщениями Fatal trap 12: page fault in kernel mode либо panic:, и выдаёт много дополнительной информации. Что мне делать? |
Разработчики FreeBSD очень интересуются такими ошибками, но им нужно несколько больше информации, чем просто факт возникновения этой ошибки. Полностью скопируйте сообщение. Затем обратитесь к разделу FAQ об аварийных завершениях работы ядра, постройте отладочное ядро и получите трассу вызовов. Это может звучать трудной задачей, но вам не нужны никакие знания программирования; просто следуйте указаниям. | |
5.9. | При загрузке монитор темнеет и теряет синхронизацию! |
Это известная проблема с видеоадаптерами ATI Mach64. Она
вызвана тем, что этот адаптер использует адрес
Пока это не исправлено, используйте следующий метод:
Если вам нужно использовать последовательные порты, вы должны
построить новое ядро со следующей модификацией: в файле
| |
5.10. | Почему FreeBSD использует только 64 Мбайт ОЗУ, тогда как установлено все 128 Мбайт? |
Так как для определения объёма памяти FreeBSD использует информацию BIOS, она ограничена 16 битами, используемыми для выражения размера ОЗУ в килобайтах (65535 Кбайт = 64 Мбайт) (или меньше... некоторые BIOS ограничивают размеры памяти до 16 Мбайт). Если у вас больше чем 64 Мбайт ОЗУ, FreeBSD будет пытаться обнаружить эту память; однако эта попытка может и не удаться). Для решения этой проблемы вам нужно использовать опцию ядра, указанную ниже. Способ выяснения полной информации о памяти из BIOS существует, но у нас нет места в загрузочном блоке, чтобы это делать. Когда проблема нехватки места в загрузочных блоках будет решена, мы будем использовать расширенные функции BIOS для получения полной информации о памяти... но пока мы остановились на опции ядра. options MAXMEM= Здесь | |
5.11. | Объём оперативной памяти моей системы превышает 1 Гбайт, работа завершается аварийно с выдачей сообщения kmem_map too small messages. Что не так? |
Как правило, FreeBSD определяет параметры ядра, в частности, максимальное количество одновременно открытых файлов, исходя из объёма памяти, установленного в системе. В системах, имеющих 1 Гбайт или больший объём оперативной памяти, этот механизм <<автоматического определения параметров>> может выбрать слишком большие значения: при запуске ядро выделяет пространство под различные таблицы и другие структуры, которые заполняют основной объём доступной ядру памяти. В дальнейшем при работе системы у ядра не остаётся пространства для динамического распределения памяти, и оно завершает работу аварийно. Скомпилируйте новое ядро, добавив параметр
| |
5.12. | В моей системе нет 1 Гбайта оперативной памяти, однако FreeBSD аварийно завершает работу, выдавая сообщение kmem_map too small! |
Такое завершение работы показывает, что системе не хватает виртуальной памяти для сетевых буферов (точнее, структур mbuf). Вы можете увеличить количество виртуальной памяти для структур mbuf, если будете действовать в соответствии с инструкциями раздела Ограничения сети Руководства. | |
5.13. | Почему я получаю сообщение об ошибке kernel: proc: table is full? |
Ядро FreeBSD позволяет существовать одновременно ограниченному
числу процессов. Оно зависит от значения переменной
sysctl(8) Для корректировки значения Если ваша машина загружена слабо, и просто у вас
слишком много процессов, то вы можете настроить это через sysctl
Чтобы сохранить значения sysctl, задайте
их в | |
5.14. | При перезагрузке с новым ядром выдаётся сообщение
|
Процедура определения устаревших файлов
Если это случилось, загрузитесь в однопользовательский режим и выполните команду:
| |
5.15. | Что означает сообщение ahc0: brkadrint, Illegal Host Access at seqaddr 0x0 |
Это - результат конфликта со SCSI-адаптером Ultrastor. Во время загрузки войдите в меню конфигурации ядра и выключите
устройство | |
5.16. | При загрузке моей системы выдается сообщение об ошибке ahc0: illegal cable configuration. С подключением кабеля все в порядке. Что происходит? |
На вашей материнской плате отсутствует внешняя логика поддержки автоматического терминирования. Установите в вашем SCSI BIOS правильное терминирование для вашей конфигурации вместо автоматического терминирования. Драйвер ahc(4) не может определить, есть ли внешняя логика для распознавания кабеля (и, соответственно, автоматического терминирования). Драйвер просто полагает, что эта поддержка должна быть, если конфигурация, содержащаяся в EEPROM, установлена в <<automatic termination>>. Без внешней логики распознавания кабеля драйвер часто будет ошибаться при настройке терминирования, что может сказаться на надежности шины SCSI. | |
5.17. | Sendmail сообщает, что mail loops back to myself |
Подробный ответ вы можете получить в Руководстве. | |
5.18. | Полноэкранные приложения на удалённой машине ведут себя неправильно! |
На удалённой машине тип терминала может быть установлен
в значение, отличное от типа терминала Есть несколько возможных способов решения этой проблемы:
| |
5.19. | Почему мой PnP-адаптер
не обнаруживается (или определяется
как |
Причины такого поведения объясняются в следующем сообщении
электронной почты, опубликованном в Список рассылки, посвящённый вопросам и ответам пользователей FreeBSD
Peter Wemm Примечание:Содержание этой цитаты по сравнению с оригинальным текстом было изменено.
Чтобы заставить устройство работать снова, требуется определить его PnP-идентификатор и добавить его в список, который используется процедурой распознавания ISA для идентификации устройств PnP. Этот идентификатор можно получить при помощи программы pnpinfo(8), найдя устройство в её выдаче, вот, например, вывод команды pnpinfo(8) в случае внутреннего модема:
[лишние строки TAG исключены] TAG End DF End Tag Successfully got 31 resources, 1 logical fdevs -- card select # 0x0001 CSN PMC2430 (0x3024a341), Serial Number 0xffffffff Logical device #0 IO: 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 IRQ 5 0 DMA 4 0 IO range check 0x00 activate 0x01 Информация, которая вам нужна, находится в строке
Либо, если в списке, выдаваемом pnpinfo(8), адаптера нет,
можно воспользоваться утилитой pciconf(8). Вот часть выдачи
команды
В данном случае вам нужно использовать значение для
Эту информацию (ID производителя или номер микросхемы) нужно
добавить в файл Сначала вы должны сделать резервную копию файла
static struct isa_pnp_id sio_ids[] = { Затем переместитесь ниже и найдите подходящее место, чтобы добавить строчку для вашего устройства. Записи имеют примерно такой вид, и они отсортированы по ASCII-строкам Vendor ID, которые должны быть помещены в поле комментария справа от строки кода вместе с полным описанием устройства (если оно поместится) или частью из Device Description вывода программы pnpinfo(8): {0x0f804f3f, NULL}, /* OZO800f - Zoom 2812 (56k Modem) */ {0x39804f3f, NULL}, /* OZO8039 - Zoom 56k flex */ {0x3024a341, NULL}, /* PMC2430 - Pace 56 Voice Internal Modem */ {0x1000eb49, NULL}, /* ROK0010 - Rockwell ? */ {0x5002734a, NULL}, /* RSS0250 - 5614Jx3(G) Internal Modem */ Добавьте шестнадцатеричный идентификатор Vendor ID вашего
устройства в соответствующее место, сохраните файл, перестройте
ядро и выполните перезагрузку. Ваше устройство должно теперь быть
найдено в виде устройства | |
5.20. | Почему при запуске некоторых программ, например,
|
Проблема в том, что приложение, которое вы пытаетесь запустить, ищет специфические ссылки в ядре, но по каким-либо причинам не может их найти; эта ошибка происходит от одной из следующих проблем:
| |
5.21. | Почему подключение через |
Симптом: между моментом установления TCP-соединения и выдачей клиентским программным обеспечением запроса на ввод пароля (или, в случае использования telnet(1), выдачей приглашения на вход) проходит большой промежуток времени. Проблема: скорее всего, задержка вызвана программным обеспечением на стороне сервера, которое пытается преобразовать IP-адрес клиента в имя хоста. Многие серверы, включая Telnet и SSH, поставляемые с FreeBSD, делают это для того, чтобы, кроме всего прочего, записать имя хоста в файле журнала для справки администратора. Лечение: Если проблема возникает вне зависимости от того, к какому серверу вы подключаетесь с вашего компьютера (клиента), то причина в клиенте; или же, если проблема возникает только при чьей-либо попытке подключиться к вашему компьютеру (серверу), то проблема с сервером. Если проблема с клиентом, то единственным методом ее решения является исправление DNS, чтобы сервер смог распознать вашу машину. Если это происходит в локальной сети, то предположите, что это проблема с сервером и продолжайте чтение; обратно, если это происходит в глобальной сети Интернет, то в большинстве случаев вам нужно обратиться к вашему провайдеру и попросить исправить положение. Если проблема с сервером, и это происходит в локальной
сети, то вам нужно настроить сервер для разрешения запросов на
преобразование адреса в имя хоста в диапазоне ваших локальных
адресов. Обратитесь к страницам Справочника по hosts(5)
и named(8) для получения более подробной информации.
Если это происходит в глобальной сети Интернет, то проблема
может заключаться в некорректной работе ресолвера вашего сервера.
Для проверки попробуйте найти другой хост, скажем,
Из-за свежей установки FreeBSD, также возможно, что
информация о домене и сервере имён отсутствует в
| |
5.22. | Что означает сообщение stray IRQ? |
Потерянные IRQ являются признаком странностей в работе аппаратных IRQ, в основном оборудования, которое удаляет свои запросы на прерывание посреди цикла подтверждения запроса на прерывание. Имеется три варианта работы с такими ситуациями:
| |
5.23. | Почему в dmesg(8) регулярно выводятся сообщения file: table is full? |
Такое сообщение об ошибке сигнализирует о том, что в вашей системе исчерпано количество доступных файловых дескрипторов. Пожалуйста, обратитесь к разделу kern.maxfiles главы о Настройке ограничений ядра Руководства для выяснения всех подробностей и устранения этой проблемы. | |
5.24. | Почему выводятся сообщения calcru: negative runtime или calcru: runtime went backwards? |
При включении в BIOS Intel(R) Enhanced SpeedStep может возникнуть проблема, при которой ядро начинает выводить сообщения calcru как показано ниже: calcru: runtime went backwards from 6 usec to 3 usec for pid 37 (pagezero) calcru: runtime went backwards from 6 usec to 3 usec for pid 36 (vmdaemon) calcru: runtime went backwards from 170 usec to 138 usec for pid 35 (pagedaemon) calcru: runtime went backwards from 553 usec to 291 usec for pid 15 (swi6: task queue) calcru: runtime went backwards from 15521 usec to 10366 usec for pid 2 (g_event) calcru: runtime went backwards from 25 usec to 12 usec for pid 11 (swi1: net) calcru: runtime went backwards from 4417 usec to 3960 usec for pid 1 (init) calcru: runtime went backwards from 2084385 usec to 1793542 usec for pid 1 (init) calcru: runtime went backwards from 408 usec to 204 usec for pid 0 (swapper) Причиной является то, что Intel(R) SpeedStep (EIST) не совместим с некоторыми системными платами. Обходной путь: отключить EIST в BIOS. При этом у вас сохраняется возможность управлять частотой ACPI-совместимого процессора, используя powerd(8). | |
5.25. | Почему часы на моем компьютере показывают неправильное время? |
На вашем компьютере установлены двое или большее количество таймеров, а FreeBSD выбрала не тот. Запустите dmesg(8) и посмотрите строки, содержащие слово
Вы можете удостовериться в этом, проверив
sysctl(3)-переменную
Это может быть неработающий таймер ACPI. Самым простым
решением будет отключить таймер ACPI в
debug.acpi.disabled="timer" Либо же BIOS может изменить частоту TSC-может, для изменения скорости работы процессора при работе от батареек или переводя в режим пониженного электропитания, но FreeBSD не отслеживает это и в результате часы начинают спешить или отставать. В этом примере имеется также и таймер
Теперь ваш компьютер будет аккуратнее следить за временем. Чтобы это изменение вступало в силу во время загрузки системы,
добавьте в файл kern.timecounter.hardware=i8254 | |
5.26. | Почему мой лэптоп некорректно распознаёт PC-карты? |
Эта проблема часто встречается на лэптопах, которые работают более чем с одной операционной системой. Некоторые не-BSD операционные системы оставляют аппаратную часть PC-карт в неустойчивом состоянии. pccardd(8) распознает карту как "(null)""(null)", а не как реально используемую модель. Вы должны убрать всё питание со слота PC-карты для полного сброса аппаратуры. Полностью выключите лэптоп. (Не переводите его ни в спящий, ни в ждущий режим; питание должно быть выключено полностью.) Подождите несколько секунд и выполните перезагрузку. Теперь ваша PC-карта должна заработать. В некоторых лэптопах аппаратная часть неверно сообщает о своём выключении. Если описанное выше не работает, остановите работу, выньте батарею, подождите несколько секунд, вставьте батарею и выполните перезагрузку. | |
5.27. | Сразу после экрана BIOS начальный загрузчик FreeBSD выводит сообщение Read error и останавливается. |
Начальный загрузчик FreeBSD неверно определяет параметры винчестера. Их можно установить вручную утилитой fdisk(8) при создании или изменении параметров слайса FreeBSD. Правильные значения параметров диска можно посмотреть в BIOS. Обратите внимание на число дорожек, головок и секторов для этого диска. В подпрограмме fdisk утилиты sysinstall(8) нажмите G для установки параметров диска (disk geometry). Появится диалоговое окно, запрашивающее количество дорожек,
головок и секторов. Задайте значения, взятые из BIOS и разделяемые
символами слэша. Например, 5000 дорожек, 250 головок и 60 секторов
будут введены как Нажмите Enter для установки этих значений, а затем клавишу W для того, чтобы записать новую таблицу разделов на диск. | |
5.28. | Другая операционная система уничтожила мой менеджер загрузки, как мне его восстановить? |
Запустите утилиту sysinstall(8) и выберите пункт , а затем . Выберите диск, на котором ранее находился менеджер загрузки, при помощи клавиши Пробел. Нажмите W для записи изменений на диск. Появится диалоговое окно для выбора устанавливаемого начального загрузчика. Выберите нужный, и он будет восстановлен. | |
5.29. | Что означает сообщение swap_pager: indefinite wait buffer:? |
Это значит, что процесс пытается сбросить страницу памяти на
диск, и попытка сделать это оканчивается неудачно вот уже в течение
более чем 20 секунд. Это может быть вызвано испорченными блоками
на диске, кабелями, подключением или другим оборудованием
ввода/вывода. Если диск сам по себе на самом деле испорчен, вы
также увидите ошибки работы с диском в
| |
5.30. | Что означают ошибки UDMA ICRC, и как их исправить? |
Драйвер ata(4) сообщает об ошибках UDMA ICRC, когда нарушается передача в или с диска в режиме DMA. Драйвер будет повторять передачу несколько раз. Если повторные попытки окончатся неудачей, он переключится из режима DMA в более медленный режим PIO взаимодействия с устройством. Проблема может возникать по многим причинам, хотя самым распространённой является неправильное или сбоящее подключение кабелей. Проверьте кабели ATA на наличие повреждений и соответствие используемому режиму Ultra DMA. Если вы используете диски на съёмных салазках, они также должны быть совместимыми с этим режимом. Удостоверьтесь, что все соединения подключены хорошо. Проблемы также наблюдались, когда старый диск устанавливался на тот же самый канал ATA, что и Ultra DMA 66 (или более быстрый) диск. Наконец, такие ошибки могут указывать на сбойность самого диска. Большинство производителей дисков предоставляют программное обеспечение для тестирования своих дисков, так что проверьте свой диск, и, если это необходимо, сделайте резервную копию данных и замените его. Для просмотра и выбора режимов DMA или PIO для каждого
устройства ATA можно использовать утилиту atacontrol(8). В
частности, команда | |
5.31. | Что означают сообщения lock order reversal? |
Ответ на этот вопрос можно найти в глоссарии FreeBSD, смотрите LOR. | |
5.32. | Что означают сообщения Called ... with the following non-sleepable locks held? |
Это означает, что функция, которая может находиться в <<спящем>> состоянии была вызвана во время использования мьютекс (или другого не <<засыпающего>>) блокирования. Причина этого - ошибка, потому что мьютексы не предполагают находиться в удерживаемом состоянии длительные промежутки времени, а блокировать только на короткие периоды синхронизации. Это правило позволяет драйверам устройств использовать мьютексы для синхронизации с остальной частью ядра во время прерываний. Прерывания (во FreeBSD) могут находиться не в <<спящем состоянии>>. Следовательно необходимо, чтобы не было подсистем в ядре, которые бы занимались блокировкой длительный период, используя мьютекс. Для ловли таких ошибок, в ядро могут быть добавлены assertions, которые будут взаимодействовать с подсистемой witness(4) для генерирования предупреждения или фатальной ошибки (в зависимости от системной конфигурации) в случаях когда производится потенциально блокирующий вызов с удержанием мьютекса. В общем, такие предупреждения не критичны, но тем не менее, с неудачной синхронизацией (timing) они могут вызвать нежелательные эффекты, начиная от незначительной задержки в ответной реакции системы до полной блокировки системы. | |
5.33. | Почему процесс
|
Эта ошибка не означает, что не найдена утилита touch(1).
Ошибка наверняка появляется из-за того, что даты модификации файлов
установлены в будущем. Если ваши CMOS часы установлены на локальное
время, то вам надо отрегулировать часовой механизм ядра, запустив
команду |
Этот раздел выглядит довольно заброшенным, однако мы, конечно же, надеемся, что производители сделают добавления! :) Проект FreeBSD финансово не заинтересован в успехах ни одной из компаний, которые здесь упоминаются, хотя приводит их список в интересах общества (в предположении, что коммерческий интерес к FreeBSD может положительно повлиять на дальнейшее развитие FreeBSD). Мы просим поставщиков коммерческого программного обеспечения присылать нам информацию о ваших продуктах для включения в этот список. Более полный список производителей находится на странице производителей.
6.1. | Где можно найти набор офисных программ для FreeBSD? |
Офисные пакеты с открытым кодом OpenOffice.org и LibreOffice имеют версии, предназначенные для работы во FreeBSD. Linux(R)-версия Oracle Open Office, расширенной закрытой версии OpenOffice.org, также работает во FreeBSD. В Коллекции Портов FreeBSD имеется также множество текстовых редакторов, электронных таблиц и программ для работы с изображениями. | |
6.2. | Где можно купить Motif(R) для FreeBSD? |
Open Group опубликовала исходные тексты Motif(R) 2.2.2. Вы можете установить пакет x11-toolkits/open-motif или скомпилировать его из портов. Воспользуйтесь секцией Порты Руководства для получения детальной информации о том, как это сделать. Примечание:Лицензия Open Motif(R) позволяет распространение, только если библиотека используется на операционной системе с открытыми исходными текстами. В дополнение нужно сказать, что существуют также, дистрибьюторы предлагающие коммерческий вариант Motif(R). Эта библиотека не бесплатна, но ее лицензия позволяет вести разработку приложений с закрытыми исходными текстами. Обратитесь в фирму Apps2go, предлагающую самый дешёвый дистрибутив Motif(R) 2.1.20 для FreeBSD (i386TM) в формате ELF. Существуют два дистрибутива, <<для разработчиков>> (<<development edition>>) и ещё более дешёвая <<времени выполнения>> (<<runtime edition>>). В эти дистрибутивы включены:
При оформлении заказа не забудьте указать, что вам нужна версия Motif(R) именно для FreeBSD (не забудьте также указать архитектуру процессора)! Apps2go также продаёт версии для NetBSD и OpenBSD. В настоящий момент их можно получить только по FTP.
| |
6.3. | Где можно купить CDE для FreeBSD? |
Фирма Xi Graphics предлагала CDE для FreeBSD, но сейчас этот продукт в продаже отсутствует. KDE - это свободно распространяемый вариант графической среды для X11, которая во многом похожа на CDE. Вам может также приглянуться xfce. KDE и xfce можно получить из Коллекции Портов. | |
6.4. | Существуют ли СУБД для FreeBSD? |
Да! Обратитесь к разделу Поставщики программного обеспечения на Web-сервере FreeBSD. Также посмотрите раздел Базы данных Коллекции Портов. | |
6.5. | Можно ли запустить Oracle(R) на FreeBSD? |
Да. Указания по настройке Linux(R) Oracle(R) на FreeBSD находятся по адресу http://www.shadowcom.net/freebsd-oracle9i/ |
7.1. | Итак, где находятся все прикладные программы? |
Пожалуйста, загляните на страницу портов, содержащую информацию о программных продуктах, перенесённых во FreeBSD. На данный момент в этом списке находится более 24,000 приложений и он ежедневно увеличивается, так что почаще туда заглядывайте или подпишитесь на Список рассылки анонсов FreeBSD, в котором публикуется информация о появлении новых приложений. Большинство портов должно нормально работать на системах
веток 7. Мы также поддерживаем концепцию <<пакаджа>>, являющегося не более чем упакованным дистрибутивом в бинарной форме с некоторыми встроенными возможностями по его настройке во время установки. Пакадж может быть легко установлен и деинсталлирован снова без углубления в детали того, какие файлы должны быть установлены. Используйте меню установки пакаджей
sysinstall(8) (в
пункте меню ) или
запускайте pkg_add(1) с указанием конкретных файлов с
пакаджами, которые вы хотите установить. Файл с пакаджем, как
правило, идентифицируется по его суффиксу
или с ближайшего к вам зеркального сервера. Имейте в виду, что не все порты могут быть доступны в виде пакаджей, так как постоянно идёт добавление новых. Неплохо время от времени проверять, какие пакаджи доступны на основном сервере ftp.FreeBSD.org. | |
7.2. | Как настроить INN (Internet News) на моей машине? |
После установки пакаджа или порта news/inn для начала загляните в INN FAQ. | |
7.3. | Поддерживает ли FreeBSD среду JavaTM? |
Да. Посетите страницу http://www.FreeBSD.org/java/. | |
7.4. | Почему этот порт не компилируется на моей машине с
7. |
Если вы пользуетесь версией FreeBSD, значительно отстающей от -CURRENT или -STABLE, вам может потребоваться обновить Коллекцию Портов. Дополнительную информацию о том, как это сделать, можно найти в соответствующем разделе Руководства по созданию портов. Если ваша Коллекция Портов находится в актуальном состоянии, то, скорее всего, кто-то внёс изменения в порт, так что он работает в -CURRENT, но не работает в -STABLE. Так как предполагается, что Коллекция Портов должна работать как в ветке -CURRENT, так и в ветви -STABLE, то, пожалуйста, пошлите сообщение об этой ошибке с помощью команды send-pr(1). | |
7.5. | Я попытался сформировать файл |
Первым делом всегда проверяйте, что ваша Коллекция Портов
находится в актуальном состоянии. Ошибки, которые отражаются на
построении файла Если ваши данные обновлены, возможно, вы столкнулись с другой
проблемой. У команды В частности, эта проблема отражается на пользователях FreeBSD,
использующих cvsup(1) (или csup(1)) для отслеживания
Коллекции Портов, но
отказывающихся от установки определенных категорий приложений их
перечислением в файле В редких случаях | |
7.6. | Почему CVSup не интегрирована в основное дерево FreeBSD? |
Базовый комплект установки FreeBSD спроектирован самодостаточным - то есть операционную систему возможно полностью построить, имея весьма ограниченный набор инструментов. Так, все инструменты, действительно необходимые для компиляции исходных текстов FreeBSD, сами поставляются с исходными текстами. Речь идёт о компиляторе C (gcc(1)), make(1), awk(1) и подобных средствах. Так как CVSup написан на языке Modula-3, его включение в базовый комплект FreeBSD также потребует добавление и поддержку компилятора Modula-3. Это приведёт как к увеличению как дискового пространства, требуемого исходным текстам FreeBSD, так и усилий по их поддержке. Таким образом, как разработчикам, так и пользователям гораздо проще держать CVSup в виде отдельного порта, который легко устанавливается как пакадж, размещаемый на установочных CD с FreeBSD. Тем не менее, начиная с версии FreeBSD 6.2-RELEASE,
пользователи FreeBSD больше не страдают от отсутствия встроенного
клиента, совместимого с CVSup.
Благодаря Maxime Henrion | |
7.7. | Я обновил исходные тексты. Как теперь обновить установленные порты? |
С FreeBSD не поставляется инструмент обновления портов, но есть несколько программ, немного облегчающих этот процесс. Вы можете также установить дополнительные инструменты для упрощения работы с портами, смотрите раздел Руководства FreeBSD Использование Коллекции Портов. | |
7.8. | Нужно ли мне перекомпилировать все порты каждый раз, когда я выполняю мажорное обновление (со сменой старшей версии FreeBSD)? |
Разумеется! На свежеобновленной системе программное обеспечение, скомпилированное под более старый релиз, будет по прежнему работать, но в конечном счете вы придёте к тому, что некоторые приложения перестанут правильно работать и будут падать в произвольном месте, как только вы начнете устанавливать другие порты или обновлять существующие. Когда система обновлена, различные совместно используемые библиотеки, загружаемые модули и другие части системы замещаются более новыми версиями. Приложения, скомпонованные с более старыми версиями, могут перестать запускаться либо начнут функционировать неправильно. Для получения дополнительной информации обращайтесь к разделу, посвящённому обновлениям, руководства FreeBSD. | |
7.9. | Нужно ли мне перекомпилировать все порты каждый раз, когда я выполняю минорное обновление (без изменения старшей версии FreeBSD)? |
В общем случае, нет. Разработчики FreeBSD делают всё возможное для сохранения двоичной совместимости между всеми релизами в пределах одной старшей версии. Любые исключения из этого правила документируются в "Примечаниях к релизу", и там же даются советы, которых следует придерживаться. | |
7.10. | Почему возможности |
Потому что в стандарте POSIX(R) сказано, что все командные процессоры должны вести себя так же, как shell. Более подробный ответ заключается в следующем: многим требуется, чтобы разрабатываемые скрипты для командного процессора были переносимы между многими системами. Именно поэтому в POSIX(R) очень подробно описан командный процессор и набор утилит. Большинство скриптов пишутся на языке процессора Bourne shell, к тому же некоторые важные программные вызовы (make(1), system(3), popen(3) и их аналоги на языках скриптов высокого уровня, таких как Perl или Tcl) предполагают для интерпретации команд использование именно Bourne shell. Так как Bourne shell используется столь широко и часто, то очень важно, чтобы он стартовал очень быстро, его поведение было строго регламентировано и при этом потребности в оперативной памяти были малы. В имеющейся реализации мы приложили максимум усилий для
воплощения в жизнь всех этих требований одновременно. Для того,
чтобы сохранить | |
7.11. | Почему Netscape(R) и Opera запускаются так долго? |
Обычно проблема заключается в том, что на вашей машине неправильно настроен DNS. И Netscape(R), и Opera при запуске обращаются к DNS. Браузер не появится на вашем рабочем столе, пока программа либо не получит ответ на свой запрос, либо не определит, что система к сети не подключена. | |
7.12. | Я обновил некоторые разделы Коллекции Портов при помощи CVSup, и теперь многие порты перестали строиться со странными диагностическими сообщениями! Что случилось? Коллекция Портов каким-то образом оказалась неработоспособной? |
Если вы обновляете Коллекцию Портов только частично, используя
один из более мелких наборов CVSup,
обходясь без CVSup-набора
| |
7.13. | Как создать аудио-CD из файлов MIDI? |
Для создания аудио-CD из MIDI-файлов сначала установите из
портов программу audio/timidity++, затем установите набор
патчей GUS от Эрика Уэлша (Eric A. Welsh), доступный по адресу
WAV-файлы затем могут быть преобразованы в другие форматы или записаны как аудио-CD, что описано в Руководстве FreeBSD. |
8.1. | Я хочу изменить настройки ядра. Это сложно? |
Вовсе нет! Обратитесь к соответствующему разделу Руководства, который посвящён этому вопросу. Примечание:Новый файл | |
8.2. | Я не могу скомпилировать ядро. Отсутствует
|
Наверное, вы удалили | |
8.3. | Почему моё ядро такое большое (больше 10 Мбайт)? |
Скорее всего, вы компилировали ядро в отладочном режиме. Ядра, построенные в этом режиме, содержат много символьной информации, которая используется для отладки и сильно увеличивает размер ядра. Заметьте, что уменьшения производительности при использовании отладочного ядра нет или оно незначительно, однако отладочное ядро полезно иметь под рукой на случай аварийного завершения работы системы. Однако, если вы испытываете нехватку дискового пространства или просто не хотите использовать отладочное ядро, проверьте, что имеют место следующие две вещи:
В любой из вышеописанных ситуаций ядро будет построено с отладочным режимом. Если же вы точно следуете указанным шагам, то сможете построить обычное ядро и заметите значительное уменьшение его размера; большинство ядер имеют размер от 1.5 Мбайт до 2 Мбайт. | |
8.4. | Почему появляются конфликты прерываний при включении поддержки многопортовых коммуникационных адаптеров. |
Когда я компилирую ядро с поддержкой многопортовых коммуникационных адаптеров, сообщается, что только первый порт будет тестироваться, а все остальные пропускаются из-за конфликтов прерываний. Как это исправить? Проблема состоит в том, что во FreeBSD встроен код, предохраняющий ядро от аппаратных и программных конфликтов. Вам нужно убрать указания IRQ на всех портах, кроме одного. Например: # # Высокоскоростной многопортовый коммуникационный адаптер - 16550 UARTS # device sio2 at isa? port 0x2a0 tty irq 5 flags 0x501 vector siointr device sio3 at isa? port 0x2a8 tty flags 0x501 vector siointr device sio4 at isa? port 0x2b0 tty flags 0x501 vector siointr device sio5 at isa? port 0x2b8 tty flags 0x501 vector siointr | |
8.5. | Почему мне не удаётся откомпилировать ни один вариант ядра,
даже |
Есть несколько причин, приводящих к возникновению этой проблемы. Вот они, в случайном порядке:
| |
8.6. | Каким образом можно определить, какой планировщик используется в работающей системе? |
Проверьте существование sysctl-переменной
Если sysctl-переменная
Название используемого
планировщика доступно напрямую в виде значения sysctl-параметра
| |
8.7. | Что такое |
|
9.1. | Как добавить в систему новый диск? |
Обратитесь к разделу Добавление дисков Руководства FreeBSD. | |
9.2. | Как перенести систему на большой новый диск? |
Самый лучший способ заключается в переустановке ОС на новый диск и последующем переносе данных пользователей. Это очень рекомендуется делать, если вы следовали ветке -STABLE в течение более одного релиза или обновляли релиз, а не устанавливали новый. Вы можете установить программу booteasy на оба диска с помощью команды boot0cfg(8) и выполнять загрузку с любого из них до тех пор, пока не будете удовлетворены новой конфигурацией системы. Пропустите следующий абзац, чтобы перейти к вопросу переноса данных после этой операции. Если вы решили не делать новой установки, то вам нужно разбить на разделы и разметить новый диск с помощью sysinstall(8) или fdisk(8) и disklabel(8). Вы также должны установить на оба диска программу booteasy с помощью boot0cfg(8), чтобы иметь возможность выполнять загрузку как старой, так и новой системы после выполнения копирования. Итак, после подготовки диска вы можете переносить данные. К
сожалению, вы не можете просто скопировать данные. Такие вещи, как
файлы устройств (в каталоге Вы не должны использовать ничего, кроме dump(8) и
restore(8) для переноса корневой файловой системы. Команда
tar(1) может сработать, а может и не сработать. Также вы
должны использовать dump(8) и restore(8) при переносе
одного раздела в другой пустой раздел. Последовательность шагов
при использовании программы
Например, если вы собираетесь перенести корневую файловую
систему на устройство
Переразбиение разделов с использованием
Для отделения каталога от вышестоящего, скажем, для
размещения
Вы можете использовать cpio(1), pax(1), tar(1) вместо dump(8) для данных пользователей. На момент написания этого документа было известно, что они теряют информацию о флагах файлов, так что используйте их с осторожностью. | |
9.3. | Не угрожает ли режим <<dangerously dedicated>> моему здоровью? |
В процессе установки вы можете выбрать два различных метода разбиения вашего диска (дисков). По умолчанию это делается в режиме совместимости с другими операционными системами на этой же машине с использованием записей в таблице разделов fdisk(8) (то, что называется <<слайсом>> во FreeBSD), со слайсом (разделом), выделенным FreeBSD. Опционально, вы можете выбрать установку менеджера загрузки для переключения между операционными системами. Либо вы можете выделить диск полностью под FreeBSD, не заботясь о совместимости с другими операционными системами. Почему же этот режим называется <<dangerous>>? Дело в том, что диск в этом режиме не будет содержать того, что обычные утилиты для ПК распознают как таблицу разделов fdisk(8). В зависимости от того, насколько хорошо они написаны, они могут сообщить вам об этом, как только обнаружат такой диск, или, что гораздо хуже, могут запортить загрузчик 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. Вы можете выяснить это, заставив ядро вывести эти
параметры при загрузке, указав Когда вы разбиваете диск на слайсы, проверьте, что параметры диска, выводимые в окне программы FDISK, корректны (то есть они соответствуют параметрам BIOS); если это не так, нажмите G, чтобы их исправить. Вы можете это сделать, если на диске нет абсолютно ничего или если этот диск был перенесён с другой системы. Заметьте, что это касается только загрузочного диска; FreeBSD прекрасно разберётся с остальными дисками, которые могут у вас быть. Как только вы добились соответствия параметров диска в BIOS и FreeBSD, скорее всего, проблем у вас больше не будет, и использовать режим <<DD>> не потребуется. Если, однако, страшное сообщение read error продолжает появляться при загрузке, самое время перекреститься и попробовать этот режим - терять вам больше нечего. Чтобы вернуть диск из режима <<dangerously dedicated>> к нормальному режиму использования, есть два способа. Первый заключается в том, что вы записываете достаточное количество байтов NULL поверх MBR, чтобы любая программа установки системы полагала, что это чистый диск. Например, это можно сделать такой командой:
Другой способ - недокументированной командой DOS
установить новую MBR, удалив загрузчик BSD. | |
9.4. | На каких разделах можно без опаски использовать механизм
Soft Updates? Я слышал, что использование Soft Updates на
|
Краткий ответ: обычно вы можете использовать Soft Updates без опаски на всех разделах. Подробный ответ: Было несколько возражений против использования Soft Updates на корневом разделе. Soft Updates имеют две характеристики, которые этому способствуют. Во-первых, раздел с Soft Updates имеет мало шансов потери данных по время аварийного останова системы. (Раздел не будет попорчен; просто будут потеряны данные.) Кроме того, Soft Updates могут приводить к временной нехватке дискового пространства. При использовании Soft Updates ядро может задерживать до тридцати секунд реальную запись изменений на физический диск. Если вы удаляете большой файл, он остается на диске, пока ядро не выполнит удаления на самом деле. Это может привести к очень простой проблеме. Предположим, что вы удалили один большой файл и тут же создали другой большой файл. Первый большой файл еще не удален реально с физического диска, так что на диске может не оказаться достаточного пространства для второго большого файла. Вы получите ошибку, говорящую о том, что на разделе нет достаточного пространства, хотя вы точно знаете, что только что освободили его большой объем! Если вы попробуете еще раз выполнить операцию секундами позже, создание файла сработает так, как это и ожидалось. Это не раз заставляло пользователей почесать голову и дважды проверить свое психическое здоровье, файловую систему FreeBSD или оба этих объекта. Если система может аварийно остановиться после того, как ядро примет набор данных для записи на диск, но перед тем, как данные реально запишутся, то данные могут потеряться или оказаться испорченными. Такой риск весьма мал, но в общем-то, управляем. Использование кэширование записи на IDE очень сильно увеличивает этот риск; настоятельно рекомендуется выключить кэширование записи для IDE при использовании Soft Updates. Эти проблемы влияют на все разделы, использующие Soft Updates. Итак, что это означает для корневого раздела? Жизненно важная информация на корневом разделе меняется очень
редко. Файлы, такие как
| |
9.5. | Что не так с устройством ccd(4)? |
Симптом выглядит так:
Это сообщение обычно выдаётся, когда вы пытаетесь объединить
разделы | |
9.6. | Почему невозможно отредактировать метку диска ccd(4)? |
Симптом выглядит так:
Это происходит из-за того, что метка диска, возвращаемая ccd(4), на самом деле <<ненастоящая>>, не соответствующая реально располагающейся на диске. Вы можете решить эту проблему, явно записав эту метку обратно следующим образом:
| |
9.7. | Можно ли смонтировать другие файловые системы? |
FreeBSD поддерживает ряд других файловых систем.
FreeBSD также поддерживает такие сетевые файловые системы, как NFS (смотрите mount_nfs(8)), NetWare (смотрите mount_nwfs(8)) и файловые системы SMB в стиле Microsoft (обратитесь к mount_smbfs(8)). Вы также можете найти полезными порты, основанные на FUSE (sysutils/fusefs-kmod), для множества других файловых систем. | |
9.8. | Как смонтировать вторичный раздел DOS? |
Вторичные разделы DOS находятся после всех
первичных разделов.
Например, если раздел <<E>> является вторым разделом
DOS на втором диске SCSI, то здесь будет файл устройства для
пятого <<слайса>> в каталоге
| |
9.9. | Существует ли криптографическая файловая система для FreeBSD? |
Да. Вы можете использовать gbde(8) или geli(8). Смотрите раздел Шифрование дисковых разделов Руководства FreeBSD. | |
9.10. | Как можно использовать загрузчик Windows NT(R) для запуска FreeBSD? |
Идея заключается в копировании первого сектора корневого
раздела FreeBSD в файл, находящийся в разделе DOS/Windows NT(R).
Предположим, что вы назвали этот файл
[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" Если FreeBSD установлена на тот же самый диск, что и
загрузочный раздел Windows NT(R), просто скопируйте
Предупреждение:Не копируйте просто При запуске менеджер загрузки FreeBSD задаёт ОС, которая
загружалась последний раз, устанавливая для этой операционной
системы признак активизации в таблице разделов, а затем записывает
512 байт самого себя обратно в MBR, так что если вы просто
скопируете | |
9.11. | Как загрузить FreeBSD и Linux(R) с помощью LILO? |
Если у вас установлены FreeBSD и Linux(R) на одном и том же диске, следуйте указаниям по установке LILO о загрузке не-Linux(R) операционных систем. Они сводятся к следующему: Загрузите Linux(R) и добавьте следующие строки в файл
other=/dev/hda2 table=/dev/hda label=FreeBSD (здесь мы предполагаем, что слайс с FreeBSD известен
Linux(R) как Если FreeBSD располагается на другом диске, вам нужно
добавить строчку other=/dev/dab4 table=/dev/dab loader=/boot/chain.b label=FreeBSD В некоторых случаях для успешной загрузки со второго диска вам может потребоваться указать номер диска BIOS загрузчику FreeBSD. Например, если диск SCSI с FreeBSD определяется BIOS как диск 1, в приглашении загрузчика FreeBSD нужно указать: Boot: Вы можете настроить boot(8) на автоматическое принятие таких параметров во время загрузки. В документе Linux(R)+FreeBSD mini-HOWTO содержится много информации, касающейся взаимодействия FreeBSD и Linux(R). | |
9.12. | Как загрузить FreeBSD и Linux(R) с помощью GRUB? |
Настройка загрузки FreeBSD, используя GRUB очень простой
процесс. Всего лишь добавьте следующие строки в ваш
конфигурационный файл
title FreeBSD 6.1
root Где | |
9.13. | Как загрузить FreeBSD и Linux(R) с помощью BootEasy? |
Установите LILO в начало загрузочного раздела Linux(R), а не в Master Boot Record. После этого можно запустить LILO из BootEasy. Это рекомендуется сделать в любом случае при одновременном использовании Windows(R) и Linux(R), чтобы упростить восстановление работоспособности Linux(R) после переустановки Windows(R) (которая является Ревнивой Операционной Системой и не терпит присутствия других операционных систем в Master Boot Record). | |
9.14. | Как сменить приглашение загрузчика с |
Вы не можете сделать это со стандартным менеджером загрузки, не
переписав его. Среди портов из категории
| |
9.15. | Как использовать устройство для чтения сменных дисков? |
Каким бы ни было это устройство, типа Zip(R), EZ (или даже обычным дисководом, если вы хотите его использовать) или каким-то другим, как только оно будет установлено и распознано системой, и вы вставите в него картридж/дискету/что-там-ещё, всё будет выглядеть примерно одинаково. (этот раздел основан на материалах FAQ по устройствам ZIP Марка Мэйо (Mark Mayo)) Если это устройство ZIP или обычный дисковод, и у вас уже есть файловая система DOS на дискетах, то вы можете использовать команду типа:
для обычных дискет, или
для дискет ZIP со стандартной конфигурацией. Для других дисков посмотрите их параметры с помощью команды fdisk(8) или sysinstall(8). Остальные примеры даны для привода ZIP на
Если это дискета или сменный диск, который будет использоваться для обмена информацией с другими людьми, хорошей идеей будет помещение туда файловой системы BSD. Вы получите поддержку длинных имён файлов, увеличение производительности по крайней мере в два раза и гораздо большую надёжность. Первым делом вам снова будет нужно выполнить разбиение диска на разделы/файловые системы. Вы можете воспользоваться утилитой fdisk(8) либо sysinstall(8), а в случае небольшого диска, на котором не нужно располагать несколько операционных систем, просто сотрите таблицу разделов (слайсов) FAT и используйте разбиение на разделы BSD.
Вы можете использовать disklabel(8) или sysinstall(8) для создания нескольких разделов BSD. Вам наверняка придётся это сделать, если вы станете добавлять место для раздела подкачки на винчестере, хотя это не имеет отношения к устройствам типа ZIP. В итоге вы должны создать новую файловую систему (в этом примере она занимает весь наш диск ZIP):
и смонтировать её:
Хорошо ещё добавить строку типа следующей в файл
/dev/da2c /zip ffs rw,noauto 0 0 | |
9.16. | При монтировании компакт-диска, выдаётся сообщение Incorrect super block. |
В параметрах команды mount(8) вам нужно указать тип устройства, который вы собираетесь смонтировать. Это описано в разделе Руководства об оптических носителях, а именно в разделе Использование CD с данными. | |
9.17. | При монтировании компакт-диска выдаётся сообщение
|
Обычно это означает, что в приводе CD-ROM нет компакт-диска либо устройство на шине не было увидено. Пожалуйста, посмотрите раздел об использовании CD с данными в Руководстве, где подробно обсуждается этот вопрос. | |
9.18. | Когда я монтирую CD-ROM, все неанглийские символы в именах файлов выводятся как <<?>>. |
Скорее всего, на вашем компакт-диске для хранения информации о файлах и каталогах используется расширение <<Joliet>>. Это описано в главе Руководства о создании и использовании CD-ROM, а именно в разделе об использовании CD-ROM с данными. | |
9.19. | Я записал CD во FreeBSD и теперь не могу считать его ни в какой другой операционной системой. Почему? |
Скорее всего, вы записали на CD непосредственно необработанный файл без создания файловой системы ISO 9660. Прочтите главу Руководства о создании CD-ROM, в частности, раздел о записи данных непосредственно на компакт-диски. | |
9.20. | Как создать образ CD с данными? |
Это описано в разделе Руководства о копировании CD с данными. Более полную информацию о работе с компакт-дисками можно найти в разделе о создании компакт-дисков главы об устройствах хранения данных Руководства. | |
9.21. | Почему я не могу смонтировать (командой
|
Если вы попытаетесь смонтировать аудио CD, вы получите примерно
такое сообщение об ошибке: cd9660: /dev/acd0c: Invalid
argument. Причина этого заключается в том, что команда
| |
9.22. | Как выполнить |
По умолчанию mount(8) будет пытаться смонтировать
последнюю дорожку (сеанс) CD с данными. Если вы хотите
загрузить более ранний сеанс, то должны воспользоваться опцией
командной строки | |
9.23. | Как разрешить обычным пользователям монтировать дискеты, компакт-диски и другие сменные носители? |
Обычным пользователям можно позволить монтировать устройства. Вот как это делается:
Теперь все пользователи могут монтировать дискету
Пользователи из группы
Размонтирование устройства осуществляется просто:
Использование Примечание:Имя, использованное для обозначения устройства в предыдущих примерах, должно быть изменено в соответствии с конфигурацией вашей системы. | |
9.24. | Команды |
Вам нужно разобраться, что на самом деле делают команды
Когда программа использует файл, а вы его удалили, файл на
самом деле не удаляется из файловой системы, пока программа не
прекратит его использовать. Однако файл тут же удаляется из списка
каталога. Вы можете легко это видеть при помощи такой программы,
как Заметьте, что подсистема отложенных обновлений (Soft Updates) может задерживать освобождение дискового пространства; вам может потребоваться подождать до 30 секунд, прежде, чем изменения будут заметны! Такая ситуация часта на Web-серверах. Многие устанавливают
Web-сервер на FreeBSD и забывают обновлять файлы протоколов.
Журнал доступа заполняет | |
9.25. | Как добавить дополнительную виртуальную память? |
В главе Руководства о конфигурации и тонкой настройке вы найдёте раздел, в котором описывается, как это сделать. | |
9.26. | Почему FreeBSD считает, что размер моего диска меньше, чем заявляет его производитель? |
Производители дисков считают гигабайт равным миллиарду байт, а FreeBSD приравнивает его к 1073741824 байт. Это объясняет, почему, к примеру, в сообщениях при загрузке FreeBSD указывается, что ёмкость диска, объём которого должен быть равным 80 Гбайт, составляет 76319 Мбайт. Заметьте также, что FreeBSD будет (по умолчанию) резервировать 8% ёмкости диска. | |
9.27. | Почему возможно заполнение раздела больше чем на 100%? |
Часть каждого раздела UFS (по умолчанию 8%) зарезервировано для
использования операционной системой и пользователем
Для получения более подробной информации обратитесь к описанию
опции |
10.1. | Где расположены файлы конфигурации системы? | ||||||||
Основным настроечным файлом является
Например, если вы хотите запустить named(8), поставляемый сервер DNS, то всё, что вам нужно сделать, это:
Чтобы запустить местные сервисы, поместите скрипты в каталог
| |||||||||
10.2. | Как проще всего добавить пользователя? | ||||||||
Используйте команду adduser(8) или pw(8) в случае выполнения более сложных операций. Чтобы удалить пользователя, используйте команду rmuser(8) или, если это будет необходимо, pw(8). | |||||||||
10.3. | Почему после редактирования моего файла
| ||||||||
Обычно это случается при редактировании системного crontab-файла
(
Это неправильно. Системный crontab-файл имеет формат, отличный от пользовательских crontab-файлов, которые обновляет утилита crontab(1) (страница Справочника по crontab(5) описывает отличия более подробно). Если это именно то, что вы сделали, то дополнительный
crontab-файл является просто копией файла
В следующий раз при редактировании файла
Если вы хотите запускать что-то один раз в день, неделю или
месяц, то, наверное, лучше обновить скрипты
Реальная причина ошибки заключается в том, что системный
crontab-файл имеет дополнительное поле, указывающее, какой
пользователь запускает команду. В системном crontab-файле,
поставляемом с FreeBSD и используемом по умолчанию, это
пользователь | |||||||||
10.4. | Команда | ||||||||
Это особенность работы системы защиты. Для того, чтобы
изменить свои привилегии на пользователя Чтобы разрешить кому-либо менять привилегии на
| |||||||||
10.5. | Я сделал ошибку в файле | ||||||||
Перезапустите систему, используя в приглашении загрузчика
команду Если вы собираетесь использовать полноэкранный редактор,
такой, как vi(1) или emacs(1), то вам нужно будет
выполнить команду После выполнения этих шагов вы сможете отредактировать файл
| |||||||||
10.6. | У меня проблемы с установкой принтера. | ||||||||
Обратитесь к соответствующему разделу Руководства, посвящённому печати. В нём описаны решения большинства ваших проблем. Некоторые принтеры для выполнения любых операций по печати требуют наличия на хосте драйвера. Такие так называемые <<WinPrinters>> изначально во FreeBSD не поддерживаются. Если ваш принтер не работает в DOS или Windows(R), то, скорее всего, это WinPrinter. Единственное, что вам остаётся сделать в надежде на то, что вы заставите его работать, это проверить, поддерживает ли его порт print/pnm2ppa. | |||||||||
10.7. | Раскладка клавиатуры неверна. | ||||||||
Пожалуйста, обратитесь к разделу Руководства, посвящённому использованию локализации, а именно к части, описывающей настройку консоли. | |||||||||
10.8. | У меня при загрузке появляются сообщения вида unknown: <PNP0303> can't assign resources | ||||||||
Ниже следует часть письма, адресованного в Список рассылки, посвящённый обсуждению FreeBSD-CURRENT.
| |||||||||
10.9. | Почему не получается заставить работать дисковые квоты? | ||||||||
| |||||||||
10.10. | Поддерживает ли FreeBSD вызовы IPC из System V? | ||||||||
Да, во FreeBSD в ядро options SYSVSHM # enable shared memory options SYSVSEM # enable for semaphores options SYSVMSG # enable for messaging Перекомпилируйте и переустановите ядро. | |||||||||
10.11. | Какое другое программное обеспечение для почтового сервера можно использовать вместо sendmail? | ||||||||
sendmail является программным обеспечением для работы почтового сервера во FreeBSD, используемым по умолчанию, но вы можете с легкостью заменить его другим MTA (к примеру, установленным из портов). В дереве портов уже имеются различные альтернативные MTA, из которых mail/exim, mail/postfix, mail/qmail и mail/zmailer являются одними из самых популярных. Разнообразие хорошо, а тот факт, что у вас есть выбор из многих различных почтовых серверов, является хорошим признаком; поэтому попытайтесь не задавать вопросы типа <<Sendmail лучше, чем qmail?>> в списках рассылки. Если вы захотите получить ответ, сначала просмотрите архивы списков рассылки. Достоинства и недостатки каждого из имеющихся MTA уже обсуждались неоднократно. | |||||||||
10.12. | Я забыл пароль пользователя | ||||||||
Без паники! Перезапустите систему, наберите
Примечание:Если при входе в однопользовательский режим предлагается
ввести пароль пользователя Примечание:Если вы не можете смонтировать корневой раздел в однопользовательском режиме, то возможно, что разделы являются зашифрованными, и смонтировать их без ключей доступа не представляется возможным. Ваши шансы зависят от выбранного способа шифрования. За дополнительной информацией обращайтесь к разделу Руководства, посвященному шифрованию дисков во FreeBSD. | |||||||||
10.13. | Как запретить перезагрузку по нажатию Control+Alt+Delete? | ||||||||
Если вы используете драйвер консоли syscons(4) (который является стандартным), перегенерируйте и установите новое ядро с таким параметром в конфигурационном файле: options SC_DISABLE_REBOOT Этого также можно достичь установкой следующего sysctl(8), что не требует перезагрузки или пересборки ядра:
Примечание:Оба этих метода являются взаимоисключающими. Данный
sysctl(8) не существует, если вы скомпилировали ядро
с параметром Если же вы используете драйвер консоли pcvt(4), то включите в конфигурационный файл следующую строку и пересоберите ядро: options PCVT_CTRL_ALT_DEL | |||||||||
10.14. | Как преобразовать текстовые файлы DOS в формат UNIX(R)? | ||||||||
Воспользуйтесь следующей командой perl(1):
где Это преобразование также можно выполнить с помощью команды tr(1):
где Еще один способ отформатировать тестовые файлы DOS состоит в использовании converters/dosunix из Коллекции Портов. Для получения дополнительной информации ознакомьтесь с документацией порта. | |||||||||
10.15. | Как прервать процесс по имени? | ||||||||
Используйте команду killall(1). | |||||||||
10.16. | Почему su(1) выдаёт сообщение о том, что я
не вхожу в | ||||||||
Эта ошибка выдаётся распределённой системой аутентификации
Kerberos. Эта ошибка не фатальна,
однако это раздражает. Вы можете запустить su с ключом
| |||||||||
10.17. | Как деинсталлировать Kerberos? | ||||||||
Чтобы удалить Kerberos из
системы, переустановите дистрибутив
Либо вы можете задействовать опцию
| |||||||||
10.18. | Что случилось с | ||||||||
Во FreeBSD 5. | |||||||||
10.19. | Как добавить в систему дополнительные псевдотерминалы? | ||||||||
Если у вас много пользователей, работающих в сеансах
Подсказка:При необходимости можно добавить дополнительные
псевдотерминалы. Однако, это требует изменений в стандартной
библиотеке C, ядре и | |||||||||
10.20. | Как перечитать содержимое | ||||||||
Перейдите в однопользовательский режим, а затем возвратитесь обратно в многопользовательский. На консоли выполните следующее:
| |||||||||
10.21. | Я пытался обновить мою систему до последней
-STABLE, а получил
-BETA | ||||||||
Краткий ответ: это же просто название. RC означает <<Release Candidate>>. Это значит, что вскоре произойдет выход релиза. Во FreeBSD появление -PRERELEASE, как правило, равнозначно прекращению внесения изменений в код системы перед появлением релиза. (Для некоторых релизом метка -BETA использовалась точно так же, как и -PRERELEASE.) Подробный ответ: во FreeBSD релизы выпускаются из одного из двух мест. Крупные релизы, точка-ноль, такие, как 7.0-RELEASE и 8.0-RELEASE, ответвляются от основного потока разработки, более известного как -CURRENT. Мелкие релизы, такие, как 6.3-RELEASE или 5.2-RELEASE, являлись снэпшотами активной ветки -STABLE. Начиная с 4.3-RELEASE, каждый релиз также имеет свою ветвь, которой могут следовать те, кому необходим сверхконсервативный метод обновления (как правило, внесение только тех исправлений, которые касаются вопросов обеспечения безопасности). Когда делается релиз, то ветвь, из которой он выпускается, подвергается некоторой подготовке. Частью этого процесса является замораживание кода. Когда инициируется замораживание кода, то имя ветки изменяется для того, чтобы отразить факт близости релиза. Например, если ветка называлась 6.2-STABLE, то её имя будет изменено на 6.3-PRERELEASE, чтобы обозначить момент прекращения внесения изменений в код системы и период дополнительного тестирования перед выходом релиза. В это время исправления ошибок могут быть внесены в код системы для того, чтобы быть включенными в релиз. Когда исходный код подготовлен к выпуску релиза, имя будет изменено на 6.3-RC для обозначения того, что релиз будет сделан, скорее всего, именно из этого кода. Когда код находится на этапе RC, в нём могут исправляться только самые критичные ошибки. Как только релиз (в нашем примере 6.3-RELEASE) и ветка релиза будут созданы, ветвь будет переименована в 6.3-STABLE. Для получения дополнительной информации о номерах версий и различных ветках CVS обратитесь к статье о выпуске релизов. | |||||||||
10.22. | Я попытался установить новое ядро, однако утилита chflags(1) не сработала. Как это обойти? | ||||||||
Краткий ответ: Скорее всего, вы работаете в режиме безопасности, большем, чем 0. Для установки ядра перезагрузите машину и войдите в однопользовательский режим. Подробный ответ: FreeBSD запрещает менять системные флаги при работе на уровнях безопасности, превышающих 0. Вы можете определить ваш уровень такой командой:
Вы не можете понизить уровень безопасности; для установки
ядра вам нужно перезагрузиться в однопользовательский режим,
или изменить уровень безопасности в
| |||||||||
10.23. | Не получается изменить системное время больше чем на одну секунду! Как это обойти? | ||||||||
Краткий ответ: Скорее всего, вы работаете на уровне безопасности, превышающем 1. Для смены даты перезагрузите машину и войдите в однопользовательский режим. Подробный ответ: FreeBSD запрещает менять системное время на больше чем одну секунду при работе на уровнях безопасности, превышающих 1. Вы можете определить ваш уровень такой командой:
Вы не можете понизить уровень безопасности; для изменения
даты вам нужно перезагрузиться в однопользовательский режим,
или изменить уровень безопасности в
| |||||||||
10.24. | В | ||||||||
Нет, там нет ошибок и он не использует 256 Мбайт памяти.
Для удобства rpc.statd(8) отображает свой статусный файл
(находящийся на | |||||||||
10.25. | Почему я не могу снять с файла флаг | ||||||||
Вы работаете в системе с повышенным (то есть большим, чем 0) уровнем защиты. Понизьте уровень защиты и попробуйте еще раз. Для получения более подробной информации обратитесь к разделу FAQ об уровне защиты и справочной странице о init(8). | |||||||||
10.26. | Почему в SSH аутентификация
посредством файла
| ||||||||
Причиной, по которой
| |||||||||
10.27. | Что такое | ||||||||
| |||||||||
10.28. | Что означают различные состояния памяти, показываемые утилитой
| ||||||||
Страницы чаще всего записываются на диск (типа синхронизации VM), когда они находятся в неактивном состоянии, однако страницы в активном состоянии также могут сбрасываться. Это зависит от наличия и возможности отслеживания со стороны ЦП бита 'модифицированности', и в некоторых ситуациях это может быть лучше для блока синхронизируемых страниц VM, вне зависимости от их активности. В большинстве встречающихся ситуаций лучше всего представлять неактивную очередь как очередь сравнительно неиспользуемых страниц, которые могут быть, а могут и не быть в процессе записи на диск. Кэшируемые страницы уже синхронизированы, не отображаются, но доступны для непосредственного использования процессом со своей старой или новой привязкой. Свободные страницы доступны на уровне прерывания, однако кэшируемые или свободные страницы могут использоваться в процессе повторно. Кэшируемые страницы недостаточно заблокированы для того, чтобы быть доступными на уровне прерывания. Есть ещё некоторые другие флаги (например, флаг занятости или счётчик занятости), которые могут изменить некоторые описанные правила. | |||||||||
10.29. | Сколько свободной памяти доступно? | ||||||||
Есть несколько понятий <<свободной памяти>>. В одном случае это объём памяти, непосредственно доступной в данный момент без страничной выгрузки чего-либо. Этот объём равен примерно размеру очереди кэша + размер очереди на высвобождение (с учётом допустимых отклонений, зависящих от настроек системы). В другом случае <<свободная память>> обозначает общий объём пространства VM. Он может сложно вычисляться, но зависит от объёма раздела подкачки и памяти. Другие определения <<свободной памяти>> также возможны, но они достаточно бесполезны, ведь в любом случае важно сохранять низкий уровень подкачки и избегать исчерпания раздела подкачки. | |||||||||
10.30. | Что такое | ||||||||
Хотя этот каталог удалять не рекомендуется, для выполнения этой
операции вам нужно сначала снять флаг |
11.1. | Что такое X Window System? |
X Window System (обычно Для разных архитектур и операционных систем существует
множество реализаций этой системы. Реализацию кода для
серверной части называют | |
11.2. | Какие реализации X существуют для FreeBSD? |
Исторически складывалось так, что во FreeBSD в качестве используемой по умолчанию реализации X выступал пакет XFree86TM, который поддерживает The XFree86 Project, Inc. Данное программное обеспечение устанавливалось по умолчанию в версиях FreeBSD до 4.10 и 5.2. Хотя Xorg поддерживала в то время свою реализацию, в целом она позиционировалась как ссылочная платформа, от чего долгие годы значительно страдала. Однако в начале 2004 года несколько разработчиков XFree86
покинули проект из-за разногласий по поводу темпов внесения
изменений в код, будущего направления развития и личных конфликтов.
Теперь они передают свой код непосредственно в Xorg.
Одновременно с этим Xorg обновила своё дерево исходных текстов до
состояния, соответствующего последнему релизу XFree86TM
перед изменением лицензионного соглашения (XFree86
version 4.3.99.903), включила туда множество
изменений, ранее поддерживаемых отдельно, и выпустила этот набор
как X11R6.7.0. Существует отдельный,
но связанный с этим проект freedesktop.org
(для краткости С июля 2004 в FreeBSD-CURRENT в качестве реализации, используемой по умолчанию, XFree86TM была заменена на Xorg. С тех пор в качестве реализации X11 по умолчанию используется Xorg. Для получения более полной информации прочтите раздел о X11 Руководства FreeBSD. | |
11.3. | Всё же почему разделились два проекта X? |
Ответ на этот вопрос находится вне круга проблем, описываемых в FAQ. Заметим, что в Internet в архивах различных списков рассылки хранится объёмная переписка. Для изучения истории этого вопроса, пожалуйста, воспользуйтесь вашей любимой поисковой системой, а не задавайте вопросы в списках рассылки FreeBSD. Может статься, что только непосредственные участники событий будут знать доподлинно все произошедшее. | |
11.4. | Почему для установки по умолчанию во FreeBSD были выбраны порты Xorg? |
Разработчики Xorg заявляют, что их целями является более частый выпуск релизов и быстрое добавление новых функций. Если они смогут это осуществить, что их разработка будет весьма привлекательна. Кроме того, использование их программного обеспечение продолжает подпадать под условия стандартного для X лицензионного соглашения, тогда как XFree86TM пользуется несколько модифицированным её вариантом. | |
11.5. | Я хочу запустить X, как это сделать? |
Если вы планируете установить X на уже работающую систему, то вам необходимо использовать мета-порт x11/xorg, который построит и установит все необходимые компоненты, либо установить Xorg из пакетов FreeBSD.
Кроме того, установить Xorg можно из sysinstall(8), выбрав , затем , затем . После того, как Xorg был успешно установлен, следуйте указаниям в разделе Конфигурация X11 Руководства FreeBSD. | |
11.6. | Я попытался запустить X, но получил
сообщение KDENABIO failed (Operation not
permitted) после ввода команды
|
Вероятнее всего, в вашей системе установлен повышенный уровень
безопасности ( Так что вопрос сводится к тому, как вам это обойти, и у вас
здесь есть в основном два варианта: установить значение
Обратитесь к Вопрос: 11.12 для получения более полной информации о запуске xdm(1) во время загрузки. | |
11.7. | Почему моя мышь не работает с X? |
Если вы используете syscons(4) (стандартный драйвер
консоли), то можете настроить поддержку указателя мыши во всех
виртуальных экранах. Во избежание конфликтов с X, драйвер
syscons(4) поддерживает виртуальное устройство
Затем отредактируйте Section "InputDevice" Option "Protocol" "SysMouse" Option "Device" "/dev/sysmouse" ..... Начиная с версии Xorg 7.4 раздел
Option "AutoAddDevices" "false" Некоторые предпочитают использовать в X устройство
link sysmouse mouse Ссылка может быть создана путем перезапуска devfs(5)
с использованием следующей команды (из под пользователя
| |
11.8. | У моей мыши есть колёсико. Могу ли я его использовать при работе в X? |
Да. Вам нужно указать X, что используется 5-кнопочная мышь. Для
этого просто добавьте строчки Пример 11.1. Секция <<InputDevice>> для мыши с
колёсиком в файле конфигурации Xorg Section "InputDevice" Identifier "Mouse1" Driver "mouse" Option "Protocol" "auto" Option "Device" "/dev/sysmouse" Option "Buttons" "5" Option "ZAxisMapping" "4 5" EndSection Пример 11.2. Пример <<.emacs>> для простой прокрутки страницы
при помощи мыши с колёсиком (опционально) ;; wheel mouse (global-set-key [mouse-4] 'scroll-down) (global-set-key [mouse-5] 'scroll-up) | |
11.9. | Как использовать удалённые X-дисплеи? |
Из соображений обеспечения информационной безопасности открывать удалённые окна на машине по умолчанию запрещено. Для включения этой возможности просто запустите
X с аргументом
| |
11.10. | Что такое виртуальные консоли и как изменить их количество? |
Виртуальные консоли, упрощённо говоря, позволяют вам иметь несколько одновременных сеансов работы с той же самой машиной без установки какой бы то ни было сети или запуска X. При запуске системы после вывода сообщений этапа загрузки на консоль выдаётся приглашение на вход в систему. Вы можете ввести своё имя и пароль и начать работать (или играть!) на первой виртуальной консоли. В какой-то момент вы можете захотеть запустить ещё одну сеанс, скажем, чтобы заглянуть в документацию по программе, которую вы запустили или для для чтения электронной почты во время ожидания завершения передачи данных по FTP. Просто нажмите Alt+F2 (удерживая клавишу Alt, нажмите F2) и вы обнаружите приглашение, ждущее вас на второй <<виртуальной консоли>>! Когда захотите вернуться к первоначальному сеансу, нажмите Alt+F1. После установки по умолчанию во FreeBSD задействованы восемь виртуальных консолей, а комбинации клавиш Alt+F1, Alt+F2, Alt+F3 и так далее служат для переключения между ними. Чтобы увеличить количество консолей, отредактируйте файл
# Edit the existing entry for ttyv8 in /etc/ttys and change # "off" to "on". ttyv8 "/usr/libexec/getty Pc" cons25 on secure ttyv9 "/usr/libexec/getty Pc" cons25 on secure ttyva "/usr/libexec/getty Pc" cons25 on secure ttyvb "/usr/libexec/getty Pc" cons25 on secure Используйте из них столько, сколько посчитаете нужным. Чем
больше виртуальных терминалов у вас имеется, тем больше ресурсов
они используют; это может иметь значение, если у вас меньше чем
8 Мбайт ОЗУ. Вы можете сменить статус консолей с
Важно:Если вы хотите запустить X, вы должны оставить для него по крайней мере один неиспользуемый (или выключенный) виртуальный терминал. Таким образов, если вы хотите иметь приглашения login на всех двенадцати функциональных клавиши, то вам не повезло - вы можете это сделать только для одиннадцати из них, если хотите на этой же машине ещё запустить X-сервер. Самым простым способом убрать консоль является просто её выключение. Например, если вы запустили на всех 12 консолях виртуальные терминалы, как указано выше, и ещё хотите запустить X, то должны будете изменить параметры двенадцатого виртуального терминала с: ttyvb "/usr/libexec/getty Pc" cons25 on secure на: ttyvb "/usr/libexec/getty Pc" cons25 off secure Если на вашей клавиатуре только десять функциональных клавиш, то последние строки будут выглядеть так: ttyv9 "/usr/libexec/getty Pc" cons25 off secure ttyva "/usr/libexec/getty Pc" cons25 off secure ttyvb "/usr/libexec/getty Pc" cons25 off secure (Вы также можете просто их удалить.) Самым простым (и надёжным) способом активировать виртуальные
консоли является перезагрузка. Однако если вы вовсе не хотите
этого делать, просто остановите X Window System и выполните (как
пользователь
При этом требуется, чтобы вы полностью закрыли X Window, если
она была запущена, до запуска этой команды. Если вы это не
сделаете, ваша система может повиснуть или заблокироваться после
выполнения команды | |
11.11. | Как осуществляется доступ к виртуальным консолям из X? |
Используйте комбинацию клавиш
Ctrl+Alt+F После того, как вы оказались в текстовой консоли, можете использовать,
как обычно, комбинации
Alt+F Чтобы вернуться в сеанс работы X, вы должны переключиться
в виртуальную консоль, на которой запущена X Window. Если вы
запустили X из командной строки (например, при помощи команды
| |
11.12. | Как запустить XDM во время загрузки? |
Есть две философские школы, проповедующие различные методы
запуска xdm(1). Последователи одного течения запускают
Плюсом метода с использованием ttys(5) является
документирование того, на каком vty будет запущен X и то,
что ответственность за перезапуск X-сервера при завершении
сеанса работы лежит на процессе init(8). Метод с
использованием rc(8) позволяет просто прекратить работу
xdm командой Из rc(8) Если :0 local /usr/local/bin/X vt4 В вышеприведённом случае X-серверу указывается работать на
| |
11.13. | При запуске |
Если вы запускаете X с использованием
сценария startx, права на устройство
Это зависит от прав доступа, установленных для консоли по умолчанию. В многопользовательской системе вовсе не нужно, чтобы любой пользователь мог выводить информацию на системную консоль. Для пользователей, вошедших в систему через VTY, для решения этой проблемы существует файл fbtab(5). В общем, раскомментируйте строчку в файле
/dev/ttyv0 0600 /dev/console Этого будет достаточно для того, чтобы всякий, кто вошёл
в систему с терминала | |
11.14. | Раньше я запускал XFree86TM, работая как обычный пользователь, а
теперь при запуске выдается сообщение о том, что я должен быть
пользователем |
Все X-серверы должны запускаться пользователем
Очевидно, что запускать X-сервер, работая как
пользователь xdm представляет собой даемон, который обрабатывает входы в систему в графическом режиме. Обычно он запускается во время загрузки и отвечает за аутентификацию пользователей и запуск их сеансов; практически это графический аналог программ getty(8) и login(1). Более подробная информация о xdm находится в документации по XFree86TM и в соответствующем разделе FAQ.
| |
11.15. | Моя мышь PS/2 в X работает неправильно. |
Вполне может быть, что ваша мышь и её драйвер рассинхронизировались. В редких случаях драйвер может ошибочно обнаруживать проблемы с синхронизацией, и вы будете видеть такие сообщения ядра: psmintr: out of sync (xxxx != yyyy) и заметите, что мышь теперь работает неправильно. Если это случится, отмените проверку согласования, установив
значение флага для драйвера мыши PS/2 в boot: Затем в командной строке UserConfig наберите: UserConfig> | |
11.16. | Почему моя мышь PS/2 от MouseSystems не работает? |
Было несколько сообщений, что некоторые модели мышей PS/2 от MouseSystems работают только в режиме <<высокого разрешения>>. В других режимах курсор мыши постоянно прыгает в верхний левый угол экрана. Укажите флаг boot: Затем в командной строке UserConfig наберите: UserConfig> В предыдущем разделе описана возможная причина проблем с мышью. | |
11.17. | Как поменять местами кнопки мыши? |
Поместите команду | |
11.18. | Как установить экранную заставку и где такие заставки можно найти? |
Подробный ответ находится в разделе Загрузочные экранные заставки Руководства FreeBSD. | |
11.19. | Можно ли в X использовать клавиши Windows, которые есть на клавиатуре? |
Да. Всё, что вам нужно сделать, это с помощью xmodmap(1) задать функции, которые вы хотите к этим клавишам привязать. Положим, что все клавиатуры <<Windows>> стандартны и эти три клавиши имеют следующие клавиатурные коды:
Чтобы заставить левую клавишу Windows набирать запятую, попробуйте выполнить такую команду:
Чтобы увидеть результат, вам нужно будет перезапустить ваш оконный менеджер. Для того, чтобы переопределения клавиш
Windows выполнялось автоматически
каждый раз при запуске X, можно поместить вызов команд
xmodmap $HOME/.xmodmaprc Например, вы можете переопределить эти 3 клавиши так, чтобы они выполняли функции клавиш F13, F14 и F15 соответственно. Это позволит легко привязать их к полезным функциям в приложениях или вашем менеджере окон, как будет показано далее. Чтобы сделать это, поместите в файл
keycode 115 = F13 keycode 116 = F14 keycode 117 = F15 Если, к примеру, вы используете порт x11-wm/fvwm2, то можете переопределить клавиши таким образом, что F13 сворачивает в иконку (или восстанавливает предыдущие размеры) окна, на которое указывает курсор, F14 перемещает окно с курсором на передний план или, если оно уже впереди, возвращает обратно, а F15 вызывает главное меню приложения Workplace, даже если курсор находится не на рабочем столе, что бывает полезно, если нет ни одного видимого кусочка рабочего стола (к тому же логотип на клавише соответствует этой функции). Вот строки из Key F13 FTIWS A Iconify Key F14 FTIWS A RaiseLower Key F15 A A Menu Workplace Nop | |
11.20. | Как заставить работать аппаратное ускорение 3D-графики для OpenGL(R)? |
Наличие 3D-ускорения зависит от версии используемого вами сервера Xorg и типа графического адаптера. Если у вас адаптер nVidia, то вы можете использовать бинарные файлы драйверов для FreeBSD, установив один из следующих портов:
nVidia предоставляет подробную информацию о том, какие
адаптеры поддерживаются тем или иным драйвером. Эта
информация доступна непосредственно с их сайта: Для адаптеров Matrox G200/G400 вам следует попробовать порт x11-servers/mga_hal. Для ATI Rage 128 и Radeon посмотрите страницы Справочника ati(4), r128(4) и radeon(4). Для адаптеров 3dfx Voodoo 3, 4, 5, и Banshee есть порт x11-servers/driglide. |
12.1. | Где можно найти информацию о <<бездисковой загрузке>>? | ||||||||||||||||||||||||||||||||||
<<Бездисковая загрузка>> означает, что машина с FreeBSD загружается по сети и читает необходимые файлы с сервера, а не со своего диска. Подробное описание есть в соответствующей главе Руководства. | |||||||||||||||||||||||||||||||||||
12.2. | Может ли машина с FreeBSD использоваться как маршрутизатор? | ||||||||||||||||||||||||||||||||||
Да. Пожалуйста, обратитесь к разделу Руководства, посвящённому сложным вопросам работы в сети, особенно в той части, что касается маршрутизации и маршрутизаторов. | |||||||||||||||||||||||||||||||||||
12.3. | Можно ли подключить машину с Windows(R) к Internet с помощью FreeBSD? | ||||||||||||||||||||||||||||||||||
Как правило, те, кто задают такие вопросы, имеют дома два компьютера, один с FreeBSD, а другой с какой-то версией Windows(R). Идея состоит в использовании FreeBSD для подключения к Internet, а затем осуществлять выход в Internet из Windows(R) через FreeBSD. На самом деле это просто частный случай предыдущего вопроса, который хорошо отработан. Если для подключения к Internet вы используете
коммутируемое соединение, то ppp(8) режима
пользователя имеет параметр Если вы используете PPP режима ядра, или у вас Ethernet-подключение к Internet, то нужно использовать natd(8). Пожалуйста, обратитесь к разделу о natd Руководства для получения вводной информации. | |||||||||||||||||||||||||||||||||||
12.4. | Поддерживает ли FreeBSD протоколы SLIP и PPP? | ||||||||||||||||||||||||||||||||||
Да. Обратитесь к страницам справочника по командам slattach(8), sliplogin(8), ppp(8), и pppd(8). ppp(8) и pppd(8) могут обслуживать как входящие, так и исходящие соединения, когда как sliplogin(8) имеет дело исключительно со входящими соединениям, а slattach(8) только с исходящими. Более подробная информация об их использовании находится в разделе Руководства о протоколах PPP и SLIP. Если вы имеете доступ в Internet только через командную строку оболочки, вам может подойти пакадж net/slirp. С его помощью можно получить (ограниченный) доступ к таким службам, как FTP и http прямо с вашей машины. | |||||||||||||||||||||||||||||||||||
12.5. | Поддерживает ли FreeBSD технологию NAT или Masquerading? | ||||||||||||||||||||||||||||||||||
Да. Если вы собираетесь использовать NAT с пользовательским соединением PPP, пожалуйста, обратитесь к разделу Руководства о пользовательском PPP. Если же вы хотите использовать NAT вместе с другим типом сетевого подключения, пожалуйста, взгляните на раздел о natd Руководства. | |||||||||||||||||||||||||||||||||||
12.6. | Как я могу соединить две FreeBSD системы с помощью параллельного соединения, используя PLIP? | ||||||||||||||||||||||||||||||||||
Пожалуйста, обратитесь к разделу Руководства о PLIP. | |||||||||||||||||||||||||||||||||||
12.7. | Как настроить алиас в сети Ethernet? | ||||||||||||||||||||||||||||||||||
Если алиас находится в той же самой сети, что и уже
настроенный на интерфейсе адрес, то к команде для
ifconfig(8) допишите
В противном случае просто задайте сетевой адрес и маску обычным образом:
Для получения подробной информации обращайтесь к Руководству FreeBSD. | |||||||||||||||||||||||||||||||||||
12.8. | Как заставить адаптер 3C503 использовать другой тип сетевого разъёма? | ||||||||||||||||||||||||||||||||||
Если вы хотите задействовать другой разъём, то должны указать
дополнительный параметр при вызове команды ifconfig(8).
Разъёмом по умолчанию является | |||||||||||||||||||||||||||||||||||
12.9. | У меня проблемы при работе NFS во FreeBSD. | ||||||||||||||||||||||||||||||||||
Некоторые сетевые адаптеры работают (мягко говоря) хуже, чем другие, что может иногда вызывать проблемы при работе приложений типа NFS, интенсивно использующих сеть. Подробности описаны в соответствующей главе Руководства, посвящённой NFS. | |||||||||||||||||||||||||||||||||||
12.10. | Почему я не могу смонтировать диск Linux(R) по NFS? | ||||||||||||||||||||||||||||||||||
Некоторые версии NFS для Linux(R) поддерживают запросы на монтирование только с привилегированного порта; попробуйте выполнить следующую команду:
| |||||||||||||||||||||||||||||||||||
12.11. | Почему я не могу смонтировать диск SunTM по NFS? | ||||||||||||||||||||||||||||||||||
Рабочие станции SunTM под управлением
SunOSTM 4.
| |||||||||||||||||||||||||||||||||||
12.12. | Почему | ||||||||||||||||||||||||||||||||||
В большинстве случаев проблема заключается в недостаточном
понимании корректного формата файла
| |||||||||||||||||||||||||||||||||||
12.13. | Проблемы при связи по PPP с машинами NeXTStep. | ||||||||||||||||||||||||||||||||||
Попробуйте отменить все расширения TCP в файле
tcp_extensions=NO Маршрутизаторы Annex фирмы Xylogic не работают по этой же причине, поэтому при подключении к ним вам нужно проделать то же самое. | |||||||||||||||||||||||||||||||||||
12.14. | Как включить поддержку multicast IP? | ||||||||||||||||||||||||||||||||||
По умолчанию FreeBSD поддерживает работу с многоадресного
сетевого вещания. Если вы хотите использовать ваш компьютер как
маршрутизатор многоадресного трафика, вам нужно перекомпилировать
ядро с включенной опцией Примечание:В последних версиях FreeBSD даемон маршрутизации multicast mrouted(8) и утилиты map-mbone(8) и mrinfo(8) удалены из состава основной системы. Эти программы теперь доступны из Коллекции Портов FreeBSD в виде порта net/mrouted. Приложения MBONE находятся в собственной категории портов,
mbone.
Если вы ищете приложения для организации конференций
| |||||||||||||||||||||||||||||||||||
12.15. | Какие сетевые адаптеры сделаны на наборе микросхем DEC PCI? | ||||||||||||||||||||||||||||||||||
Вот список, составленный
Гленом Фостером (Glen Foster) Таблица 12.1. Сетевые карты созданные на основе наборе микросхем
DEC PCI
| |||||||||||||||||||||||||||||||||||
12.16. | Почему я должен использовать FQDN для хостов не в моей сети? | ||||||||||||||||||||||||||||||||||
За ответом на этот вопрос обращайтесь к Руководству FreeBSD. | |||||||||||||||||||||||||||||||||||
12.17. | Permission denied для любых действий, связанных с работой сети. | ||||||||||||||||||||||||||||||||||
Если вы компилировали ядро с опцией
Если вы случайно неверно отконфигурировали межсетевой экран, то для восстановления работоспособность сети дайте такую команду, войдя суперпользователем:
Также вы можете задать
Более подробная информация о конфигурировании межсетевого экрана в FreeBSD находится в соответствующей главе Руководства. | |||||||||||||||||||||||||||||||||||
12.18. | Почему моё правило <<fwd>> для
| ||||||||||||||||||||||||||||||||||
Возможно, потому что вы хотите выполнять трансляцию сетевых адресов (NAT), а не просто перенаправлять пакеты. Правило <<fwd>> делает точно то, что означает; оно перенаправляет пакеты. Данные внутри пакета оно не меняет. Пусть, скажем, у нас имеется правило такого вида: 01000 fwd Когда пакет с адресом назначения Обратитесь к FAQ о перенаправлении сервисов, руководству по natd(8) или одной из нескольких утилит для перенаправления из Коллекции Портов для того, чтобы сделать это правильно. | |||||||||||||||||||||||||||||||||||
12.19. | Как можно перенаправить запросы с одной машины на другую? | ||||||||||||||||||||||||||||||||||
Вы можете перенаправить запрос на FTP (или другой сервис) с
помощью порта sysutils/socket.
Просто замените командную строку запуска сервиса на вызов
ftp stream tcp nowait nobody /usr/local/bin/socket socket где | |||||||||||||||||||||||||||||||||||
12.20. | Где можно найти средства управления сетевым трафиком? | ||||||||||||||||||||||||||||||||||
Для FreeBSD имеются три средства управления трафиком. dummynet(4) интегрирован в систему FreeBSD как составная часть ipfw(4). ALTQ включен во FreeBSD как составная часть pf(4). Bandwidth Manager компании Emerging Technologies является коммерческим продуктом. | |||||||||||||||||||||||||||||||||||
12.21. | Почему появляются сообщения /dev/bpf0: device not configured? | ||||||||||||||||||||||||||||||||||
Вы запускаете программу, которой требуется Berkeley Packet Filter (bpf(4)), однако его нет в вашем ядре. Перекомпилируйте ядро, добавив в его конфигурационный файл следующую строку: device bpf # Berkeley Packet Filter | |||||||||||||||||||||||||||||||||||
12.22. | Как смонтировать диск Windows(R)-машины в моей локальной сети, как это делает smbmount в Linux(R)? | ||||||||||||||||||||||||||||||||||
Используйте пакет SMBFS. В него включён набор изменений в ядре и пользовательские программы. Программы и информация доступны как mount_smbfs(8) и входят в состав базовой системы. | |||||||||||||||||||||||||||||||||||
12.23. | Что значат эти сообщения: Limiting icmp/open port/closed port response в моих журнальных файлах? | ||||||||||||||||||||||||||||||||||
Это ядро сообщает вам, что имела место некоторая активность, приводящая к посылке большего количества ответных пакетов ICMP или сбросов TCP (RST), чем, как предполагается, это следует делать. Ответы ICMP часто генерируются в результате попыток подключения к незанятым портам UDP. Сбросы TCP генерируются в результате попыток подключения к закрытым портам TCP. Кроме всяких прочих, такие сообщения могут быть вызваны следующими действиями:
Первое число в сообщении указывает вам, какое количество пакетов
ядро посылало бы при отсутствии ограничений, а второе число
указывает лимит. Вы можете управлять этим ограничением при помощи
системной переменной
Если вы не хотите видеть подобные сообщения в журнальных
файлах, но хотите использовать это ограничение в ядре, то можете
использовать системную переменную
И наконец, если вы хотите выключить это ограничение, то можете
установить значение системной переменной
| |||||||||||||||||||||||||||||||||||
12.24. | Что это за сообщения arp: unknown hardware address format? | ||||||||||||||||||||||||||||||||||
Это означает, что какое-то устройство в вашей локальной сети использует MAC-адрес в формате, не распознаваемом FreeBSD. Скорее всего, это происходит из-за того, что кто-то в сети экспериментирует с сетевым адаптером. Чаще всего это происходит в сетях с кабельными модемами. Это безобидно и не должно влиять на производительность машины с FreeBSD. | |||||||||||||||||||||||||||||||||||
12.25. | Почему я постоянно вижу сообщения вида 192.168.0.10 is on fxp1 but got reply from 00:15:17:67:cf:82 on rl0 и как мне их отключить? | ||||||||||||||||||||||||||||||||||
Это так, потому что пакет приходит извне сети, чего
не должно быть. Чтобы отключить эти сообщения, установите
| |||||||||||||||||||||||||||||||||||
12.26. | Я только что установил CVSup, но при попытке его запустить получил сообщения об ошибках. Что не так? | ||||||||||||||||||||||||||||||||||
Сначала посмотрите, есть ли среди получаемых вами сообщений то, что показано ниже. /usr/libexec/ld-elf.so.1: Shared object "libXaw.so.6" not found Ошибки, подобные этой, возникают при установке порта net/cvsup на машину без пакета Xorg. Если вы хотите использовать GUI, имеющийся в CVSup, то вам нужно теперь установить Xorg. Либо, если вы хотите использовать CVSup только из командной строки, то вы должны удалить ранее установленный пакадж. Затем установите порт net/cvsup-without-gui или net/csup. Если у вас установлена одна из последних версий FreeBSD, то вы можете использовать csup(1). Более подробно это описано в разделе о CVSup Руководства. |
13.1. | Что означает термин sandbox (песочница)? |
<<Sandbox>> - это термин, используемый при обеспечении безопасности. Он имеет два значения:
В UNIX(R) реализованы два типа <<песочниц>>. Один на уровне процесса, и один на уровне идентификаторов пользователей. Каждый процесс в UNIX(R) полностью защищён от других процессов. Никакой процесс не может модифицировать адресное пространство другого процесса. Это отличается от Windows(R), где процесс может легко записать что-либо в адресное пространство другого процесса, что приводит к аварийным ситуациям. В UNIX(R) каждым процессом владеет некоторый идентификатор
пользователя. Если этот пользователь не
| |
13.2. | Что такое уровень защиты (securelevel)? |
Уровень защиты является механизмом обеспечения безопасности,
реализованным в ядре. В общем, когда уровень защиты больше нуля,
ядро ограничивает выполнение некоторых операций; даже
администратору (то есть пользователю
Для выяснения состояния уровня защиты в работающей системе просто выполните следующую команду:
Результат будет содержать название sysctl(8)-переменной (в
нашем случае это Вы не можете понизить уровень защиты работающей системы;
возможность сделать это противоречит назначению этого механизма.
Если вам нужно выполнить работу, которая требует не положительный
уровень защиты (к примеру, выполнение
Более подробная информация об уровнях защиты и о том, какие специфические действия выполняют все уровни, может быть найдена на справочных страницах о init(8). Предупреждение:Уровень защиты не является панацеей; в нём есть много недостатков. Зачастую он даёт обманчивое чувство безопасности. Одной из самых больших проблем является то, что для его эффективной работы все файлы, используемые в процессе загрузки, должны быть защищены. Если атакующий сможет заставить систему выполнять свой код до установки уровня защиты (что происходит достаточно поздно во время процесса загрузки, так как некоторые вещи, выполняемые системой в это время, не могут быть сделаны при повышенном уровне защиты), то эта защита может быть отключена. Хотя такая задача по защите всех файлов, используемых в процессе загрузки, технически вполне осуществима, если это будет сделано, то поддержка системы станет кошмаром, так как для изменения конфигурационного файла придётся останавливать систему, переводя её по крайней мере в однопользовательский режим. Это обстоятельство, а также ряд других, часто обсуждаются в списках рассылки, в частности, во Список рассылки FreeBSD, посвящённый информационной безопасности. Пожалуйста, поищите в архивах более подробное обсуждение. Некоторые надеются, что механизм уровней защиты вскоре отомрёт, а на его смену придёт более гибкий механизм, но пока всё это туманно. Считайте себя предупреждёнными. | |
13.3. | BIND ( |
Для исходящих запросов BIND использует случайно
выбираемый порт с большим номером. В последних версиях
при каждом запросе выбирается новый случайный порт UDP.
Это может вызвать проблемы в некоторых сетевых конфигурациях,
особенно если фаервол блокирует входящие UDP пакеты на
определенных портах. Если вы хотите обеспечить хождение
пакетов через фаервол, то вы можете попробовать параметры
Предупреждение:Если в Кстати, поздравляем. Прекрасно, что вы читаете вывод команды sockstat(1) и обращаете внимание на аномалии! | |
13.4. | Даемон sendmail ждёт соединений как на стандартном порту 25, так и на порту 587! Что происходит? |
Последние версии sendmail поддерживают механизм посылки почты, который работает по порту 587. Эта возможность пока широко не используется, но ее популярность растет. | |
13.5. | Что это за пользователь |
Не волнуйтесь, Некоторые используют | |
13.6. | Почему |
В целях обеспечения безопасности |
14.1. | Не могу заставить работать ppp. Что я делаю не так? |
Первым делом прочтите страницы справочника, посвящённые ppp(8), а также соответствующий раздел Руководства. Включите протоколирование следующей командой: set log Phase Chat Connect Carrier lcp ipcp ccp command Эта команда может быть набрана в командной строке
ppp(8) или она может находиться в конфигурационном
файле !ppp *.* /var/log/ppp.log Теперь вы сможете найти полную информацию о происходящем в файле протокола. Не беспокойтесь, если не всё вам будет там понятно. Если вы будете пользоваться чьей-то помощью, протокол вам пригодится. | |
14.2. | Ppp просто зависает, когда я его запускаю |
Обычно это происходит, когда не может быть определено имя
вашего хоста. Наилучший способ исправить это - удостовериться,
что файл 127.0.0.1 foo.example.com foo localhost В противном случае просто добавьте ещё одну запись о вашем хосте. Обратитесь к соответствующим страницам справочника за подробным описанием. Если вы выполнили эти указания, вы сможете успешно выполнить
команду | |
14.3. | Ppp не звонит в режиме -auto |
Во-первых, проверьте, что у вас есть маршрут по умолчанию.
Выполнив команду Destination Gateway Flags Refs Use Netif Expire default 10.0.0.2 UGSc 0 0 tun0 10.0.0.2 10.0.0.1 UH 0 0 tun0 Здесь предполагается, что вы использовали адреса,
приведённые в Руководстве, Справочнике или файле
Другая причина отсутствия маршрута по умолчанию может
крыться в том, что вы ошибочно установили маршрут по умолчанию
в вашем файле delete ALL В таком случае обратитесь к соответствующему разделу Руководства. | |
14.4. | Что означает сообщение No route to host? |
Эта ошибка появляется из-за того, что в файле
MYADDR: delete ALL add 0 0 HISADDR Он необходим, если ваш IP адрес выделяется динамически или
адрес маршрутизатора вам не известен. Если вы используете
интерактивный режим, вы можете набрать следующие команды
после входа в delete ALL add 0 0 HISADDR Обратитесь к разделу PPP и динамические IP адреса Руководства за подробной информацией. | |
14.5. | Соединение разрывается через 3 минуты |
Таймаут для PPP по умолчанию равен 3 минутам. Это может быть изменено такой строкой: set timeout где | |
14.6. | Соединение разрывается при большой нагрузке |
Если у вас включен Link Quality Reporting (LQR), возможно, что слишком много пакетов LQR теряется в канале. Программа ppp(8) делает вывод, что канал плох, и разрывает соединение. В FreeBSD до версии 2.2.5 LQR было включено по умолчанию. Сейчас оно по умолчанию выключено. LQR можно выключить такой строкой: disable lqr | |
14.7. | Соединение разрывается в случайные промежутки времени |
Иногда, на шумной линии или даже на линии с включенным режимом ожидания звонка, ваш модем может вешать трубку, думая (совершенно напрасно), что потерял несущую. В большинстве модемов есть параметр, определяющий
чувствительность к временной потере несущей. Например, в
модеме U.S. Robotics(R) Sportster(R) это определяется значением
регистра set dial "...... ATS10=10 OK ......" Обратитесь к руководству по вашему модему. | |
14.8. | Соединение часто рвётся в случайные промежутки времени |
Многие сообщают об обрывах соединений без видимой причины. Первым делом нужно выяснить, с какой стороны соединения рвётся связь. Если вы используете внешний модем, можете просто попробовать
использовать утилиту ping(8) и посмотреть, мигает ли
индикатор TD при передаче данных. Если он
мигает (а индикатор RD нет), проблема с той
стороны. Если индикатор TD не загорается,
проблема с вашей стороны. При использовании внутреннего модема
вам необходимо воспользоваться командой Выяснив, является эта проблема локальной или удалённой системы, вы имеете два варианта действий:
| |
14.9. | Удалённая система не отвечает |
Здесь вы мало что можете сделать. Большинство провайдеров
отказываются оказать помощь, если вы используете ОС не от Microsoft(R).
Вы можете добавить команду Первым делом попробуйте отключить всю местную компрессию, указав в конфигурационном файле следующее: disable pred1 deflate deflate24 protocomp acfcomp shortseq vj deny pred1 deflate deflate24 protocomp acfcomp shortseq vj Теперь попробуйте установить соединение ещё раз и удостовериться, что ситуация не изменилась. Если качество соединения улучшилось или проблема оказалась полностью решённой, выясните, настройка чего приводила к проблемам методом проб и ошибок. Это даст вам дополнительную защиту, когда вы будете разговаривать с вашим провайдером (хотя при этом может обнаружиться, что вы работаете не с продуктом Microsoft(R)). Перед тем, как звонить провайдеру, включите вывод отладочной информации, как вы это делали ранее и подождите, пока соединение снова не прервётся. Правда, для этого требуется некоторое дисковое пространство. Интерес могут представлять последние прочитанные из порта данные. Обычно это данные в формате ASCII и они могут даже содержать описание проблемы (Memory fault, Core dumped). Если ваш провайдер согласен помочь вам, нужно будет включить
режим отладки с их стороны, а потом, когда связь прервётся в
следующий раз, они могут сказать вам, почему возникли проблемы
с их стороны. Будет хорошо, если вы пришлёте детальное описание
на адрес Brian Somers | |
14.10. | Ppp зависает |
Лучше всего в этом случае перекомпилировать ppp(8) с отладочной информацией, и затем использовать gdb(1) для получения стека вызовов для зависшего процесса ppp. Чтобы откомпилировать программу ppp с отладочной информацией, наберите такие команды:
Затем следует перезапустить ppp и дождаться следующего зависания. Когда отладочная сборка ppp(8) зависнет, запустите gdb для зависшего процесса:
В приглашении gdb вы можете
использовать команду В завершение, отошлите результат сессии
gdb на адрес Brian Somers | |
14.11. | Ничего не происходит после сообщения Login OK! |
До версии FreeBSD 2.2.5, как только связь устанавливалась, ppp(8) ожидал начала согласования Line Control Protocol (LCP) с противоположной стороны. Многие провайдеры Internet не начинают согласования и предполагают, что это сделает клиент. Чтобы заставить ppp(8) инициировать согласование параметров LCP, используйте следующую строку: set openmode active Примечание:Ничего страшного не произойдёт, если согласование начнут обе стороны, поэтому режим инициирования сейчас по умолчанию активный. Однако, в следующем разделе описывается ситуация, когда это приводит к некоторым неприятностям. | |
14.12. | В протоколе есть сообщения о том, что <<magic being the same>>. |
Иногда, сразу же после установления соединения, вы можете увидеть в журнале сообщения Magic is the same. Иногда эти сообщения проходят безболезненно, а иногда одна из сторон прекращает работу. Большинство реализаций PPP не может справиться с такой ситуацией, и, даже когда связь выглядит установившейся, вы будете видеть только бесконечно повторяющиеся конфигурационные запросы и подтверждения в файле протокола до тех пор, пока ppp(8) окончательно не закроет соединение. Обычно это происходит на серверах с медленными дисками, на которых порт обслуживает программа getty(8), а ppp(8) выполняется из сценария регистрации или другой программы после регистрации пользователя. Были сообщения, что такое случается постоянно при использовании slirp. Причина заключается в том, что во время, проходящее между завершением работы getty(8) и запуском ppp(8), ppp(8) со стороны клиента начинает посылать пакеты Line Control Protocol (LCP). Так как режим эха остаётся всё ещё включенным, ppp(8) клиента получает <<отражения>> своих запросов. Частью процесса согласования параметров LCP является определение <<магического>> числа для каждой стороны соединения для обнаружения <<отражений>>. Согласно спецификации, когда одна сторона пытается использовать совпадающее "магическое" число, должен быть послан ответ NAK и должно быть выбрано новое "магическое" число. В тот момент, когда на порту сервера включен режим эха, клиент ppp(8) посылает пакеты LCP, получает то же самое "магическое" число в отражённом пакете и отвечает на него NAK. Он также видит отражённый NAK (который также означает, что ppp(8) должен изменить своё "магическое" число). В потенциале это может вызвать появление огромного количества процессов смен "магических" чисел, и все они накапливаются в буфере терминала. Как только запустится сервер ppp(8), он будет перегружен запросами на смену "магических", немедленно решит, что этого много для согласования LCP и прервёт соединение. В то же самое время, клиент, который больше не видит отражений, останавливается для того, чтобы увидеть, что сервер закрыл соединение. Этого можно избежать, позволив начинать согласование
противоположной стороне следующей строкой в файле
set openmode passive Это заставит ppp(8) ожидать начала согласования LCP. Некоторые серверы, однако, могут никогда не начать согласование. Если это тот самый случай, вы можете сделать следующее: set openmode active 3 Это заставит ppp(8) пассивно ждать 3 секунды, и только затем посылать запросы LCP. Если противоположная сторона начнёт посылать в этот момент запросы, ppp(8) немедленно ответит, не ожидая истечения трёхсекундного интервала. | |
14.13. | Согласование LCP продолжается, пока не закроется соединение |
В настоящий момент одной из неприятных особенностей реализации ppp(8) является то, что она не связывает сообщения LCP, CCP & IPCP с запросами. Как результат, если реализация PPP с одной стороны более чем на 6 секунд медленнее, чем с другой, противоположная сторона будет посылать два дополнительных запроса на согласование параметров LCP. Это фатально. Предположим, что у нас работают две реализации, на машинах
Это будет продолжаться до тех пор, пока одна из сторон не обнаружит, что это ни к чему не приводит и не закроет соединение. Лучшим способом избежать этой ситуации является конфигурация
одной из сторон как set openmode passive С этой командой нужно быть осторожным. Вы также должны будете использовать эту команду для ограничения периода ожидания, в течении которого ppp(8) ждёт начала согласования с противоположной стороны: set stopped Как вариант, может быть использована следующая команда
(где set openmode active За дополнительной информацией обращайтесь к странице Справочника. | |
14.14. | Когда я выполняю команду shell для тестирования соединения, ppp блокируется |
Когда вы выполняете команду Если вам необходимо выполнять подобные команды, используйте
команду | |
14.15. | Почему программа ppp, обслуживающая нуль-модем, никогда не закрывается? |
ppp(8) не может определить, что соединение было закрыто. Это происходит из-за метода использования сигнальных линий нуль-модемного кабеля. При использовании такого типа соединения всегда включайте LQR: enable lqr По умолчанию LQR включается, если это было затребовано с противоположной стороны на этапе согласования параметров соединения. | |
14.16. | В режиме |
Если ppp(8) начинает неожиданно звонить, вы должны определить причину и задать фильтры dfilters для предотвращения подобных звонков. Для выяснения причины такого поведения, используйте строку: set log +tcp/ip Это включит протоколирование всего трафика через соединение. В следующий раз, когда неожиданно будет установлено соединение, вы установите причину по временным отметкам в файле протокола. После этого вы можете запретить дозвонку при выясненных условиях. Как правило, такие проблемы возникают из-за обращений к DNS. Для предотвращения обращений к DNS и установления соединения (что не запретит ppp(8) пропускать пакеты через уже установленное соединение), используйте такую комбинацию: set dfilter 1 deny udp src eq 53 set dfilter 2 deny udp dst eq 53 set dfilter 3 permit 0/0 0/0 Это может вам не подойти, так как закроет возможность дозвонки по запросу - большинству программ нужно обратиться к DNS до того, как начать работать. В случае DNS, вы должны попытаться определить, кто пытается
определить имя хоста. В большинстве случаев виновным оказывается
sendmail(8). Удостоверьтесь, что вы указали программе
sendmail
не осуществлять обращений к DNS в его конфигурационном файле.
Обратитесь к разделу об
использовании электронной почты при коммутируемом соединении в
Руководстве за подробным описанием создания конфигурационного файла и что
туда нужно поместить. Вам может понадобиться добавить в файл
define(`confDELIVERY_MODE', `d')dnl Это заставит sendmail ставить все
сообщения в очередь до тех пор, пока
не будет запущена её обработка (как правило, sendmail запускается с
параметрами | |
14.17. | Что означают ошибки CCP |
В файле протокола появляются такие сообщения об ошибках: CCP: CcpSendConfigReq CCP: Received Terminate Ack (1) state = Req-Sent (6) Это происходит, если ppp(8) пытается установить компрессию типа Predictor1, а противоположная сторона не хочет устанавливать никакой компрессии. Эти сообщения безобидны, но если вы хотите от них избавиться, вы можете запретить компрессию Predictor1 и у себя тоже: disable pred1 | |
14.18. | Почему ppp не протоколирует скорость соединения? |
Для вывода протокола взаимодействия с модемом вам нужно включить следующее: set log +connect Это заставит ppp(8) протоколировать всё, вплоть до последней прочтённой через <<expect>> строки. Если вы хотите видеть скорость соединения и используете
PAP или CHAP (и поэтому вам не нужно определять никаких сценариев
входа через set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 4 \ \"\" ATZ OK-ATZ-OK ATDT\\T TIMEOUT 60 CONNECT \\c \\n" Здесь мы получили строку CONNECT, ничего не посылаем, затем ожидаем символа перевода строки, заставляя ppp(8) принять полный ответ модема. | |
14.19. | Ppp игнорирует символ |
Программа ppp обрабатывает
каждую строку в ваших конфигурационных файлах,
так что он может проинтерпретировать строку вида
Когда интерпретатор chat обрабатывает каждую строку, он ещё
раз просматривает аргумент для того, чтобы найти какую-либо
специальную последовательность типа Если вам нужно передать символ set dial "\"\" ATZ OK-ATZ-OK AT\\\\X OK" Это приведёт к такой последовательности: ATZ OK AT\X OK Или: set phone 1234567 set dial "\"\" ATZ OK ATDT\\T" Это даст такую последовательность: ATZ OK ATDT1234567 | |
14.20. | ppp(8) получает ошибку защиты
(Segmentation fault), но я не вижу файла
|
Программа ppp (или любая другая
программа такого рода) никогда не
создаёт файлов дампа памяти. Так так ppp(8) запускается с
эффективным uid, равным
Теперь у вас есть отладочная версия ppp(8). Вам нужно стать суперпользователем для запуска ppp(8), так как соответствующие биты прав были убраны. Когда запустите ppp(8), обратите особое внимание на то, какой каталог у вас был текущим на этот момент. Итак, если ppp(8) получит ошибку нарушения защиты,
он сбросит дамп памяти с именем
Вся эта информация должна быть предоставлена вместе с вашим вопросом, чтобы проблему можно было продиагностировать. Если вы умеете обращаться с gdb(1), вы можете попробовать найти причины образования дампа либо адреса и значения относящихся к этому переменных. | |
14.21. | Процесс, вызвавший прозвонку в режиме |
Эта проблема проявлялась, когда ppp(8) в
режиме Причиной было то, что когда эта программа использует системный вызов connect(2), для сокета назначается IP-адрес интерфейса tun(4). Ядро создаёт первый исходящий пакет и записывает его в устройство tun(4). Затем ppp(8) читает пакет и устанавливает соединение. Если в результате согласования ppp(8) динамического IP-адреса адрес интерфейса изменится, сокет будет работать некорректно. Любые IP-пакеты, передаваемые через сокет, будут отброшены. Если даже этого не произойдёт, ответные данные не будут достигать отправителя, так как этот адрес больше ему не принадлежит. Теоретически есть несколько способов решить эту проблему. Лучше всего, если противоположная сторона назначит интерфейсу тот же самый IP-адрес. Текущая версия ppp(8) именно так и поступает, но большинство других реализаций этого не делают. Самым простым решением будет просто никогда не менять
IP-адрес интерфейса tun(4), а вместо этого изменять на
лету все исходящие пакеты так, чтобы IP-адрес источника менялся
с IP-адреса интерфейса на соответствующий с противоположной
стороны. Это, в сущности, то же самое, что делает опция
Другой возможный (и, наверное, самый надёжный) способ - это
создать системный вызов, меняющий IP-адреса всем уже связанным
сокетам. ppp(8) использовал бы этот вызов для модификации
сокетов всех работающих программ после согласования нового
IP-адреса. Этот же самый системный вызов могли бы использовать
клиенты DHCP, когда они осуществляют повторную
привязку к сокету, вызывая для этого функцию
Ещё одной возможностью является разрешение интерфейсу
становиться активным без IP-адреса. Исходящим пакетам будет
даваться IP адрес | |
14.22. | Почему большинство игр не работает с опцией
|
Причиной, по которой игры и подобные программы не работают с библиотекой libalias(3) заключается в том, что внешняя машина будет пытаться открыть соединение или посылать (незапрошенные) UDP пакеты на машину внутренней сети. Программное обеспечение, обеспечивающее опцию -nat, не знает о том, что она должна пересылать эти пакеты машине во внутренней сети. Чтобы это всё же заработало, удостоверьтесь, что единственной
запущенной программой является программное обеспечение, с которым
вы испытываете проблемы, затем запустите tcpdump(1) на
интерфейсе tun(4) маршрутизатора либо включите
протоколирование TCP/IP в ppp(8)
( Когда вы запустите некорректно работающее программное
обеспечение,
вы должны увидеть пакеты, проходящие через маршрутизатор. Когда
что-то начнёт приходить извне, оно будет отброшено (в этом-то и
проблема). Заметьте номер порта получателя этих пакетов, затем
завершите работу вашего программного обеспечения. Выполните эту
процедуру несколько раз для того, чтобы убедиться, что номер порта
постоянен. Если это так, то следующая строчка в соответствующем
разделе nat port Здесь Несомненно, вы не сможете использовать программное обеспечение на других машинах, не изменяя указанную выше команду, а также запускать программное обеспечение на двух машинах внутри сети одновременно - в конце концов, внешний мир видит всю вашу сеть как единственную машину. Если номера портов непостоянны, есть ещё три варианта:
| |
14.23. | Кто-нибудь ведёт список полезных номеров портов? |
Пока нет, но ниже находится список, могущий таковым стать (если
к этому будет проявлен какой-либо интерес). В каждом примере
| |
14.24. | Что такое ошибки FCS? |
FCS является сокращением от Если у вас плохая линия (или драйвер коммуникационного адаптера отбрасывает пакеты), ошибки FCS неизбежны. Это обычно не является причиной для волнений, хотя это существенно замедляет протоколы компрессии. Если у вас внешний модем, проверьте качество экранирования соединительного кабеля - это может избавить от проблемы. Если ваша связь замирает, как только вы соединились, и
наблюдается большое количество ошибок FCS, это может быть вызвано
не полной прозрачностью канала для 8-битовых данных. Проверьте,
чтобы модем не использовал программного управления потоком
(XON/XOFF). Если же оборудование должно
использовать программное управление потоком, то воспользуйтесь
командой Другой причиной слишком большого количества ошибок FCS
может быть прекращение противоположной стороной сеанса
PPP.
В этом случае Вам может понадобиться включить протоколирование
Если ничего в файле протокола не говорит о том, что связь была прервана, вы должны спросить у администратора удалённой машины (вашего провайдера), почему сеанс был закрыт. | |
14.25. | Почему при использовании на маршрутизаторе PPPoE замирают соединения в Mac OS(R) и Windows(R) 98? |
Мы благодарим Майкла Возняка (Michael Wozniak)
Это происходит из-за эффекта, который можно назвать
<<чёрной дырой>> на маршрутизаторе. Mac OS(R) и
Windows(R) 98 (и, может быть, другие операционные системы
от Microsoft(R)), посылают пакеты TCP с запрашиваемым размером
сегмента, который слишком велик для того, чтобы быть помещённым
в кадр PPPoE (для сети Ethernet размер MTU по умолчанию равен
Одним из способов устранения проблемы является использование утилиты regedit на системах 95/98 для того, чтобы добавить в реестр следующий параметр: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\0000\MaxMTU Это должна быть строка со значением Обратитесь к документам из Microsoft Knowledge Base Q158474 - Windows TCPIP Registry Entries и Q120642 - TCPIP & NBT Configuration Parameters for Windows NT(R) для получения более полной информации по изменению MTU в Windows(R) для работы с NAT-маршрутизатором. Другим вариантом с Windows(R) 2000 является установка в
регистре К несчастью, в Mac OS(R) нет возможности изменить настройки
TCP/IP. Однако имеется множество коммерческого программного
обеспечения, позволяющего пользователям настраивать
параметры TCP/IP. Пользователям NAT в Mac OS(R) нужно поискать
у себя настройки MTU и заменить там значение В ppp(8) имеется команда | |
14.26. | Ничего не помогает - я уже отчаялся! |
Если всё уже перепробовано, и ничего не получается, пошлите
нам максимальное количество информации, ваш конфигурационный
файл, способ запуска ppp(8), соответствующие части файла
протокола, и вывод команды |
В этом разделе освещены вопросы о работе последовательных адаптеров во FreeBSD. Протоколы PPP и SLIP рассматриваются в разделе Работа в сети.
15.1. | Как узнать, какие последовательные порты были обнаружены FreeBSD? |
В процессе своей загрузки ядро FreeBSD будет пытаться найти последовательные порты, с поддержкой которых оно было откомпилировано. Вы можете повнимательней присмотреться к выдаваемым сообщениям либо выполнить такую команду после того, как система запустилась и работает:
Вот пример вывода вышеуказанной команды: sio0: <16550A-compatible COM port> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0 sio0: type 16550A sio1: <16550A-compatible COM port> port 0x2f8-0x2ff irq 3 on acpi0 sio1: type 16550A Здесь присутствуют два последовательных порта. Первый
находится на IRQ 4, использует порт ввода/вывода
В ядро | |
15.2. | Как узнать, какие внутренние модемы были обнаружены FreeBSD? |
Посмотрите ответ на предыдущий вопрос. | |
15.3. | Как осуществляется доступ к последовательным портам во FreeBSD? |
Третий последовательный порт, Вы должны использовать
| |
15.4. | Как включить поддержку многопортовых последовательных адаптеров? |
Повторим ещё раз: информация о конфигурировании ядра содержится в разделе, посвящённом этому вопросу. Для многопортовых последовательных адаптеров добавьте в файл device.hints(5) по строке sio(4) на каждый порт. Но IRQ должен быть указан только у одного порта. Все порты на адаптере должны использовать одно и то же значение IRQ. Для обеспечения согласованности используйте для указания IRQ последний последовательный порт. Также укажите следующую опцию в файле конфигурации ядра: COM_MULTIPORT В следующем примере указано содержимое
hint.sio.4.at="isa" hint.sio.4.port="0x2a0" hint.sio.4.flags="0x701" hint.sio.5.at="isa" hint.sio.5.port="0x2a8" hint.sio.5.flags="0x701" hint.sio.6.at="isa" hint.sio.6.port="0x2b0" hint.sio.6.flags="0x701" hint.sio.7.at="isa" hint.sio.7.port="0x2b8" hint.sio.7.flags="0x701" hint.sio.7.irq="12" Флаги указывают, что управляющий порт имеет младший номер
устройства | |
15.5. | Может ли FreeBSD использовать несколько многопортовых адаптеров с одинаковым IRQ? |
Пока нет. Вы должны назначить уникальный IRQ для каждого адаптера. | |
15.6. | Можно ли настроить для порта режим работы по умолчанию? |
Смотрите раздел Руководства FreeBSD, посвящённый последовательным соединениям. | |
15.7. | Как сделать вход через модем? |
Ознакомьтесь с разделом Руководства FreeBSD, посвящённого входящим соединениям. | |
15.8. | Как подключить терминал к FreeBSD? |
Информацию по этому вопросы можно найти в разделе Терминалы Руководства FreeBSD. | |
15.9. | Почему не удаётся запустить |
Скорее всего, в вашей системе программы
tip(1) и cu(1) могут получить доступ к каталогу
Вы можете разрешить всем пользователям вашей системы запускать tip(1) и cu(1), выполнив команды:
| |
15.10. | Мой модем Hayes не поддерживается - что можно сделать? |
Смотрите этот ответ в Руководстве FreeBSD. | |
15.11. | Как я должен ввести эти AT-команды? |
Смотрите этот ответ в Руководстве FreeBSD. | |
15.12. | Почему не срабатывает знак |
Смотрите этот ответ в Руководстве FreeBSD. | |
15.13. | Как набрать телефонный номер из командной строки? |
Смотрите этот ответ в Руководстве FreeBSD. | |
15.14. | Нужно ли при этом каждый раз задавать скорость работы с портом? |
Смотрите этот ответ в Руководстве FreeBSD. | |
15.15. | Мне нужно иметь доступ к нескольких хостам через терминальный сервер. |
Смотрите этот ответ в Руководстве FreeBSD. | |
15.16. | Может ли tip использовать несколько телефонов для одного сайта? |
Смотрите этот ответ в Руководстве FreeBSD. | |
15.17. | Почему нужно нажимать Ctrl+P дважды для посылки одного этого символа Ctrl+P? |
Смотрите этот ответ в Руководстве FreeBSD. | |
15.18. | Неожиданно всё стало набираться ЗАГЛАВНЫМИ БУКВАМИ? |
Смотрите этот ответ в Руководстве FreeBSD. | |
15.19. | Как можно передавать файлы с помощью программы
|
Смотрите этот ответ в Руководстве FreeBSD. | |
15.20. | Как использовать zmodem вместе с
|
Смотрите этот ответ в Руководстве FreeBSD. |
16.1. | Почему FreeBSD использует гораздо больше места в разделе подкачки, чем Linux(R)? | ||||||
Это только кажется, что для FreeBSD требуется больше места на разделе подкачки, чем для Linux(R). На самом деле это не так. Главное отличие FreeBSD от Linux(R) в этом плане заключается в том, что FreeBSD активно перемещает неиспользуемые страницы памяти, к которым не было обращений, в раздел подкачки, чтобы увеличить объём доступной физической памяти для активного использования. Linux(R) же перемещает страницы памяти в раздел подкачки только в крайнем случае. Получаемое во FreeBSD увеличение нагрузки на раздел подкачки компенсируется более эффективным использованием оперативной памяти. Заметьте, что, хотя FreeBSD предпочитает использовать раздел подкачки, она не может сбросить все неактивные страницы в своп при полностью неактивной системе. Так что вряд ли может возникнуть ситуация, когда, проснувшись рано утром, вы обнаружите, что вся ваша система находится в разделе подкачки, хотя она простаивала всю ночь. | |||||||
16.2. | Почему утилита top(1) показывает очень маленький объём свободной памяти, даже когда запущено всего лишь несколько приложений? | ||||||
Просто дело в том, что под свободной памятью
подразумевается никак не используемая память. Вся память,
которая вашей программе явно не выделялась, используется
ядром FreeBSD для дискового кэша. Значения, показываемые
утилитой top(1), помеченные как | |||||||
16.3. | Почему командой | ||||||
Символические ссылки не имеют атрибутов доступа, и по
умолчанию утилита chmod(1) следует по символической
ссылке, чтобы по возможности изменить права доступа на
исходный файл. Поэтому, если
у вас есть файл, скажем, с именем
Однако права на файл Чтобы это работало, используйте опцию Предупреждение:Опция
Если задан лидирующий слэш, то chmod(1) будет
следовать символической ссылке, | |||||||
16.4. | Можно ли запускать программы для DOS во FreeBSD? | ||||||
Да, вы можете использовать программу эмуляции DOS emulators/doscmd, включённую в Коллекцию Портов FreeBSD. Если doscmd вас не удовлетворит, то дополнительная утилита emulators/pcemu эмулирует 8088 и набор сервисов BIOS, достаточный для запуска многих приложений текстового режима DOS. Ей требуется X Window System. Также можно попробовать emulators/dosbox из Коллекции Портов FreeBSD. Программа в основном предназначена для эмуляции старых игр, написанных под DOS, для хранения файлов которых используется локальная файловая система. | |||||||
16.5. | Что мне нужно сделать, чтобы перевести документацию FreeBSD на родной язык? | ||||||
Ознакомьтесь с FAQ по Переводам из FreeBSD Documentation Project Primer. | |||||||
16.6. | Почему возвращается моя электронная почта, отправленная на
любой из адресов | ||||||
В почтовой системе
| |||||||
16.7. | Где можно получить бесплатный доступ к FreeBSD? | ||||||
Хотя FreeBSD не предоставляет бесплатный доступ ни к одному из своих серверов, другие компании предоставляют UNIX(R)-системы с открытым доступом. Стоимость этой услуги различна, также как и ограниченный набор услуг. Arbornet, Inc, также известный как M-Net, предоставляет свободный доступ к UNIX(R)-системам с 1983 года. Начиная на платформе Altos с работающей System III, сайт перешёл на BSD/OS в 1991. В июне 2000 сайт сменил систему снова, теперь на FreeBSD. M-Net может быть доступна через протоколы telnet и SSH и предоставляет доступ к полному набору программного обеспечения FreeBSD. Однако доступ к сети ограничен для членов и спонсоров, которые поддерживают систему, которая работает как неприбыльная организация. M-Net предоставляет также услуги электронной доски объявлений (BBS) и интерактивного чата. Grex представляет собой сайт, очень похожий на M-Net, включая то же самое программное обеспечение для электронной доски объявлений (BBS) и интерактивного чата. Однако платформой является SunTM 4M под управлением SunOSTM. | |||||||
16.8. | Что такое | ||||||
Сокращение SUP означает Software Update Protocol, который был разработан в CMU для синхронизации исходных текстов. Он использовался для синхронизации исходных текстов на удалённых сайтах с основным сервером разработки Проекта. Протокол SUP использует пропускную способность канала неэффективно, и был отвергнут. В настоящее время рекомендуемым методом для синхронизации исходных текстов является протокол CVSup. | |||||||
16.9. | Как зовут этого маленького симпатичного красного парня? | ||||||
У него нет определённого имени, он называется просто <<даемон BSD>>. Если вам непременно нужно имя, называйте его <<beastie>>. Заметьте, что <<beastie>> произносится как <<BSD>>. Больше о даемоне BSD вы можете узнать из его домашней страницы. | |||||||
16.10. | Могу ли я использовать изображение даемона BSD? | ||||||
Вполне. Права на даемона BSD имеет Marshall Kirk McKusick. Для выяснения подробностей относительно правил его использования вы можете обратиться к странице автора Statement on the Use of the BSD Daemon Figure. В общем, вы можете свободно использовать изображение в
высокохудожественном стиле и в личных целях, если даются
соответствующие отсылки. Если вы хотите использовать его в
коммерческих целях, вы должны обратиться к Kirk McKusick | |||||||
16.11. | Не найдется ли у вас изображений даемона BSD, которые можно использовать? | ||||||
В каталоге | |||||||
16.12. | При просмотре списков рассылки, я встретил акроним или другой термин, который мне не понятен. Где я должен посмотреть, что он значит? | ||||||
Пожалуйста, обращайтесь к Глоссарию FreeBSD. | |||||||
16.13. | Почему я должен беспокоиться о цвете велосипедных навесов (bikeshed)? | ||||||
На самом деле, очень краткий ответ на этот вопрос заключается в том, что вы этого делать не должны. Если давать более подробный ответ, то ваше умение делать навесы не должно означать, что вы должны препятствовать другим делать их просто потому, что вам не нравится цвет, в который они собираются их окрашивать. Эта метафора означает, что вам не нужно обсуждать каждую мелочь просто потому, что вы знаете о ней достаточно много. Некоторые люди отмечают, что объём шума, генерируемый при появлении некоторого изменения, находится в обратной зависимости от сложности самого изменения. Более пространный и полный ответ заключается в том, что после очень
долгого обсуждения того, должна ли утилита sleep(1) обрабатывать
дробное число, заданное в качестве второго аргумента, Poul-Henning Kamp
|
17.1. | Насколько греется процессор при работе FreeBSD? |
В. Кто-нибудь делал замеры температуры при работе FreeBSD? Я знаю, что Linux(R) греется меньше, чем DOS, но никогда не видел упоминания FreeBSD. Наверное, он сильно греется. О. Нет, но мы сделали различные вкусовые тесты у добровольцев с завязанными глазами, которые до этого приняли по 250 микрограмм LSD-25. 35% добровольцев заявило, что FreeBSD имеет вкус апельсина, тогда как вкус Linux(R) расценивался как фиолетовый туман. Ни одна из групп не отметила значительной разницы в температуре. Мы хотели опубликовать полные результаты этого опроса, когда обнаружили, что слишком много добровольцев покинули помещение во время тестов, что несколько смазало результаты. Думаем, что большинство из них работают сейчас в Apple над их новым GUI <<чеши и нюхай>>. Это старый добрый бизнес! Серьёзно, и FreeBSD, и Linux(R) используют инструкцию HLT (halt), когда система простаивает, что уменьшает потребление энергии и в свою очередь, выделение тепла. Вдобавок, если у вас настроен APM (комплексное управление энергопотреблением), то FreeBSD может переводить процессор в режим пониженного энергопотребления. | |
17.2. | Кто там скребётся в микросхемах памяти?? |
В. Делает ли FreeBSD что-нибудь <<эдакое>> при компиляции ядра, что вызывает поскрипывание микросхем памяти? При компиляции (и в короткий промежуток времени после обнаружения дисковода при старте системы) от микросхем памяти исходит странный царапающий звук. О. Да! Вы, наверное, видели частое упоминание <<даемонов>> в документации по BSD, но не многие знают, что это настоящие нематериальные существа, которые теперь завладели вашим компьютером. Царапающий звук, издаваемый микросхемами памяти - это на самом деле высокочастотное перешёптывание между даемонами, когда они решают, как лучше справиться с различными задачами по администрированию системы. Если шум достиг ваших ушей, команда DOS | |
17.3. | Сколько требуется разработчиков FreeBSD, чтобы сменить электрическую лампочку? |
Необходимо иметь ровно одну тысячу сто шестьдесят девять разработчиков: Двадцать три сообщат в -CURRENT о том, что не горит свет; Четыре начнут утверждать, что это проблема конфигурации и такие сообщения нужно посылать в -questions; Трое оформят PR по этому поводу, причём одно их них будет направлено в doc и будет содержать только строчку <<здесь темно>>; Один закоммитит неоттестированную лампочку, что сломает построение системы, а затем через пять минут вернёт всё назад; Восемь поругаются с авторами PR по поводу включения патчей в PR; Пять сообщат о том, что не проходит компиляция системы; Тридцать один человек ответит, что у них всё работает и наверное, те выполняли cvsup в неподходящее время; Один пошлёт патч для новой лампочки в -hackers; Один пожалуется, что у него имелись патчики ещё три года назад, но когда он послал их в -CURRENT, они были проигнорированы и он имел неудачный опыт работы с системой PR; кроме того предлагаемая лампочка не имеет отражателя. Тридцать семь начнут кричать, что лампочки не относятся к базовой системе, что коммиттеры не имеют права делать такие вещи без опроса общественности и ЧТО ВООБЩЕ -CORE ДЕЛАЕТ ПО ЭТОМУ ПОВОДУ? Две сотни напишут о цвете велосипедного навеса; Трое скажут, что этот патч не соответствует style(9) Семнадцать возразят, что предлагаемая новая лампа подпадает под лицензию GPL; Пятьсот восемьдесят шесть раздуют флейм по поводу сравнения лицензий GPL, BSD, MIT, NPL и личных мнений о неизвестных основателей FSF; Семеро пошлют различные части этих обсуждений в -chat и -advocacy; Один закоммитит предлагаемую лампу, хотя она светит хуже, чем старая; Двое откатят эти изменения с ужасной руганью в журнале коммитта о том, что лучше FreeBSD будет сидеть в темноте, чем с тусклой лампой. Сорок шесть громко воспротивятся этому изменению и потребуют объяснений от -core; Одиннадцать попросят уменьшить размер лампочки, чтобы она подошла к их Тамагочи на случай, если мы когда-нибудь соберёмся переносить FreeBSD на эту платформу; Семьдесят три заявят о SNR в -hackers и -chat и в знак протеста отпишутся; Тринадцать пошлют письма <<unsubscribe>>, <<How do I unsubscribe?>> или <<Please remove me from the list>> с обычной подписью; Один закоммитит работающую лампочку в то время, как все будут слишком заняты руганью, чтобы это заметить; Тридцать один человек напишет, что новая лампочка будет светить на 0.364% ярче, если её откомпилировать с помощью TenDRA (хотя при этом она приобретёт форму куба) и что FreeBSD должна перейти на компилятор TenDRA, а не на GCC; Один заметит, что у лампочки отсутствует цоколь; Девять (включая авторов PR) спросят <<что такое MFC?>>; Спустя две недели после смены лампочки пятьдесят семь человек сообщат о том, что света всё равно нет. Nik Clayton Я сильно смеялся над всем этим. И тогда я подумал, <<Постойте-ка, найдётся ли кто-нибудь, чтобы задокументировать это?>> И на меня снизошло озарение :-) Thomas Abthorpe | |
17.4. | Куда направляются данные, записываемые в
|
Они отправляются в специальную сточную трубу для данных
в CPU, где преобразуются в тепло, выдуваемое через охлаждающие
вентиляторы. Вот почему охлаждение ЦП становится все более
важным; так как люди используют все более быстрые процессоры,
они все менее заботятся о данных, все большее их количество
оканчивает свой путь в Пол Робинсон (Paul Robinson) добавляет: Есть и другие методы. Как знает каждый хороший системный администратор, частью хорошей практики является посылка данных на экран интересным образом, чтобы феи, которые образуют картинку, были счастливы. Экранные феи (часто неправильно называемые <<пикселами>>) различаются по цвету головных уборов, которые они носят (красные, зеленые или синие), и прячутся или появляются (показывая, таким образом, цвет своих шляп), когда получают немного пищи. Видеоадаптеры преобразуют данные в еду для фей, а затем посылают ее феям - чем дороже адаптер, тем лучше еда, тем лучше ведут себя феи. Они также нуждаются в постоянной стимуляции - вот зачем нужны хранители экранов. Продолжив наше предположение, вы можете просто выдавать случайные данные на консоль, таким образом позволяя феям их потреблять. Это вовсе приводит к прекращению выделения тепла, феи постоянно счастливы, а данные быстро исчезают, даже если на вашем экране все выглядит несколько хаотично. Как бывший администратор крупного провайдера, который имел много проблем при попытке поддерживать постоянную температуру в серверной комнате, я выступаю против того, чтобы люди посылали ненужные им данные в сеть. Волшебников, которые выполняют коммутацию пакетов и маршрутизацию, это также затрудняет. |
18.1. | Как можно узнать больше о внутреннем устройстве FreeBSD? |
В настоящее время существует только одна книга по внутреннему
устройству ОС, посвящённая FreeBSD, а именно <<The Design and
Implementation of the FreeBSD Operating System>> Маршалла
Кёрка МакКузика (Marshall Kirk McKusick) и Джорджа В. Невилле-Нейла
(George V. Neville-Neil), ISBN 0-201-70245-2. В ней
рассматривается FreeBSD версии 5. Кроме того, большинство общих знаний о UNIX(R) непосредственно применимо к FreeBSD. Список относящихся к делу книг можно найти в разделе Руководства Библиография по внутреннему устройству операционной системы. | |
18.2. | Как можно оказать помощь проекту FreeBSD? |
Пожалуйста, обратитесь к соответствующей статье, в которой вы получите советы относительно того, как это сделать. Ваша помощь более чем приветствуется! | |
18.3. | Что такое снапшоты и релизы? |
В Хранилище CVS сейчас находятся четыре активно/полуактивно развивающихся ветки FreeBSD. (Более ранние ветки изменяются очень редко, именно поэтому в разработке только четыре активных ветки):
На данный момент -CURRENT является
находящимся в разработке деревом 10. | |
18.4. | Как самому сделать релиз? |
Пожалуйста, обратитесь к статье о процессе выпуска релизов. | |
18.5. | По команде |
Да, так и должно быть; как говорит название этой команды,
Если в момент запуска команд | |
18.6. | Почему |
Хотя зеркала CVSup обновляются
с основного CVSup-сервера каждый
час, это обновление может происходить в любой момент в течение
часа. Это значит, что некоторые серверы будут иметь более новый
код, чем остальные, хотя разница между версиями кода не превышает
часа. Если бы для серверов | |
18.7. | Можно ли работать с -CURRENT при ограниченном доступе в Internet? |
Да, это можно делать без скачивания полного дерева исходных текстов с помощью системы CTM. | |
18.8. | Как вы разделяете дистрибутив на файлы по 1392 Кбайт? |
Команда split(1) в современных BSD-системах имеет опцию
Вот пример из файла
ZIPNSPLIT= gzip --no-name -9 -c | split -b 1392k - | |
18.9. | Я написал некоторое добавление к ядру, кому его послать? |
Обратитесь к статье о том, как помочь проекту FreeBSD, чтобы выяснить, как это сделать. И спасибо Вам за Ваши усилия! | |
18.10. | Как распознаются и инициализируются адаптеры ISA Plug N Play? |
От: Фрэнка Дурды IV (Frank Durda IV)
Если рассматривать на самом низком уровне, то существует
несколько портов ввода/вывода, в которые должны выводить
информацию все адаптеры PnP, когда компьютер пытается
выполнить запрос о наличии установленных адаптеров. Так что,
когда запускается процедура определения адаптеров PnP, она
выполняет запрос о наличии каких-либо адаптеров PnP, а все
такие адаптеры выдают свой номер модели при чтении того же
порта ввода/вывода, поэтому процедура определения получит
ответ на свой запрос, состоящий из логически наложенных
номеров моделей, интерпретируемый как <<да>>.
В этом ответе по крайней мере один бит будет установлен в
единицу. Затем код определения адаптеров может
<<выключать>> адаптеры с ID (назначаемыми
Microsoft(R)/Intel(R)), большими, чем ID представляет собой два 32-разрядные числа (отсюда число 264) + 8 бит контрольной суммы. Первые 32 бита являются идентификатором производителя. Они никогда не сообщаются, однако часто бывает, что различные типы адаптеров от одного и того же производителя имеют различные 32-битные значения идентификатора производителя. Необходимость в 32 разрядах только для задания производителя адаптера выглядит несколько излишним. Оставшиеся 32 бита являются серийным номером или чем-либо, делающим этот адаптер уникальным. Производитель не должен выпускать других адаптеров, имеющих то же самое значение этих битов, если, конечно, у них не различаются при этом старшие биты идентификатора производителя. Так что вы можете иметь несколько адаптеров одинакового типа; при этом, 64-разрядные номера будут разными. Группы по 32 бита не могут быть нулевыми. Это позволяет при логическом объединении OR их номеров получать ненулевое значение во время начального поиска адаптеров. Как только система определила ID всех адаптеров, она активизирует каждый адаптер, по одному за раз (через те же порты ввода/вывода), и определяет, какие ресурсы требуются данному адаптеру, какие возможные прерывания доступны и т.д. Сканирование и сбор информации происходит по всем адаптерам. Эта информация соотносится с содержащейся в файлах ECU на диске или в MLB BIOS. Поддержка PnP из ECU и BIOS для аппаратуры на MLB обычно имеет синтетический характер, и периферия не выполняет полностью процедуру настоящего PnP. Однако, используя BIOS и информацию из ECU, процедура инициализации может обнаружить устройства PnP, которые не могут быть найдены другим способом. Затем устройства PnP опрашиваются ещё раз для назначения им портов ввода/вывода, DMA, IRQ и адресов отображаемой памяти. Теперь устройства должны иметь именно такие настройки и они должны оставаться такими до следующей перезагрузки, хотя нигде не сказано, что вы не можете их менять, когда захотите. Здесь сделано много упрощений, однако общую идею вы должны уловить. Microsoft(R) использовала для PnP некоторые порты статуса
первого принтера, по их логике, не существует адаптеров,
использующих эти адреса для ввода/вывода. Я обнаружил один
такой адаптер принтера от IBM, который декодирует запись в
порт статуса в момент начального опроса устройств PnP, на
что Microsoft(R) ответила <<хулиган>>. Так что они
выполняют запись в порт статуса принтера для установки адресов,
вдобавок используют этот адрес + | |
18.11. | Мне нужно старшее число для написанного мною драйвера устройства. |
В версиях FreeBSD, вышедших после февраля 2003 года, есть механизм динамического и автоматического выделения старших номеров для драйверов устройств во время выполнения (смотрите devfs(5)), поэтому в этом нет необходимости. | |
18.12. | Альтернативный метод размещения каталогов |
В ответ на вопрос о других методах размещения каталогов
могу сказать, что используемая в настоящее схема не претерпела
изменений с того момента, как я реализовал её в 1983 году.
Эти соглашения были разработаны для оригинальной файловой
системы FFS, и я никогда их не пересматривал. Эта схема хорошо
работает, позволяя избежать переполнения групп дорожек. Как
некоторые из вас заметили, она работает плохо при поиске.
Большинство файловых систем создаются из архивов, которые были
созданы с глубиной первого поиска (aka ftw). Это приводит к
тому, что их каталоги размещаются на нескольких группах дорожек,
создавая наихудший случай для последующего поиска глубиной один.
Если бы было известно общее количество каталогов, которые должны
быть созданы, выходом было бы создание каталогов в количестве
Kirk McKusick | |
18.13. | Что делать при аварийном останове системы? |
Вот типичная паника ядра: 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 Если вы видите такое сообщение, просто его воспроизвести
и послать нам не достаточно. Здесь важно значение указателя
инструкций; к сожалению, его значение зависит
от конфигурации ядра. Другими словами, его значение меняется
в зависимости от конкретного ядра, которое вы используете.
Если вы используете ядро Вот что вы должны сделать:
Тем не менее, лучшим способом выяснить причину, вызвавшую аварийный останов, является получение аварийного дампа системы, а затем использование kgdb(1) для получения трассировки вызовов в этом дампе. В любом случае, метод таков:
Примечание:Если вы не используете переменную make
В процессе выполнения команды make(1) будут
построены два ядра,
Чтобы включить сброс аварийного дампа, вам нужно
отредактировать файл Примечание:Аварийные дампы FreeBSD обычно имеют размер, равный
физическому объёму оперативной памяти вашей машины. Так
что если у вас установлено 512 Мбайт ОЗУ, вы получите
дамп размером 512 Мбайт. Поэтому вы должны
удостовериться, что в каталоге Как только вы получили аварийный дамп, вы можете выполнить трассировку вызовов с помощью kgdb(1) таким образом:
Заметьте, что при этом может быть выведено несколько экранов информации; в идеале вы должны использовать script(1) для их перехвата. При использовании необработанного образа ядра со всей отладочной информацией может быть найдена конкретная строка исходного текста ядра, при достижении которой случилась аварийная остановка. Для выяснения последовательности событий, приведших к аварийному останову, обычно читается трассировка стека снизу вверх. Вы можете также использовать kgdb(1) для вывода значений различных переменных или структур, чтобы выяснить состояние системы во время аварии. Подсказка:Теперь, если вы в самом деле душевнобольной и у вас есть второй компьютер, то вы можете настроить kgdb(1) для удалённой отладки, так, что сможете использовать kgdb(1) на одном компьютере, чтобы отладить ядро на другом, включая использование точек останова, пошагового прохода по коду ядра, всё как с обычной прикладной программой. Примечание:Если у вас включена поддержка | |
18.14. | Перестала работать функция |
По умолчанию при работе с форматом ELF символы,
определённые в исполняемом файле, не доступны динамическому
загрузчику. Поэтому при вызове функции
Если вы хотите осуществить поиск в выполнимом файле
процесса с помощью функции | |
18.15. | Как я могу увеличить или уменьшить адресное пространство ядра в архитектуре i386? |
По умолчанию размер адресного пространства ядра для i386 равен 1 Гбайт (2 Гбайт для PAE). Если вы используете FreeBSD в качестве сервера с интенсивной сетевой нагрузкой (скажем, большой FTP или HTTP сервер) или хотите использовать ZFS, то вы можете обнаружить, что этого недостаточно. Чтобы увеличить доступное пространство, добавьте следующую строку в файл конфигурации ядра и пересоберите его: options KVA_PAGES= Чтобы получить нужное значение для
|
Этот небольшой скромный документ с ответами на часто задаваемые вопросы создавался, переписывался, редактировался, сокращался, растягивался, уродовался, потрошился, пристально разглядывался, полностью перетряхивался, обдумывался, отвергался, перестраивался, критиковался и снова укреплялся в течение последнего десятилетия силами сотен, если не тысяч, людей. Постоянно.
Мы хотим поблагодарить всех их и приглашаем вас присоединиться, чтобы сделать этот FAQ ещё лучше.
[biblio-unleashed] FreeBSD Unleashed. Sams. 1st edition. 992 pages. October 2001. ISBN 0-67232-206-4.
[biblio-44sysman] 4.4BSD System Manager's Manual. O'Reilly and Associates. 1st edition. June 1994. 804 pages. ISBN 1-56592-080-5.
[biblio-44userman] 4.4BSD User's Reference Manual. O'Reilly and Associates. 1st edition. June 1994. 905 pages. ISBN 1-56592-075-9.
[biblio-44suppman] 4.4BSD User's Supplementary Documents. O'Reilly and Associates. 1st edition. June 1994. 712 pages. ISBN 1-56592-076-7.
[biblio-44progman] 4.4BSD Programmer's Reference Manual. O'Reilly and Associates. 1st edition. June 1994. 866 pages. ISBN 1-56592-078-3.
[biblio-44progsupp] 4.4BSD Programmer's Supplementary Documents. O'Reilly and Associates. 1st edition. June 1994. 596 pages. ISBN 1-56592-079-1.
[biblio-44kernel] The Design and Implementation of the 4.4BSD Operating System. Addison-Wesley. Reading MA . 1996. ISBN 0-201-54979-4.
[biblio-freebsdkernel] The Design and Implementation of the FreeBSD Operating System. Addison-Wesley. Boston MA . 2004. ISBN 0-201-70245-2.
[biblio-nemeth3rd] Unix System Administration Handbook. Prentice-Hall. 3rd edition. 2000. ISBN 0-13-020601-6.
[lehey3rd] The Complete FreeBSD. Walnut Creek. 3rd edition. June 1999. 773 pages. ISBN 1-57176-246-9.
[biblio-ja-fbsdpc98] FreeBSD for PC 98'ers (in Japanese). SHUWA System Co, LTD.. ISBN 4-87966-468-5 C3055 P2900E.
[biblio-ja-compintro] Complete Introduction to FreeBSD (in Japanese). Shoeisha Co., Ltd. ISBN 4-88135-473-6 P3600E.
[biblio-ja-unixstarterkit] Personal UNIX Starter Kit FreeBSD (in Japanese). ASCII. ISBN 4-7561-1733-3 P3000E.
[biblio-ge-fbsdmitmeth] FreeBSD mit Methode (in German). Computer und Literature Verlag/Vertrieb Hanser. 1998. ISBN 3-932311-31-0.
[biblio-ja-fbsdinstandutil] FreeBSD install and Utilization Manual (in Japanese). Mainichi Communications Inc..
[biblio-indo-intserv] Building Internet Server with FreeBSD (in Indonesia Language). Elex Media Komputindo.
[biblio-cantfindadmin] What You Need To Know When You Can't Find Your Unix System Administrator. O'Reilly & Associates, Inc.. 1995. ISBN 1-56592-104-6.
[biblio-ja-fbsdusrrefman] FreeBSD User's Reference Manual (Japanese translation). Mainichi Communications Inc.. 1998. ISBN 4-8399-0088-4 P3800E.
[biblio-newcomeunix] <<Online Guide for newcomers to the UNIX environment>>. Edinburgh University.
[biblio-dnsandbind] DNS and BIND. O'Reilly & Associates, Inc. ISBN 1-56592-512-2. 1998. 3rd edition.
[biblio-esssysadmin] Essential System Administration. 2nd edition. O'Reilly & Associates. 1995. ISBN 1-56592-127-5.
[biblio-tcpipnetworkadministration] TCP/IP Network Administration. 2nd edition. O'Reilly & Associates, Inc. 1997. ISBN 1-56592-322-7.
[biblio-managingnfsandnis] Managing NFS and NIS. O'Reilly & Associates, Inc. 1991. ISBN 0-937175-75-7.
[biblio-jpmanprojectjfug] FreeBSD System Administration's Manual. Mainichi Communications Inc.. 1998. ISBN 4-8399-0109-0 P3300E.
[biblio-portingunixsoft] Porting UNIX Software. O'Reilly & Associates, Inc.. 1995. ISBN 1-56592-126-7.
[biblio-advprogintheunixenv] Advanced Programming in the UNIX Environment. Addison-Wesley. 1992. ISBN 0-201-56317-7.
[biblio-unixnetprog] UNIX Network Programming. Prentice Hall. 1998. 2nd edition. ISBN 0-13-490012-X.
[biblio-writeserialdriverforunix] Writing Serial Drivers for UNIX. December 1994. Dr. Dobb's Journal. pp68-71, pp97-99.
[biblio-tcpipillv1theprotocols] TCP/IP Illustrated, Volume 1: The Protocols. Addison-Wesley. 1996. ISBN 0-201-63346-9.
[biblio-unixsysformodrnarch] Unix Systems for Modern Architectures. Addison-Wesley. 1994. ISBN 0-201-63338-8.
[biblio-tcpipillvol3] TCP/IP Illustrated, Volume 3: TCP for Transactions, HTTP, NNTP and the UNIX Domain Protocols. Addison-Wesley. 1996. ISBN 0-201-63495-3.
[biblio-unixinternthenewfrontiers] UNIX Internals -- The New Frontiers. Prentice Hall. 1996. ISBN 0-13-101908-2.
[biblio-tcpipillvol2theimplementation] TCP/IP Illustrated, Volume 2: The Implementation. 1995. Addison-Wesley. ISBN 0-201-63354-X.
[biblio-firewallsandinternetsecurity] Firewalls and Internet Security: Repelling the Wily Hacker. Addison-Wesley. 1995. ISBN 0-201-63357-4.
[biblio-practicalunixsecurity] Practical UNIX Security. 1996. 2nd edition. O'Reilly & Associates, Inc. ISBN 1-56592-148-8.
[biblio-pgpprettygoodprivacy] PGP Pretty Good Privacy. O'Reilly & Associates, Inc. 1995. ISBN 1-56592-098-8.
[biblio-pentiumprocarch] Pentium Processor System Architecture. Addison-Wesley. 1995. 2nd edition. ISBN 0-201-40992-5.
[biblio-progguidetothesvgacards] Programmer's Guide to the EGA, VGA, and Super VGA Cards. 3rd edition. Addison-Wesley. 1995. ISBN 0-201-62490-7.
[biblio-bellsystemtechnicaljournal] Bell System Technical Journal, Unix Time-Sharing System. American Telephone & Telegraph Company. July-August 1978. Vol 57, No 6, Part 2. ISSN0005-8580.
[biblio-commentaryonunix] Lion's Commentary on UNIX. ITP Media Group. 1996. 6th edition. ISBN 1573980137.
[biblio-newhackerdict] The New Hacker's Dictionary. MIT Press. 1996. 3rd edition. ISBN 0-262-68092-0.
[biblio-unixhatershandbook] The UNIX-HATERS Handbook. IDG Books Worldwide, Inc. 1994. ISBN 1-56884-203-1.
[biblio-bsdfamilytree] The BSD Family Tree. 1997.