Иллюстрированный самоучитель по Linux Red Hat 7.1

         

Автоматизация соединения с Internet


Если РРР-соединения с Internet используются часто, то необходимость ввода длинных команд pppd для каждого соединения будет ограничивать практическое использование Linux для связи с Internet.

Чтобы исключить необходимость ввода длинных команд, можно создать два сценария: для дозвона и для окончания связи. Эти сценарии называются dial и hangup. Соответствующие файлы надо поместить в каталог пользователя, например /usr / local /bin.

Ниже приведено краткое описание сценариев dial и hangup. Оно позволит вам использовать их в дальнейшем на любом компьютере пользователя. Эти сценарии можно создать в любом текстовом редакторе. Важно, чтобы строки, которые выглядят как одна строка, оставались одной строкой и в файле пользователя.

Для сценария dial предполагаем, что при соединении с Internet используется РАР, пример которого рассмотрен ранее в главе.

Если сценарии dial и hangup созданы, их выполнение обеспечивается командой chmod.

$ chmod 700 dial hangup

Параметр 700 позволяет считывать, записывать и выполнять сценарий только пользователю root. Все будет работать прекрасно, но выполнять эту команду должен только пользователь root при установлении РРР-соединения. Если вы хотите разрешить использование сценария всем пользователям в вашей группе, задайте 750 вместо 700. Если вы хотите разрешить использование сценария всем пользователям, имеющим доступ к вашей системе Linux, задайте 755 вместо 700.

Совет

Создавать эти сценарии целиком своими руками нет необходимости. Если в Red Hat Linux 7.1 установлен пакет ррр rpm, то уже сконфигурированные сценарии доступны в каталоге /usr/share/doc/ppp-2.4.0/scripts. Например, можете настроить сценарии ррр-on и ppp-of f так же, как и описанные ниже dial и hangup.



Часы X Windows


Вероятно, вы уже обратили внимание на часы, расположенные на панели GNOME. Однако некоторые пользователи предпочитают иметь на рабочем столе цифровые часы или стрелочные, но большего размера.

Это можно устроить с помощью программы xclock - программы отсчета времени с окном в виде цифровых или стрелочных часов. По умолчанию, часы должны быть стрелочными, поэтому результат ввода команды

$ xclock &

или



$ /usr/X11R6/bin/xclock &

показан на рис. 9.23.

Рис. 9.23.

Форма часов по умолчанию

Если задать флажок -digital, часы примут форму, показанную на рис. 9.24.

Ноп Jan 15 11:29:31 2001

Рис. 9.25.

Цифровые часы

Это не единственный флажок, воспринимаемый программой xclock. Можно придать стрелочным часам более привлекательный вид, воспользовавшись флажками -hd и -hi. Первый флажок меняет цвет стрелок, второй - цвет их ободка. Помните обсуждение системы цветопередачи RGB? Сейчас самое время применить полученные знания.

К примеру, после ввода команды

$ xclock -hd yellow -hi green &

на экране появятся часы, на которых желтые стрелки с зеленым ободком, изображенные на рис. 9.25 (увы, на черно-белой иллюстрации такие часы удается разглядеть не без труда).

Рис. 9.25.

Установка цвета стрелок

Обратите внимание на отсутствие контраста между стрелками и циферблатом. Это можно исправить, установив стандартный флажок X Windows -bg, который уже встречался нам при рассмотрении окна xterm. Если воспользоваться командой

$ xclock -hd yellow -hi green -bg black &

часы будут иметь вид как на рис. 9.26.

Рис. 9.26.

Установка цвета фона

Теперь стрелки видны отчетливо, зато черные метки циферблата совершенно не видны на черном фоне. Поскольку эти метки рассматриваются как элементы изображения, изменим их цвет с помощью стандартного флажка X Windows - f g. Введя команду

$ xclock -hd yellow -hi green -bg black -fg cyan &

получим часы, показанные на рис. 9.27.

Рис. 9.27.

Установка цвета изображения



Х-ресурсы


База данных Х-ресурсов снабжает программы значениями параметров, определяющих, среди прочего, цвета и шрифты. Х-ресурсы используются в большинстве программ X Windows для определения всеми опциями, управляемыми флажками командной строки. В базе данных Х-ресурсов можно записать набор параметров программы по умолчанию, который будет удобнее ее собственного.



Конфигуратор с графическим интерфейсом


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

Запустите систему X Windows (с любыми графической средой и рабочим столом).

Откройте окно эмулятора терминала (окно командной строки).

Введите команду

su

для получения прав корневого пользователя.

Перейдите в каталог, в котором записаны исходные тексты.

# cd /usr/src/linux-2.4.2

Примечание

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

Выполните следующую команду.

#make xconfig

Примечание

Графической конфигурационной утилите требуется несколько инструментальных пакетов системы X Windows. Если после ввода команды make xconfig появляются сообщения об ошибках, проверьте, установлены ли в системе нужные инструментальные пакеты.

Как и при запуске предыдущей утилиты, на экране промелькнет несколько сообщений о компиляции утилиты, и через несколько минут откроется ее главное окно (рис. 20.6).

Рис. 20.5.

Утилита конфигурирования ядра с графическим интерфейсом: меню и кнопки установки значений параметров

Совет

Любой графической программе требуется больше системных ресурсов, чем аналогичной программе текстового режима. При недостаточном объеме оперативной памяти графическая утилита может оказаться слишком медлительной. В таком случае воспользуйтесь конфигурационной утилитой с меню текстового режима, описанной в предыдущем параграфе

Графическая утилита не слишком отличается от утилиты menuconf ig. Здесь параметры также разбиты на категории; после щелчка на определенной категории открывается диалоговое окно со списком параметров, каждому из которых можно установить значение, определяющее, что соответствующее средство должно задействоваться как составляющая часть ядра, как загружаемый модуль или не задействоваться вообще. Такое диалоговое окно показано на рис. 20.6.

Рис. 20.6.

В диалоговых окнах, подобных этому, устанавливаются конфигурационные параметры ядра




Совет

Ядро 2.4.2 в Red Hat Linux по умолчанию поддерживает симметричную мультипроцессорную архитектуру. Установите для соответствующей опции значение п, если в вашем компьютере всего один процессор.

Справа от каждого параметра находится кнопка Help (Справка), щелчком на которой открывается окно со сведениями о параметре (рис. 20.7). Сведения, предоставляемые справочными системами, совпадают во всех трех конфигурационных утилитах.





Рис. 20.7.

В графической конфигурационной утилите справочные сведения выводятся в отдельном окне

Большое преимущество графической конфигурационной утилиты (особенно его оценят те, кто впервые конфигурирует ядро) - отражение в меню зависимости между различными параметрами. Например, в разделе Block Devices (Блочные устройства) нельзя установить поддержку систем RAID, встроенную в ядро, пока не будет включен параметр Multiple Device Driver Support (Поддержка драйверов для нескольких устройств).

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

В конце главного меню графической утилиты находятся команды, аналогичные соответствующим командам утилиты с меню текстового режима.



Save and Exit (Выход с сохранением).

Создание файла конфигурации ядра и завершение работы утилиты.



Quit Without Saving (Выход без сохранения).

Завершение работы утилиты без создания файла конфигурации ядра.



Предупреждение

Без создания файла конфигурации ядра при помощи одной из перечисленных утилит рекомпиляция ядра невозможна.



Load Configuration From File (Загрузка конфигурации).

Загрузка конфигурационного файла, созданного ранее.



Store Configuration To File (Запись конфигурации).

Запись конфигурационных данных в файл с указанным именем (для дальнейшего использования или передачи коллеге). Это не влияет на необходимость выполнения команды Save and Exit, создающей конфигурационный файл для рекомпиляции ядра.


Linux в мулыпиязыковом варианте


Для большинства основных дистрибутивов существуют версии или, по крайней мере, инсталляторы на разных языках. Приведенный ниже список включает несколько дистрибутивов Linux, доступных на нескольких языках (кроме английского).



Подготовка


Ниже приведена процедура, позволяющая подготовить гибкий диск Linux Router Project в рамках системы Linux. На момент написания книги необходимые файлы можно было загрузить с одного из сайтов, перечисленных по адресу http: / /www. linuxrouter. org/download. shtml.

Загрузите файл образа Linux и сохраните его, где вам удобно, например, в / tup/. На момент написания книги самый свежий образ диска idipt-image_1440KB_FAT_2.9.8_Linux_2.2. gz.

Смените текущий каталог на каталог, в котором находится загруженный файл, командой cd /tmp.

Разверните архив. Образ диска хранится в gz ip-формате, который можно развернуть командой; gunzip idiot-image_1440KB_FAT_2.9.8_Linux_2.2.gz

Скопируйте файл образа диска на флоппи-диск, используя команду dd if=idiot-image_1440KB_FAT_2.9.8_Linux_2.2 of=/dev/fd0

Теперь у вас есть загрузочный диск для дистрибутива Linux Rquter Project. Но это еще не все Необходимы также драйверы сетевых плат, использующие ту же версию ядра (в данном случае -

2.2.16-1).

Повторите описанный процесс для файла 2.2.16-1. tar. gz, доступного на том же сайте Скопируйте его в каталог /tmp. Разверните и разархивируйте его с помощью команды tar xzvf 2.2.16-1. tar.gz. Скопируйте сетевые модули из развернутого подкаталога /tmp

2.2.16-1/modules/net-, на второй гибкий диск. В дальнейшем вам понадобятся оба диска.

Примечание

На момент, написания книги версия 2.9.8 Linux Router Project находилась в стадии бета-тестирования. Другими словами, до тех, пока она не перейдет в категорию финальной реализации, не рекомендуется использовать ее в производственном оборудовании.

Убедитесь, что аппаратное обеспечение достаточно для решения поставленных задач. Хотя компьютер 386SX с оперативной памятью 8 Мбайт можно использовать как маршрутизатор, а компьютер 486DX2 66 МГц с 12 Мбайт ОЗУ - еще лучше, сегодня желательно работать с Pentium 100 МГц или более мощной системой с оперативной памятью объемом не менее 16 Мбайт. Если происходит загрузка с дискеты, то нет необходимости в жестком диске. Если желательно добавить много модулей add-on в конфигурацию Linux Router Project, то объем программного обеспечения может превысить емкость дискеты и придется рассмотреть возможность загрузки с жесткого диска или загрузочного Zip-диска и увеличить объем оперативной памяти до 32 Мбайт. Подробности загрузки с других носителей описаны на домашней странице Linux Router Project.




Предупреждение

Если вы используете компьютер на базе Intel-процессора типа 386 или 486, то наилучший вариант - использование образов дисков с устаревшей командой ipfwadm, базирующейся на ядре версии 2.0.36. В рамках приведенной выше процедуры используйте файл образа диска idiot-image_1440KB_FAT_2.9.8_Linux2.0.gz И файл модуля ядра 2.0.36prel5-l. tar.gz.



Примечание

фирма Slackware предлагает вариант своего дистрибутива Linux, который ориентирован на



Использование С Zip-ДраЙВОМ. Подробнее СМ. ПО адресу

http : / /www . Slackware . com zipslack.

Необходимо, чтобы персональный компьютер имел две платы Ethernet. Одна - для связи с незащищенной сетью, а другая - для соединения с защищенной.


Программа init


В этом параграфе подробно рассмотрена программа init, поскольку именно с ней связана возможность определения программ, запускаемых во время загрузки системы. Задача программы init - запуск новых процессов и повторный запуск завершившихся. Прекрасным примером может служить набор процессов, обеспечивающих в Linux виртуальные консоли-входа в систему. В большинстве версий Linux шесть таких консолей загружаются при загрузке системы. После выхода из окна консоли соответствующий процесс завершается, и программа init запускает новый. В системе постоянно доступны шесть консольных окон.

Правила, по которым действует программа init, записаны в файле /etc/inittab. В Linux Red Hat 7.1 этот файл выглядит следующим образом.

#

# inittab В этом файле описана установка процессом INIT

# системы на определенном рабочем уровне. #

# Автор: Miquel van Smoorenburg, <miquels@drinkel.nl.mugnet.org>

# Модифицировано для Linux Red Hat Марком Юингом

# (Marc Ewing) и Донни Барнсом (Dormie Barnes)

# Рабочий уровень по умолчанию. Рабочие уровни Linux Red Hat:

# 0 - останов (Не следует применять)

# 1 - Однопользовательский режим

# 2 - Многопользовательский, без NFS (Аналогичен уровню 3, но без сети)

# 3 - Полный многопользовательский режим

# 4 - не используется

# 5 - X11

# 6 - перезагрузка (Не следует применять) #

id:3:initdefault:

# Инициализация системы.

si::sysinit:/etc/re.d/rc.sysinit

10:0:wait:/etc/rc.d/rc 0

11:l:wait:/etc/re.d/rc 1

12:2rwait:/etc/re.d/rc 2

13:3:wait:/etc/re.d/rc 3

14:4:wait:/etc/re.d/rc 4

15:5:wait:/etc/re.d/rc 5

16 : 6 rwait: /etc/зге .d/rc 6

# Программы, запускаемые на всех уровнях, ud::once:/sbin/update

# Нажатие CTRL-ALT-DELETE

ca::ctrlaltdel:/sbin/shutdown -t3 -r now

# Когда источник бесперебойного питания сообщает об отключении

# питания, до окончательного прекращения питания остается

# несколько минут.

# Планируем выключение системы через 2 минуты.

# Конечно, предполагается, что питание, в том числе источник


# бесперебойного питания, установлены и работают нормально.

pf::powerfail:/sbin/shutdown -f -h +2 " Power Failure; System Shutting Down"

# Если питание восстановлено до выключения системы, отменить выключение. pr:12345:powerokwait:/sbin/shutdown -с "Power Restored; Shutdown Cancelled"

# Запуск gettys на стандартных рабочих уровнях 1:2345:respawn:/sbin/mingetty ttyl

2:2345:respawn:/sbin/mingetty tty2

3:2345:respawn:/sbin/mingetty tty3

4:2345:respawn:/sbin/mingetty tty4

5:2345:respawn:/sbin/mingetty tty5

6:2345:respawn:/sbin/mingetty tty6

# Запуск xdm на рабочем уровне 5

# xdm представляет отдельную службу

х:5:respawn:/usr/bin/X11/xdm -nodaemon

Необязательно писать такой файл самостоятельно, но важно понимать то, что в нем написано.

В Linux реализована система рабочих уровней

(run levels).

Рабочий уровень - это число, соответствующее текущему состоянию системы. Для разных рабочих уровней\пределены процессы, которые программа init должна запускать и поддерживать в рабочем состоянии. В первой записи файла init tab указан рабочий уровень, устанавливаемый по умолчанию во время загрузки системы. В предыдущем примере это уровень 3, соответствующий многопользовательскому консольному режиму.

Во втором поле каждой из последующих записей указано, для каких рабочих уровней эта запись действительна (поля разделены двоеточиями). Таким образом, для уровня 3 действительны следуг ющие строки:

13:3:wait:/etc/rc.d/rc 3

1:2345:respawn: /sbin/mingetty ttyl

2:2345:respawn:/sbin/mingetty tty2

3:2345:respawn:/sbin/mingetty tty3

4:2345:respawn:/sbin/mingetty tty4

5:2345:respawn:/sbin/mingetty tty5

6:2345:respawn:/sbin/mingetty tty6

Последние шесть строк указывают установку шести виртуальных консолей Linux, по первой стартует сценарий запуска /etc/rc.d/rc 3. Это приводит к запуску всех сценариев, записанных в каталоге /etc/re.d/rc3 .d. Эти сценарии представляют программы, запускаемые при инициализации системы - sendmail, службы PCMCIA, демон принтера и crond. Они определяют поведение системы по умолчанию и, как правило, не редактируются.



Примечание

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

Обратите внимание: последний сценарий, запускаемый файлом rc3.d - S991ocal. По существу, это ссылка на файл /etc/re. d/rc. local, в котором можно указать запуск любых программ в процессе загрузки системы.

В каждой системе Linux может быть своя структура файла /etc/inittab и каталога /etc/ re. d. Однако во всех системах в файле /etc/re. d/rc. local можно указать запуск собственных программ при загрузке системы.


Редактирование командной строки


Одна из возможностей Bash, отсутствовавшая в более ранних оболочках (Bourne Shell или С Shell) - редактирование командной строки. Без этого допущенную в наборе команды ошибку можно было исправить, только удалив все символы после нее. Например, если в команде

$ /usr/kocal/bin/mycommand

ошибочно набрано "kocal" вместо "local", то вернуть курсор к "k" можно только удалив все последующие символы, которые придется набрать вновь после исправления ошибки. Надо ли объяснять, насколько это неэффективно!

В современных оболочках, в том числе и Bash, предусмотрен полный набор средств редактирования командной строки. Курсор можно перемещать по строке при помощи клавиш со стрелками, при необходимости удаляя или вставляя символы. Ввод команды нажатием клавиши Enter можно выполнять, не перемещая курсор в конец строки. По умолчанию, командная строка Bash находится в режиме вставки, так что набираемые символы не замещают существующие, а вставляются между ними.

Чтобы ускорить редактирование командной строки, особенно при наборе длинных команд, в Bash предусмотрено несколько функциональных комбинаций клавиш, перечисленных в табл. 16.1.

Табл. 16.1.

Функциональные комбинации клавиш для редактирования командной строки

Комбинация клавиш

Функция

Ctrl+A

Переход в начало строки

Ctrl+E

Переход в конец строки

Ctrl+B

Переход на один символ влево

Ctrl+F

Переход на один символ вправо

Esc, В

Переход на одно слово влево

Esc,F

Переход на одно слово вправо

Ctrl+L

Очистка экрана с выводом командной строки вверху

Ctrl+D

Удаление символа в текущей позиции курсора

Backspace

Удаление символа слева от курсора

Ctrl+T

Поменять местами символ в позиции курсора с символом слева от него

Esc, Т

Поменять местами слово в позиции курсора со словом слева от него

Esc, U

Перевод текущего слова в верхний регистр

Esc.L

Перевод текущего слова в нижний регистр

Esc, С

Перевод текущего слова в нижний регистр с заглавной первой буквой

Ctrl+K

Удаление символов от позиции курсора до конца строки

Тот, кто работает в редакторе emacs, сразу обратит внимание, что в приведенной таблице перечислены функциональные комбинации клавиш именно этого редактора. Действительно, набор функциональных клавиш оболочки Bash позаимствован из emacs. Можно установить альтернативный набор из редактора vi, но последний, как и его набор функциональных клавиш, менее популярен среди программистов и опытных системных администраторов, поэтому в данной книге не рассматривается.

Список команд из табл. 16.1 - лишь незначительная часть всех команд редактирования, предоставляемых оболочкой Bash. Однако это основные функции, необходимые большинству пользователей для эффективной работы. Более подробный список функций редактирования можно найти в разделе HEADLINE страницы руководства оболочки Bash, для вывода которой необходимо ввести в командной строке man bash.



С помощью программы xf86config


Программа Xconfigurator входит в комплект лишь одного дистрибутива - Linux Red Hat - и представляет лишь один из способов конфигурирования системы XFree86, имеющей собственную конфигурационную программу xf86config, входящую во все дистрибутивы Linux.

Эта программа также управляется меню, но имеет меньше возможностей и, по сравнению с Xconfigurator, кажется несколько нескладной. Однако xf86config допускает ручной ввод параметров с клавиатуры и с помощью мыши. Для запуска xf86config введите следующую команду.

$ xf86config Откроется вводный экран, показанный на рис. 7.11.

Рис. 7.11.

Вводный экран программы xf86config

Совет

Для успешного завершения всех операций конфигурирования X Windows в программе xf86config, необходимо войти в систему как корневой пользователь (суперпользователь, привилегированный пользователь).

Примечание

При конфигурировании программа Xf86config выводит на экран очень много текстовой информации. Вводный экран - тому пример. Если вы пока не успели основательно изучить Xf86config, внимательно читайте выводимые тексты. Это позволит вам принимать правильные решения. После выбора одной из опций в списке и перехода к следующему экрану возврат уже невозможен, придется перезапускать Xf86config.

На рис. 7.12 показан первый список программы - список моделей мыши. Выберите нужную мышь, введите в командной строке число, которым она помечена, и нажмите Enter. После этого придется ответить на несколько вопросов, среди которых могут быть следующие.

"Do You Want to Enable ChordMiddle?" (Задействовать среднюю кнопку?). Если у вас 3-кнопоч-ная Microsoft-совместимая мышь от компании Logitech, можете выбрать ChordMiddle, чтобы задействовать среднюю кнопку; иначе будут действовать только правая и левая кнопки.

"Do You Want to Enable EmulateSButtons?" (Включить эмуляцию 3-кнопочной мыши?). Этот параметр следует установить, если у вас 2-кнопочная мышь с протоколом 2-кнопочной мыши, например Microsoft-совместимым. Щелчок средней кнопкой мыши, необходимый в некоторых программах X Windows, эмулируется при щелчке левой и правой кнопками одновременно.






Рис. 7.12.



Выбор протокола мыши

Последний параметр, который надо ввести, - устройство мыши. Если у вас та же мышь, которую вы конфигурировали в процессе установки Linux (гл. 4), то укажите

/dev/mouse.

Поскольку это значение предлагается по умолчанию, достаточно просто нажать Enter.



Примечание

Версия xf86config, входящая в состав Red Hat Linux 7.1, не распознает USB-периферию. Если у вас USB-мышь и Red Hat Linux 7.1, воспользуйтесь утилитой /usr/sbin/mouseconf ig.

Далее следует процедура конфигурирования клавиатуры. Первый экран содержит меню доступных типов клавиатур, как показано на рис. 7.13.

Выберите тип, соответствующий вашей клавиатуре. Для большинства компьютеров Северной Америки больше других подходит Generic 101-key (Стандартная 101-клавишная) или Generic 104-key (Стандартная 104-клавищная), После выбора типа клавиатуры из этого списка, на экран будет выведен список языков и диалектов. Этот список не помещается на экране полностью, и очередная его часть выводится нажатием клавиши Enter.





Рис. 7.13.



Список клавиатур

Продолжим конфигурирование клавиатуры. Следующий вопрос - "Do you want to select additional XKB options?" (Выбрать ли параметры ХКВ?). ХКВ - дополнение к X Windows, упрощающее определение раскладок клавиатуры для разных языков на многоязычных клавиатурах. Установите этот параметр, ответив Y (Да).

Далее наступает черед диапазонов частот горизонтальной и вертикальной развертки монитора. Первый список параметров показан на рис. 7.14.





Рис. 7.14.



Список для выбора диапазона частот горизонтальной развертки

Если добиться полного соответствия диапазона частот горизонтальной развертки не удается, но вы знаете, каковы точные значения этого параметра для вашего монитора, выберите "Enter Your Own Horizontal Sync Range" (Введите свои значения диапазона частот горизонтальной развертки) и введите их. Если у вас нет этих сведений, укажите значения, которые, по вашему мнению, не должны выходить за пределы диапазона частот мониторов подобных типов. Для среднего 15-дюймового многочастотного монитора попробуйте выбрать Super VGA или Extended Super VGA, для менее качественного 14-дюймового - Standard VGA.



Теперь настал черед диапазона частот вертикальной развертки. Программа Xf86config предлагает небольшое число вариантов. Можно выбрать Enter Your Own Vertical Sync Range (Введите собственные значения диапазона частот вертикальной развертки) и ввести нужные значения. Если они вам не известны, безопаснее всего выбрать минимальный диапазон, в большинстве версий XFree86 равный 50—70 Гц.

Программа xf86config предложит указать идентификатор, изготовителя и наименование или номер модели монитора. Эти сведения не относятся к конфигурационным параметрам, но их нужно знать на случай, если они вдруг понадобятся.

Далее необходимо сконфигурировать карту видеоадаптера или микропроцессорный набор. Программа предлагает просмотреть список известных видеоадаптеров и микропроцессорных наборов и выбрать нужный. Если выбрать просмотр, на экран будет выведен список видеоадаптеров (рис. 7.15).





Рис. 7.15.

Список видеоадаптеров

Следующая страница списка выводится нажатием клавиши Enter. Чтобы выбрать видеоадаптер, наберите его номер в списке (с любой страницы) и нажмите Enter. He найдя подходящего видеоадаптера, выйдите из данной процедуры, введя команду q.

После выбора видеокарты на экране появляется список объемов видеопамяти (рис. 7.16).





Рис. 7.16.



Список объемов видеопамяти

Итак, вы указали объем видеопамяти, и теперь необходимо ввести идентификатор, изготовителя и модель карты видеоадаптера. Эти сведения не отражаются на работе X Windows, поэтому можно вводить любую информацию, которую легко отыскать и распознать, если вдруг придется вручную редактировать конфигурационный файл XFree86.

Теперь надо выбрать видеорежимы (см. рис. 7.17). Можно установить несколько видеорежимов, чтобы затем менять их, не перезагружая X Windows. Будьте внимательны, чтобы не принять предлагаемый по умолчанию режим, превышающий возможности видеоадаптера и монитора. К примеру, маловероятно, что 14-дюймовый монитор может обеспечить разрешение 1280x1024, а карта с видеопамятью в 512 Кбайт - 24-разрядную цветовую схему (при любом разрешении).







Рис. 7.17.



Меню глубины цвета

Осталось ответить на последнюю группу вопросов, касающихся места записи конфигурационного файла xf86config. Вначале следует указать, записывать ли конфигурационный файл xf86config в каталог /etc/X11/XF86Conf ig, назначаемый по умолчанию. Записывая файл в другое место, вы не рискуете уничтожить прежний конфигурационный файл, который может понадобиться, если новый окажется неработоспособным. Если вы уже какое-то время работаете с X Windows и намерены внести в конфигурацию лишь незначительные изменения, следует сохранить копию старого конфигурационного файла, прежде чем записывать новую.

Если ответить на этот вопрос п (Нет), программа xf86config предложит несколько альтернативных каталогов для записи конфигурационного файла (см. ниже).

Итак, программа спрашивает, записывать ли файл в каталог по умолчанию (обычно /usr/XHR6/lib/X11/XF86Conf ig). Чтобы указать другой каталог, ответьте п (Нет).

Затем следует вопрос, записать ли файл в текущий каталог. Если текущий каталог логический (например, исходный каталог корневого пользователя или / tmp), можно ответить у (Да). Если ответить п, программа потребует указать полный путь к месту записи нового конфигурационного файла и его имя.

Чтобы воспользоваться результатами конфигурирования (если они оказываются удовлетворительными), необходимо записать новый файл в каталог, предназначенный для конфигурационного файла XFree86. В большинстве версий Linux это каталог /etc/XF86Conf ig или /etc/X11/XF86Config, BRedHat7.1-/etc/X11/XF86Config.

Можно перед запуском xf86config создать резервную копию конфигурационного файла в другом каталоге. Тогда новый файл можно спокойно записывать в каталог по умолчанию. Копирование файлов подробно рассмотрено в гл. 14, а сейчас мы только приведем пример команды создания резервной копии конфигурационного файла XFree86 дистрибутива Red Hat 7.1.

$ ср /etc/X11/XF86Config /etc/X11/XF86Config.keep

По этой команде создается копия конфигурационного файла /etc/X11/XF86Config. keep.


Сетевой адаптер


Для установки сетевого адаптера нужна следующая информация:

изготовитель и модель сетевого адаптера;

номер прерывания (IRQ);

адрес(а) ввода-вывода;

специализированные драйверы (если есть);

совместимость с драйверами сетевых адаптеров Novell 1000 или 2000.

Некоторые сетевые адаптеры снабжены дисками с драйверами для среды Linux. Если таких драйверов нет, но адаптер совместим с адаптерами Novell 1000 или 2000, то можно использовать драйверы этих адаптеров.



Совместное использование каталогов в сети


Прежде чем другие пользователи смогут получить доступ к вашим файлам/каталогам, вы должны сделать эти каталоги доступными для совместного использования в сети. Экспорт каталогов с NFS предполагает использование двух демонов, /usr/sbin/rpc .nfsd и /usr/sbin/rpc .mountd, и одного файла конфигурации /etc/exports. Файлы rpc.mountd и rрс. nfsd устанавливаются на большинстве систем. Если эти файлы отсутствуют, установите их из RPM-файла nf s-utils-0.3.1-5.1386. rpm прилагаемого компакт-диска.

NFS и брандмауэры

Если в ходе установки Red Hat Linux 7.1 вы установили брандмауэр по умолчанию, он заблокирует совместное использование каталогов в NFS. Если ваш компьютер входит в локальную сеть и не имеет выходов в другие сети, можно отключить брандмауэр на нем. Брандмауэр действительно необходим только на компьютере, имеющем выход во внешние сети (например, на компьютере, играющем роль шлюза).

Большинство брандмауэров Linux отключается либо командой /etc/re, d/init.d/ipchains stop либо командой /etc/re .d/init. d/iptables stop. Но такое отключение действует только до следующей перезагрузки. Совсем отключить брандмауэр можно с помощью меню ntsysv. Выполните команду /usr/sbin/ntsysv. Как только возникнет меню Services (Сервисы), сбросьте флажки сервисов ipchains и iptables, как показано на следующей иллюстрации.

Если каталог, который вы хотите разрешить для совместного использования, расположен На компьютере-шлюзе, подключенном к вашему компьютеру и Интернету, то брандмауэр необходим. Даже работая с брандмауэром, лучше не использовать NFS из соображений безопасности. Но если вам все-таки необходимо использовать NFS для предоставления доступа к каталогам на компьютере-шлюзе, воспользуйтесь утилитой конфигурирования брандмауэра, описанной в гл. 31, чтобы открыть порты 111 и 2049. Таким образом будут открыты каналы, необходимые для Network File System.

Первый шаг к совместному использованию каталога в сети - редактирование файла /etc/ exports в текстовом редакторе и добавление по одной записи для каждого каталога, который вы планируете использовать совместно. Запись должна быть следующей.


/каталог хост (параметры)

Ниже приведен пример типичного файла /etc/exports.

# sample /etc/exports file

/ master(rw). trusty(rw,no_root_squash)

/projects proj* . local ..domain (rw)

/usr *.local.domain(ro)

/home/joe pcOOl(rw,all_squash,anonuid=150,anongid=100)

/pub (ro,insecure,all_sguash)

/pub/private (noaccess)



Рассмотрим этот файл построчно.



Строка 1.

Строка комментариев, обозначенная знаком диеза (#), игнорируется.

Строка



2. Двум компьютерам даны различные уровни доступа к каталогу /: master - с правом чтения и записи (опция rw), trusty - с правом чтения и записи и правом полного доступа ко всем файлам и подкаталогам для пользователя root (опция no_root_squash). Пользователь root компьютера trusty имеет те же права, что и пользователь root локальной системы.



Строка 3.

Любому хост-компьютеру, имя которого начинается с символов proj и который является частью домена local. domain, предоставляются права чтения и записи в каталоге /projects.



Строка 4.

Любому хост-компьютеру в домене local. domain предоставляется право на чтение (опция го) каталога /usr.



Строка 5.

Хост-компьютер рс 0 01 получает права на чтение и запись в каталог / home / j oe. Все пользователи, использующие эту точку монтирования с компьютера pc001, считаются анонимными пользователями (опция all_squash) с ID пользователя 150 и ID группы 150 (опции anonuid=150 и anongid=150).



Строка 6.

Всем хост-компьютерам предоставлено право доступа к каталогу /pub. Все пользователи считаются анонимными и получают право чтения. Опция insecure позволяет клиентам, которые не используют зарезервированный порт ТСР/IР для NFS, осуществлять доступ к этой точке монтирования.



Строка 7.

Всем хост-компьютерам запрещен доступ к каталогу /pub/private (опция noaccess).

С другими опциями для файла /etc/exports можно ознакомиться в руководстве, используя команду

$ man exports

Если каталог для экспорта определен как /etc/exports, необходимо перезапустить процессы rpc. nf sd и rpc . mountd (обычно они выполняются во время начальной загрузки). Сначала используется команда ps для проверки ID каждого процесса.



$ ре aux | grep rpc.nfsd

root 15-03 0.2 0.8 872 508 ? S 22:25 0:00 /usr/sbin/rpc.nfsd

$ ps aux | grep rpc.mountd

root 1105 0 0.7 836 500 ? S 22:25 0:00 /usr/sbin/rpc.mountd

Затем следует уничтожить и перезапустить процессы.

$ kill 1103 1105; /usr/sbin/rpc.nfsd; /usr/sbin/rpc.mountd



Предупреждение

Выполните на вашем компьютере указанные выше команды ps aux. С учетом параметров вашего компьютера, числа, выдаваемые командами ps aux, должны отличаться от 1103 и 1105.

Теперь для доступа удаленных пользователей сети работают новые правила экспорта.



Совет

В некоторых дистрибутивах Linux для перезапуска rpc.nfsd и rpc. mountd необходимо перезапустить демон nfs. Например, в Red Hat Linux 7.1 следует выполнить команду /etc/re.d/init.d/nfs restart в режиме корневого пользователя.


Сравнение локальных и удаленных почтовых ящиков


На первый взгляд, различие между локальными и удаленными почтовыми ящиками незначительно, но именно оно является основой для понимания различных типов почтовых программ Unix/Linux.

В большинстве сетей Unix/Linux почта пользователей хранится в локальном почтовом ящике в формате Berkeley Mail Folders (в честь Калифорнийского университета в Berkeley, в котором он был разработан). Почтовые системы Unix/Linux, которые отвечают за маршрутизацию входящих и исходящих сообщений (например, Sendmail), автоматически помещают новые сообщения в персональные почтовые ящики пользователей в этом стандартном формате. Пользователи могут использовать любое стандартное почтовое приложение Unix для просмотра своих сообщений, создания новых сообщений и организации своих почтовых ящиков.

В мире Linux работают все используемые в Unix почтовые инструменты. При обсуждении небольших коммерческих сетей вы увидите, что Berkeley Mail Folder с Sendmail и почтовый клиент Unix - это типичные решения для предоставления пользователям возможностей электронной почты.

Но для пользователей домашних компьютеров почта обычно находится в почтовом ящике на удаленном сервере ISP. Доступ программного обеспечения к этим удаленным папкам реализуется так же, как и к локальным в формате Berkeley Mail Folders. Но в этом случае необходимо использовать почтовые программы, работающие с протоколом РОРЗ или МАР4. Эти протоколы обеспечивают различные способы доступа к удаленным почтовым ящикам.

Примечание

POP - сокращение от Post Office Protocol (Почтовый Протокол). РОРЗ - второй основной POP-стандарт; РОР2 был популярен в 1980-х годах. IMAP - сокращение от Internet Message Acceefe Protocol (Протокол Доступа к Сообщениям Internet). IMAP4 впервые был реализован в 1995г.



Введение в порты Linux


В среде Linux каждому периферийному физическому устройству или порту подключения сопоставляется один или несколько файлов в специальном каталоге / dev. Это относится к жестким дискам, устройствам CD-ROM, параллельным и последовательным портам.

Основной принцип достаточно прост. Рассмотрим для примера жесткий диск.

В Linux каждому жесткому диску IDE присваивается имя hdx, где х принимает значения "а" (для первого диска на первичной шине IDE), "b" (для второго диска на первичной шине ШЕ), "с" (для первого диска на вторичной шине IDE) и т.д. Таким образом, имя главного вторичного диска - /dev/hdc.

Примечание

Жесткие SCSI-диски и SCSI-диски CD-ROM аналогичным образом обозначаются

sdx.

В каталоге / dev имеется составляющая для каждого дискового раздела. Например, второму разделу первичного подчиненного диска присваивается имя /dev/hdb2, первому разделу вторичного главного- /dev/hdcl.

Параллельные порты в Linux

Рассмотрим параллельные порты. В DOS и Windows параллельным портам присваиваются имена LPT1:, LPT2 :, LPT3 : и т.д. Как правило, в ПК один параллельный порт с именем LPT1:.

В Linux параллельным портам сопоставляются файлы устройств 1рх, где х - номер порта. Это основное отличие от DOS и Windows: нумерация портов начинается не с единицы, а с нуля, так что LPT1: в Linux соответствует /dev/lp0, a LPT2 : - /dev/ lpl. В DOS возможна ситуация, когда единственный параллельный порт компьютера имеет имя, отличное от LPT1:; в Linux этому порту будет присвоено имя /dev/lpO, как первому доступному порту.

Теперь перейдем к последовательным портам, понимание принципов рабств которых важно для правильной установки модема.

Последовательные порты в Linux

В Linux каждому последовательному порту сопоставляется два файла устройств - для исходящих и входящих соединений. Файлы исходящих соединений называются ttySx, где

х-

номер, начинающийся с нуля. Таким образом, порту СОМ1: из DOS в Linux соответствует /dev/ttyS0, COМ2 : - /dev/ ttySl. В ранних версиях Linux последовательному порту сопоставлялся еще один файл устройства. Это файл сиах, где х - номер, начинающийся с нуля. Таким образом, в этих версиях СОМ1: соответствовали файлы /dev/ ttyS0 и /dev/cua0, COM4: - /dev/ttyS3 и dev/сuаЗ. Адреса портов сведены в таблицу 18.2.



Табл. 18.2.
Последовательные порты в DOS и Linux












Имя DOS



Файлы устройств Linux



Унаследованные файлы устройств




СОМ1:
COM2:
COM3:
COM4:


/dev/ttyS0
/dev/ttyS1
/dev/ttyS2
/dev/ttyS3


/dev/cua0
/dev/cua1
/dev/cua2
/dev/cua3








Но запомнить эти имена устройств для большинства людей сложно. К счастью, при конфигурировании модема большинство Linux-дистрибутивов организует связь между файлом /dev/modem и реальным устройством. Это можно проверить, выполнив команду 1s -1 /dev/modem. Результат должен быть таким:

lrwxrwxrwx 1 root root 10 Feb 3 19:21 /dev/modem -> /dev/ttyS0

Примечание
В современных версиях Linux используется только файл /dev/ttySx, поддержка же /dev/cuax остается исключительно для обеспечения совместимости. Со временем надобности в поддержке этого файла не будет.

USB-порты в Linux
Теоретически, можно подсоединить до 32 USB-модемов к Linux-компьютеру. Чтобы использовать USB-модемы, необходимо убедиться в том, что соответствующие USB-модули включены в ядро (вопросы конфигурирования ядра обсуждаются в гл. 20). Некоторые USB-модули уже включены в состав последних дистрибутивов, включая Red Hat Linux 7.1.

Для USB модемов также необходим модуль Communication Device Class Abstract Control Module, кратко acm; о. Если он не входит в ядро, следует включить его в текущую конфигурацию. В Red Hat Linux 7.1 необходимо компилировать этот модуль в состав ядра. Более подробно вопросы модификации ядра рассмотрены в гл. 20. Покончив с формированием необходимого ядра, можно запускать следующую команду:

# /sbin/insmod /lib/modules/2.4.2-2/kernel/drivers/usb/acm.o

Если версия вашей команды insmod или ядра другая, задайте ее в команде соответствующим образом. Используемый в вашем Linux-дистрибутиве каталог может отличаться.

Соответствующие устройства уже должны существовать в каталоге /dev/usb. Проверьте это с помощью команды Is -I /dev/usb/ ttyACM*. Результат должен выглядеть приблизительно так:

crw-rw----- 1 root root 188, 0 Aug 24 09:00 /dev/usb/ttyACM0

crw-rw----- 1 root root 188, 0 Aug 24 09:00 /dev/usb/ttyACM1
crw-rw----- 1 root root 188, 0 Aug 24 09:00 /dev/usb/ttyACM2
crw-rw----- 1 root root 188, 0 Aug 24 09:00 /dev/usb/ttyACM3
Если у вас результат отличается от приведенного, выполните следующую команду: mknod /dev/usb/ttyACM0 с 166 0

Повторите эту команду, подставив ttyACM1, ttyACM2 и другие USB-порты по мере необходимости.

Выбор языка интерфейса Linux


Теперь можно выбрать тот язык, который будет использоваться интерфейсом Red Hat Linux 7.1 во время работы (после завершения установки). В системе можно выбрать один из 104 языков и диалектов. Если вы испытываете недостаток в дисковом пространстве, то выбирайте только те языки, которые действительно будут нужны в работе. Выбор все доступных языков приведет к тому, что на диске будет дополнительно занято 135 Мбайт.



Выход и сохранение результатов


Завершив все конфигурационные операции в LinuxConf, необходимо выйти из этой программы, активизировав изменения конфигурационных параметров. Для этого выберите команду File/Act|Changes (Файл/Активизировать изменения). Если потребуются дополнительные изменения, то появится окно подтверждения, подобное изображенному на рис. 15.16. В этом окне указано, что необходимо сделать для сохранения внесенных изменений в системных файлах Linux.

Рис. 15.16.

Выход из LinuxConf В окне подтверждения можно выбрать один из следующих вариантов.

Задействовать внесенные изменения кнопкой Do It.

Отменить выход из LinuxConf щелчком на кнопке Do Nothing (He выходить). Теперь выйдите из программы LinuxConf, выполнив команду File/Quit (Файл/Выход).



Zeus


Zeus - последний Web-сервер, рассматриваемый в этой главе. Последняя версия Zeus - 3.3.8 -представляет Web-сервер для Unix/Linux и Macintosh OS X. Он предлагает встроенную поддержку кластеризации, что явно дает серверу потенциальные преимущества для объемных сайтов. Кластеризация позволяет реализовать обслуживание одного Web-адреса несколькими Web-серверами.

Это дает возможность распределить нагрузку запросов по всем серверам группы, а значит обрабатывать большее количество запросов одновременно.

Упомянутые возможности позволили Zeus стать Web-сервером для ряда наиболее загруженных Web-сайтов, включая eBay и British Telecom. Разработки, ориентированные на ядро Linux 2.4, позволяют надеяться на то, что мощность Zeus Web-сервера будет расти. В настоящее время IBM Linux Technology Center считает, что производительность Zeus-серверов для ядра Linux 2.4 почти вдвое выше, чем у серверов на базе ядра Linux 2.2.

Кроме того, Zeus предлагает поддержку ISAPI (API из Internet Information Server фирмы Microsoft) как под Unix, так и под Windows NT/2000. Zeus поддерживает сервлеты (servlet) Java, подобные тем, которые используются в Java Web Server, и предлагает интегрированную связность с базами данных при помощи стандарта доступа к базам данных JDBC.

Zeus предлагает 128-битовое шифрование SSL по всему миру. Из-за того, что Правительство США ограничивает экспорт 128-битовой технологии шифрования, компании США предлагают на экспорт криптографические программные продукты с "ослабленной" 56-битовой кодировкой. Большинство сообщений о взломе шифров программ, таких как Netscape, относились к версиям программ с 56-битовой кодировкой.

Информация о Zeus доступна по адресу www. zeus. со. uk.



Best Linux


Best Linux представляет собой независимый дистрибутив финского происхождения. Последняя версия - Best Linux 2000 - спроектирована для установки непосредственно в "графической Windows-подобной КDЕ оболочке рабочего стола, которая включает все необходимое для решения повседневных задач программное обеспечение". Best Linux включает поддержку для финского, шведского, английского, русского, эстонского, французского, немецкого и испанского языков. В него также включена частичная поддержка 14 других европейских языков.

SOT Finnish Software Engineering Ltd.

Hermiankatu 8 E Fin-33720 Tampere

Finland

E-mail: finlandebestlinux.net

WWW:

http://www.bestlinux.net/



Доступ к удаленным файловым системам


Доступ к удаленным файлам и каталогам выполняется с помощью команды mount. $ mount

remote-directory-name local-directory

Удаленный каталог remote-directory-name указывается как

hostname: /directory-name,

a

local-directory-

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

Рассмотрим пример. Предположим, пользователю необходимо обратиться к каталогу / test /dir на компьютере fоо. bаr в локальной сети; каталог доступен для удаленного монтирования через NFS. На компьютере пользователя есть пустой каталог / fоо, который станет точкой монтирования для удаленного каталога.

Для определения этого каталога используется команда mount.

$ mount foo.bar:/test/dir /foo

Эта команда указывает монтировать каталог /test/dir на компьютере foo.bar в локальный каталог / foo. После выполнения этой команды пользователь может обращаться к файлам и подкаталогам удаленного каталога в соответствии с назначенными файлам правами доступа. Распечатка содержимого каталога / foo - это список содержимого каталога / test/dir на компьютере

foo.bar.

Предупреждение

Существует одно неудобство в системе NFS. На локальной системе пользователь root имеет абсолютные права на открытие, чтение или удаление файла в любом месте файловой системы, независимо от того, кто создал или кто является владельцем файла. Но в монтированном удаленном каталоге пользователь root имеет серьезные ограничения при работе с моделью NFS: он может осуществлять доступ лишь к тем файлам и каталогам, для которых ему предоставлены явные права.



Файловая система


Важную часть задач графической системы составляет доступ к файлам. Linux имеет полностью встроенный диспетчер файлов. Непосредственное обращение к файловой системе возможно из главного меню КDЕ с помощью Quick Browser, однако без того уровня сервиса, который обеспечивается диспетчером файлов.

Рассмотрим работу с окнами диспетчера файлов KDE и подменю Quick Browser главного меню.



Хронологический список


Идея, положенная в основу этого средства, крайне проста. После ввода каждой команды (после нажатия Enter, а не Ctrl+C), последняя заносится в список, из которого команды можно извлекать в порядке, обратном вводу.

Простейший способ доступа к хронологическому списку - просмотр его записей нажатием клавиши со стрелкой вверх, пока не будет найдена нужная команда. У хронологического списка есть два основных назначения: поиск ошибочно введенных команд и повторный ввод команд.

Рассмотрим первое. Предположим, вы предприняли попытку просмотреть содержимое файла testf ile, для чего ввели команду

$ moer testfile

После нажатия Enter, на экране появится сообщение об ошибке.

bash: moer: command not found.

Для быстрого исправления ситуации достаточно вернуть команду в командную строку нажатием клавиши со стрелкой вверх, исправить moer на more (воспользовавшись функциями редактирования командной строки) и нажать Enter.

Другая ситуация - конфигурирование некоторой программы. При этом обычно приходится несколько раз подряд редактировать конфигурационный файл и запускать программу. А для таких повторов нет средства лучше хронологического списка.

Существует быстрый способ доступа к хронологическому списку - при помощи восклицательного знака (!). Если ввести восклицательный знак с несколькими следующими за ним начальными буквами одной из команд из хронологического списка, то эта команда будет выполнена (будет повторено последнее обращение к ней).

Например, если ранее была выполнена команда

$ ps aux | grep httpd | more

ее выполнение можно повторять вводом

$ !ps

если только после нее не вводилась другая команда, начинавшаяся с "ps". После ввода ! ps выполняется последняя команда из хронологического списка, начинающаяся с "ps".

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

Из перечисленных комбинаций наиболее интересна Ctrl+R. Это динамичный, интерактивный обратный поиск в списке. По мере набора строки Bash ищет в хронологическом списке команду с совпадающим фрагментом, введенную последней. Чем длиннее набранная строка, тем меньше область поиска нужной команды.


Предположим, необходимо ввести уже вводившуюся сложную поисковую команду. Включите режим поиска, нажав Ctrl+R. На экране появится строка интерактивного поиска.

(reverse-i-search)' ':



Табл. 16.2.

Функциональные комбинации клавиш для хронологического списка



















Комбинация клавиш





Функция







Ctrl+P Ctrl+N Esc,

<

Esc,>

Ctrl+R

Ctrl+O



Переход к предыдущей команде в хронологическом списке

Переход к следующей команде в хронологическом списке

Переход к началу хронологического списка (команде, введенной первой) Переход в конец хронологического списка (к команде, введенной последней) Поиск по списку в обратном направлении Выполнение текущей команды хронологического списка и вывод

(

следующей для редактирования или выполнения











По мере набора символов в этой строке Bash отыскивает в хронологическом списке команду с совпадающим фрагментом, введенную последней. Например, набор одной буквы "f" может дать следующий результат.

(reverse-i-search)`f: pico info/.signature

Если продолжить и набрать "fi", можно получить

(reverse-i-search)`fi': rm -rf StarOffice-3.1

Наконец, после набора

"fin",



получаем то, что искали:

(reverse-i-search)`fin': find / -name 'foo' -print

Для ввода найденной команды достаточно нажать Enter.


Использование файла re. local


Единственная роль файла re. local в Linux Red Hat 7.1 - установка формы командной строки.

#!/bin/sh

# Этот сценарий выполняется *последним* из инициаяизационных сценариев.

# Здесь можно поместить собственные инициализационные программы,

# чтобы не заниматься полновесным системным программированием.

if [

-f

/etc/redhat-release ]; then R=$(cat /etc/redhat-release)

arch=$(uname -m)

a="a"

case "_$arch" in

_a*) a="an";;

_i*) a="an";; esac

NUMPROC=`egrep -с "`срu[0-9]+ " /proc/stat" if ["$NUMPROC" -gt "1" ]; then

SMP="$NUMPROC-processor "

if ["$NUMPROC" = "8" -o "$NUMPROC" = "11" ]; then

a="an" else

a="a"

fi fi

# Это будет записываться поверх файла /etc/issue при каждой

# загрузке. Следовательно, все изменения файла /etc/issue должны

# записываться здесь, чтобы не потеряться при загрузке, echo "" > /etc/issue

echo "$R" » /etc/issue

echo "Kernel $(uname -r) on $a $SMP$(uname -m) " » /etc/issue

cp -f /etc/issue /etc/issue.net echo » /etc/issue fi

touch /var/lock/subsys/local

У страха глаза велики: на самом деле все не так сложно. Выполняется следующая последовательность операций.

Указывается система Linux Red Hat.

Указывается аппаратная архитектура -1386 (Intel) или ахр (Alpha).

Указывается число процессоров (CPU) в вашем компьютере.

В файл /etc/issue записывается содержимое строки входа в систему. Оно будет выводиться в каждой строке консоли.

Поскольку файл re.local- это стандартный сценарий оболочки, в него можно записывать все, что разрешено для такого сценария, в том числе команды установки переменных среды и запуска программ. Например, в одной из управляемых мною систем файл re. local запускает демон базы данных командой

#

/usr/local/Minerva/bin/msqld &

Файл re. local можно использовать для запуска любых программ при загрузке системы. Например, чтобы получать электронную почту после загрузки какой-либо машины сети, добавьте в файл rс. local этой машины команду

#

/bin/mail -s "Я загрузилась — машина такая-то" username@some

.domain

Теперь при каждой загрузке этой машины будет отправляться сообщение электронной почты по адресу

username@some. domain

со строкой в поле темы: "Я загрузилась—

машина такая-то".



Как работают Х-ресурсы


Всякий раз при запуске X Window в базу данных Х-ресурсов загружаются необходимые сведения. По умолчанию они берутся из файлов, перечислявшихся выше при рассмотрении xinitrc. Загруженные сведения модифицируются данными из файла .Xdefaults вашего исходного каталога. Структура этих данных достаточно сложна.

Х-ресурсы упорядочиваются так, чтобы они воздействовать только на определенные программы. Для этого последние пришлось классифицировать, причем большинство классов программ состоит из единственной программы. В документации на программу указана ее

принадлежность определенному классу. Например, программа xload принадлежит классу XLoaci xterm - классу XTerm. Программы одного назначения входят, как правило, в один класс (ос lock и xclock принадлежат классу Clock).

Примечание

Обратите внимание на использование прописных/строчных букв в названиях приложений и классов. Например, xterm представляет собой стандартное консольное приложение X Window, a XTerm - класс, которому оно принадлежит.

Стандартный набор ресурсов для каждого класса позволяет устанавливать цвета изображения (foreground) и фона (background), размеры и расположение окон (geometry) и шрифт по умолчанию (font). В некоторых классах ресурсов сгруппированы родственные ресурсы. Например, в класс ресурсов Foreground входят ресурсы фона (foreground) и любые дополнительные программные ресурсы, имеющие некоторое отношение к фону. Заниматься отдельными ресурсами, как правило, нет надобности: достаточно работать на уровне классов ресурсов.



Калькулятор GNOME


Наконец, рассмотрим стандартный калькулятор, входящий в любой дистрибутив Linux, который содержит GNOME.

Калькулятор запускается командой

$ gcalc &

или

&

/usr/bin/gcale &

Можно также воспользоваться командой Simple Calculator (Простой калькулятор) подменю Utilities (Утилиты) главного системного меню GNOME. Окно калькулятора GNOME показано на рис. 9.28.

Рис. 9.28.

Окно калькулятора GNOME

Калькулятор подобен любому другому инженерному калькулятору. Он может вычислять основные математические функции, в том числе тригонометрические и логарифмические. Доступны операции с памятью. Впрочем, данная глава писалась не как руководство по пользованию калькулятором, а описание упомянутых функций было бы уместно в книге по математике.



Компиляция и запуск нового ядра


После завершения конфигурирования проверьте наличие нового конфигурационного файла (.conf ig), расположенного в каталоге /usr/src/linux-2 .4.2 (учитывайте номер вашей версии). Помните, что для отображения скрытых файлов необходимо использовать команду Is -а. Если конфигурационный файл .config на месте, можно использовать команду make для рекомпиляции ядра.

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

Завершив конфигурирование, вернитесь в режим командной строки и постарайтесь не сидеть у компьютера все время, пока идет компиляция.

Обычно рекомпиляция ядра длится от 15 минут до нескольких часов. Это зависит от скорости процессора, объема оперативной памяти и ряда других факторов, поэтому все команды, вводимые при компиляции, удобно объединить в одну, через точку с запятой, чтобы они выполнялись последовательно. Организовав процесс таким образом, можно заняться другими делами и вернуться к компьютеру после завершения компиляции.



Конфигурирование часового пояса


Займемся конфигурированием часов компьютера и выбором часового пояса. Здесь необходимо принять два решения.

Во-первых, надо выбрать время, которое будут показывать системные часы - местное или среднее по Гринвичу (GMT), которое обозначается также UTC. Если вы устанавливаете на отдельный компьютер только Linux, укажите UTC. Linux Red Hat сам преобразует время по Гринвичу в местное время данного часового пояса. Однако если Linux придется сосуществовать на ПК с другими операционными системами, то лучше установить системные часы на местное время.

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



Конфигурирование модема


С помощью утилиты Linuxconf можно также сконфигурировать модем. Откройте окно Linuxconf. воспользовавшись описанным выше способом. Если модуль modemconf установлен так, как это описано ранее, то можно использовать утилиту Linuxconf для конфигурирования модема. На вкладке Config выберите элемент Peripherals/Modem (Периферийные устройства Модем), в

результате будет открыта вкладка Modem Configurator.

В этом окне нет обилия параметров: надо лишь указать порт подключения модема (для встроенного модема - порт конфигурирования). Так создается необходимая связь между логическим устройством /dev/modem и физическим адресом модема.

Можно также поручить утилите Linuxconf определить порт, к которому подключен ваш модем. Подсоедините модем к телефонной линии и щелкните на кнопке Detect (Разыскать). Как только модем обнаружен, об этом выдается соответствующее сообщение с указанием порта, в противном случае появляется сообщение No Modem Detected (Модем не обнаружен).

Этот процесс не зависит от конфигурации программ, использующих модем для доступа в Internet или пересылки факсов. (Они рассмотрены в гл. 22).

Совет

Если Modem Configurator утилиты Linuxconf не может распознать ваш модем, проверьте, подключен ли он к телефону и есть ли сигнал станции на линии. В противном случае используйте описанные в гл. 22 средства, чтобы помочь системе распознать модем.



Почтовые серверы РОРЗ


Большинство пользователей, которые работают на компьютерах под управлением Windows или на Macintosh и получают почту с почтового сервера ISP, вероятно, используют протокол РОРЗ.

В модели РОРЗ пользователи устанавливают связь с Internet, загружают новое сообщение из своих почтовых ящиков, и затем, как правило, удаляют исходную копию из почтового ящика на удаленном сервере. Тем самым создается локальный почтовый ящик, содержащий точную копию исходного почтового ящика на сервере. Пользователи могут просматривать почту, писать ответы и новые сообщения, организовывать почту в режиме off-line и при установлении связи отправлять подготовленные сообщения и проверять наличие новых сообщений.

РОРЗ - простой и наиболее доступный для большинства пользователей протокол. Он является идеальным решением при вышкой стоимости времени в режиме on-line или при ограниченной ширине доступной полосы частот. Поскольку протокол РОРЗ разрабатывался для работы в режиме off-line, он наиболее подходит пользователям с ограниченным доступом к сети. Но простота протокола приводит к некоторым серьезным ограничениям.

Предположим, пользователям необходим доступ к удаленному почтовому ящику с двух или более компьютеров. Это несложно организовать при условии, что копии всех загруженных сообщений остаются на удаленном сервере, использующем протокол РОРЗ. Тогда можно было бы загружать все сообщения с использованием почтовых программ на двух различных, находящихся в разных местах компьютерах. Но как узнать, отправлен ли ответ с другого компьютера? Кроме того, если письмо удалено с сервера до его загрузки на оба компьютера, то один из компьютеров будет иметь неполный почтовый ящик.

Подобный сценарий имеет отношение к пользователям, которые работают на двух персональных компьютерах - один дома, и один, например, мобильный. Оба персональных компьютера для просмотра почты из одного почтового ящика используют почтовую программу, работающую по протоколу РОРЗ. Утром на домашний компьютер загружается дневная почта. Допустим, получено 50 сообщений, в том числе 33 ненужных. Пользователь немедленно удаляет ненужные сообщения, отвечает на 7 сообщений и подшивает 10 сообщений для дальнейшей обработки.

Днем тот же пользователь получает доступ к почтовому ящику с портативной системы. Он получает почту. Число сообщений теперь — 58. Это 33 ненужных сообщения, которые были удалены на домашней машине, 7 - на которые уже отправлен ответ и 10 сохраненных для дальнейшей обработки сообщений. Кроме того, получено 8 новых сообщений.

Описанная ситуация обычна и приводит к огромному количеству неизбежных повторений при попытке работать с почтой с двух или более мест.



Подготовка модема к работе


Чтобы модем работал эффективно, он должен удовлетворять нескольким критериям.

Правильное подключение к ПК.

Подключение к нужному порту

Не использовать IRQ и адрес ввода/вывода другого устройства.

Подключение модема к ПК

Подключение модема несложно. Внешний модем подключается к источнику питания и подсоединяется к одному из последовательных портов. Если все порты заняты, придется приобрести дополнительную плату, проконсультировавшись с поставщиком ПК или модема. Обычно в ПК используются два последовательных порта, к которым подключаются мышь и модем. Как правило, мышь подключается к первому порту (СОМ1:, /dev/ttyS0, /dev/cua0), модем - ко второму (COM2 :, /dev/ttySl, /dev/cual). В Red Hat Linux 7.1 затем обычно выполняется связывание его с файлом /dev/modem.

Если используется только один USB-модем, его устройство связывается с файлом /dev/modem. Например, если вы используете/dev/usb/ttyACM0, выполните команду In -s /dev/modem /dev/usb/ttyACM0.

Встроенный модем обычно устанавливается в разъем материнской платы ПК. Если сами вы не решаетесь на такую операцию, попросите об этом техника магазина, в котором вы приобрели ПК или модем.

Выбор последовательного порта

При установке внешнего модема выбор порта означает выбор разъема для его подсоединения. Убедитесь, что данный порт не используется каким-либо внутренним устройством. Если вы не устанавливали внутри ПК никаких устройств, можете проверить это по его документации. Конкурировать с модемом за обладание портом может только другой модем.

Установка встроенного модема несколько сложнее.

Примечание

Многие внутренние модемы старых моделей для нормальной работы требуют ручного конфигурирования подключения к определенному порту. В некоторых случаях приходится оперировать DIP-переключателями или джамперами (jumper) на плате модема, чтобы задать используемый последовательный порт. При необходимости обратитесь к документации за рекомендациями по установке переключателей.

Назначенный порт не должен использоваться другим устройством. Обычно встроенному модему назначается третий или четвертый последовательный порт. Помните, что первому последовательному порту соответствует /dev/ttyS0, второму - /dev/ttyS1 и т.д. Следующий раздел содержит дополнительные рекомендации по выбору последовательного порта.




IRQ и адрес ввода/вывода

Каждому порту соответствует запрос прерывания (IRQ) и адрес ввода/вывода. Это численные значения, по которым ПК и операционная система определяют физическое устройство, передающее данные или направляющее запрос системе.

В табл. 18.3 перечислены четыре порта с IRQ и адресами ввода/вывода.



Табл. 18.3.

IRQ и адреса ввода/вывода последовательных портов





























Имя DOS





Файлы устройств Linux





IRQ





Адрес ввода/вывода







СОМ1 :



/dev/ttyS0



4



0x3 f 8







COM2:



/dev/ttySl



3



0x2 f 8







COM3:



/dev/ttyS2



4



0x3e8







COM4:



/dev/ttyS3



3



0x2e8















Обратите внимание: первый и третий порты, а также второй и четвертый используют один и тот же IRQ. Это вызывает определенные затруднения. Если порты 1 и 3 используют один IRQ, но разные адреса ввода/вывода, то они не могут работать одновременно. Следовательно, к этим портам (или портам 2 и 4) нельзя подключать устройства, используемые одновременно.

Например, нельзя одновременно использовать мышь, подключенную к первому порту, и модем, подключенный к третьему. Однако нелегко представить их раздельное использование в X Windows. Следовательно, при установке встроенного модема придется позаботиться о том, чтобы избежать конфликта IRQ. Если к первому порту подключена мышь, то встроенному модему следует назначить четвертый порт.

Наконец, еще один момент. Многим встроенным модемам можно назначать специальные IRQ и адреса ввода/вывода, отличные от тех, которые назначены по умолчанию соответствующему порту. Это делается лишь в тех случаях, когда наличие в системе множества устройств не позволяет установить модем иначе. Непременно загляните в документацию HOWTO (http: //www. linuxdoc. org/HOWTO/Serial-HOWTO.html). Подробные инструкции помогут вам сделать это сделать надежно и безопасно.



Самоконфигурируемые модемы

Появление (вместе с Windows 95) самоконфигурируемых (РпР) материнских и интерфейсных плат породило ряд проблем с их использованием в других системах. Многие самоконфигурируемые устройства (в том числе и модемы) ориентированы на Windows и конфигурируются при помощи специальных программ для различных операционных систем Microsoft Windows, отсутствующих в Linux. При наличии такой платы возможны четыре варианта действий.



При некотором везении модем можно отконфигурировать в Windows 95 или 98, и эта конфигурация сохранится при загрузке Linux.

Попробуйте разыскать Linux-драйвер для вашего модема. Некоторые изготовители модемов прилагают к своей продукции Linux-драйверы на дискетах или помещают их на своих веб-узлах в Интернете.

Некоторые изготовители модемов прилагают к своей продукции конфигурационную дискету, с помощью которой (обычно в MS-DOS режиме) для модема устанавливаются значения IRQ, I/O и DMA (если необходимо).

Если ни один из этих вариантов вам не подходит (и изготовитель модема не предлагает альтернативы), придется конфигурировать модем при каждой загрузке системы с помощью Windows. В этом случае Linux придется загружать из Windows командой loadlin без перезагрузки системы. Более подробные сведения о loadlin собраны в документе The Loadlin+Win95/98/ME mini-HOWTO, расположенном по адресу

http://www.linuxdoc.org/HOWTO/mini/


Loadlin+Win95-9 8-ME.html.

Лучше обойтись без самоконфигурируемого модема, а еще лучше - установить внешний.



Примечание

Существует такая разновидность модемов, как winmodem, называемых иногда также программными модемами. Такие модемы ориентированы на работу с операционной системой Microsoft Windows и ее приложениями. Система Linux работает со многими типами модемов winmodem (см. подробности по адресу www. linmodems. org).


Рабочая среда


Чтобы дальнейшее конфигурирование имело смысл, перед запуском программного обеспечения маршрутизатора Linux следует определить среду, в которой маршрутизатор будет работать.

В первую очередь необходимо определить IP-адреса. В незащищенной сети используются адреса от 200.200.200.0 до 200.200.200.255 с маской сети 255.255.255.0. Маршрутизатор, который соединяет сеть с внешним миром, имеет адрес 200.200.200.1, а маршрутизатор, который создается, на своей незащищенной стороне имеет адрес 200.200.200.254. Это подлинные IP-адреса, они уникальны и вся сеть Internet знает об их существовании. Если маршрутизатор для внешнего мира позволяет, то компьютер из Internet может соединяться с любым хост-компьютером в незащищенной локальной сети.

Защищенная сеть использует адреса с 10.10.10.0 до 10.10.10.255 с маской сети 255.255.255.0. Маршрутизатор, соединяющий защищенную локальную сеть с незащищенной, на своей защищенной стороне использует IP-адрес 10.10.10.1. Это ложные, немаршрутизируемые IP-адреса. Внешний мир не знает о существовании хост-компьютеров в локальной сети, у него с ними нет прямой связи. Маршрутизатор (в роли брандмауэра) скрывает существование безопасной сети от остального мира (включая незащищенную сеть).

В создаваемом маршрутизаторе устройство eth0 будет соединено с незащищенной локальной сетью (IP-адрес 200.200.200.254), а устройство ethl будет соединено с защищенной сетью (IР-адрес 10.10.10.1).

Из защищенной сети можно выполнять только исходящие, но ни в коем случае не входящие

соединения. Более того, будет использоваться возможность ядра Linux, известная как IP

masquerading

(IP-подмена), для использования механизма защиты

network address translation

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

Поскольку защищенная сеть использует немаршрутизируемые IP-адреса, хост-компьютеры незащищенной сети не знают о существовании защищенных хост-компьютеров и не могут связаться с ними. Аналогично, маршрутизатрр, соединяющий незащищенную сеть с Internet, не знает о существовании внутренней, защищенной сети, и никогда не направляет пакеты прямо к хост-компьютерам внутренней сети.



Сценарий Dial


Сценарий dial выглядит следующим образом.

#!/bin/sh

/usr/sbin/pppd /dev/modem 115200 connect \ ' /usr/sbin/chat "" ATDT1234567 CONNECT' \ noipdefault defaultroute user testuser

Первая строка указывает Linux обрабатывать сценарий с использованием оболочки Bourne Shell, которая находится в /bin/sh. Остальные строки обсуждались ранее. Не забудьте задать вместо произвольного номера 1234567 реальный номер вашего провайдера ISP. При необходимости задайте имя вашего файла устройства модема вместо /dev/modem и скорость обмена вместо 115200.

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



Тестирование конфигурации


Итак, мы завершили конфигурирование X Windows, и теперь надо проверить, насколько конфигурация удалась. Попробуйте запустить X Windows. Версия X Windows, включенная в Linux Red Hat 7.1, запускает свой диспетчер окон и некоторые другие программы.

Для запуска X Windows ведите следующую команду.

$ startx

При успешном запуске по экрану пробегают несколько строк информации, включается графический режим и появляется среда X Windows, установленная по умолчанию (рис. 7.18).

Рис. 7.18.

Оформление рабочего стола по умолчанию в Linux Red Hat 7.1

Для работы в X Windows можно входить в систему с правами обычного либо корневого пользователя. Однако не следует без особой надобности пользоваться учетной записью корневого пользователя: избыток прав влечет за собой риск повреждения важных системных файлов.

Неудачный запуск X Windows означает реальные трудности. Возможны три проявления неудачного запуска.

На экран выводится сообщение об ошибке, переход в графический режим не происходит.

Экран переключается в графический режим, но остается совершенно пустым.

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

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

Перепроверьте конфигурацию видеоадаптера и монитора.

Уменьшите диапазоны (верхние значения) горизонтальной и вертикальной развертки.

Попробуйте установить более простой сервер, например, VGA 16 вместо SVGA или SVGA вместо сервера со средствами ускорения, ориентированными на видеоадаптер конкретного типа.

Если все это не приведет к успеху, попробуйте исследовать проблему. Начните с изучения информации, содержащейся в файле HOWTO XFree86. Если вы провели достаточно полную установку Linux, этот файл должен быть на диске. Если на диске вашего компьютера нет файла

HOWTO, его можно найти в Web, на странице http: / /www. linuxdoc. org/HOWTO/XFree86HOWTO/ index. html. Попробуйте также просмотреть документацию на вашу версию XFree86. Для версии 4.0.3 она доступна по адресу http: //www.xfree86 .org/4 .0 .3/index, html.

В двух других случаях (когда происходит переключение в графический режим, не более того) надо проверить конфигурацию запуска X Windows и диспетчера окон (гл. 12).



USB


Некоторые Linux-дистрибутивы включают средства частичной поддержки USB, в первую очередь для клавиатуры и мыши. Речь идет о дистрибутивах S.u.S.E. 6.4, Red Hat 7.0, Mandrake 7.1 и Corel Linux Second Edition (и выше). На момент написания книги ядро Linux 2.2.x поддерживало USB только для статической конфигурации.

Но Red Hat 7.0 базируется на ядре 2.4.x, которое обеспечивает практически полную поддержку USB. Как видно из сведений, собранных в базе данных http: //www.qbik.ch/usb/devices, на определенном уровне поддержка USB обеспечивается почти для всех типов устройств: от модемов до Web-камер.

Если вас интересуют вопросы "подключения на ходу", в рамках которого можно подсоединять USB-устройства, не выключая компьютера, обратитесь на узел http: / Alinux-hotplug. sourcef orge. net. Здесь собраны загружаемые скрипты в rpm-формате, ориентированные на работу в Red Hat Linux.

Проблемы поддержки USB в среде Linux сейчас в центре внимания многих разработчиков. Если вам не удается установить ваши USB-устройства, используя выбранный дистрибутив, можете ознакомиться с проектом Linux USB по адресу http: //www. linux-usb.org, где доступны дополнительные драйвера и утилиты.



Установка Apache


Оставшаяся часть главы посвящена детальному обзору Web-сервера Apache по двум причинам:

Сервер Apache является Web-сервером по умолчанию, который входит в поставку с Red Hat Linux (включая Red Hat Linux 7.1 на прилагаемом компакт-диске).

Так как в настоящее время Apache является самым популярным Web-сервером для Internet, то, вероятнее всего, именно его вы будете использовать на своем компьютере.

Если при установке системы Linux выполнена достаточно полная инсталляция, то, вероятнее всего, Apache уже установлен. Существует много способов проверить, установлен ли Apache. Можно использовать команду rpm.

$ rpm -q apache

Если Apache уже установлен, ответ команды будет примерно таким:

apache-1.3.19-5

Если в ответ на команду rpm получено сообщение, что Apache уже установлен, то часть главы до параграфа

"Конфигурирование Apache"

можно пропустить.



Caldera Linux


Фирма Caldera разработала версии своего дистрибутива для ряда основных языков. В соответствии со сведениями, доступными на веб-сайте фирмы, Caldera обеспечивает техническую поддержку OpenLinux на нескольких языках, включая немецкий, французский, итальянский, японский и корейский.

Caldera Systems, Inc. 240 West Center Street Orem, Utah 84057 U.S.A.

E-mai1: info@calderasysterns.com WWW:

http://www.caldera.com/



Другие периферийные устройства


Особых условий конфигурирования могут потребовать другие периферийные устройства, количество которых так велико, что нет смысла приводить подробный список. Подробные сведения о конфигурировании подобных устройств даны в тех разделах книги, в которых рассмотрены типы аппаратуры. Как правило, дополнительное оборудование, наподобие специализированных плат последовательного интерфейса, специализированного сетевого оборудования либо лентопро-тяжек, устанавливается и конфигурируется после установки Linux.

Если вы собираетесь устанавливать Linux в локальной-сети, то прочтите гл. 27, в которой описан выбор сетевой платы при установке Linux.



Конфигурирование учетных записей


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

Прим, ред.)

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

Можно создать учетные записи отдельных пользователей, указывая их имена и пароли. В поле Full Name (Полное имя) вводится справочная информация.



Монтирование удаленных каталогов во время начальной загрузки


Часто используемые удаленные каталоги (если таковые существуют) удобно монтировать автоматически при начальной загрузке. Для этого используется программа LinuxConf, которая запускаегся с помощью команды linuxconf-auth. После запуска программы следует выбрать Config (Конфигурация), File Systems (Файловые системы), Access NFS Volume (Доступ к NFS-тому) в списке окон конфигурации. Это окно содержит список текущих точек монтирования NFS, если они существуют. Щелчок на кнопке Add (Добавить) отобразит окно NFS Volume Specification (Спецификация NFS-тома), показанное на рис. 28.13.

Рис. 28.13.

Диалоговое окно NFS Volume Specification

Для реализации описанного примера введите laptop7lB поле Server (Сервер), /home/mj в поле Volume (Том) и /home/mj/testl в поле Mount Point (Точка монтирования). Если монтирование должно происходить автоматически при начальной загрузке, то выберите вкладку Options (Параметры) и убедитесь, что опция Not Mount at Boot Time (He монтировать при загрузке) не установлена. Для завершения конфигурирования автоматического монтирования щелкните на кнопке Accept (Принять).

Эта процедура добавит следующую запись в файл /etc/ f stab.

laptopVl:/home/mj /home/mj/testl nfs exec,dev, ro 1 1

Можно вручную создавать автоматические точки монтирования во время начальной загрузки. Для этого в любом текстовом редакторе добавьте подобную запись в файл /etc/ f stab.




Единственным решением этой проблемы является почтовый сервер IMAP4. В модели IMAP почтовые ящики существуют на удаленных серверах и только там. Пользователи открывают и осуществляют доступ к своим почтовым ящикам посредством клиентских приложений. Но вместо того, чтобы копировать сообщения в локальный почтовый ящик, пользователи просто работают с

даленным почтовым ящиком, не создавая локальной копии.

IMAP имеет несколько преимуществ по сравнению с системами РОРЗ. Прежде всего, это организация работы и обслуживания единственного почтового ящика из множества мест и с различных компьютеров. Почта остается в единственном удаленном почтовом ящике вместо копирования во множество локальных почтовых ящиков. Если пользователь удаляет сообщение в почтовом ящике из одного места и затем обращается к почтовому ящику из другого места, то этого сообщения там уже не будет.

Именно эта особенность IMAP4 - манипулирование удаленным почтовым ящиком - делает необходимой работу в режиме on-line для просмотра, ответа и обработки почты. IMAP4

наилучшим

образом подходит для ситуаций, когда имеется выделенное сетевое соединение либо оплата за соединение невысока. Например, в случае абонентской (не повременной) платы за связь с Internet и абонентской (не повременной) платы за индивидуальный телефонный канал, стоимость почтовых абединений РОРЗ и IMAP4 будет одинаковой. Но если пользователь платит за Internet и телефон юминутно, то IMAP4 обойдется гораздо дороже, чем РОРЗ.

Кроме того, далеко не все провайдеры Internet предоставляют пользователям доступ к их почтовым ящикам через серверы DVLAP4. Системы IMAP4 чаще используются в корпорациях и позволяют пользователям осуществлять доступ к их почтовым ящикам на работе и из дома без проблем, характерных для систем РОРЗ.

Теперь, разобравшись с различиями между почтовыми серверами РОРЗ и IMAP4, можно приступать к конфигурированию Netscape 6 для работы с электронной почтой.


Программы для работы с модемом


В

Linux есть разнообразнейшие программы, предназначенные для работы с модемом. Ниже перечислены некоторые из них.

minicom.

Простой пакет эмуляции терминала текстового режима.

seyon.

Пакет эмуляции терминала для X Windows.

pppd.

Демон для установки РРР-соединений с Internet (гл. 22).

efax.

Набор программ для передачи и приема факсов (гл. 25).

Некоторые GUI-утилиты, предназначенные для соединения с Интернетом в коммутируемом режиме, также могут распознавать модемы. Мы поговорим о них в гл. 22. В следующем параграфе кратко рассмотрено применение minicom для проверки работы модема.



Работа с окнами диспетчера файлов


Диспетчер файлов в КDЕ называется Konqueror (он также используется в качестве Веб-браузера). Для запуска Konqueror достаточно щелкнуть на показанной ниже кнопке (она расположена на панели).

В результате Konqueror запускается как Веб-браузер (рис. 11.6).

Рис. 11.6.

Диспетчер файлов Konqueror

Для открытия в диспетчере файлов Konqueror вашего исходного каталога щелкните в панели на значке Home Directory (Исходный каталог), показанном ниже.

Откроется окно диспетчера файлов Konqueror (рис. 11.7).

Рис. 11.7.

В диспетчере файлов можно просмотреть содержимое исходного и других каталогов

По умолчанию каталоги и файлы в окне диспетчера файлов представлены справа значками среднего размера, соответствующими типам файлов. В верхней части окна находятся панель инструментов и строка текущего каталога. В левой части окна расположено дерево каталогов, подобное панели папок в Microsoft Windows Explorer.

Вид окна можно изменить, выполнив команду View Mode (Режим отображения) меню View (Вид). В результате появляется список, из которого можно выбрать, например, MultiColumn (Несколько колонок) или Text View (Текстовый). Чтобы вывести в окне все файлы исходного каталога, выполните команду Show Hidden Files (Показать скрытые файлы) этого же меню.

Щелчком на стрелке, направленной вверх, у левого края панели инструментов выполняется переход в каталог верхнего уровня (каталог-родитель), щелчком на каталоге в окне - переход в этот каталог и вывод его содержимого в окне. Чтобы открыть в текущем каталоге новое окно диспетчера файлов, выполните команду New Window (Новое окно) меню Location (Файл) или нажмите клавиши Ctrl+N.

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

Достаточно щелкнуть в окне диспетчера файлов, и KDE попытается обработать файл, на котором выполнен щелчок. Если это текстовый файл, то он откроется в текстовом редакторе KDE, если графический - в программе просмотра изображений. Если возможно, приложение открывает файл непосредственно в правой части окна Konqueror.


Если KDE не может определить, что делать с файлом, открывается небольшое диалоговое окно Open With (Открыть с помощью), в котором можно указать программу для открытия данного файла (рис. 11.8). Это окно включает подменю Known Applications (Известные приложения) из главного меню KDE.





Рис. 11.8.

Выбор приложения для открытия файла



Редактирование свойств файлов

В окне диспетчера файлов можно менять свойства каталогов и файлов, к которым разрешен доступ. Для этого щелкните на каталоге или файле правой кнопкой и выполните команду Properties (Свойства) открывшегося контекстного меню. Откроется диалоговое окно Properties (рис. 11.9) с вкладками, содержащими регулируемые параметры.





Рис. 11.9.

Диалоговое окно Properties: параметры каталогов и файлов, отображенных в окне диспетчера файлов



Примечание

Набор вкладок диалогового окна Properties зависит от типа объекта, свойства которого представлены в этом окне. К примеру, свои наборы вкладок имеют ссылочные файлы KDE (которые мы рассмотрим ниже), каталоги и обычные файлы.

Для создания объектов файловой системы используются команды подменю Create New (Создать) меню Edit (Правка). Объектом может быть папка (подкаталог) либо информационные объекты (HTML-файлы), через которые KDE получает доступ к ресурсам системы.



Просмотр Веб-страниц в диспетчере файлов

Окно диспетчера файлов внешне напоминает окно браузера Веб. Действительно, его можно использовать для доступа к Веб-страницам. Если в диспетчере файлов войти в каталог, содержащий индексный HTML-файл, то в окне будет показано содержимое этого файла, а не каталога.



Совет

Чтобы в окне диспетчера файлов оказалось все-таки содержимое каталога, сбросьте флажок команды Use lndex.html (Просмотр HTML) меню View (Вид).

Просматривая любой каталог, можно щелкнуть на поле Location (Путь) и ввести полный URL для Веб, например



http://www.sybex.com


или



ftp://ftp.kde.org


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





Конфигурирование диспетчера файлов

Пользователь может сконфигурировать Konqueror как диспетчер файлов и как веб-браузер. В панели Konqueror, следует выбрать меню Settings (Настройки), а в нем - команду Configure Konqueror (Настроить). Все настройки Konqueror можно разбить на девять категорий (рис. 11.10).

File Manager (Диспетчер файлов) - позволяет настроить поведение окна диспетчера файлов.

File Associations (Ассоциации файлов) - содержит ассоциации для отдельных типов файлов, например, ставит к соответствие XLS-файлам табличный процессор KSpread.

Konqueror Browser (Браузер) - задает правила для связей, размеров текстов, Java, и надстроек.

Enhanced Browsing (Браузер дополнительно) - позволяет сконфигурировать отдельные параметры для различных веб-сайтов. Соответствующие параметры работают только при использовании Konqueror как браузера.

Cookies - позволяет сконфигурировать сообщения, которые пользователь будет получать с различных веб-сайтов.

Proxies (Прокси) - дает возможность подсоединиться к Интернету или другим глобальным сетяма через прокси-сервер.

Crypto (Крипто) - содержит параметры используемых схем шифрования/дешифрования.

User Agent (Агент пользователя) - позволяет указать, как ваш браузер будет выглядеть с точки зрения веб-серверов, к которым он обращается.

Netscape Plugins (Надстройки Netscape) - содержит список надстроек, связанных с разными типами файлов.





Рис. 11.10.

Окно конфигурирования Konqueror


РегулированиеХ-ресурсов в файле .xdefaults


Редактирование Х-ресурсов связано с внесением записей в базу данных Х-ресурсов. Эти записи имеют следующий формат.

<КлассПрограммы>|<ИмяПрограммы>|<КлассРесурса>| <ИмяРесурса> : <значение>

В руководстве Linux и прочей документации вертикальная черта (|) обычно означает условие "или". Следовательно, в приведенном примере первое поле записи содержит класс или имя программы, второе - класс или имя ресурса.

Обычно эти данные помещаются в файл .Xdefaults, предназначенный для конкретного пользователя. Рассмотрим пример такого файла.

XTerm*background: Black

XTerm*foreground: Wheat

XTerm*cursorColor: Orchid

XTerm*reverseVideo: false

XTerm*scrollBar: true

XTerm*reverseWrap: true

XTerm*font: fixed

XTerm* fullCursor: true

XTerm*scrollTtyOutput: off

XTerm*scrollKey: on

XTerm*titleBar: false

xclock*Geometry: 100x100+100+100 xclock*

Foreground: purple xclock*Background: mauve

В этом файле установлены ресурсы для класса программ XTerm и программы xclock. Для класса XTerm определены цвета, параметры окон (например, наличие полосы прокрутки) и т.д. Для программы xclock - цвета и геометрия. Значения, присваиваемые этим ресурсам, совпадают с теми, которые были бы указаны в командной строке при флажках -f g и -geometry.



Сценарий Hangup


Сценарий hangup выглядит следующим образом.

#!/bin/sh

kill `cat /var/run/ppp0.pid"

Как ы в случае сценария dial, n наняле укячыпяетея, что сценарий должен обрабатываться оболочкой Bourne Shell. Далее процесс уничтожается способом, немного отличным от описанного ранее.

Предположим, что процесс pppd записывает свой Ш процесса в файл, который в большинстве современных систем Linux находится в /var/run. Имя файла состоит из имени устройства и следующего за ним расширения .pid. Если имеется только один модем и одно активное соединение РРР, то модем считается устройством ррр0 и в сценарии следует указать

/var/run/pppO. pid.

Команда cat просто выводит содержимое файла ррр0 .pid на стандартное устройство вывода. Команда cat заключается в обратные апострофы для того, чтобы передать результат ее выполнения (который является ID процесса pppd) команде kill.

Примечание

Обратная одинарная кавычка (обратный апостроф) на стандартной американской клавиатуре (С кириллицей) расположена в левом верхнем углу на клавише с тильдой (~).

Как поступать в случае множества РРР интерфейсов, если необходимо завершать каждый из них отдельно? Изменим сценарий hangup следующим образом.

#!/bin/ph

kill `cat /var/run/$l.pid

Здесь ррр 0 заменили $1. $1 указывает, что здесь должно находиться значение первого параметра сценария. Теперь можно передавать имя интерфейса как параметр сценария. Команда

$ hangup pppl

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



Установка Apache с CD-ROM Red Hat


Наиболее простой способ установки Apache - с прилагаемого к книге диска CD-ROM. Для этого смонтируйте CD-ROM (обычно в /mnt/cdrom) и выполните команду cd в каталог /imt/cdrom/RedHat/RPMS. (Если CD-ROM смонтирован не в /mnt/cdrom, перейдите в каталог, соответствующий точке монтирования). Этот каталог содержит все файлы rpm полного дистрибутива Red Hat Linux. Для установки пакета выполните команду rрm

$ rpm -i apache-1.3.19-5.1386.rpm



Установка даты и времени


С помощью утилиты Linuxconf можно настроить часы и календарь вашего компьютера. Откройте окно Linuxconf, воспользовавшись описанным выше способом. На вкладке Control выберите элемент Date & Time. В результате появится вкладка Workstation Date & Time Configurator, показанная на рис. 15.17.

Время и дата указаны в средней и нижней части окна. Для установки даты или времени щелкните на любой части значения даты или времени (часах, минутах, секундах, месяце, дне или годе).

В системе Linux используется стандартное время по Гринвичу Greenwich Mean Time (GMT). Это позволяет упростить синхронизацию Linux-серверов, расположенных в различных часовых поясах. Чтобы выполнить такую синхронизацию на вашем компьютере, система Linux должна знать его часовой пояс. Указать этот пояс можно с помощью меню, вызываемого щелчком на кнопке, расположенной справа от поля Zone.

Если на вашем компьютере установлена только система Linux, выберите опцию Store Date In CMOS (Сохранить данные в CMOS). В результате GMT-версия времени, установленного вами будет занесена в аппаратные часы компьютера. В противном случае вам придется вручную изме

нять время системы Linux при изменении времени в вашем часовом поясе (например, при переходе на летнее/зимнее время).

Рис. 15.17.

Вкладка Workstation Date & Time Configurator

Этот инструментарий также можно использовать для синхронизации часов вашего компьютера с часами сервера, который указывается в поле Get Date From Server(s) (Получить данные с сервера). Этот механизм базируется на команде netdate или сервере времени xntp. Ни одна из этих утилит не входит в состав Red Hat Linux 7.1.

Завершив установку параметров, щелкните на кнопке Accept (Принять) и выполните активизацию внесенных изменений так, как это описано выше в данной главе.

Примечание

При работе на нескольких компьютерах с приложениями, требующими одинакового времени, для синхронизации часов каждого из таких компьютеров с сервером можно воспользоваться утилитой ntpdate. Более подробные сведения о ней расположены на веб-странице по адресу

http://www.eecis.udel.edu/

~ntp/ntp_spool/html/ntpdate.htm.



Выключение системы


С загрузкой системы связано и ее выключение. В Linux, как и в других многозадачных операционных системах, важно, чтобы выключение системы проходило без повреждения данных на жестких дисках. Обычно выключение происходит по команде shutdown, введенной корневым пользователем.

#

shutdown -h now

Аргумент now указывает, что система должна быть выключена немедленно, флажок -h - что после выключения должен произойти останов системы. После вывода сообщения System Halted система остановлена) можно выключать питание компьютера.

Аналогичный процесс - перезагрузка системы командой reboot, при которой после выключе-ния системы происходит ее загрузка. Перезагрузка производится нажатием клавиш Ctrl+Alt+Delete, если только вы не заблокировали эту возможность в упоминавшемся выше файле

/etc/

ini ttab.

Примечание

Полезно заблокировать возможность перезагрузки по Ctrl+Alt+Delete в файле /etc/inittab. По умолчанию в Red Hat Linux 7.1 все пользователи могут использовать эту комбинацию клавиш для перезагрузки, однако при многопользовательской работе есть опасность утери данных всеми работающими пользователями в случае перезагрузки компьютера одним из них.



Запуск маршрутизатора Linux


Чтобы загрузиться в режиме Linux-маршрутизатора, достаточно вставить дискету и перезагрузить компьютер.

Программное обеспечение Linux Router Project создаст диск RAM и загрузит содержимое диска начальной загрузки на диск RAM. Затем с RAM-диска загрузится и остальное программное обеспечение маршрутизатора. Любые изменения в конфигурации могут записываться на загрузочный диск и использоваться при следующей загрузке.

После загрузки на экран выводится приглашение для входа в систему. Следует войти в систему как администратор (root-пользователь) без пароля и запустить программное обеспечение маршрутизатора Linux. На экране появится меню конфигурирования (см. рис. 31.3). рассмотрим этапы создания простейшей сети, описанной ранее.

Модули сетевых плат: возьмите второй гибкий диск из созданных вами. Предположим, что вы смонтировали его в каталоге /mnt/ floppy. Скопируйте необходимые для каждой из ваших сетевых плат модули из каталога /mnt /floppy в каталог /lib/modules.

Основные настройки: конфигурирование IP-адресов, масок сети и маршрутов для двух плат Ethernet.

Основы безопасности: конфигурирование параметров безопасности сети, необходимое для трансляции адреса сети.

Дальнейшее конфигурирование: конфигурирование дополнительных параметров сети, таких как серверы имен и хост-таблицы.

Рис. 31.3.

Главное меню Linux Router Project

Меню конфигурирования полностью цифровое и доступ к пунктам меню осуществляется вводом выбранного номера меню и нажатием Enter. Например, ввод 1 для Network Settings (Сетевые установки) в главном меню конфигурирования выводит на экран подменю настроек сети. Выбор пункта подменю открывает файл для редактирования (конфигурирования) в простом редакторе. Чтобы эффективно использовать редактор, достаточно знать, как сохранить файл (нажать Ctrl+W и затем нажать Enter для подтверждения имени файла) и выйти из программы (нажать Ctrl+C). Можно использовать редактор, способный выполнить более обширный набор операций, но в данном случае достаточно простого редактирования.



Запуск процесса рекомпиляции


Приведенные ниже команды предназначены для создания нового ядра с рекомпиляцщй всех его модулей и их записью в соответствующие системные каталоги. (Там они будут доступны для команд ядра.)

Для рекомпиляции системы введите следующие команды.

#

make dep; make clean; make bzlmage; make modules; make modules__install

Совет

Каждую команду make можно вводить отдельно, после завершения предыдущей. Если вы не планируете использовать модули, можете отбросить две последних команды. Более подробные рекомендации приведены в файле README, расположенном в каталоге /usr/src/linux-2.4.2.

После ввода этих команд на экране начнут мелькать строки с описанием каталогов, к которым обращается программа make, запуска компилятора

gc.r.

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

Если у вас в файле /etc/lilo. conf указан файл initrd, то следует создать новый файл initrd. Для начала, создайте резервную копию текущего файла initrd (в Red Hat Linux 7.1 это initrd-2 .4.2-2. img). Для этого выполните следующие команды:

#

ср /boot/initrd-2.4.2-2.img /boot/initrd-2.4.2-2.orig.img

#

/sbin/mkinitrd /boot/2.4.2-2.img 2.4.2-2

Теперь можно создать загрузочный диск для нового ядра с помощью команды

#

make bzdisk

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

После выполнения команд компиляции ядра и возврата к командной строке создается новое ядро. Чтобы загрузить систему с новым ядром, его необходимо переместить в стандартный каталог, из которого оно будет запускаться. Это делается вводом команды

# ср /usr/src/linux-2.4.2/arch/i386/boot/bzlmage /boot/vmlinuz-2.4.2-2 В завершение, для обновления карты загрузки выполните команду lilo:

#

/sbin/lilo

Совет

В имени копируемого образа ядра можно указать номер версии. Важно, чтобы имя этого файла совпадало с именем, указанным в файле /etc/liio.conf.



Аутентификационные параметры


После установки пароля наступает черед аугентификационных параметров. На экране расположены пять флажков, устанавливаемых по отдельности и не исключающих друг друга.

Enable MD5 Passwords (Разрешение паролей MD5).

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

Use Shadow Passwords (Использование теневых паролей).

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

Enable

NIS

(Включить сетевую информационную службу).

Это метод аутентификации, применяемый во многих сетях Unix, особенно на основе серверов Sun Solaris. Можно задать имя домена группы компьютеров в этой сети или указать специальный сервер, где хранятся - NIS-имена и пароли пользователей. По умолчанию, флажок сброшен.

Enable LDAP (Включить облегченный протокол доступа к сетевому каталогу).

Протокол Lightweight Directory Access Protocol (LDAP) устанавливается для специальных каталогов пользователей. Если вы-знаете имя LDAP-сервера вашей сети, можете разрешить этот протокол. По умолчанию, флажок сброшен.

Enable Kerberos (Включить Kerberos).

Система безопасности Kerberos использует шифрование паролей при передаче по сети. Она предполагает доступ к серверу, который предоставляет специальные квитанции, используемые как ключи при шифровании. Не устанавливайте этот флажок, пока вы не решили перевести все Linux-службы на данный протокол. По умолчанию, флажок сброшен.

Если у вас нет основательного понимания назначения этих параметров или столь же основательных причин изменить их, оставьте значения по умолчанию.



База данных Х-ресурсов


Источником Х-ресурсов служат файлы app-defaults. Существуют версии файлов app-defaults для большинства Х- и KDE-приложений. Содержимое этих файлов можно использовать как образец для создания собственного файла . Xdef aults. В Red Hat Linux 7.1 эти файлы расположены в каталоге /usr/X11R6/lib/Xll/app-defaults/. KDE-приложения располагают собственными файлами app-defaults, хранящимися в каталоге /usr/share/apps/kdisplay/app-defaults/.



Debian Linux


Debian Linux разработан добровольцами. Многие из них работали над переводом Debiar. Linux на другие языки. На момент написания книги, были переведены на 17 различных языков отдельные компоненты документации и реализована соответствующая поддержка. Для этого дистрибутива отсутствует центр поддержки.

E-mail: debian-project@lists.debian.org WWW:

http://www.Debian.org/



Настройка Netscape для E-mail


Сначала откройте Netscape Mail. Дня этого можно либо выбрать команду меню Tasks/Mail Задачи/Почта), либо щелкнуть на значке Mail (Почта) в левом нижнем углу окна. При первом от-крытии окна Netscape Mail запускается Мастер счетов Account Wizard. помощью этого Мастера можно создать счета четырех типов: ISP Or Email Provider (Провайдер ISP или почты), Netscape WebMail, AOL Account (Счет AOL) и Newsgroup Account

(Счет

новостей).

Примечание

Если Мастер Account Wizard не появился, значит у вас уже есть почтовый счет. В этом случае в окне Netscape Mail выберите Edit/Mail/News Account Settings (Правка/Настройка счета почты и новостей). В окне Account Settings (Настройка счета) щелкните на кнопке New Account (Новый счет), чтобы вызвать Мастера счетов Account Wizard.

Большинство пользователей располагает, по крайней мере, счетом провайдера ISP Or Email Provider. Необходимые для его организации шаги аналогичны шагам организации счета новостей Newsgroup Account. Если у вас есть счет Netscape WebMail или AOL, то вам нужен только почтовый адрес для системы. Выберите тип ISP Or Email Provider и щелкните на Next для продолжения.

В следующем окне Мастера Account Wizard введите ваше имя и адрес e-mail. Имя, введенное вами, будет использоваться в создаваемых вами почтовых сообщениях

как подпись. Введенный вами адрес e-mail также будет присоединяться к создаваемым сообщениям в качестве обратного адреса. Если получивший ваше письмо адресат щелкнет на кнопке Reply to (Ответить), то ответ по умолчанию будет отправлен на ваш адрес e-mail.

Примечание

Если создается счет новостей Newsgroup Account, необходимо указать имя и почтовый адрес e-mail, которые будут указываться в ваших сообщениях, отправляемых в телеконференции (группы новостей).

Совет

Чтобы избежать нежелательной почты, рассылаемой почтовыми роботами, например, разнообразной рекламы, попробуйте добавить nospam к своему почтовому адресу e-mail. Например, если ваш почтовый e-mail адрес mike@mike.mke, задайте mike@nospam. mike.mke. Любой компьютер, регистрирующий обратный почтовый e-mail адрес из вашего письма, не сможет послать по такому адресу ненужную вам почту. При этом ваши друзья вполне смогут к вам обратиться, удалив nospam из адреса e-mail, доступного им в создаваемом (ответном) почтовом сообщении.


Задав имя и почтовый e- mail адрес, щелкните на кнопке Next. В следующем окне можно сконфигурировать серверы, предназначенные для работы с входящей (incoming) и исходящей (outgoing) почтой e-mail.

Сервер входящей почты может быть одного из двух типов: РОРЗ или IMAP4. Ранее мы разбирали, что РОРЗ-серверы обычно используются провайдерами ISPs и другими почтовыми службами Internet. IMAP4 - более совершенный сервер, позволяющий выполнять поиск среди сообщений перед выполнением загрузки на локальный компьютер. В любом случае следует указать имя сервера входящей почты (его вам сообщат в фирме, предоставившей вам почтовый e-mail адрес). Этот адрес может выглядеть, например, так pop. emailprovider. net.

Исходящая почта отправляется через

SMTP-сервер

провайдера ISP, который управляет всеми отсылаемыми сообщениями. Узнайте у вашего провайдера ISP имя этого сервера: оно может выглядеть, например, так smtp .yourISP .net. Задав имена серверов входящей и исходящей почты, щелкните на кнопке Next для продолжения конфигурирования.

Введите имя пользователя, определенное для вас провайдером почтовых услуг. В большинстве случаев речь идет о части почтового e-mail адреса, расположенной перед символом @. Если вы забыли это имя, обратитесь к провайдеру почтовых услуг. Задав имя пользователя, щелкните на кнопке Next для продолжения конфигурирования.

В следующем окне, называемом Account Name (Имя счета) необходимо ввести имя счета. Задав имя счета, щелкните на кнопке Next для продолжения конфигурирования.

Последнее окно Мастера, отображает часть заданных вами параметров конфигурации счета. Можно щелкнуть на кнопке Back (Назад) для возврата к предыдущим шагам конфигурирования с целью внесения изменений в параметры. Для завершения конфигурирования щелкните на кнопке Finish (Готово).


Основы безопасности в сети


Вопросы безопасности весьма актуальны при соединении с сетью и доступе к ее ресурсам многих пользователей. К счастью, в Linux существует механизм, позволяющий контролировать, какие компьютеры в сети пытаются соединиться для получения услуг конкретной системы Linux.

Этот базисный механизм безопасности обеспечивается двумя файлами: /etc/hosts . allow и /etc/hosts. deny. Они являются лишь звеном в цепи безопасности, которая состоит из трех звеньев.

Разрешение доступа для любой комбинации демон-клиент в hosts . allow.

Отказ в доступе для любой комбинации демон-клиент в ho s t s . deny.

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

По умолчанию записи в hosts. allow и в hosts. deny отсутствуют, то есть по умолчанию любой пользователь может установить соединение с системой. Конечно, это не запрещает индивидуальным сервисам, например Telnet и FTP, требовать дальнейшей аутентификации. Это также не исключает те начальные попытки соединения, которыми начинаются многие хакерские атаки через неизвестные системы.

Создать записи для hosts. allow и hosts . deny просто.

Список_демонов Список_клиентов

Любая запись, подобная этой, указывает, какие демоны сети (f tpd, in. telnetd, in. rshd) могут разрешить соединение с конкретным хост-компьютером (в файле hosts .allow) или отказать в установлении соединения с каким-то хост-компьютером (в hosts . deny). В списке может быть указан любой демон сети. Например, запись

ftp: host1

в файле hosts. allow позволяет установить входное FTP-соединение с указанным компьютером hostl по его инициативе.

Несколько специальных ключевых слов облегчают задачу, исключая необходимость в поимен-.ном списке всех демонов и клиентов. Ключевое слово ALL может соответствовать любому клиенту или любому демону. Например, запись

ALL: ALL

в файле hosts. allow позволяет осуществить любой тип доступа любому клиенту, в то время как аналогичная запись в hosts . deny запрещает все возможные соединения.

Ключевое слово EXCEPT указывает исключения в сети, в которой разрешены все возможные соединения с помощью ключевого слова ALL. Например, запись


ALL EXCEPT ftpd: ALL

в файле hosts. deny запрещает доступ всем клиентам ко всем сервисам, исключая FTP. Аналогично

ALL: .local.domain EXCEPT foo.local.domain

в hosts . allow разрешает доступ ко всем сервисам для любого компьютера в домене local, domain (обратите внимание на "." перед local .domain), исключая foo. local . domain.

Наконец, ключевое слово LOCAL позволяет легко указать доступ для всех машин в локальном домене

ALL: LOCAL

в hosts . allow, предоставляя любой тип доступа с компьютеров в локальном домене.

Файлы hosts. allow и hosts. deny могут содержать разнообразные записи, что позволяет осуществлять более тонкий контроль, чем необходимо для большинства пользователей. С деталями настроек можно познакомиться на странице руководства для hosts . allow:



$ man hosts.allow




Подменю Quick Browser


Окна диспетчера файлов обеспечивают великолепные возможности графической манипуляции файлами, но несколько медлительны при запуске программ или доступе к файлам данных. Подменю .Quick Browser (Быстрый браузер) обеспечивает доступ к любой части файловой системы через главное меню KDE без открытия окна диспетчера файлов.

В этом подменю нельзя перетаскивать файлы (из каталога в каталог) или редактировать их свойства, но очень удобно запускать программы и открывать файлы данных.

Для запуска Quick Browser выберите команду Quick Browser в главном меню. Кратко рассмотрим команды подменю Quick Browser (их три).

Home Directory (Исходный каталог) - открывает окно диспетчера файлов с содержимым исходного каталога.

Root Directory (Корневой каталог) - открывает окно диспетчера файлов с содержимым корневого каталога (/), т.е. каталога верхнего уровня Linux.

System Configuration (Системная конфигурация) - обеспечивает доступ к файлам и подкаталогам каталога /etc.

Чтобы оценить возможности просмотра файловой системы вашего компьютера с помощью Quick Browser, выберите в главном меню подменю Quick Browser, а в нем - опцию Root Director)

л

посмотрите отображаемые подкаталоги, позиционируя на них мышь (рис. 11.11). Обратите внимание на следующие особенности.

Если навести указатель мыши на каталог, открывается подменю с его содержимым. Если щелкнуть на файле, КDЕ попытается запустить или открыть этот файл.

Если щелкнуть в любом подменю на имени каталога, то можно выбрать опцию Open In File Manager (Открыть в диспетчере файлов) или Open In Terminal (Открыть в терминале), чтобы открыть Konqueror или окно со строчным интерфейсом в этом каталоге.

Рис. 11.11.

Можно использовать подменю Quick Browser для отображения файлов без открытия окна диспетчера файлов

Например, обратитесь в меню Quick Browser к элементу Home Directory. Щелкните на выбранном файле. КDЕ откроет этот файл в соответствующем приложении.



Подстановочные символы


Одно из мощных средств современных оболочек (в том числе Bash) - подстановочные символы, позволяющие задавать несколько имен команд или файлов в одном выражении. Рассмотрим простой пример. Если ввести команду,

$ ls -1

ответом на нее будет полный список файлов текущего каталога. Предположим, что нам надо найти файл, о котором известно только то, что его имя начинается на букву "z". Введем команду,

$ Is -1 z*

в которой аргумент z * означает все файлы, имена которых начинаются на букву "z". Пользователям

DOS

или Windows такое применение звездочки, вероятно, знакомо. После ввода команды оболочка Bash составляет список всех файлов, имена которых начинаются на "z" и заменяет аргумент z * этим списком. Имена файлов из списка передаются в качестве аргументов команде Is -1. В оболочке Bash возможности подстановочного символа "*" значительно шире, чем в DOS или окне DOS системы Windows.

Подстановочные символы в обозначении каталогов и файлов

Одно из применений

подстановочных символов -

обозначение каталогов и файлов. Здесь, кроме звездочки, применяются еще два символа. Все символы, а также их значения, перечислены в табл. 16.3.

Табл. 16.3.

Применение подстановочных символов в обозначении каталогов и файлов

Символ

Описание

?

[...]

[A-F]

[

..

.] или [!...]

[

A

A-F] или [IA-F]

Любой единичный символ

Любой единичный символ, заключенный в скобки

Любой единичный символ, попадающий в указанный диапазон

Любой единичный символ, кроме заключенных в скобки

Любой единичный символ, не попадающий в указанный диапазон

Рассмотрим несколько примеров.

Предположим, надо составить список всех файлов с именами длиной в три символа, первый из которых "а", а последний - "z". Это можно сделать, введя команду

$ Is -1 a?z

Если заменить вопросительный знак звездочкой, получим список файлов, имена которых просто начинаются на "а" и оканчиваются "z".


$ Is -I a*z

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

Рассмотрим ситуацию, когда необходимо получить список файлов, имена которых начинаются на а, Ь, с или d._ Для этого можно воспользоваться следующей командой.

$ Is -1 а* Ь* с* d*

Однако такая форма несколько громоздка. Гораздо удобнее воспользоваться следующей: $ Is -I [abed]*

Выражение в квадратных скобках означает любую из перечисленных букв, звездочка - любое число следующих за ней произвольных символов.

Поскольку перечисленные буквы образуют непрерывную последовательность, команду можно упростить:

$ Is -I [a-d]*

Наконец, иногда необходимо исключить один или несколько символов, включив все остальные, Рассмотрим создание сжатого архива всех исходных каталогов системы. Предположим, нужно архивировать все каталоги кроме тех, имена которых начинаются с буквы "m". Для этого можно воспользоваться командой,

$ tar czvf home.tar.gz /home/[a-1]* /home/[n-z]*

но гораздо удобнее следующая форма этой же команды:

$ tar czvf home.tar.gz /home/[!m]*

Здесь выражение в квадратных скобках обозначает любой символ, кроме буквы "m".

Можно усложнить задачу, исключив архивирование каталогов, имена которых начинаются с букв m, n или о. Соответствующая команда будет иметь вид



$ tar czvf home.tar.gz /home/[^mno]*



или



$ tar czvf home.tar.gz /home/[!m-o]*



Фигурные скобки

Подстановочные символы в

фигурных скобках

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

$ mkdir testdir{1,2,3,4}

По этой команде создаются четыре каталога с именами testdirl, testdir2, testdir3 и testdir4.

Обратите внимание, что элементы выражения в фигурных скобках разделены запятыми, и все они используются последовательно для образования нужных имен. Разделение элементов запятыми предполагает, что они, в отличие от элементов в квадратных скобках, могут содержать более одного символа, например:



$ mkdir testdir{01,02,03,04}

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

Интересно, что в выражения в фигурных скобках можно вкладывать выражения с подстано

вочными символами имен файлов и каталогов, а также другие выражения в фигурных скобках. Это следствие того, что первыми подставляются вложенные символы. Рассмотрим следующий пример.



$ mkdir newdir/{firstdir,firstdir/'dir<01,02}}



По этой команде создаются следующие кащлоги.

firstdir

firstdir/dir0l

firstdir/dir02

В приведенной команде выражение {01,02} вложено в другое выражение в фигурных скобках.

Точно так же внутри фигурных скобок можно указывать выражения с подстановочными символами имен файлов и каталогов. По команде



$ chmod 644 testfile.{tx?,bak,0[0-9]}



происходит изменение разрешений доступа к серии файлов, в том числе ко всем файлам, соответствующим выражениям testfile. tx?, testfile.bak и от testfile.00 до testfile.09.



Подстановка команд

Еще один вариант применения подстановочных символов -

подстановка команд,

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

Для примера, рассмотрим ситуацию, в которой необходимо сжать все файлы с расширением . bak. Список этих файлов можно получить, введя команду



$ find / -name '*.bak' -print



Этой же командой с флажком exec можно воспользоваться для сжатия всех файлов.



$ find / -name '*.bak

r

-exec gzip {} \;



Другой вариант - подстановка команды, как в следующем примере.



$ gzip "find / -name '*.bak' -print"



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

Существует альтернативная форма этой конструкции - без обратных кавычек:



$ gzip $(find / -name \*.bak -print)



Основное различие между двумя конструкциями - смысл обратной косой (\) в первой из них. Этот смысл сохраняется, если не указаны символы "$","'" или "\".



Примечание

Приведенный перечень подстановочных символов оболочки Bash не полон. Полный список, наряду с подробным описанием, можно найти на странице руководства Bash. Однако и то, что мы описали, рбеспечивает немалые возможности. Если вам понадобятся дополнительные средства- связанные с подстановочными символами, обратитесь к странице руководства, воспользовавшись командой man bash.


Применение minicom для проверки модема


Первый шаг в применении minicom - создание глобального конфигурационного файла. Для этого надо запустить minicom с флажком -s, войдя в систему как корневой пользователь.

# minicom

-s

По этой команде происходит запуск конфигурационной среды minicom (рис. 18.8).

Рис. 18.8.

Конфигурирование minicom

Перемещение по меню осуществляется при помощи клавиш со стрелками вверх и вниз, выбор позиции меню - нажатием Enter.

Наиболее важные параметры скрываются за командой меню Serial Port Setup (Установка последовательного порта) в диалоговом окне Serial Port Setup (рис. 18.9).

Рис. 18.9.

Конфигурирование последовательного порта

Чтобы изменить какое-либо значение, нажмите клавишу с соответствующей буквой. Прежде всего необходимо установить последовательное устройство, нажав клавишу "A" (Serial Device) и указав подходящий файл устройства. Если модем подключен ко второму последовательному порту, можно указать /dev/ ttyS1 ввиду использования minicom для исходящих соединений.

Примечание

Если последовательный порт уже подсоединен к /dev/modem, как показано на рис. 18.9, проверьте его связи с помощью команды ls -I /dev/modem. Если будет отображено подсоединение к определенному последовательному порту, то никакие изменения не нужны.

Необходимо также конфигурировать параметр Е (Bps/Par/Bits - Скорость/Четность/Стоп-биты) в соответствии с требованиями модема и системы, к которой предстоит подключаться (как правило, системы провайдера Internet). После нажатия клавиши "Е" откроется окно параметров связи (рис. 18.10).

Рис. 18.10.

Конфигурирование параметров связи

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

Для параметра Speed (Скорость) выберите значение, равное максимальной скорости модема при сжатии данных. Как правило, это значение в четыре раза превышает его номинальную скорость. Например, для модема со скоростью 14,4 Кбит/с следует установить значение 57 600 бит/с, для 28,8 Кбит/с - 115 200 бит/с. Для модема со скоростью 56 Кбит/с устанавливается 115 200 бит/с или 230 400 бит/с (если доступно).


Как правило, в современных системах бит четности не используется, используется 8 битов данных и один столовый бит (вариант Q). Правильные значения остальных параметров узнайте у администратора системы, к которой предстоит подключаться.

Вернитесь в окно Serial Port Setup, нажав Enter. Еще одно нажатие Enter приводит к возврату в главное меню.

Этой информации должно быть достаточно для тестирования модема. Сохраните модифицированный набор параметров как конфигурацию по умолчанию, выполнив команду меню Save Setup as Dfl (Сохранить параметры как Dfl). Выполнив команду меню Exit (Выход), завершите работу конфигурационной процедуры и продолжите работу в окне эмулятора терминала minicom (рис. 18.11) с установленными параметрами.





Рис. 18.11.

Главное окно программы minicom

Сообщение "ОК" в окне свидетельствует о нормальной работе модема. Чтобы убедиться в этом еще раз, введите AT и нажмите Enter. Ответом должно быть сообщение "OK"



AT



OK

Если вы получили именно такой результат, попробуйте набрать номер и соединиться с удаленной системой.



ATDT1234567

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



ATDT1234567

CONNECT 115200

Если на каком-то этапе возникнут проблемы, это будет означать неисправность физического соединения или неправильную конфигурацию модема. Обратитесь к справочнику HOWTO по модемам http: //www. linuxdoc.org/HOWTO/Modem-HOWTO.html. Там приведена подробная информация о том, как подготовить модем к работе в Linux.


Расписание заданий в crond


Одно из важных достоинств многопользовательской операционной системы серверного класса, каковой является Linux, - возможность автоматизации многих процессов. Если использовать Linux как сервер электронной почты, Web- или FTP-сервер, то ему придется отвечать автоматически на все поступающие запросы. Кроме того, отдельные пользователи, как и администратор системы, могут составлять расписания для автоматического запуска заданий.

Автоматический запуск выполняется демоном crond. Это стандартный демон, устанавливаемый при каждой загрузке системы.



Тестирование нового ядра


После перемещения файла нового ядра в стандартный каталог (указанный в файле lilo. conf) систему можно перезагрузить с этим ядром.

Сразу после перезагрузки проверьте работу новых средств, ради которых и затевалась реком-пиляция. Можно выполнить следующие действия.

Сравнение объемов старого и нового ядер. Следует проверить объем памяти, занимаемый операционной системой, введя команду free.

Установка файловой системы или попытка доступа к устройству без загрузки модуля ядра для его поддержки (если поддержка данного устройства встроена в ядро).

Использование сетевых ресурсов (например, алиасов IP), отсутствовавших в прежнем ядре.

Может понадобиться проверка временной метки файла текущего ядра. Для этого введите команду uname. Это позволяет убедиться в том, что в данный моментсистема работает с реком-пилированным ядром. Метка времени и даты ядра должна совпадать со временем его рекомпи-ляции.

#uname -v

#1 Tue Mar 9 13:27:39 EST 2001

Примечание

Если ответ команды uname свидетельствует о том, что система загружена не с новым ядром, разберитесь с системным загрузчиком LILO. Проверьте, правильно ли указано имя загружаемого ядра в файле /etc/lilo.conf.



Установка сетевых модулей


Загрузочный диск Linux Router Project, первый из числа созданных, вами, не включает никаких модулей сетевых плат. Они расположены на втором гибком диске. Ниже приведена процедура копирования необходимых модулей с гибкого диска на RAM-диск, который создан с помощью загрузочного диска Linux Router Project.

Нажмите клавишу

Q

, чтобы выйти из меню Linux Router Project.

Вставьте и смонтируйте второй гибкий диск (с модулями сетевых плат) с помощью команды mount /dev/fdO /rant.

Скопируйте необходимые модули в каталог /lib/modules на RAM-диске. Например, если для ваших плат нужны драйверы пе2000 и pcnet32, выполните команды ср /mnt/ne. о /lib/modules и ср /mnt/pcnet32.о /lib/modules.

Вернитесь в конфигурационное меню Linux Router Project с помощью команды /usr / sbin/ Ircfg.

Сконфигурируйте файл /etc/modules, чтобы включить драйверы сетевых плат. Чтобы получить доступ к этому файлу, выберите в первом меню 3, во втором меню 2, а в третьем - 1. Добавьте имя модуля, например, pcnet32 и пе при необходимости, включая необходимые порты и адреса, например, irq=10 и io=0x3 00. Нажмите F1, чтобы получить доступ к списку команд редактора по умолчанию.

Установите IP-подмену для необходимых модулей. Например, если вам необходимо установить FTP-доступ через данный маршрутизатор, удалите символ диеза (#) перед ip_masq_f tp.

Запишите файл с помощью команды Alt+S. Выйдите из редактора с помощью команды Alt+Q. Вернитесь в главное меню с помощью двух команд Q.

В завершение, для проверки построенной конфигурации перезагрузите систему. Оставьте загрузочный диск Linux Router Project в накопителе. Компьютер должен распознать установленные сетевые платы.



Выбор способа установки


Ввиду значительного объема дистрибутивов, Linux распространяется, как правило, на дисках CD-ROM. Практически любой дистрибутив можно загрузить из Internet, но - опять же, ввиду объема, - это доступно лишь пользователям, имеющим специализированное (выделенное) высокоскоростное соединение с Internet.

Таким образом, дисковод CD-ROM совершенно необходим для установки Linux, в том числе и дистрибутива Red Hat 7.1, прилагаемого к книге. Несмотря на теоретическую возможность установить Linux непосредственно из Internet, этот вариант не подходит большинству пользователей, так как требует больших затрат времени и денег.

Рассмотрим различные варианты установки Linux с прилагаемого диска CD-ROM. Все процедуры аналогичны процедурам установки других дистрибутивов Linux, распространяемых на CD-ROM. Об особенностях установки отдельных дистрибутивов можно узнать из прилагаемой к ним документации.



Загрузка последней версии Apache


Если планируется запустить высококлассный или очень объемный Web-сервер, загрузите последнюю версию Apache с узла httpd.apache.org (рис. 32.1). При использовании последней версии можно быть уверенным, что незначительные ошибки, которые не повлияли бы на небольшой сайт, не проявятся при работе с более сложным или более посещаемым сайтом.

Рис. 32.1.

Web-сайт Apache

Примечание

Приведенная далее информация по конфигурированию и управлению Apache подразумевает использование версии этого Web-сервера с Red Hat CD-ROM, прилагаемого к книге Новые версии Apache совместимы сверху вниз. Конфигурационные файлы, рассматриваемые в главе, должны работать и с новыми версиями Apache.

При загрузке Apache с Web-сайта Apache можно загрузить либо оригинал исходного кода, либо откомпилированные исполняемые файлы для Linux. Существуют бесспорные аргументы в пользу первого способа, особенно если планируется разработка программ с использованием API Apache или внедрение дополнительных модулей в сервер. Однако рекомендуем загрузить уже готовые исполняемые модули для построения Web-сайта с базовым набором свойств Apache. В книге нет руководства по компилированию собственной копии Apache, так как для этого требуется более тщательное изучение Web-серверов.

Для получения последнего дистрибутива исполняемых модулей Apache перейдите в браузере на Web-сайт Apache (httpd. apache. org) и выберите ссылку загрузки (Download). Это приведе-к каталогу файлов и ссылке под названием Binaries. Последовав за ссылкой Binaries, укажите операционную систему (в нашем случае, Linux). В окне браузера отобразится список доступных файлов. Во время написания книги этот список был следующим.

Заметьте: судя по именам файлов, текущей версией является Apache I.3.6. Обозначения 1586 и 1686 указывают, что пакет откомпилирован с оптимизацией для процессоров класса Pentium либо Pentium II соответственно.

Файлы README являются текстовыми. Не мешало бы их прочесть перед загрузкой. Файлы . gz сжаты утилитой gzip. ASC-файлы включают сигнатуру PGP. После загрузки выбранного пакета распакуйте файл во временном каталоге. Для распаковки архива в подкаталог текущего каталога используйте команду:




$ tar xzvf apache-file-name



В данном случае подкаталог называется apache_l .3.20, хотя он может быть и другим в зависимости от версии Apache, доступной при загрузке исполняемых модулей. В этом каталоге есть полный исходный текст загруженной версии с примерами конфигурационных файлов и полной документацией в формате HTML.

Чтобы установить загруженные исполняемые модули, выполните установочный сценарий install-bindist. sh из каталога распакованного архива.



$ install-bindist.sh



По умолчанию эта команда установит сервер Apache в /usr/local/etc. Заметьте: Red Hat помещает Apache-сервер в каталог /usr/sbin, конфигурационные файлы в /etc/httpd/conf и делает каталог /var /www/html корневым для Web-документов. В этой главе подразумеваются умолчания, принятые в Red Hat, так как они используются при инсталляции Apache с CD-ROM, прилагаемого к книге.



Примечание

Если вы используете другую версию Apache, указанные каталоги могут быть другими. Воспользуйтесь командами find или locate, чтобы найти их.

Дистрибутивы исполняемых кодов Apache содержат полные инструкции по компиляции пакета из прилагаемых исходных текстов, поэтому если обнаружится, что загруженные откомпилированные модули работают не так, как ожидалось (возможно, из-за проблем несовместимости с библиотеками Linux), можно использовать инструкции для построения собственных исполняемых модулей.