Настройка Linux (Slackware)
su root - кто не знает,
тот отдыхает ...;-)
Настройка ядра Linux
Ну что, девочки и мальчики, вот мы поставили GNU/Linux
давайте его немного пооптимизируем, чтобы он быстрее работал и
меньше памяти занимал ...давайте перекомпилируем ядро (чем раньше, тем лучше)...
это не так страшно, как кажется,
да и рано или поздно Вам придеться это делать - ведь новые версии ядра появляются
довольно часто ...Итак, если у вас свежепоставленный Linux и вы не забыли поставить
полностью комплекты A,AP,D,К из дистрибутива или скачать linux-x.x.x.tar.gz c ftp.kernel.org
(напомню, что речь идет о slackware, хотя другие дистрибутивы можно точно так же
апгрейдить ...)
Копируем полученный файл (в случае апгрейда) в /usr/src и говорим gzip -d linux-x.x.x.tar.gz;tar xvf linux-x.x.x.tar
.....говорим cd /usr/src/linux
если не получилось - значит либо вы не поставили исходники, либо их не развернули.
теперь проверим символьные ссылки на нужные для сборки каталоги ... быстренько делаем так
cd /usr/include
rm -rf asm linux scsi
ln -s /usr/src/linux/include/asm-i386 asm
ln -s /usr/src/linux/include/linux linux
ln -s /usr/src/linux/include/scsi scsi
cd /usr/src/linux
make mrproper
Этими командами мы удалили и заново создали нужные ссылки, а также удалили старые
объектные модули, которые могли остаться в системе ...
теперь даем команду make menuconfig - если через некоторое время система
обругалась - значит скорее всего вы не поставили библиотеки curses, которые необходимы
для отрисовки красивых менюшек.
Если Вы уже под X-ами и установлены Tcl/Tk (есть в дистрибутиве Slackware),
то можете дать команду make xconfig.
Немного про обозначения - если вы напротив пункта меню видите пустое место -
значит соответствующий пункт не включен ... звездочку - включен и будет "вшит" в ядро ..
буква М - будет модулем ...но некоторые пункты не могут быть модулями,
их можно только в ядро вкомпилировать ...
пойдем по пунктам ...
Code maturity level options - этот пункт меню используется в основном
для отладки - нам он не нужен
Loadable module support - там появиться еще 3 пункта ...
Enable loadable module support - поддержка загружаемых модулей.То есть вы можете
вынести некоторые редко используемые функции в модули и по мере необходимости подгружать их.
Для примера - поддержка ZIP на параллельном порту вместе с принтером - когда надо
принтер - загружаем модуль поддержки принтера - когда нужен ZIP - выгружаем модуль
принтера и грузим модуль ZIP'a.
Set version information on all symbols for modules - Установка информации
о версии во все модули - эта опция служит для того, чтобы при многократных апгрейдах
ядро могло отличать для какой версии ядра скомпилированы модули
Kernel daemon support (e.g. autoload of modules) - Поддержка
ядром автозагрузки модулей. Если Вам лень думать, кого грузить и когда - включите эту
опцию и специальный демон kerneld постарается сам разобрать когда и что нужно ...
Переходим к следующему пункту ...
General setup - Основные установки. Здесь Вы установите некоторые опции, которые
нельзя было разместить в других пунктах.
Kernel math emulation - эта опция полезна владельцам машин без математического
сопроцессора(486 и 386 c sx). Тут включается его эмуляция.
Networking support - у нас сеть есть или как ?
Limit memory to low 16MB - Ограничение используемой памяти до 16Мб. Опять
же нужно для старых машин. У некоторых машин стоит кривой контроллер памяти, и Linux может
найти столько памяти, сколько ее никогда не было ...
PCI bios support - У нас машина с PCI шиной ?
System V IPC - поддержка IPC - оставьте ее включенной.Это надо.
Kernel support for a.out binaries - поддержка ядром файлов, скомпилированных для
старых версий Linux'a (в формате a.out)
Kernel support for ELF binaries - соответственно для нового формата файлов.
Compile kernel as ELF - if your GCC is ELF-GCC - компиляция ядра в новом
формате исполнимых файлов, если Ваш компилятор это поддерживает. Оставьте все три последние
опции включенными.
(Pentium) Processor type - Дальше укажите, какой у Вас процессор - компилятор
попытается использовать команды, специфичные для него, хотя не будет никакой крамолы,
если вы для своего Pentium Pro укажете, что у вас 386я машина ... работать будет ..проверено ..;-)
Handle buggy SMP BIOSes with bad MTRR setup - Если у вас в машине стоит больше
одного процессора - то эта опция скажет ядру отслеживать специфичные
ошибки в некоторых BIOS'ах.
Floppy, IDE, and other block devices - Здесь мы укажем
ядру, что у нас на машине есть в наличии из средств хранения информации.
Normal floppy disk support - У вас флоппики в наличии ?
Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support - Расширенная поддержка
новых и не очень контроллеров.
Use old disk-only driver on primary interface - Использовать старые драйвера
,которые поддерживают только винты на первичном IDE канале. Это опять же для
старых IDE контроллеров, которые при попытке ядра пробежаться по всем подключенным к
нему устройствам вешают машину (я толко один раз видел такую машину ;-)
Include IDE/ATAPI CDROM support - У нас CD-ROM подключен к IDE ?
Include IDE/ATAPI TAPE support - Накопители на магнитной ленте есть на IDE ?
Include IDE/ATAPI FLOPPY support (new) - Флоппи (ZIP,JAZ, etc)на IDE есть ?
SCSI emulation support - Это надо, если у вас что-то из устройств висит на
LPT порту - Linux будет эмулировать их, как SCSI устройства ...
Support removable IDE interfaces (PCMCIA) - Мы на ноутбуке или где ? PCMCIA поддерживать
надо ?
CMD640 chipset bugfix/support - Если у Вас этот чипсет на материнской плате,
то включите его в конфигурации .. а остальные выключите ...
RZ1000 chipset bugfix/support
Intel 82371 PIIX (Triton I/II) DMA support - то же самое для соответствующих
чипсетов ...
Other IDE chipset support - Поддержка других чипсетов (ALI,DTC,Holtek,QDI,UMC) ...
Loopback device support - Поддержка "пустых" устройств.
Очень хорошая опция. Она позволит вам монтировать диски сами на себя,
монтировать образы дисков, иметь "локальную" сеть при отсутствии настоящей сети.
и много другое ...
Multiple devices driver support - Поддержка RAID
RAM disk support - Поддержка виртуально диска в памяти ... Оно Вам это надо ?
XT harddisk support - Поддержка старых дисковых контроллеров.
Parallel port IDE device support - Есть переносные винчестеры, которые
подключаются к параллельному порту машины ... они у вас есть ?
Networking options - Опции, связанные с сетью.
Здесь Вам лучше все оставить все, как есть, пока вы не прочтете море документации
и не поймете, что и в каких комбинациях используется. Тут слишком долго все описывать.
Единственное, что Вам стоит поставить, так это The IPX protocol, да и то, если
у Вас в сети есть Novell и бегает IPX.
SCSI support - Поддержка SCSI - здесь все почти полностью аналогично пункту
про IDE устройства, разве только с тем различием, что речь идет про SCSI контроллеры.
Network device support - У вас есть сетевая карта и машина включена в сеть ?
Тогда Вам сюда .. иначе к следующему пункту ...
Network device support - еще раз подтверждаем, что нам охота сеть.
Dummy net driver support - поддержка "тупых" сетевых драйверов.
Если честно, то я не знаю, что это такое ... хотя догадываюсь. Но пусть меня
научат более умные и искушенные люди.
EQL (serial line load balancing) support - Поддержка балансировки трафика
на последовательных портах. Linux позволяет подключиться к провайдеру (если он это позволит) или
к другой машине при помощи нескольких модемов (или нуль-модемов) одновременно. Эта опция
позволит не гнать весь трафик по одному каналу, а раскинуть его по нескольким.
PLIP (parallel port) support - Поддержка LPT кабеля для связи между машинами.
PPP (point-to-point) support - В инет охота ? Этот протокол используется для
связи и ауинтификации пользователей по модему)
SLIP (serial line) support - Поддержка COM-COM линка ...
Далее идут различные типы сетевых карт, а внутри пунктов - соответствующие чипсеты
для сетевых карт - я не буду перечислять тут все - сами ищите свое.
Radio network interfaces - Поддержка радио-карт.
Ethernet (10 or 100Mbit) - Ethernet карты.
Other ISA cards - карточки, которые сидят на шине ISA и по каким-то параметрам не вошли
в предыдущий список ...
EISA, VLB and other board controllers - Карточки, которые сидят на EISA,VLB и прочее ...
FDDI driver support - У Вас есть FDDI ?
ARCnet support - поддержка ARCNet (ему недавно исполнилось 20 лет).
ISDN subsystem - Поддержка ISDN - ну этого в России еще долго не будет однако ...
CD-ROM drivers (not for SCSI or IDE/ATAPI drives) - Сюда Вам
стоит заглянуть, если Ваш любимый CD привод подключен через звуковую карточку ..
Filesystems - Вот к этому пункту надо отнестись с большой вдумчивостью и осторожностью ...
Quota support - Поддержка дисковой квоты для пользователей.
Minix fs support - Поддержка файловой системы Minix.
Extended fs support & Second extended fs support - это родные системы для
Linux'a ... сами понимаете, что их надо ...
xiafs filesystem support - Не знаю, что за система, у меня она включена.
Native language support (Needed for FAT and ISO9660) - Поддержка "родных" кодовых
таблиц
ISO9660 cdrom filesystem support - CD-ROM читать/писать/делать бум ?
DOS FAT fs support & MSDOS fs support - К досу за файликами полезем ?
umsdos: Unix like fs on top of std MSDOS FAT fs - Это поддержка слабого
подобия юниксной системы в досовском разделе. Нужна для некоторых дистрибутивов.
VFAT (Windows-95) fs support - Поддержка длинных имен на FAT
и поддержка самого FAT32.
Далее идут кодовые страницы, советую включить Codepage 866,
NLS ISO 8859-5, NLS KOI8-R - это все русские кодовые страницы. Вы сможете писать/читать/видеть
файлы с русскими буквами в заголовках.
/proc filesystem support - поддержка псевдофайловой системы в каталоге /proc,
куда ядро сообщает все о себе и машине
NFS filesystem support - поддержка Network File System - родной для юниксов
сетевой файловой системы.
SMB filesystem support (to mount WfW shares etc..) - Поддержка Microsoft Network.
SMB Win95 bug work-around - Обход глюков микрософта.
NCP filesystem support (to mount NetWare volumes) - Поддержка подключений к новеллу ..
OS/2 HPFS filesystem support (read only) - поддержка HPFS от полуоси ..
System V and Coherent filesystem support&UFS filesystem support (read only) для
организаций и мест , где есть не только бесплатные юниксы ..
Character devices - Поддержка на низком уровне таких устройств, как
последовательные и параллельные порты, busmouse, ленточные накопители, APM в BIOS'e,
и прочее ... тут все понятно, если Вы нашли то, что у Вас есть, включайте ...
Sound - ну какой нормальный Linux без звука ....
Sound card support - а у нас звуковая-то есть ?
Old configuration script (For: SM Wave, PSS & AudioTrix Pro) - для указанных
карточек смотреть туда
Дальше вы выбираете, что из всего у вас на борту имеется ...
не за будьте отметить /dev/dsp and /dev/audio support и следующие два пункта,
про MIDI и FM синтезатор ... иначе музыки не будет ...
Дальше укажите, на каких прерываниях у вас сидит звуковая. Если у вас PNP
то перед этим в отдельной консоли почитайте man pnpdump ну или если мне
куча писем свалиться с просьбой рассказать - расскажу ...
Все, на все остальное можете не смотреть - там мелочи ;-)))
нажимаем exit, подтверждаем сохранение и набираем make zlilo .....теперь сидим и ждем, когда же все
это скомпилиться ..... если вы что-то выбрали в качестве модулей , тогда предварительно
удалите все из каталога /lib/modules/[номер версии] и скажите make modules;make modules_install -
это для того, чтобы модули скомпилировались тоже и положились в нужное место ...
теперь делаем перезагрузку ....кстати, единственная нужная перезагрузка в юниксе ...
больше его перезагружать незачем... все без перезагрузки делается ...
ИЗВЕСТНЫЕ ГРАБЛИ
Итак ... ядро у вас не компилиться или комп не грузится ....
проверяем следующее ...
1 - у вас не разогнана машина (вылетает по signal 11)
2 - вы компилируете не gcc (наберите gcc -v) .Должно быть что-то
похожее на
bash$ gcc -v
Reading specs from /usr/lib/gcc-lib/i486-linux/2.7.2.3/specs
gcc version 2.7.2.3
bash$
gcc можете взять в своем дистрибутиве ...
Назад
Дальше
HTML by
Igor Drozdovsky
Последнее обновление: