Краткая история Linux

Linux - многозадачная и многопользовательская операционная система для бизнеса, образования и индивидуального программирования. Linux принадлежит семейству UNIX-подобных операционных систем, которая может работать на компьютерах Intel 80386, 80486 и Pentium. Рекомендуемые конфигурации компьютеров:
минимум 	  - Intel 80386 DX 40MHz/4Mb(RAM)/80Mb(HDD);
рекомендуемое  - Pentium 100MHz/16Mb/540Mb;
оптимальное	  - Pentium 133MHz/32Mb/1Gb.
Linux поддерживает широкий спектр программных пакетов от TeX до X Windows, компиляторов GNU C/C++, протоколов TCP/IP. Это гибкая реализация ОС UNIX, свободно распространяемая под генеральной лицензией GNU.
Linux может любой вышеназванный персональный компьютер превратить в рабочую станцию. Бизнесмены инсталлируют Linux в сетях машин, используют операционную систему для обработки данных в сфере финансов, медицины, распределенной обработки, в телекоммуникациях и т.д.
UNIX - одна из самых популярных в мире операционных систем благодаря тому, что ее сопровождает и распространяет большое число компаний. Первоначально она была создана как многозадачная система для миникомпьютеров и мэйнфреймов в середине 70-ых годов, но с тех пор она выросла в одну из наиболее распространенных операционных систем, несмотря на свой временами обескураживающий интерфейс и отсутствие централизованной стандартизации. Существуют версии UNIX для многих систем, начиная от персонального компьютера, до суперкомпьютеров, таких как Cray Y-MP. 
Linux - свободно распространяемая версия UNIX, первоначально была разработана Линусом Торвальдсом (Linus Torvalds). Linux был создан с помощью многих UNIX-программистов и энтузиастов из Internet, тех, кто имеет достаточно навыков и способностей развивать систему. Ядро Linux не использует коды AT&T или какого-либо другого частного источника, и большинство программ Linux разработаны в рамках проекта GNU из Free Software Foundation в Cambridge, Massachusetts. Но в него внесли лепту также программисты всего мира.
Относительно появления Linux версии 0.01 никогда не делалось никаких официальных заявлений. Исходные тексты 0.01 не давали даже нормального выполняемого кода: они фактически состояли лишь из набора заготовок для ядра и молчаливо предполагали, что вы имеете доступ к Minix-машине, чтобы иметь возможность компилировать их и совершенствовать.
5-го октября 1991 года Линус объявил первую "официальную" версию Linux, версия 0.02. Вновь это рассматривалось как создание некой  хакерской системы. Основное внимание - создание ядра. Никакие вопросы поддержки работы с пользователем, документирования, тиражирования и т. п. даже не обсуждались. Кажется, что и сегодня сообщество Linux-истов считает эти вопросы вторичными по сравнению с "настоящим программированием" - развитием ядра.
После версии 0.03 Линус скачком перешел в нумерации к версии 0.10, так как над проектом стало работать много народу. После нескольких последовавших пересмотров версий, Линус присвоил очередной версии номер 0.95, чтобы тем самым отразить свое впечатление о том, что скоро возможна уже "официальная" версия. Это было в марте 1992 г. Примерно через полтора года - в декабре 1993 версия ядра все еще была Linux 0.99.pl14 - асимптотически приближаясь к 1.0. А на данный момент версия ядра - 1.2.
Сегодня Linux - это полноценная ОС семейства UNIX, способная работать с X Windows, TCP/IP, Emacs, UUCP, mail и USENET. Практически все важнейшие программные пакеты были поставлены и на Linux, т.е. для Linux теперь доступны и коммерческие пакеты. Все большее разнообразие оборудования поддерживается по сравнению с первоначальным ядром. Многие тестировали Linux на 486-ом и установили, что он вполне сравним с рабочими станциями Sun Microsystems и Digital Equipment Corporation. 

Системные характеристики

Linux - это полная многозадачная многопользовательская операционная система (точно также как и другие версии UNIX). Linux достаточно хорошо совместим с рядом стандартов для на уровне исходных текстов, включая IEEE POSIX.1, System V и BSD. Он создавался имея в виду такую совместимость.

Другие специфические внутренние черты Linux включают контроль работ по стандарту POSIX (используемый оболочками, такими как csh и bash), псевдотерминалы (pty), поддержку национальных и стандартных клавиатур динамически загружаемыми драйверами клавиатур.

Ядро может само эмулировать команды 387-FPU, так что системы без сопроцессора могут выполнять программы, на него расчитывающие (т.е. с плавающей точкой).
Linux поддерживает различные типы файловых систем для хранения данных. Некоторые файловые системы, такие как файловая система ext2fs, были созданы специально для Linux. Поддерживаются также другие типы файловых систем, такие как Minix-1 и Xenix. Реализована также файловая система MS-DOS, позволяющая прямо обращаться к файлам MS-DOS на жестком диске. Поддерживается также файловая система ISO 9660 CD-ROM для работы с дисками CD-ROM. 
Linux обеспечивает полный набор протоколов TCP/IP для сетевой работы. Поддерживается весь спектр клиентов и услуг TCP/IP, таких как FTP, telnet, NNTP и SMTP. 
Ядро Linux сразу создано с учетом специального защищенного режима для процессоров Intel 80386 и 80486. В частности, Linux использует парадигму описания памяти в защищенном режиме и другие новые свойства процессоров. 
Для увеличения объема доступной памяти Linux осуществляет также разбиение диска на страницы: то есть на диске может быть выделено до 256 Мбайт "пространства для свопинга" (swap space). (Swap space не совсем подходящее имя, в Linux в область свопинга выгружается не весь процесс, а только отдельные его части, в которых нет необходимости). Когда системе нужно больше физической памяти, то она с помощью свопинга выводит неактивные страницы на диск. Это позволяет выполнять более объемные программы и обслуживать одновременно больше пользователей. Однако свопинг не исключает наращивания физической памяти, поскольку он снижает быстродействие, увеличивает время доступа.
Ядро также поддерживает универсальный пул памяти для пользовательских программ и дискового кэша. При этом для кэша может использоваться вся память, и наоборот, кэш уменьшается при работе больших программ.
Выполняемые программы используют динамически связываемые библиотеки, т.е. выполняемые программы могут совместно использовать библиотечную программу, представленную одним физическим файлом на диске (иначе, чем это реализовано в механизме разделяемых библиотек SunOS). Это позволяет выполняемым файлам занимать меньше места на диске, особенно тем, которые многократно используют библиотечные функции. Есть также статические связываемые библиотеки для тех, кто желает пользоваться отладкой на уровне объектных кодов или иметь "полные" выполняемые программы, которые не нуждаются в разделяемых библиотеках. В Linux разделяемые библиотеки динамически связываются во время выполнения, позволяя программисту заменять библиотечные модули своими собственными.

Приобретение и инсталляция Linux
                                       
Мы уже говорили, что не существует "официального" дистрибутива Linux. Существует много дистрибутивов, каждый из которых хорош для определенных целей. Эти дистрибутивы можно взять с ftp-серверов Internet, с BBS, на дискетах и CD-ROM.
Мы дадим общую картину процесса инсталляции и обсудим инсталляцию популярного дистрибутива Linux Slackware.

Получение Linux из Internet и других источников

Если у вас есть доступ к Internet, простейший способ получить Linux - это по FTP. Если вы не имеете прямого доступа к Internet, то можно получить Linux через сервис ftpmail по электронной почте.
Многие дистрибутивы хранятся в виде образов дискет. То есть дистрибутив состоит из множества файлов, каждый из которых содержит двоичный образ дискеты. Для того, чтобы скопировать содержимое на дискету, вы должны использовать программу RAWRITE.EXE под MS-DOS. Эта программа копирует по блочно содержимое файла на дискету, не анализируя формат диска. Если у вас есть доступ к UNIX-станции с дисководом, вы можете также использовать команду dd для копирования образа файла прямо на дискету. Команда, вроде dd of=/dev/rfd0 if=foo bs=18k'' осуществит прямое копирование содержимого файла foo на дискету на Sun-станции. Программу RAWRITE.EXE можно взять на многих Linux FTP-серверах, включая sunsite.unc.edu, в каталоге    /pub/Linux/system/Install/rawrite
Во многих случаях вы просто считываете множество образов дискет и используете RAWRITE.EXE для каждого образа, чтобы создать дискету. Вы загружаетесь с так называемой "boot"-дискеты и можете далее скидывать систему. Как правило, программы инсталлируются прямо с дискет, хотя некоторые дистрибутивы позволяют инсталлировать из разделов MS-DOS винчестера. Некоторые дистрибутивы позволяют инсталлировать по сети, посредством TCP/IP. Документация на каждый дистрибутив должна описывать допустимые методы инсталляции.
Другие дистрибутивы Linux инсталлируются с дискет в формате MS-DOS. Например, дистрибутив Linux Slackware требует создания с помощью RAWRITE.EXE только дискет boot и root. Остальные дискеты копируются на дискеты в формате MS-DOS командой MS-DOS COPY. Система инсталлируется прямо с дискет MS-DOS. Это избавляет вас от необходимости долго пользоваться RAWRITE.EXE, но предполагает доступность MS-DOS для создания дискет.
Каждый дистрибутив, доступный по FTP, должен содержать файл README, описывающий, как скидывать на дискеты и как их готовить для инсталляции. При перекачке Linux необходимо использовать режим перекачки двоичных файлов (для большинства FTP-клиентов это команда "binary").
Если вы имеете доступ к другим сетям, вроде CompuServe или Prodigy, то в них могут быть свои средства перекачки файлов. Кроме того, существует множество BBS, на которых есть Linux.
Если у вас нет доступа к Internet или BBS, множество дистрибутивов Linux можно получить по почте на дискетах, лентах, лазерных дисках. Пересылка Linux по почте может стоить от US$30 - US$150, в зависимости от варианта дистрибутива.

Получение Slackware

Slackware - популярная дистрибуция Linux, сопровождаемая Patrick Volkerding. С Patrick Volkerding можно связаться по Internet:
volkerdi@mhd1.moorhead.msus.edu.
Эта версия легко инсталлируется и достаточно полна. Она может быть получена по Internet, а также на CD-ROM от ряда поставщиков.
Дистрибуция Slackware состоит из "наборов дисков" (“disk sets''), каждый из которых содержит конкретный тип программ (например, набор "d" содержит средства разработки development tools, такие как gcc-компилятор, и набор "x", содержащий X Window System). Вы можете выбирать, какие наборы инсталлировать; другие наборы вы можете инсталлировать позже.
Версия Slackware, описанная здесь - это версия 2.0.0, от 25 июня 1994. Инсталляция более поздних версий должна быть во многом аналогична.

Наборы дисков Slackware

К сожалению, Slackware не имеет полного списка потребностей памяти для каждого набора. Вам потребуется не менее 7 Мбайт для инсталляции лишь серии "A"; очень грубая оценка необходимого дискового пространства - от 2 до 2.5 Мбайт на дискету.

Имеются следующие наборы дисков:

   A
Базовая система. Достаточная для начала работы и делает доступными команды elvis и comm (elvis - текстовый редактор,     comm - сравнение файлов). Базируется на ядре 1.0.9 и новом           стандарте файловой системы (FSSTND). Если у вас в распоряжении только дисковод на 1.2M, вы все равно можете инсталлировать базовую систему, сбросив другие диски и инсталлировать их с жесткого диска.
          
   AP
Различные приложения и дополнения, вроде руководства, groff,  ispell (GNU and international versions), term, joe, jove, ghostscript, sc, bc, и quota patches.
          
   D
Разработка программ. GCC/G++/Objective C 2.5.8, make (GNU и BSD), byacc и GNU bison, flex, the 4.5.26 C libraries, gdb, kernel source for 1.0.9, SVGAlib, ncurses, clisp, f2c, p2c, m4, perl, rcs.
          
   E
GNU Emacs 19.25.
          
   F
Набор Часто Задаваемых Вопросов (FAQS) и другая документация.
        
   I
Info-страницы для GNU-программ. Документация для различных программ, читаемая с помощью info или Emacs.
          
   N
Сетевые программы. TCP/IP, UUCP, mailx, dip, deliver, elm,           pine, smail, cnews, nn, tin, trn.
          
   OOP
Объектно-Ориентированное Программирование. GNU Smalltalk 1.1.1 и Smalltalk Interface to X (STIX).
          
   Q
Исходники Alpha-ядра (во время написания книги - Linux 1.1.18).
          
   TCL
Tcl, Tk, TclX, blt, itcl.
          
   Y
Игры. Набор игр BSD и Tetris для терминалов.
          
   X
Базовая система XFree86 2.1.1 с libXpm, fvwm 1.20 и xlock.
          
   XAP
X-приложения: X11 ghostscript, libgr13, seyon, workman,         xfilemanager, xv 3.01, GNU chess и xboard, xfm 1.2, ghostview, и различные X-игры.
          
   XD
Программы работы в X11. X11 библиотеки, сервер linkkit,          поддержка PEX.
          
   XV
Xview 3.2 release 5. XView библиотеки, виртуальный и         невиртуальный Open Look window-менеджеры.

   IV
Interviews библиотеки, include-файлы, doc и idraw приложения.
          
   OI
ParcPlace's Object Builder 2.0 и Object Interface Library 4.0.          Обратите внимание, что она работает только с libc-4.4.4, но          будет новая версия, как только станет доступным gcc 2.5.9.
          
   T
Системы форматирования TeX и LaTeX.
          
Обязательно должен быть взят набор "A", остальные по желанию. Лучше всего инсталлировать наборы A, AP и D, а также X, если вы планируете использовать X Window System.

Получение Slackware из Internet

Версии Slackware Linux есть на многих FTP-серверах мира. Тем не менее есть два главных Linux FTP-архива: sunsite.unc.edu и tsx-11.mit.edu.
Версию Slackware можно найти по крайней мере на следующих серверах:
     * sunsite.unc.edu:/pub/Linux/distributions/slackware
     * tsx-11.mit.edu:/pub/linux/packages/slackware
     * ftp.cdrom.com:/pub/linux/slackware
ftp.cdrom.com - это родной сервер Slackware.

Перекачка файлов

При перекачке файлов вам следует перекачать, используя FTP, следующие файлы.
    * Различные файлы README, а также SLACKWARE_FAQ.
    * Образ bootdisk. Это файл, который вы запишите на дискету для создания загрузочного диска Slackware. Если у вас дисковод на       1.44М (3.5"), найдите в каталоге bootdsks.144. Если у вас дисковод
       1.2М (5.25"), найдите в каталоге bootdsks.12. Вам необходим один из следующих файлов bootdisk. 
+ bare.gz. Это загрузчик с дискет, имеющий только драйвер жесткого диска IDE. (Нет SCSI, CD-ROM или сетевой поддержки). Используйте, если у вас только есть контроллер IDE жесткого диска, а инсталляция по сети или с CD-ROM невозможна. 
+ cdu31a.gz. Содержит драйверы IDE, SCSI и Sony CDU31A/33A. 
+ mitsumi.gz. Содержит драйверы IDE, SCSI и Mitsumi CD-ROM 
+ modern.gz. Экспериментальный загрузочный диск с новым ядром и всеми CD-ROM драйверами, кроме сетевых и Sony 535. 
+ net.gz. Содержит CD-ROM драйвер IDE и сетевые. 
+ sbpcd.gz. Содержит CD-ROM драйверы IDE, SCSI и SoundBlaster Pro/Panasonic. 
+ scsi.gz. Содержит CD-ROM драйверы IDE, SCSI и SCSI 
+ scsinet.gz. Содержит CD-ROM и сетевые драйверы IDE, SCSI, SCSI. 
+ sony535.gz. Содержит CD-ROM драйверы IDE, SCSI и Sony 535/531 
+ xt.gz. Содержит CD-ROM драйверы IDE и жесткого диска XT. Вам нужен только один образ диска из вышеперечисленных в зависимости от вашей аппаратуры. Некоторые драйверы конфликтуют друг с другом. И вместо того, чтобы выискивать ошибки в своей       аппаратуре, проще использовать загрузочную дискету с конкретными       драйверами. Большинству пользователей следует начинать попытки с       scsi.gz или bare.gz.
   * Образ root-диска. Это файл, который записывается на дискету для создания инсталляционного диска Slackware. В связи с этим образом посмотрите rootdsks.144 или rootdsks.12 в зависимости от типа дисковода, с которого производите загрузку. Вам необходим один из следующих файлов: 
+ color144.gz. Инсталляционный диск для дисковода 1.44, использующий меню.
+ umsds144.gz. Версия диска color144 для инсталляции с помощью файловой системы UMSDOS, которая позволяет инсталлировать Linux поверх каталога файловой системы MS-DOS. Этот метод инсталляции обсуждается здесь детально, но он не позволяет переразбивать диск на новые разделы. Позже мы к этому вернемся. 
+ tty144.gz. Инсталляционный диск, ориентированный на терминал, для дисковода 1.44M. Если color144.gz не пошел.
+ colrlite.gz. Инсталляционный диск, ориентированный на терминал, для дисковода 1.2M.
+ umsds12.gz. Версия диска colrlite для инсталляции с помощью файловой системы UMSDOS. Смотрите вышеприведенное описание umsds144.gz.
+ tty12.gz Инсталляционный диск, ориентированный на терминал, для дисковода 1.2M. Используйте этот диск, если у вас есть дисковод на 1.2M и colrlite.gz не пошел. И снова вам необходим лишь один образ диска root, зависящий от типа драйвера загрузочного дисковода.
* GZIP.EXE. Это MS-DOS программа, выполняющая компрессию gzip, используемая для сжатия файлов boot и root (расширение имен файлов ".gz" говорит об этом). Она может быть найдена в каталоге install.
* RAWRITE.EXE. Это MS-DOS программа, которая записывает содержимое файла (например, образов boot и root) прямо на дискету, не проверяя формат. Вам следует использовать RAWRITE.EXE для создания дискет boot и root. Это можно также найти в инсталляционном каталоге.
Если вы планируете создать дискеты boot и root из MS-DOS, вам понадобятся только RAWRITE.EXE и GZIP.EXE. Если же вам доступна UNIX-станция с дисководом, вы можете создать дискеты в ней, используя команду dd. Посмотрите руководство по команде dd или посоветуйтесь со специалистами по UNIX.
* Файлы из каталогов slakwarea1/,slakwarea2/ и slakwarea3/. Эти файлы создают набор диска ``A'' дистрибутива Slackware.       Убедитесь также, что вы получили файлы без точек в именах. В FTP       используйте команду ``mget *'' вместо ``mget *.*''.
* Файлы в каталогах ap1, ap2 и т.д. зависят от инсталлируемых       наборов. Например, если вы инсталлируете диск с набором ``X'', берите файлы из каталогов от x1 до x5. Как и для наборов диска ``A'', убедитесь, что файлы при переписывании размещаются в разных каталогах.
       
Slackware на CD-ROM

Slackware можно также получить на CD-ROM. Большинство CD-ROM со Slackware просто содержат копии файлов, которые появляются в архивах FTP-серверов. Вы должны будете создать boot и root дискеты из файлов, взятых с CD-ROM.

Методы инсталляции

Slackware поддерживает несколько вариантов инсталляции. Наиболее популярный - инсталляция из раздела MS-DOS вашего жесткого диска; другой способ инсталлировать с дискет в формате MS-DOS, созданных с дискового набора, который вы переписали.
Если у вас есть Slackware на CD-ROM, вы можете инсталлировать файлы прямо с него. Дистрибутив Slackware Pro от Morse Telecommunications позволяет инсталлировать Slackware так, что многие файлы доступны прямо с CD-ROM. Это может сэкономить много пространства на диске, но некоторые приложения будут работать медленнее.

Создание boot и root дискет

Создавая дискеты boot и root, вы должны их создавать с образов boot-диска и root-диска, которые вы скачали (или имеете на CD-ROM), вне зависимости от вида инсталляции. В MS-DOS вы должны раскомпрессировать образы boot-диска и root-диска, используя GZIP.EXE. Например, если вы используете образ диска boot - bare.gz, наберите команду MS-DOS: C:\> GZIP -D BARE.GZ которая раскомпрессирует bare.gz и создаст вам файл bare. Если вы инсталлируете с CD-ROM, вы можете скопировать образ диска bootdisk (например, bare.gz) на жесткий диск и выполнить GZIP.EXE с CD-ROM для раскомпрессирования.
Вы должны также раскомпрессировать образ диска root. Например, если вы используете root-диск color144.gz, наберите команду: C:\> GZIP -D COLOR144.GZ которая раскомпрессирует этот файл и создаст файл color144. Далее, вы должны иметь две high-density дискеты, отформатированные в MS-DOS. (Они должны быть одного типа; если ваша boot-дискета 3.5", обе дискеты должны быть high-density 3.5"). Для записи образов дисков boot и root на дискеты надо использовать RAWRITE.EXE . Наберите команду:C:\> RAWRITE
Ответьте на вопросы о имени переписываемого файла (например, bare или color144) и дисковода (например A:). RAWRITE скопирует файл блок за блоком прямо на дискету. Используйте RAWRITE также для образа root-диска. Когда вы это сделаете, у вас будут две дискеты: одна содержит boot-диск, другая root-диск. Имейте в виду, что эти две дискеты уже нечитаемы в MS-DOS (они уже, в известном смысле, в “Linux-формате'').
Обратите внимание на то, что вам не обязательно использовать MS-DOS для инсталляции Slackware. Но использование MS-DOS облегчает создание boot и root дискет, облегчает инсталляцию программ (поскольку вы можете инсталлировать прямо из MS-DOS раздела вашей системы). Если у вас на компьютере нет MS-DOS, вы можете использовать чужой компьютер для создания дискет, и уже инсталлировать с них.
Нет также необходимости использовать GZIP.EXE и RAWRITE.EXE под MS-DOS для создания дискет boot и root. Вы можете использовать команды gzip и dd в UNIX для выполнения той же работы. (Для этого, разумеется, вам нужна UNIX-станция с дисководом). Например, на станции Sun с дисководом /dev/rfd0 вы можете использовать команды:
    $ gunzip bare.gz
    $ dd if=bare of=/dev/rfd0 obs=18k
Вы должны указать соответствующий размер блока (obs), иначе на некоторых станциях (на тех же Sun) эта команда не будет выполнена. 

Подготовка к инсталляции 

С жесткого диска

Если вы планируете инсталляцию Slackware прямо с жесткого диска (которая обычно и быстрее, и надежнее, чем с дискет), вам потребуется раздел MS-DOS. Обратите внимание: Если вы планируете инсталляцию Slackware из раздела MS-DOS, этот раздел НЕ должен быть скомпрессирован с помощью DoubleSpace, Stacker или какой-то другой утилиты MS-DOS. В настоящее время Linux не может прямо читать MS-DOS-раздел DoubleSpace/Stacker. (Вы можете обратиться к ней через MS-DOS Emulator, но это не подходит при инсталляции Linux).
При подготовке инсталляции с жесткого диска создайте просто на жестком диске каталог для размещения файлов Slackware. Например, 
C:\> MKDIR SLACKWAR
создаст каталог C:\SLACKWAR для хранения файлов Slackware. Под этим каталогом, используя команду MKDIR, вы можете создать подкаталоги A1, A2 и т.д. для каждого переписанного дискового набора. Все файлы с диска А1 должны быть помещены в каталог SLACKWAR\A1 и т.д.

С дискет

Если вы хотите инсталлировать Slackware с дискет, вместо жесткого диска, вам нужно по одной чистой дискете, отформатированной в MS-DOS, для каждого диска Slackware, который вы желаете переписать. Дискеты должны быть формата high-density. Набор диска A (диски A1 - A3) могут быть дискетами как 3.5", так и 5.25". Но остальные наборы дисков должны быть на дискетах 3.5". Поэтому, если у вас есть только дисковод 5.25", необходимо взять у кого-нибудь на прокат дисковод 3.5", чтобы инсталлировать прочие (кроме A) диски. Или вы можете инсталлировать их с жесткого диска, как это описывалось выше. Для того, чтобы создать диски, просто скопируйте файлы из каждого Slackware каталога на отформатированные в MS-DOS дискеты, используя команду MS-DOS - COPY: C:\> COPY A1\*.* A:
Которая скопирует содержимое диска A1 на дискету в дисководе A:. Это следует повторить для всех считываемых дисков. Нет необходимости каким-либо образом модифицировать или раскомпрессировать файлы диска; вы просто должны скопировать их на дискеты в MS-DOS. Процедура инсталляции Slackware сама заботится о раскомпрессировании файлов.

С CD-ROM.

Если у вас Slackware на CD-ROM, вы можете инсталлировать систему, как только вы создали дискеты boot и root. Программы будут инсталлироваться прямо с CD.

Подготовка к инсталляции Linux

После того, как вы получили дистрибутив Linux, вы можете готовить свою систему к инсталляции. Требуется спланировать работу, особенно если вы уже работали на других операционнных системах. В последующих разделах мы расскажем, как планировать инсталляцию Linux.

Общие принципы инсталляции

Хотя версии Linux отличаются, общие методы инсталляции состоят в следующем:

1. (Пере)разбейте на разделы жесткий диск(и). Если у вас уже       инсталлирована другая операционная система, вы должны сделать       переразбиение, чтобы выделить место под Linux.
2. Загрузите средства инсталляции Linux. Каждый дистрибутив имеет в       каком-либо виде средства инсталляции - обычно загрузочную (boot) дискету, которая используется для инсталляции программ. Загрузка этих средств либо представит вам некую пошаговую программу инсталляции, либо позволит инсталлировать вручную.
3. Создайте разделы для Linux. После переразбиения и выделения места       под Linux, вы создаете на этом месте раздел Linux. Это выполняется       программой Linux fdisk.
4. Создайте файловые системы и область своппинга. Вы создадите одну       или несколько файловых систем для хранения файлов на вновь созданном разделе. Кроме того, если вы желаете получить область своппинга, то также создадите и его на одном из разделов Linux.
5. Инсталлируйте программы Linux в новую(вые) файловую(вые)       систему(мы). Далее вас ждет спокойное плавание, если все прошло нормально.

Многие дистрибутивы Linux снабжаются инсталляционной программой, которая будет руководить вами в процессе инсталляции и автоматизирует некоторые из описанных шагов.

Концепция разбиения на разделы

В общем случае жесткие диски разбиваются на разделы, где отдельные разделы выделяются отдельным операционным системам. Например, вы можете сделать на диске несколько независимых разделов: один, скажем, для MS-DOS, другой для OS/2 и третий для Linux.
Если у вас уже есть инсталлированные программы, вам может потребоваться переразбиение диска, чтобы выделить место для Linux. Затем вы создадите на освободившемся месте один или несколько разделов для Linux и области своппинга. 
Многие системы MS-DOS используют один раздел, заполняя все дисковое пространство. В MS-DOS этот раздел известен, как C:. Если у вас более одного раздела, MS-DOS дает им имена D:, E: и т.д. Каждый раздел выступает как независимый диск.
На первом секторе диска находится master boot record с таблицей разделов. boot record (загрузочная запись) используется для загрузки системы. Таблица разделов содержит информацию о местоположении и размере разделов.
Существует три типа разделов: первичные, расширенные и логические (primary, extended и logical). Наиболее часто используются первичные разделы. Однако, из-за ограничений на размер таблицы разделов, можно иметь не более четырех разделов на любом диске. Чтобы обойти ограничение четырех разделов, используются расширенный раздел. Расширенные разделы сами по себе не содержат данных. Они выступают какхранилища логических разделов. Поэтому вы можете создать один расширенный раздел, покрывающий весь диск, и внутри создать много логических разделов.

Требования Linux к разделам

В системах UNIX файлы хранятся в файловой системе, которая прежде всего расположена на диске (или на другом устройстве, вроде CD-ROM или дискеты), отформатированном для хранения файлов. Каждая файловая система ассоциируется с конкретной частью дерева каталогов; например, во многих случаях существует файловая система для всех файлов каталога /usr, другая для /tmp и т.д. Корневая файловая система - первичная файловая система, которой соответствует самый верхний каталог /.
Под Linux каждая файловая система "живет" в отдельном разделе диска. Например, если у вас есть файловая система для / и другая для /usr, вам потребуется два раздела.
Прежде, чем инсталлировать Linux, вам необходимо подготовить файловые системы для размещения программ Linux. Вы должны иметь по крайней мере одну файловую систему (корневую файловую систему), а поэтому один раздел, назначенный для Linux. Многие пользователи Linux умудряются поместить все свои файлы в корневую файловую систему, с которой (одной) управляться легче, чем с множеством файловых систем.
Следует также иметь в виду проблемы своппинга. Если вы хотите использовать область своппинга в Linux, у вас две возможности. Во-первых, использовать файл своппинга, который существует в одной из файловых систем. Вы создадите файл своппинга для использования как виртуальной RAM после инсталляции. Во-вторых, создать раздел своппинга, который будет использоваться только для этого.
В общем случае вы создадите для Linux два раздела: один для корневой файловой системы и другой для области своппинга. Разумеется, возможно много вариаций на эту тему, но это минимальная конфигурация. Вы не обязаны иметь область своппинга для Linux, но если у вас менее 16M RAM, то это очень настоятельно рекомендуется.

Инсталляция Linux

После того, как вы переразбили диск, чтобы выделить место под Linux, вы можете начать инсталляцию. Здесь дано краткое описание процедур:

     * Загрузите средства инсталляции Linux;
     * Выполните fdisk под Linux для создания разделов;
     * Выполните mke2fs и mkswap для создания файловой системы Linux и
       области своппинга;
     * Инсталлируйте программы Linux;
     * Наконец, инсталлируйте либо загрузчик boot-файла LILO на диске,
       или создайте загрузочную дискету для загрузки новой Linux-системы.
       
Как мы уже сказали, некоторые шаги могут быть автоматизированы, в зависимости от используемого дистрибутива Linux.

Загрузка Linux

Первый шаг - загрузить средства инсталляции Linux. В большинстве случаев это загрузочная дискета, которая содержит маленькую Linux-систему. При загрузке с дискеты вам будет пред'явлено в каком-то виде меню, которое поможет вам в процессе инсталляции. В других дистрибутивах при загрузке дискеты выдается подсказка login. В этом случае вы обычно входите как root и начинаете процесс инсталляции.
В документации, сопровождающей дистрибутив говорится, что необходимо делать для загрузки Linux.
Если вы инсталлируете дистрибутив Slackware, то все, что требуется, это загрузить загрузочную дискету, которую вы создали, следуя предыдущему разделу.
Большинство дистрибутивов Linux используют загрузочную дискету, которая позволяет ввести параметры компьютера при загрузке, для определения особенностей устройств.
Система представит информацию о разделах диска и распознанных устройствах. Если какая-либо информация неверна или отсутствует, вы должны инициировать распознавание оборудования.
Для инициации распознавания оборудования вы должны ввести соответсвующие параметры после подсказки загрузчика, используя следующий синтаксис:   ramdisk <parameters...>
Существует ряд доступных параметров: вот некоторые наиболее характерные.
hd=<cylinders>,<heads>,<sectors> Описывает геометрию для таких систем, как IBM PS/1, ValuePoint и ThinkPad.
tmc8xx=<memaddr>,<irq> Описывает адрес и IRQ для без-BIOS-ных Future Domain TMC-8xx SCSI контроллеров.
st0x=<memaddr>,<irq> Описывает адрес и IRQ для без-BIOS-ных Seagate ST02 контроллеров.
t128=<memaddr>,<irq> Описывает адрес и IRQ для без-BIOS-ных Trantor T128B контроллеров.          
ncr5380=<port>,<irq>,<dma> Описывает порт, IRQ и DMA канал для          generic NCR5380 контроллера.
aha152x=<port>,<irq>,<scsi_id>,1 Описывает порт, IRQ и SCSI ID для без-BIOS-ных AIC-6260 контроллеров. Включает Adaptec 1510, 152x и Soundblaster-SCSI          контроллеры.
Для каждого из них вы должны ввести ramdisk с параметрами, которые вы хотите установить.

Дисководы и разделы под Linux

Многие дистрибутивы предполагают ручное создание разделов Linux с использованием программы fdisk. Другие могут автоматически создавать разделы. В любом случае вы должны знать о существовании разделов и имен дисководов. Дисководы и разделы под Linux имеют другие имена, по сравнению с другими операционными системами. Под MS-DOS дисководы гибких дисков именуются A: и B:, в то время, как разделы жесткого диска именуются C:, D:, и т.д. В Linux соглашение о именах совсем другое. Драйверы устройств, находящиеся в каталоге /dev, используются для общения с устройствами системы (такими, как жесткий диск, мышь и т.п.)

Создание разделов Linux

Теперь вы готовы создать разделы Linux с помощью команды fdisk. В общем случае вам необходимо создать как минимум один раздел для самого Linux и другой для области своппинга. После загрузки средств инсталляции выполните команду fdisk, напечатав fdisk <drive>, где <drive> имя устройства в Linux, которому вы хотите выделить раздел. Если вы создаете разделы для Linux более, чем на одном диске, выполните fdisk отдельно для каждого диска.
    # fdisk /dev/hda
    Command (m for help):
В этот момент fdisk ждет команды; вы можете ввести "m", чтобы получить перечень опций. Для создания нового раздела используется команда n. О большинстве других опций вы можете не вспоминать. Выйти из программы fdisk, без сохранения произведенных изменений, можно командой q. Выйти из программы fdisk с записью изменений в таблице разделов можно командой w.
Первое, что вы должны сделать, это получить и записать текущее состояние таблицы разделов. Используйте команду p.
Программы инсталляции смогут автоматически найти ваши разделы своппинга, основываясь на типе. Если ваши программы инсталляции не распознают области своппинга, вы можете снова запустить программу fdisk и использвать команду "t" в режиме вопросов. Наконец, мы используем команду w, чтобы записать изменения и выйти из fdisk. Чтобы обезопасить себя, после выполнения fdisk вам следует снова загрузить средства инсталляции как и раньше - перед продолжением инсталляции.

Создание области своппинга

Если вы планируете использовать раздел своппинга для виртуальной памяти, вы должны быть готовы к его использованию. Многие дистрибутивы потребуют от вас создать и активизировать область своппинга до инсталляции программ. Если у вас небольшой об'ем физической RAM, процесс инсталляции может не завершиться успешно, пока вы не выделите какой-то об'ем под область своппинга.
Дистрибутив Slackware требует создания области своппинга до инсталляции, если вы имеете 4M RAM или меньше. Если у вас нет таких ограничений, инсталляционная процедура Slackware выделит область своппинга автоматически. Если у вас возникают сомнения, то следуйте процедуре, описанной здесь; она не сможет вам навредить. Команда создания раздела для своппинга называется mkswap и имеет вид:   mkswap -c <partition> <size>,  где <partition> - имя раздела своппинга, а <size> - размер этого раздела в блоках. size of the partition, in blocks. Еще раз напомним, что в некоторых дистрибутивах область своппинга создается автоматически и блок в Linux занимает 1024 байта. Если вы используете несколько разделов для своппинга, вам необходимо выполнить соответствующие команды mkswap для каждого раздела. После форматирования области своппинга необходимо сделать ее пригодной для использования системой. Обычно система автоматически готовит место во время загрузки. Но, поскольку вы еще не инсталлировали Linux, вы должны подготовить его вручную.
Команда подготовки области своппинга - swapon имеет вид: 

swapon <partition>
Создание файловых систем

Перед тем, как вы сможете использовать разделы Linux для хранения файлов, вы должны создать на них файловые системы. Создание файловой системы аналогично форматированию раздела под MS-DOS. В Linux возможно несколько типов файловых систем. Каждый тип файловой системы имеет свой формат и характеристики (такие как имя файла, длина, максимальныйразмер файла и т.д.).  Linux также поддерживает "третьи" типы файловых систем, например файловую систему MS-DOS.
Наиболее популярный тип файловой системы - это Second Extended Filesystem или ext2fs. ext2fs - одна из наиболее эффективных и гибких файловых систем. Она допускает использование имен файлов до 256 символов и размер файловой системы до 4 терабайтов (прим. переводчика: знать-то очень много).
При инсталляции дистрибутива Slackware файловые системы создаются автоматически.

Инсталляция программ

Каждая дистрибуция имеет для инсталляции программ свой механизм. Многие дистрибутивы имеют самодокументированные программы, которые помогают пользователю пройти весь путь инсталляции. Например, дистрибутив Slackware требует от вас только создания разделов с помощью fdisk, возможно, создания области своппинга с помощью mkswap и swapon (если у вас RAM 4M и меньше), а затем запуска программы setup. setup представит вам меню с об'яснениями. Использование setup в деталях описано ниже.
Конкретный метод инсталляции может существенно отличаться в различных
дистрибутивах. 

Инсталляция Slackware с setup

Если вы инсталлируете Slackware, после создания разделов (возможно, и области своппинга) используйте команду
    # setup
Она предоставит вам меню, с помощью которого будет направлять вас в процессе инсталляции.
Процедура, описанная здесь, соответствует находящейся на корневых дисках color144 и colrlite; другие корневые диски могут иметь несколько отличающиеся процедуры.
Меню setup состоит из следующих пунктов:

    Help
          Выводит help-файл программы setup.
          
   Keymap
          Эта опция позволяет описывать отображение клавиатуры в вашей
          системе, если у вас не US-клавиатура. Список keymaps    (образов
          клавиатур) будет представлен; выберите соответствующий пункт из
          списка.
          
   Quick
          Позволяет выбирать между режимами ”quick'' (быстро) и ”verbose'' (с 		подробными комментариями). ``Verbose'' - режим, устанавливаемый 		по умолчанию, рекомендуется, если только вы не занимались уже 		этим десятки раз.
          
   Make tags
          Позволяет экспертам по инсталляции Slackware создавать
          настроенные tag-файлы. Это необходимо только для настройки
          инсталляционной процедуры.
          
   Addswap
 	Пред'являет список доступных разделов для своппинга (эти разделы 		будут типа ”Linux swap'' как наборы в fdisk). Вы сможете описать, 		какие разделы вы хотите использовать для области своппинга. Затем 		вам будет задан вопрос, хотите ли использовать mkswap для этих
          разделов.
          
Если вы уже выполнили mkswap и swapon над своими разделами своппинга, то нельзя в setup выполнять над этими разделами mkswap. Создание области своппинга в разделе разрушает данные, находившиеся на этом месте. Убедитесь, что вы не уничтожаете данные, которые следует сохранить.
Даже если вы уже выполнили mkswap и swapon, необходимо         использовать пункт Addswap меню: это гарантирует, что разделы своппинга будут доступны по завершении инсталляции.  

   Target
          Этот пункт позволяет описывать разделы, на которые будет          		инсталлироваться Linux. Список доступных разделов (с типом “Linux 		native'' ("исходный Linux" - описывается командой fdisk) будет 			отображен и вас попросят ввести имя корневого раздела Linux. Далее 		вы получите подсказку относительно типа создаваемой файловой 			системы. Мы предлагаем использовать файловую систему типа ext2fs. 		Это создаст файловую систему в названном разделе, нечто 			аналогичное форматированию раздела под MS-DOS. Вы также 			получите подсказки относительно любых других разделов, которые 		вы можете захотеть использовать в Linux. Создание файловой системы 		в разделе разрушает данные, находившиеся на этом месте.

   Source
          Этот пункт меню позволяет описать, с чего будет
          инсталлироваться Slackware: с дискеты, жесткого диска или
          CD-ROM.
   Disk sets
          Эта опция меню позволяет выбрать дисковые наборы, которые вы
          будете инсталлировать. Как минимум, вы должны инсталлировать
          дисковый набор A.
   Install
 	Этот пункт меню непосредственно инсталлирует программы
          в вашу систему. Можно при этом следовать подсказкам.
          Большинство пользователей выбирает режим “normal.'' Для
          каждого выбранного дискового набора выбираются "нужные" пакеты
          для инсталляции, что сопровождается подсказками. Если вы
          инсталлируете с дискеты, то будут выдаваться также сообщения о
          необходимости вставить следующую дискету.
          
	После инсталляции каждого пакета выдается краткое сообщение.    		Наиболее типичная ошибка, с которой здесь можно столкнуться - на 		скете не обнаруживается нужный файл или ошибка возникает при 		чтении с дискеты. Последнее сообщение может свидетельствовать о 		том, что файлы на дискете попорчены или неполны. Любые дискеты, 		порождающие эти сообщения, должны быть заменены, и вам следует 		заново инсталлировать дисковые наборы,           содержащиеся на 		этих дискетах. Вы можете также столкнуться с сообщениями об 			ошибках, при попытке обращения к CD-ROM; убедитесь, что CD-		ROM чистый, нет следов от пальцев и т.п.
          
   Configure
	Этот пункт меню выполняет пост-инсталляционное 				конфигурирование системы.
          
Создание загрузочной дискеты или инсталляция LILO

Каждый дистрибутив представляет какие-то средства для загрузки вашего нового Linux после инсталляции. Во многих случаях инсталляционная процедура создаст загрузочную дискету, содержащую ядро Linux, конфигурированное для использования вновь созданной файловой системы. Для того, чтобы загрузить Linux, вы должны загрузиться с этой дискеты, и управление после этого будет передано жесткому диску. В других дистрибутивах эта загрузочная дискета одновременно является и инсталляционной дискетой.
Многие дистрибутивы дают возможность инсталлировать LILO на ваш жесткий диск. LILO - это программа, которая размещается в главной загрузочной записи (master boot record) диска. Она может загружать ряд операционных систем, включая MS-DOS и Linux, и позволяет в момент загрузки выбирать, что именно загружать.
В дистрибутиве Slackware пункт меню Configure в setup позволяет создавать загрузочную дискету, как и инсталлировать LILO. Эти опции должны комментировать свои действия. Пункт меню Configure позволяет также описывать ваши модем, мышь и информацию о временной зоне.
Чтобы LILO успешно инсталлировалась, необходимо многое знать о конфигурации системы, например, какой раздел какую операционную систему содержит, как загружать каждую из систем и т.д. Многие дистрибутивы при инсталляции LILO пытаются "угадать" соответствующие параметры конфигурации вашей системы. Но в некоторых дистрибутивах автоматическая инсталляция LILO может потерпеть неудачу и оставить вашу главную загрузочную запись в "подвешенном" состоянии (хотя маловероятно, что при этом будет причинен ущерб данным на диске). Особенно, если вы применяете Boot Manager операционной системы OS/2, вы не должны пользоваться автоматической процедурой инсталляции  LILO. Существуют специальные инструкции по использованию LILO совместно с Boot Manager, которые будут рассмотрены позже.
Во многих случаях лучше использовать загрузочную дискету, пока у вас непоявится возможность самому конфигурировать LILO вручную.
Если все завершилось удачно, то инсталляция Linux на вашей системе закончина. Если же нет, то следующий раздел опишет наиболее
характерные ошибки при инсталляции Linux, и как с ними бороться.

Дополнительные процедуры инсталляции

Некоторые дистрибутивы Linux снабжены рядом дополнительных инсталляционных процедур, позволяющих конфигурировать различные пакеты, такие как TCP/IP, X Window System и т.д. Если у вас есть эти конфигурационные опции периода инсталляции, вам может быть будет интересно предварительно ознакомиться с особенностями конфигурации этих программ. Иначе это следует отложить до тех пор, когда вы не придете к полному пониманию, как конфигурировать программы.

Постинсталляционные процедуры

После того, как вы закончите инсталляцию Linux, мало что остается сделать перед тем, как начать использовать систему. В большинстве случаев вы можете перезагрузить систему, войти под root и начать эксплуатировать систему. (Все дистрибутивы имеют слегка различающиеся приемы, реализующие то же самое).
Для того, чтобы перезагрузиться и выключать систему в процессе эксплуатации, ни в коем случае не перезагружайте и не выключайте систему путем нажатия "reset" или ctrl-alt-del. Правда на большинстве Linux систем комбинация ctrl-alt-del приведет к нормальному выключению через команду shutdown. Не следует также выключать питание. Как и в большинстве систем UNIX, Linux хранит записываемую информацию в кэше оперативной памяти.
Поэтому, если вы внезапно перезагрузитесь без "чистого" закрытия системы, вы можете попортить данные на диске.

Самый простой способ выключить систему - использовать команду shutdown. Например, для немедленного выключения и перезагрузки используйте следующую команду (в root):
    # shutdown -r now

После того, как вы получили возможность использовать систему, осталось еще несколько акций связанных с конфигурированием, которые следовало бы предпринять. Первое, это создать себе пользовательский account (и, возможно, для других пользователей, которые будут иметь доступ к (в) этой системе). Завести account - значит зарегистрироваться в системе. Обычно все, что вы должны сделать, это войти под именем root и выполнить команду adduser (иногда useradd). 
Если вы создали более одной файловой системы для Linux или, если вы используете область своппинга, вам может понадобиться отредактировать файл /etc/fstab, чтобы ваши файловые системы были автоматически доступны после загрузки.

Борьба с ошибками системы.

Проблемы загрузки средств инсталляции

Пытаясь первый раз загрузить средства инсталляции, вы можете столкнуться с множеством проблем.
Система может зависнуть при загрузке, чему может быть несколько причин. Прежде всего, у вас может быть недостаточно памяти (RAM) для загрузки средств инсталляции. Причина многих системных зависаний - аппаратная несовместимость.
 Даже если ваша аппаратура поддерживается, у вас могут быть проблемы, связанные с несовместимостью конфигурации оборудования.
     * Системные сообщения об ошибках памяти в процессе инсталляции.
       Этот пункт относится к количеству памяти, которая имеется в вашем
       распоряжении.  Решение этой проблемы - подготовить опцию ramdisk 	       при загрузке средств инсталляции.
       Вы можете не увидеть сообщение ``out of memory'' при попытке
       загрузиться или инсталлировать программы; вместо этого система
       может неожиданно зависнуть или сорвать загрузку. Если система
       зависла и никакие предыдущие об'яснения не помогают, попытайтесь
       отключить (disable) ramdisk.
    * Система сообщает об ошибках, таких как ``permission denied''
       (обращение запрещено) или ``file not found''(файл не найден) в
       процессе загрузки. Это говорит о том, что средства инсталляции 	       	       неисправны.
     * Система при загрузке выдает сообщение ``VFS: Unable to mount
       root''. Это сообщение об ошибке означает, что корневая файловая 	 	       система не может быть найдена.

 Аппаратные проблемы и их локализация

Наиболее общий случай, когда инсталляция или использование Linux приходят в противоречие с аппаратурой. Важно локализовать эти аппаратные проблемы, если вы подозреваете, что именно они являются источником ваших неприятностей. Это означает, что исключая все возможные составляющие и (обычно) саму операционную систему, вы постепенно шаг за шагом выделяете неисправную часть аппаратуры. Вы должны отключить все устройства кроме контроллеров гибкого диска, видео и клавиатуры.
“Конфликт адреса или IRQ ?” Все устройства в вашей машине используют IRQ (IRQ - Interrupt ReQuest или линию запросов прерывания), чтобы сообщить системе, что система должна для них что-то сделать. При обращении к системе более чем одного устройства, ядро не способно определить, какое устройство нуждается в обслуживании. 
Поэтому убедитесь, что все инсталлированные вами устройства используют уникальные линии IRQ. В общем случае IRQ для устройства может быть установлен с помощью переключения джамперов (jumpers) на плате. Некоторые устройства вообще не используют IRQ, но предполагается, что вы конфигурировали их, так, что они смогут им воспользоваться. 
В некоторых случаях ядро, находящееся на ваших средствах инсталляции, конфигурируется для использования конкретного IRQ для конкретного устройства. 	Другая область, где могут возникнуть конфликты аппаратуры - это каналы DMA (Direct Memory Access) (каналы прямого доступа к памяти), адреса ввода-вывода (I/O) и адреса разделяемой памяти (shared memory addresses). Все вышеперечисленное есть механизмы, через которые система взаимодействует с различными устройствами. 
Таблица представляет перечень IRQ и каналов DMA, используемых различными "стандартными" устройствами, стоящими во многих системах. Практически все системы имеют эти устройства, так что вам следует избегать установок IRQ и DMA других устройств на эти значения.

     Device                    I/O-адрес      IRQ   DMA

     ttyS0 (COM1)                 3f8          4    n/a
     ttyS1 (COM2)                 2f8          3    n/a
     ttyS2 (COM3)                 3e8          4    n/a
     ttyS3 (COM4)                 2e8          3    n/a
     lp0 (LPT1)                    378 - 37f    7    n/a
     lp1 (LPT2)                    278 - 27f    5    n/a
     fd0, fd1 (floppies 1 and 2)  3f0 - 3f7    6    2
     fd2, fd3 (floppies 3 and 4)  370 - 377  10   3

          Таблица:  Обычные установки для устройств

Проблемы распознавания жесткого диска или контроллера

При загрузке Linux вы увидите серии посланий, выдаваемых на экран, вроде:      Console:  colour EGA+ 80x25, 8 virtual consoles
    Serial driver version 3.96 with no serial options enabled
    tty00 at 0x03f8 (irq = 4) is a 16450
    tty03 at 0x02e8 (irq = 3) is a 16550A
    lp_init:  lp1 exists (0), using polling driver
    ...

Здесь ядро распознает различные устройства, имеющиеся в системе. В некоторый момент вы увидите строчку:       Partition check:       (Проверка раздела), за которой следует список распознанных разделов.
Если по какой-то причине ваши дисководы или разделы нераспознаны, вы никаким образом не сможете к ним добраться.
Это может произойти по нескольким причинам:
     * Жесткий диск или контроллер не поддерживается. Если вы используете
       контроллер жесткого диска (IDE, SCSI и тому подобные), из тех,
       которые не поддерживаются в Linux, ядро не распознает ваш раздел
       на этапе загрузки.
     * Жесткий диск или контроллер неправильно конфигурированы.
       Даже если ваш контроллер поддерживается в Linux, он может быть 	  	       неправильно конфигурирован.
     * Контроллер конфигурирован правильно, но не распознается. 	  	       Некоторые без-BIOS-ные SCSI-контроллеры требуют от пользователя 	       описания контроллера на этапе загрузки.
     * Не распознается геометрия жесткого диска. Некоторые системы,
       такие, как IBM PS/ValuePoint, не помещают информацию о геометрии
       жесткого диска в память CMOS, где Linux ожидает ее найти. Также,
       некоторым SCSI-контроллерам надо сообщать, где найти геометрию
       диска, чтобы Linux мог распознать формат вашего диска.
       Многие дистрибутивы имеют загрузочную опцию для описания 	  	       геометрии диска. В общем случае, при загрузке средств инсталляции, 	       вы можете описать геометрию драйвера в ответ на подсказку загрузчика 	       LILO с помощью команды, например:       
       boot:  linux hd=<cylinders>,<heads>,<sectors>, где <cylinders>, <heads> и 	       <sectors> соответсвуют числу цилиндров, головок и секторов на трек у 	       вашего диска.
После инсталляции Linux вы будете иметь возможность инсталлировать LILO, который позволит вам загружаться с жесткого диска. В это время вы можете описать геометрию для инсталляционной процедуры LILO, что позволит не вводить геометрию при каждой загрузке.

Проблемы инсталляции программ

Единственные проблемы, с которыми вы можете столкнуться, это испорченные средства инсталляции или отсутствие достаточного места на файловой системе Linux. Вот перечень наиболее характерных проблем: 
     * Системные сообщения ``Read error''(ошибка чтения), ``file not
       found''(не найден файл) или другие ошибки во время попытки
       инсталлировать программы. Это говорит о проблемах с вашими
       средствами инсталляции. Если у вас есть на диске разделы
       MS-DOS, многие дистрибутивы Linux позволят вам инсталлировать с
       жесткого диска. Это может быть быстрее и более надежно, чем
       использование дискет.
       Если вы используете CD-ROM, убедитесь в отсутствии на нем царапин,
       пыли или других гадостей, которые могут приводить к ошибкам.
       Причиной может быть и то, что соответствующее средство инсталляции
       имеет неподходящий формат.
     * Системные сообщения вроде ``tar: read error'' (tar: ошибка чтения)
       или ``gzip: not in gzip format''(gzip: не в формате gzip). Часто
       это связано с испорченными файлами на средствах инсталляции.
       Другими словами, ваши дискеты могут быть нормальными, но вот
       данные на них каким-то образом испорчены.
     * Системные сообщения об ошибках, такие как ``device full''
       (устройство заполнено) в процессе инсталляции. Это верный признак
       того, что вы вышли за пределы отведенного пространства при
       инсталляции. Не все дистрибутивы способны с этим разобраться; вы
       не сможете прервать инсталляцию и вынуждены дождаться, когда
       система сама остановится.
       Обычное решение в этой ситуации - пересоздание файловой системы (с           	       помощью команды mke2fs), которая удаляет частично 	 	 	       инсталлированные программы.
     * Системные сообщения об ошибках, такие как ``read_intr: 0x10'' при
       обращении к жесткому диску. Это обычно говорит о наличии плохих
       блоков на диске. Однако, если вы получили это сообщение во время
       выполнения mkswap или mke2fs, причиной этого могло быть то, что
       система имела проблемы с доступом к вашему диску.
     * Системные сообщения об ошибках , вроде ``file not found'' или
       ``permission denied''. Это может случиться, если не все
       необходимые файлы представлены на средствах инсталляции
       
Если у вас появляются другие странные ошибки во время инсталляции Linux (особенно если вы сами переписали где-то эти программы), убедитесь, что вы действительно списали все необходимое. Например, некоторые используют команду FTP :            mget *.*        для скачивания программ Linux через FTP. 
Самый лучший совет - заново пересмотреть все шаги, которые вы совершили, если у вас застопорилось дело.

 Проблемы после инсталляции Linux

Проблемы загрузки Linux с дискеты

Если вы используете дискеты для загрузки Linux, вам может потребоваться описать местоположение вашего корневого раздела linux во время загрузки. Это обычно случается, когда вы используете исходную инсталляционную дискету, а не специальную загрузочную дискету, созданную в процессе инсталляции.

 Проблемы загрузки Linux с жесткого диска

Если вам удалось инсталлировать LILO, вместо создания загрузочной дискеты вам следует загружать Linux с жесткого диска. Однако, автоматизированная процедура инсталляции LILO, используемая во многих дистрибутивах, не всегда безупречна.
Она может сделать неправильные предположения относительно формата вашего раздела, в этом случае вы должны будете переинсталлировать LILO, чтобы все стало хорошо. 
    * Системные сообщения ``Drive not bootable---Please insert system
       disk.'' ("Устройство незагружаемо---Пожалуйста, вставьте системный
       диск"). Вы получите такое сообщение об ошибке, если главная
       загрузочная запись жесткого диска каким-то образом попорчена. Во
       многих случаях это безопасно и все остальное у вас на диске
       по-прежнему в порядке. Тут дальше есть несколько путей.
         1. При разбиении диска на разделы с использованием fdisk вы
            могли удалить раздел, который был отмечен как ``active''.
            MS-DOS и другие операционные системы пытаются загрузить такой
            раздел на этапе загрузки (Linux не обращает внимания на то,
            является раздел ``active'' или нет). Вы можете загрузить
            MS-DOS с дискеты и запустить FDISK для установки флага
            ``active'' для раздела MS-DOS. Другая команда, которую можно 			  попробовать (с MS-DOS 5.0 и выше) это
          FDISK /MBR
            Эта команда будет пытаться заново сформировать главную
            загрузочную запись диска для загрузки MS-DOS, переписывая
            LILO. Если у вас больше нет на жестком диске MS-DOS, вам
            потребуется загрузить Linux с дискеты и в последующем
            попытаться инсталлировать LILO.
         2. Если вы создали раздел MS-DOS, используя версию команды fdisk
            из Linux или наоборот, это может быть причиной ошибки. Вам
            следует создавать разделы для MS-DOS, используя только версии
            FDISK для MS-DOS. Здесь лучшее решение - либо начать с того, 		  что все стереть и переразбить диск правильно, либо удалить и 			  пересоздать плохие разделы, используя исправные версии fdisk.
         3. Инсталляционная процедура LILO может потерпеть неудачу. В
            этом случае вам следует загрузиться с исходного средства 			  инсталляции. Вы будете иметь возможность для описании 			  корневого раздела Linux, который будет использован при загрузке.
     * При загрузке системы с жесткого диска MS-DOS (или другая из
       существующих операционных систем) стартует вместо Linux. Прежде
       всего убедитесь, что вы действительно инсталлировали LILO при
       инсталляции программ Linux. Если вы все-таки инсталлировали LILO, 	       но другая операционная система загружается вместо Linux, то 		       необходимо конфигурировать LILO так, чтобы она загружала другие 	       операционные системы по умолчанию.

Проблемы входа в систему

После загрузки Linux вам (на экран) должна быть выдана подсказка вроде этой:    linux login:
В большинстве дистрибутивов вы просто войдете в систему под именем root (суперпользователь, администратор) без пароля. Другие возможные имена для входа guest или test.
Большинство новоиспеченных систем Linux не требуют пароля для первоначального входа. Но если система потребует с вас пароль, могут возникнуть проблемы. Прежде всего попробуйте пароль, совпадающий с именем входа.
Если вы все-таки не можете войти, то это уже проблема. Прежде всего проконсультируйтесь с документацией на дистрибутив. Может быть там где-то закопано правильное имя входа и пароль. Имя входа и пароль могут быть вам сообщены системой во время инсталляции или выведены на экран в виде подсказки.
Причиной этих неприятностей также могут быть проблемы с самой инсталляцией файлов, отвечающих за вход и инициализацию. Если в этом причина, вам может потребоваться переинсталлизация (как минимум части) программ Linux или нужно загрузить ваши средства инсталляции и попытаться решить проблемы "вручную".

 Проблемы использования системы

Если вход в систему прошел успешно, на экран будет выдана подсказка "shell" - командной оболочки (например ``#'' или ``$''). Но существует ряд проблем, которые могут возникнуть в начале использования системы.
Одна из наиболее типичных начальных проблем, связанных с конфигурированием - установка неверных прав доступа (защиты) файлов и каталогов. Это может выразиться в сообщении:    Shell-init:  permission denied, которое будет напечатано после входа в систему (на самом деле, всегда, когда вы столкнетесь с сообщением ``permission denied''("обращение запрещено") вы можете быть с высокой вероятностью уверены, что это проблема защиты файлов).
Во многих случаях это простое дело для команды "chmod", которая может менять права доступа к соответствующим файлам и каталогам. Но, чтобы ввести эту команду, вы должны загрузиться со средства инсталляции и примонтировать вашу корневую файловую систему Linux вручную.
Во время эксплуатации системы вы можете попадать в места, где неверно установлена защита файлов и каталогов или программы работают не так, как конфигурировались. Хотя многие дистрибутивы и не доставляют особых хлопот, лишь немногие из них безупречны.