Родерик Смит - Сетевые средства Linux
- Название:Сетевые средства Linux
- Автор:
- Жанр:
- Издательство:Издательский дом Вильямс
- Год:2003
- Город:Москва
- ISBN:5-8459-0426-9
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Родерик Смит - Сетевые средства Linux краткое содержание
В этой книге описаны принципы действия и область применения многих серверов, выполняющихся в системе Linux. Здесь рассматриваются DHCP-сервер, серверы Samba и NFS, серверы печати, NTP-сервер, средства удаленной регистрации и система X Window. He забыты и средства, традиционно используемые для обеспечения работы Internet-служб: серверы DNS, SMTP, HTTP и FTP. Большое внимание уделено вопросам безопасности сети. В данной книге нашли отражения также средства удаленного администрирования — инструменты Linuxconf, Webmin и SWAT.
Данная книга несомненно окажется полезной как начинающим, так и опытным системным администраторам.
Отзывы о книге Сетевые средства LinuxПоявилась прекрасная книга по Linux, осталось воспользоваться ею. Не упустите свой шанс.
Александр Стенцин, Help Net Security, www.net-security.orgЕсли вы стремитесь в полной мере использовать сетевые возможности Linux — эта книга для вас. Я настоятельно рекомендую прочитать ее.
Майкл Дж. Джордан, Linux OnlineВыхода подобной книги давно ожидали читатели. Менее чем на 700 страницах автор смог изложить суть самых различных вопросов, связанных с работой Linux. Автор является высококвалифицированным специалистом в своей области и щедро делится своими знаниями с читателями.
Роджер Бертон, West, DiverseBooks.comСетевые средства Linux - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
На первый взгляд может показаться, что все средства, которые будут использоваться при работе системы, следует включить в основной файл ядра, однако такой подход имеет серьезный недостаток: при этом увеличивается объем оперативной памяти, занимаемой ядром. Кроме того, размер файла ядра на диске также увеличивается, что может создавать трудности при загрузке системы. Поэтому в системе Linux предусмотрена возможность компилировать средства, соответствующие большей части опций, в виде модулей. Это позволяет работать с ядром небольшого размера и в то же время обеспечивает поддержку большого количества разнообразных устройств. В частности, в виде модулей могут быть скомпилированы средства для работы с большинством сетевых устройств, поэтому драйверы, включаемые в состав дистрибутивных пакетов, обычно подготавливаются именно в таком виде.
Если администрирование компьютера под управлением Linux является вашей обязанностью, то именно вам предстоит решить, следует ли использовать драйверы сетевых карт, реализованные в виде модулей, или их следует включить в состав ядра. Если вы включите драйвер сетевой карты непосредственно в ядро системы, вам не придется обеспечивать при настройке системы, чтобы перед началом сетевого обмена загружался требуемый модуль. (На самом деле система, поставляемая как дистрибутивный пакет, изначально сконфигурирована так, что данная задача решается корректно.) С другой стороны, если вы администрируете большое количество компьютеров, на которых установлена система Linux, то, возможно, предпочтете создать ядро и набор модулей, которые будете устанавливать на различные компьютеры. В этом случае целесообразно реализовать драйверы в виде модулей.
Программные средства поддержки стека протоколов также могут быть непосредственно включены в ядро или скомпилированы как модули. (Исключением являются протоколы TCP/IP; их можно либо включить в основной файл ядра, либо не использовать вовсе; в виде модулей можно реализовать лишь средства, соответствующие некоторым подопциям опции, управляющей использованием данного стека протоколов.) Так, например, если вы знаете, что каталоги в файловых системах других компьютеров, предоставляемые средствами NFS, будут использоваться лишь непродолжительное время, целесообразно реализовать средства поддержки клиента NFS как отдельный модуль. Поступив таким образом, вы сэкономите часть оперативной памяти в течение времени, когда средства NFS не используются, но монтирование внешних каталогов будет осуществляться несколько дольше, чем это было бы в том случае, если бы фрагмент кода, реализующий клиент NFS, был включен непосредственно в ядро.
Как вы, наверное, поняли, однозначного ответа на вопрос, надо ли включать коды поддержки опций непосредственно в ядро или их следует компилировать как отдельные модули, не существует. Я рекомендую вам сначала выяснить, насколько часто соответствующие средства будут использоваться в процессе работы системы. Если они должны использоваться постоянно, включайте их в основной файл ядра; если же они будут задействованы лишь эпизодически, компилируйте их в виде отдельных модулей. Если размер ядра становится слишком велик и при его загрузке средствами LOADLIN (DOS-утилита для загрузки Linux) возникают проблемы, следует отдать предпочтение модульной организации ядра. Возможность загрузки с помощью LOADLIN желательно сохранить, так как это поможет справиться с некоторыми проблемами.
Компиляция ядра
После того как вы сконфигурировали ядро системы, выполнив make xconfig
или другую команду, приведенную в начале данной главы, вы должны скомпилировать ядро и установить его модули. Для этого необходимо выполнить следующие команды:
# make dep
# make bzImage
# make modules
# make modules_install
Первая из этих команд выполняет подготовительную работу. Слово dep
сокращенно обозначает dependency, соответственно при выполнении команды make dep анализируются выбранные вами опции и определяется, какие исходные файлы зависят от других. Если вы пропустите этот шаг, компиляция будет выполнена некорректно.
В результате выполнения второй команды строится основной файл ядра, который имеет имя bzImage
и обычно размещается в каталоге /usr/src/linux/arch/i386/boot
. Существуют различные варианты данной команды. Например, при создании ядра небольшого размера можно использовать команду make zImage
(ядро в формате bzImage
дает возможность загрузчику, например LILO, обрабатывать ядро большего размера, чем это позволяет zImage
). Как zImage
, так и bzImage
представляют собой сжатые варианты ядра. Они являются стандартом для компьютеров x86, но на других платформах вам придется вместо make bzImage
вызвать команду make vmlinux
. В результате выполнения данной команды строится несжатое ядро. Каталог, в который помещается основной файл ядра, может отличаться от приведенного выше. Если вы работаете на компьютере, отличном от x86, вместо каталога i386
будет использован каталог, имя которого соответствует текущей платформе. Так, например, на PowerPC этот каталог имеет имя ррс
.
Команда make modules
, как нетрудно догадаться, компилирует модули ядра. По команде make modules_install
файлы, содержащие эти модули, копируются в соответствующие позиции в каталоге /lib/modules
. В частности, в каталоге /lib/modules
создается каталог, имя которого отражает версию ядра, а в нем, в свою очередь, — подкаталоги для конкретных классов драйверов.
Команды make dep
, make bzImage
(или эквивалентную ей команду) и make modules
может выполнить любой пользователь, при условии, что он обладает правами чтения и записи данных в каталогах, содержащих исходные коды ядра. Выполнить команду make modules_install
может только пользователь root.
В зависимости от установленных опций и от быстродействия компьютера, процесс компиляции ядра может занять от нескольких минут до нескольких часов. Как правило, основной файл ядра создается дольше, чем модули, но если число модулей велико, для их создания может потребоваться больше времени, чем для создания ядра. При компиляции на экран монитора выводится большое число сообщений, описывающих ход обработки исходных файлов. Иногда отображаются предупреждающие сообщения, на которые можно не обращать внимание. При появлении сообщения об ошибке компиляция прерывается.
Проблемы, возникающие при компиляции ядра
Если вы корректно установили опции, компиляция ядра, как правило, проходит без проблем, но в некоторых случаях возникают ошибки. Проблемы, встречающиеся при компиляции ядра, описаны ниже.
Читать дальшеИнтервал:
Закладка: