Настройка Linux (Slackware)

su root - кто не знает,
тот отдыхает ...;-)

Настройка ядра Linux

ПРЕДИСЛОВИЕ
ЧТО ТАКОЕ LINUX ?
ИНСТАЛЛЯЦИЯ SLACKWARE
НАСТРОЙКА SLACKWARE:
Настройка LILO
Настройка ядра
Защита системы
Настройка X-Window
Русификация
Модем
Поддержка звука
Sendmail
Подключение сканера
Пример
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ИЗ РОССИИ

Ну что, девочки и мальчики, вот мы поставили 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
Последнее обновление: