PPP HOWTO: Конфигурирование вашего Linux Ядра

Next Previous Contents

7. Конфигурирование вашего Linux Ядра

Для того чтобы использовать PPP, ваше ядро Linux должно быть скомпилировано с включенной поддержкой PPP. Возьмите исходный текст для вашего ядра Linux, если у вас его еще нет - он лежит в /usr/src/linux в стандартной файловой системе Линукса.

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

При загрузке, ваше ядро Linux печатает много полезной информации.

В ней можно найти информацию о поддержке PPP, если ядро включает ее. Чтобы просмотреть эту информацию, посмотрите ваш файл syslog или используйте dmesg | less, чтобы отобразить информацию на экране. Если ваше ядро включает поддержку PPP, вы увидите строки типа

______________________________________________________________________

PPP Dynamic channel allocation code copyright 1995 Caldera, Inc.
PPP line discipline registered.
______________________________________________________________________
( это для версий ядра Linux 2.0.x).

Исходные тексты ядра Linux могут быть получены по ftp с sunsite.unc.edu или зеркал.

7.1 Установка исходных текстов ядра Linux

Ниже перечислены краткие инструкции для получения и установки исходных текстов ядра Linux. Полная информация может быть получена Linux Kernel-HOWTO.

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

1. Перейдите в каталог /usr/src : cd /usr/src

2. Проверьте наличие каталога с исходными текстами /usr/src/linux

3. Если у вас нет исходных текстов, то скачайте их с Интернет сайта или ближайшего зеркала.

Если Вы ищете более ранние версии ядра (типа 1.2.X), то они хранятся в каталоге старого ядра Linux.

4. Выберите соответствующее ядро - обычно самое современное доступно для всех. Отыщите его и поместите исходный tar файл в /usr/src.

Обратите внимание: файл 'tar' - архив - возможно сжатый (так как исходные тексты ядра Linux это файлы tar), содержащий множество файлов в ряде каталогов. Это Linux эквивалент DOS'овской утилиты zip, поддерживающая сохранение структуры каталогов в архиве.

5. Если вы уже имеете установленные исходники Linux, но хотите установить новое ядро, то вы должны удалить старые исходники. Используйте команду rm -rf /usr/src/linux

6. Теперь разожмите и извлеките исходники, используя команду tar xzf linux-2.0.XX.tar.gz

7. Теперь, cd /usr/src/linux и прочитайте файл README. Он содержит превосходное объяснение о том как настроить и скомпилировать новое ядро. Прочитайте этот файл (хорошая идея напечатать его и иметь копию под руками, пока вы компилируете, если у вас не было достаточно времени знать все по этому вопросу).

7.2 Знание ваших аппаратных средств

Вы ДОЛЖНЫ знать то, какие платы/устройства имеются внутри вашего PC, если вы собираетесь перекомпилировать ваше ядро!!! Для некоторых устройств (типа звуковых плат) вы должны также узнать различные установки (типа IRQ, адресов ввода-вывода и пр.).

7.3 Компиляция ядра - ядро Linux 1.2.13

Чтобы начать процесс конфигурации, следуйте инструкциям файла README, чтобы правильно установить исходники. Вы начинаете процесс настройки ядра командой make config

Для того, чтобы использовать PPP, вы должны сконфигурировать ядро, чтобы включить поддержку PPP (PPP требует И pppd, И поддержки PPP в ядре).

______________________________________________________________________

PPP (point-to-point) support (CONFIG_PPP) [n] y
______________________________________________________________________

Ответьте на другие вопросы make config, чтобы согласовать конфигурацию Linux с аппаратными средствами вашего PC, как вы хотите. Затем продолжите следовать README, чтобы скомпилировать и установить ваше новое ядро.

Ядро 1.2.13 создает только 4 PPP устройства. Для многопортовой последовательной платы, вы должны будете отредактировать исходники PPP ядра, чтобы получить большее количество портов. (См. README.LINUX файл, который приходит как часть дистрибутива PPP-2.1.2 для подробностей по правке исходных текстов, которую вы должны сделать).

Обратите внимание: диалог настройки 1.2.13 не позволяет вам идти в обратном направлении - так если вы допустили ошибку в ответе на один из вопросов в диалоге make config, выйдите, нажав CTRL-C и начните снова.

7.4 Компиляция ядра - ядра Linux 1.3.x и 2.0.x

Для Linux 1.3x и 2.0.x процесс настройки аналогичен настройке ядра 1.2.13. Снова следуйте инструкциям файла README, чтобы правильно установить исходники. Вы начинаете процесс конфигурации ядра командой

make config
Однако, вы также можете выбрать
make menuconfig
Это команда запускает менюоснованную систему настройки с интерактивной справкой, которая позволяет вам двигаться в обратном направлении и вперед в процессе конфигурации.

Имеется также настойчиво рекомендуемый интерфейс настройки для X Window System

make xconfig
Вы можете вкомпилировать поддержку PPP непосредственно в ваше ядро или как загружаемый модуль.

Если вы используете PPP непостоянно, то рекомендуется компилировать PPP поддержку как загружаемый модуль. При использовании 'kerneld', ваше ядро автоматически загрузит модуль(и), требуемый для обеспечения поддержки PPP, когда вы начинаете ваш процесс связи PPP. Это сохраняет ценное пространство ОЗУ: часть ядра не может быть выгружена из памяти, а загружаемые модули автоматически удаляются, если не используются.

Чтобы сделать это, вы должны разрешить возможность загрузки модулей:

______________________________________________________________________

Enable loadable module support (CONFIG_MODULES) [Y/n/?] y
______________________________________________________________________

Чтобы добавить поддержку PPP в ядро, ответьте на следующий вопрос:

______________________________________________________________________

PPP (point-to-point) support (CONFIG_PPP) [M/n/y/?]
______________________________________________________________________

Для загружаемого модуля PPP, ответьте M, иначе, для компиляции PPP в ядро, ответьте Y.

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

7.5 Обратите внимание на PPP-2.2 и /proc/net/dev

Если Вы используете PPP-2.2, вы обнаружите, что побочный эффект создания PPP устройств 'на лету' в том, что никакие устройства не обнаруживаются, если вы посмотрите /proc/net, пока устройство не создано запуском pppd:

  ______________________________________________________________________
  [hartr@archenland hartr]$ cat /proc/net/dev
  Inter-|   Receive                  |  Transmit
   face |packets errs drop fifo frame|packets errs drop fifo colls carrier
      lo:  92792    0    0    0    0    92792    0    0    0     0    0
    eth0: 621737   13   13    0   23   501621    0    0    0  1309    0
  ______________________________________________________________________
Как только вы запустите одну (или больше) услуг ppp, вы увидите записи типа (от сервера ppp):
  ______________________________________________________________________
  [root@kepler /root]# cat /proc/net/dev
  Inter-|   Receive                  |  Transmit
   face |packets errs drop fifo frame|packets errs drop fifo colls carrier
      lo: 428021    0    0    0    0   428021    0    0    0     0    0
    eth0:4788257  648  648  319  650  1423836    0    0    0  4623    5
    ppp0:   2103    3    3    0    0     2017    0    0    0     0    0
    ppp1:  10008    0    0    0    0     8782    0    0    0     0    0
    ppp2:    305    0    0    0    0      297    0    0    0     0    0
    ppp3:   6720    7    7    0    0     7498    0    0    0     0    0
    ppp4: 118231  725  725    0    0   117791    0    0    0     0    0
    ppp5:  38915    5    5    0    0    28309    0    0    0     0    0
  ______________________________________________________________________

7.6 Общие настройки ядра для PPP

Если вы устанавливаете ваш Linux PC как PPP сервер, вы должны вкомпилировать в IP поддержку форвардинга. Это также необходимо, если вы хотите использовать Linux для связывания LAN вместе или вашей LAN с Интернет.

Если вы связываете LAN с Интернет (или связываете вместе две LAN), вы должны быть подумать о защите. Добавление поддержки IP файервола в ядро - наверняка ДОЛЖНО БЫТЬ!

Также вам это понадобится, если вы захотите использовать IP masquerade, чтобы соединить LAN, которая использует любое из вышеупомянутых 'неподключенных' адресов IP сетей.

Чтобы разрешить IP Masquerade и IP fire walling, вы ДОЛЖНЫ ответить ДА на первый вопрос в процессе конфигурации:

______________________________________________________________________

Prompt for development and/or incomplete code/drivers (CONFIG_EXPERIMENTAL)?
______________________________________________________________________

Хотя это может звучать немного пугающе для новых пользователей, многие пользователи активно используют возможности IP Masquerade and IP fire walling в ядре Linux 2.0.XX без проблем.

Как только вы установили и перезагрузили ваше новое ядро, вы можете начать конфигурировать и проверять вашу связь(и) PPP.


Next Previous Contents