Linux From Scratch - Gerard Beekmans
Шрифт:
Интервал:
Закладка:
Скрипт sysklogd вызывает программу syslogd с опцией –m 0 Эта опция выключает периодические записи mark в лог файлы каждые 20 минут (значение по умолчанию). Если вы хотите включить периодические записи mark подредактируйте скрипт sysklogd на предмет необходимых изменений. Смотрите man syslogd для более детальной информации.
Конфигурация скриптов localnet.
Частью установки скриптов, относящихся к localnet, является установка имени компьютера. Это требуется для правильной настройки /etc/sysconfig/network.
Создайте файл /etc/sysconfig/network file и введите имя компьютера запустив следующее:
echo «HOSTNAME=lfs» > /etc/sysconfig/network
«lfs» может быть заменено другим именем компьютера (как захотите, мы используем для примера имя lfs. Вам не надо вводить полное имя FQDN (Fully Qualified Domain Name).Эта информация будет храниться в файле /etc/hosts. Мы запишем ее позже.
Cоздание файла /etc/hosts
Если сетевая карта сконфигурирована, то вы должны определить IP адрес для системы и возможные алиасы (дополнительные имена) для использования в файле /etc/hosts. Синтаксис следующий:
<IP address> myhost.mydomain.org aliases
Убедитесь, что введенный IP адрес системы является частью правильного адресного пространства, типа:
Class Networks A 10.0.0.0 B 172.16.0.0 through 172.31.0.0 C 192.168.0.0 through 192.168.255.0
Правильный IP адрес может быть 192.168.1.1. Правильное полное имя системы для этого IP может быть www.linuxfromscratch.org.
Если вы не хотите использовать сетевую карту, то вы таки должны ввести полное имя системы (FQDN)для правильной работы некоторых программ.
Если у вас не планируется использование сетевой карты, создайте следующий файл: /etc/hosts запустив команду:
cat > /etc/hosts << «EOF»
# Begin /etc/hosts (no network card version)
127.0.0.1 www.mydomain.com <value of HOSTNAME> localhost
# End /etc/hosts (no network card version)
EOF
Если у вас есть сетевая карта и она настроена, или вы планируете использовать сетевую карту, то создайте следующий файл /etc/hosts, используя такую команду:
cat > /etc/hosts << «EOF»
# Begin /etc/hosts (network card version)
127.0.0.1 localhost.localdomain localhost
192.168.1.1 www.mydomain.org <value of HOSTNAME>
# End /etc/hosts (network card version)
EOF
Естественно, адрес 192.168.1.1 и www.mydomain.org надо заменить на адрес и имя, которое вам больше нравится (или требуется ввести адрес и имя, которое попросил ввести сетевой/системный администратор и планируется, что эта машина будет частью существующей сети.
Настройка сетевых скриптов
Эта часть нужна для настройки сетевой карты.
Если у вас нет сетевой карты, вам не требуется создавать или настраивать файлы, относящиеся к сетевой карте. В этом случае удалите симлинк network из всех директорий (/etc/rc.d/rc*.d)
Настройка шлюза по умолчанию.
Если ваш компьютер является частью сети вам потребуется указать шлюз используемый по умолчанию для вашего компьютера. Это делается добавлением следующих значений в файл /etc/sysconfig/network. Запустите такую команду:
cat >> /etc/sysconfig/network << «EOF»
GATEWAY=192.168.1.2
GATEWAY_IF=eth0
EOF
Значения для GATEWAY и GATEWAY_IF надо изменить на установки вашей сети. GATEWAY должен содержать IP адрес шлюза по умолчанию, и GATEWAY_IF указывать на интерфейс сетевой карты через который использовать доступ к шлюзу по умолчанию.
Создание конфигурационных файлов для сетевой карты
Какой сетевой интерфейс будет запускаться и останавливаться сетевыми скриптами зависит от файлов расположенных в директории /etc/sysconfig/network-devices. Эта директория должна содержать файлы в формате ifconfig.xyz, где xyz– имя сетевого интерфейса (например eth0 или eth0:1).
Если вы решили переименовать или переместить директорию /etc/sysconfig/network-devices , убедитесь, что вы поправили файлы в /etc/sysconfig/rc на предмет новых путей к сетевым устройствам в скриптах.
Теперь, новые файлы созданные в директории /etc/sysconfig/network-devices содержат следующее. Этой командой создадим пример файла ifconfig.eth0 Now, new files are created in that directory containing the following. :
cat > /etc/sysconfig/network-devices/ifconfig.eth0 << «EOF»
ONBOOT=yes
IP=192.168.1.1
NETMASK=255.255.255.0
BROADCAST=192.168.1.255
EOF
Естественно, значения этих переменных должны быть изменены в каждом файле на правильные настройки. Если переменная ONBOOT установлена yes, то скрипт выполнится при загрузке системы. Если установлено что нить отличное от yes, то скрипт не выполнится.
Глава 8. Делаем систему LFS загрузочной.
Введение
Эта глава описывает шаги, необходимые для того, чтобы сделать вашу систему загрузочной. Здесь рассказывается о создании файла fstab, компиляции нового ядра для LFS системы, добавления необходимых значений в LILO, дабы вы увидели в строке приглашения возможность выбора LFS системы из списка.
Создание файла /etc/fstab
Система должна знать о разделах, которые есть в системе и о порядке их монтирования. Все разделы и порядок их монтирования перечисляется в файле /etc/fstab. Создадим такой файл /etc/fstab содержащий следующее:
cat > /etc/fstab << «EOF»
# Begin /etc/fstab
# filesystem mount-point fs-type options dump fsck-order
/dev/*LFS* / *fs-type* defaults 1 1
/dev/*swap* swap swap pri=1 0 0
proc /proc proc defaults 0 0
# End /etc/fstab
EOF
*LFS*, *swap* and *fs-type* должны быть заменены правильными значениями (например /dev/hda2, /dev/hda5 и reiserfs).
Когда добавляется раздел reiserfs, то значение 1 1 в конце строки должно быть заменено на 0 0.
Для более детальной информации значения полей в файле fstab смотрите man 5 fstab.
Рассмотрим другие строки, которые, возможно, вам придется добавить в ваш файл fstab . Для примера рассмотрим возможность включения devpts:
devpts /dev/pts devpts gid=4,mode=620 0 0
Другой пример, строка, позволяющая использовать устройства USB :
usbdevfs /proc/bus/usb usbdevfs defaults 0 0
Обе опции будут работать только в случае, если вы вкомпилировали в ядро возможность подключения данных устройств.
Установка ядра Linux-2.4.19
Приблизительное время компиляции со всеми опциями по умолчанию: 4.20 SBU Необходимое дисковое пространство со всеми опциями по умолчанию: 181 MB
Построение ядра включает в себя несколько шагов: конфигурация и компиляция ядра. Есть несколько путей для конфигурации ядра. Если вам не нравится путь, описываемый здесь, то читайте README поставляемый с исходниками нового ядра, и ищите другие опции.
Необходимые телодвижения, которые вы должны совершить, это взять файл .config из дистрибутива исходников ядра и скопировать его в $LFS/usr/src/linux-2.4.19. В этом случае вам нет необходимости конфигурировать отдельные опции, и воспользоваться значениями по умолчанию. Если вы хотите сделать так, то сначала запустите команду make mrproper затем скопируйте файл .config снова, и запустите make menuconfig; далее запустите команду make oldconfig (может быть лучше в некоторых ситуациях. Смотрите README для более детальной информации по использованию make oldconfig).
Если вы внимательно используете модули для ядра, то вы должны подправить файл /etc/modules.conf. Информация имеющая отношение к модулям и конфигурации ядра в основном находится в документации к ядру, которая находится в каталоге /usr/src/linux-2.4.19/Documentation. Страница man page по modules.conf и файлы документации kernel HOWTO в http://www.tldp.org/HOWTO/Kernel-HOWTO.html могут также быть полезными.
Необходимо запустить следующие команды для построения нового ядра:
make mrproper && make menuconfig && make dep && make bzImage && make modules && make modules_install && cp arch/i386/boot/bzImage /boot/lfskernel && cp System.map /boot
Примечание: путь arch/i386/boot/bzImage может различаться в зависимости от платформы.
Зависимости Linux
Последняя проверка на версии 2.4.17.
Bash: sh Binutils: ar, as, ld, nm, objcopy Fileutils: cp, ln, mkdir, mv, rm, touch Findutils: find, xargs Gcc: cc1, collect2, cpp0, gcc Grep: grep Gzip: gzip Make: make Gawk: awk Modutils: depmod, genksyms Net-tools: dnsdomainname, hostname Sed: sed Sh-utils: basename, date, expr, pwd, stty, uname, whoami, yes Textutils: cat, md5sum, sort, tail
Делаем систему LFS загрузочной.
Для того, что бы иметь возможность запускать LFS систему мы должны обновить наш загрузчик. Мы предполагаем, что ваша системы использует Lilo (наиболее распространенный загрузчик на данный момент).
Мы не будем запускать программу lilo из-под chroot. Запуск lilo под chroot может вызвать фатальные последствия с уничтожением или повреждением MBR, и мы будем использовать загрузочную дискету для запуска любых LFS систем .
Первое, мы должны выйти из режима chroot и скопировать файл ядра lfskernel в основную систему :
logout
cp $LFS/boot/lfskernel /boot
Следующий шаг – добавление записи в файл /etc/lilo.conf дабы мы могли выбрать нашу LFS систему при загрузке компьютера:
cat >> /etc/lilo.conf << «EOF»
image=/boot/lfskernel
label=lfs
root=<partition>
read-only
EOF
Значение <partition> должно быть заменено значением раздела на котором размещено ядро LFS .
Так же, если вы используете reiserfs для основного раздела, что значение read-only надо заменить на read-write.
Теперь обновим загрузчик запустив следующее: