Советы по Slackware Linux - 3
Начало смотрите в предыдущих выпусках
IZone.
Автор: X-Stranger
Сегодня мы продолжаем рассматривать советы по Slackware
Linux, которые были собраны Джеком С. Лэем и призваны помочь вам в работе.
Итак, слово снова предоставляется Джеку С. Лэю.
Добавляем учетную запись обычного пользователя
Создаем пользователя jlai с дополнительной группой sys (для доступа к
звуковой системе):
adduser jlai
Включаем Numlock
Для того чтобы включить Numlock в консоли, добавьте следующие строки в
/etc/rc.d/rc.local:
# Turn numlock on:
for tty in /dev/tty[1-6]; do
/usr/bin/setleds -D +num < $tty
done
Для того чтобы включить Numlock в Xfree86, следуйте инструкциям на Linux
from Scratch.
Изменяем загрузочный уровень
По умолчанию в Slackware установлен третий загрузочный уровень,
консольный режим. Вы можете изменить его на четвертый (графический) или
любой другой, внеся изменения в /etc/inittab. Для этого измените 3 в строке
id:3:initdefault на 4.
Если вы просто хотите изменить текущий уровень на четвертый, выполните KDM
или telinit 4 под root'ом.
Настраиваем принтер
В данном случае у вас есть пространство для маневров. Разница будет
заключаться в поддержке принтеров и качестве печати. Вы можете последовать
советам Патрика Волкердинга либо использовать UNIX Printing System (или CUPS)
из директории slackware/extra. Более подробная информация о CUPS есть на
http://www.cups.org/.
Совет Патрика Волкердинга (цитата):
"Много людей спрашивают меня, как настроить печать в Linux. По моему
убеждению, лучший способ — это настроить Apsfilter — систему, позволяющую
выводить на печать файлы различных форматов (DVI, PS, PDF, text), посылая в
буфер принтера командой lpr. Для этого выполните следующие шаги:
1. Убедитесь, что драйвер принтера загружается в /etc/rc.d/rc.modules.
Это должно выполняться по умолчанию.
2. Установите программное обеспечение LPD. Это пакет lprng в
секции А. Скорее всего, он уже установлен на вашей системе.
3. Рекомендуется установить и настроить подсистему TCP/IP,
по крайней мере, для loopback (закольцованный интерфейс). Пакет tcpip входит
в состав секции N, а скрипт netconfig конфигурирует TCP/IP.
4. Apsfilter использует множество других фильтров и
подразумевает, что они установлены. Установите ghostscript и gnu-gs-fonts из
секции AP, чтобы добавить Ghostscript, если вы хотите печатать документы
формата PostScript. Вам также необходимо установить пакет libjpeg из секции
L для поддержки изображений JPEG. Если вы хотите иметь возможность печатать
файлы в формате DVI, по крайней мере, установите стандартные пакеты TeX из
секции T.
5. Установите пакет apsfilter. Этот пакет находится в секции
A; если вы делали полную установку, он у вас уже инсталлирован. В противном
случае найдите пакет в директории ap и установите его: installpkg apsfilter-*.tgz
6. Перейдите в директорию /usr/share/apsfilter/ и запустите
SETUP:
./SETUP
Программа сделает необходимые записи в /etc/printcap, и вы
готовы печатать. Теперь вы можете использовать netatalk и Samba для того,
чтобы Mac- и Windows-компьютеры в вашей сети могли использовать принтер,
подключенный к компьютеру с Linux."
Настраиваем CD-RW-привод
Настройка моего резака IDE Yamaha CRW2100E прошла со свистом. Он у меня
подключен как Secondary slave (или hdd), так что /etc/lilo.conf гласит:
# первая строка в /etc/lilo.conf (или в general section):
append="hdd=ide-scsi"
#Соответственно в файле fstab содержится строка:
/dev/sr0 /cdrw auto noauto,user,ro 0 0
# указываем на директорию /cdrw для монтирования. (не
нравится мне /mnt/cdrw)
Primary master = hda
Primary slave = hdb
Secondary master = hdc
Secondary slave = hdd
Для получения дополнительной информации см. CD-Writing-HOWTO.
О ядре
Инсталлируем исходники нового ядра
Другие дистрибутивы Linux предоставляют модифицированные версии ядер, и
вы можете наткнуться на совет не инсталлировать исходники нового ядра в /usr/src/linux.
Однако к Slackware это не относится. Если Патрик выпускает ядро в виде
пакета (package), вы инсталлируете этот пакет (с помощью команды installpkg),
и ядро будет помещено в /usr/src/linux-version с символической ссылкой,
указывающей на /usr/src/linux.
Если же вы скачали исходники с The Linux Kernel Archives, распакуйте их в
директорию /usr/src и создайте символическую ссылку:
cd /usr/src
tar xvzf /filepath/filename
ln -s linux-version linux (замените version на номер версии ядра)
Итак, исходники ядра установлены. Мы ведь хотели создать новое ядро, не так
ли?
Компилируем новое ядро
Для успешной компиляции ядра нужно время и тренировка. Я так говорю
потому, что никак не получается скомпилировать ядро как надо с первого раза,
но это мое сугубо личное мнение.
Преимущества, которые дает компиляция ядра, перевешивают все сложности,
связанные с этим процессом. В вашем ядре будут только те опции, которые вам
действительно нужны, и размер его будет меньше, чем размер ядра,
поставляемого Slackware по умолчанию.
Для начала создайте следующий файл в директории исходников:
mcedit /usr/src/linux/makeK
#!/bin/bash
#make mrproper — только для заплаток к ядру или если вы уже компилировали
ядро #из этой директории
#make menuconfig — или make xconfig (из сессии X Windows) — или #make
oldconfig
make dep && make bzImage && make modules && make modules_install && \
cp -p /boot/vmlinuz /boot/vmlinuz.old && cp arch/i386/boot/bzImage /boot/vmlinuz
&& \
cp System.map /boot/System.map && cp .config /boot/config && \
echo Отредактируйте lilo.conf для указания нового ядра. Выполните lilo и
перезагрузитесь.
При компиляции ядра впервые начните с конфигурационного файла, который был
использован при загрузке:
cd /usr/src/linux
cp /boot/config .config
make oldconfig
Вы будете оповещены о различиях в версиях ядер. Отвечайте по желанию.
Если вы находитесь в консольном режиме, выполните make menuconfig для
внесения изменений в конфигурацию ядра или make xconfig, если вы в X Windows.
Заплатки к ядру
Я всегда храню нетронутую копию исходников ядра в директории /usr/src.
Например:
cp -pr linux-2.4.19/ linux-2.4.19-clean/
Теперь я могу применять заплатки к ядру, а если что-то пойдет не так,
вернуться к чистой копии.
Каждый раз, когда я компилирую ядро, я изменяю четвертую строку в файле
Makefile:
EXTRAVERSION = -a (-b, -pre8a, etc...). Затем я компилирую его. Теперь мне
не надо волноваться о недостающих модулях каждый раз, когда я загружаю
другое ядро, т.к. новые модули сохраняются в директории /lib/mo-dules с
полным названием version/extraversion. Как только я доволен ядром, я
переименовываю директорию исходников, чтобы она совпадала с именем
директории в /lib/modules (или версией Makefile).
mv linux-2.4.19/ linux-2.4.19a/
rm linux
ln -s linux-2.4.19a linux
Допустим, я хочу добавить изменения из patch-2.4.20-pre8 с
The Linux Kernel Archives к моим исходникам ядра linux-2.4.19. Я скачиваю и
сохраняю файл в /home/download, затем:
cd /usr/src
rm linux
cp -pr linux-2.4.19-clean/ linux-2.4.19/
gzip -dv /home/download/patch-2.4.20-pre8.gz
cp /home/download/patch-2.4.20-pre8 .
patch -p0 < patch-2.4.20-pre8
mv linux-2.4.19/ linux-2.4.20-pre8/
ln -s linux-2.4.20-pre8 linux
cd linux
cp /boot/config .config
make oldconfig
(затем, быть может, make menuconfig, если я хочу увидеть ситуацию в целом)
./makeK
LILO и boot_message.txt
Не забывайте выполнять команду lilo после компиляции нового ядра!
# LILO configuration file
# generated by 'liloconfig'
#
# Start LILO global section
restricted
#linear
append="hdd=ide-scsi"
boot = /dev/hda2
message = /boot/boot_message.txt
prompt
timeout = 50
# compact # быстрее, но не подходит для всех систем
# delay = 5
# VESA framebuffer console @ 1024x768x256
vga = 773
# Normal VGA console
# vga = normal
# VESA framebuffer console @ 1024x768x64k
# vga=791
# VESA framebuffer console @ 1024x768x32k
# vga=790
# VESA framebuffer console @ 1024x768x256
# vga=773
# VESA framebuffer console @ 800x600x64k
# vga=788
# VESA framebuffer console @ 800x600x32k
# vga=787
# VESA framebuffer console @ 800x600x256
# vga=771
# VESA framebuffer console @ 640x480x64k
# vga=785
# VESA framebuffer console @ 640x480x32k
# vga=784
# VESA framebuffer console @ 640x480x256
# vga=769
# ramdisk = 0 # параноидальный вариант
# End LILO global section
# Linux bootable partition config begins
image = /boot/vmlinuz
root = /dev/hda2
label = NewLinux
password=password1
read-only
# append="hdd-ide-scsi video=sstfb"
image = /boot/vmlinuz-ide-2.4.19
root = /dev/hda2
label = OrgLinux
password=password2
read-only
image = /boot/vmlinuz.old
root = /dev/hda2
label = OldLinux
password=password3
read-only
image = /boot/vmlinuz-2.4.18
root = /dev/hda2
label = BckLinux
password=password4
read-only
# Linux bootable partition config ends
# Start Memtest86 bootstrap
image = /memtest/memtest
label = MemTest
password=memtest
# End Memtest86
#----- End /etc/lilo.conf
/boot/boot_message.txt
Welcome to the LILO Boot Loader!
Please enter the name of the Linux Kernel you would like to boot
at the prompt below. The choices are:
NewLinux — New Custom Kernel (default)
OrgLinux — Originial Slackware 9 Kernel
OldLinux — Last Cusom Kernel Kernel
BckLinux — Backup Custom 2.4.18 Kernel
MemTest — Run memory diagnostics
Создаем новый загрузочный диск
В директории /sbin существует скрипт под названием makebootdisk. Он
предлагает на выбор 3 разных загрузочных диска: syslinux
(DOS-форматированный диск), lilo (linux-форматированный диск) и simple
(устарелый). Также вы выбираете ядро, например: /boot/vmlinuz.
По материалам Джека С. Лэя
Продолжение следует
Источник:
http://www.nestor.minsk.by/kg/
|