<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/css" href="http://wiki2.linuxformat.ru/skins/common/feed.css?97"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://wiki2.linuxformat.ru/index.php?action=history&amp;feed=atom&amp;title=LXF100-101%3A%D0%97%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C_%D0%BD%D0%B5%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B6%D0%B0%D0%B5%D0%BC%D0%BE%D0%B5</id>
		<title>LXF100-101:Загрузить незагружаемое - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://wiki2.linuxformat.ru/index.php?action=history&amp;feed=atom&amp;title=LXF100-101%3A%D0%97%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C_%D0%BD%D0%B5%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B6%D0%B0%D0%B5%D0%BC%D0%BE%D0%B5"/>
		<link rel="alternate" type="text/html" href="http://wiki2.linuxformat.ru/index.php?title=LXF100-101:%D0%97%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C_%D0%BD%D0%B5%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B6%D0%B0%D0%B5%D0%BC%D0%BE%D0%B5&amp;action=history"/>
		<updated>2026-05-13T23:26:09Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.11.1</generator>

	<entry>
		<id>http://wiki2.linuxformat.ru/index.php?title=LXF100-101:%D0%97%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C_%D0%BD%D0%B5%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B6%D0%B0%D0%B5%D0%BC%D0%BE%D0%B5&amp;diff=7372&amp;oldid=prev</id>
		<title>Crazy Rebel: викификация, оформление, иллюстрация</title>
		<link rel="alternate" type="text/html" href="http://wiki2.linuxformat.ru/index.php?title=LXF100-101:%D0%97%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C_%D0%BD%D0%B5%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B6%D0%B0%D0%B5%D0%BC%D0%BE%D0%B5&amp;diff=7372&amp;oldid=prev"/>
				<updated>2009-03-20T08:27:51Z</updated>
		
		<summary type="html">&lt;p&gt;викификация, оформление, иллюстрация&lt;/p&gt;
&lt;a href=&quot;http://wiki2.linuxformat.ru/index.php?title=LXF100-101:%D0%97%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C_%D0%BD%D0%B5%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B6%D0%B0%D0%B5%D0%BC%D0%BE%D0%B5&amp;amp;diff=7372&amp;amp;oldid=7369&quot;&gt;(Различия между версиями)&lt;/a&gt;</summary>
		<author><name>Crazy Rebel</name></author>	</entry>

	<entry>
		<id>http://wiki2.linuxformat.ru/index.php?title=LXF100-101:%D0%97%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C_%D0%BD%D0%B5%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B6%D0%B0%D0%B5%D0%BC%D0%BE%D0%B5&amp;diff=7369&amp;oldid=prev</id>
		<title>Crazy Rebel: викификация, оформление, иллюстрация</title>
		<link rel="alternate" type="text/html" href="http://wiki2.linuxformat.ru/index.php?title=LXF100-101:%D0%97%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C_%D0%BD%D0%B5%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B6%D0%B0%D0%B5%D0%BC%D0%BE%D0%B5&amp;diff=7369&amp;oldid=prev"/>
				<updated>2009-03-19T11:56:28Z</updated>
		
		<summary type="html">&lt;p&gt;викификация, оформление, иллюстрация&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая статья&lt;/b&gt;&lt;/p&gt;&lt;div&gt;: '''Загрузка''' Как добраться до важных файлов, если Linux не грузится?&lt;br /&gt;
&lt;br /&gt;
==Когда Linux не загружается==&lt;br /&gt;
&lt;br /&gt;
: Мысль об этом вгоняет в дрожь пользователей всех ОС - не дай Бог, компьютер откажется загружаться. '''Д-р Крис Браун''' прольет бальзам на ваши раны.&lt;br /&gt;
&lt;br /&gt;
Для нас, старых волков, загрузка, или «начальная загрузка» – это та глубоко таинственная последовательность операций, выполняемых компьютером между его включением и выводом приглашения войти в систему. За это время куча непонятных сообщений проплывает по экрану, но обычно пользователи их игнорируют,&lt;br /&gt;
и большинство дистрибутивов Linux скрывает их за красивым экраном&lt;br /&gt;
с обнадеживающим прогресс-индикатором. И это замечательно – пока&lt;br /&gt;
работает. На данном уроке мы рассмотрим процесс загрузки более&lt;br /&gt;
подробно: в частности, выясним, что может пойти неправильно и как&lt;br /&gt;
диагностировать и устранить проблему.&lt;br /&gt;
&lt;br /&gt;
===Проникаемся проблемой===&lt;br /&gt;
&lt;br /&gt;
Когда я преподавал Linux на одном из моих курсов, многие слушатели&lt;br /&gt;
говорили мне, что интересуются устранением неисправностей в той&lt;br /&gt;
или иной форме. Некоторые ищут рецептов типа кулинарных – «Увидев&lt;br /&gt;
сообщение об ошибке X, запустите команду Y», но таким способом&lt;br /&gt;
устранить неисправность удается редко. Мой первый совет всем тем,&lt;br /&gt;
кто столкнулся с проблемой, всегда один и тот же: «При устранении&lt;br /&gt;
неисправности первым делом надо понять, как система должна работать. Вторая важная вещь – точно представить, что система пыталась&lt;br /&gt;
сделать, когда неисправность возникла».&lt;br /&gt;
&lt;br /&gt;
{{Врезка|Содержание=[[Изображение:LXF100_74_1.jpg|300px]] Рис. 1: Нормальный порядок событий загрузки Linux.|Ширина=300px}}&lt;br /&gt;
&lt;br /&gt;
Помня об этом, взглянем на загрузку Linux. Знание нормальной последовательности событий и установление, как далеко она зашла&lt;br /&gt;
перед возникновением проблемы, являются ключевыми для диагностики и исправления проблем загрузки. '''Рисунок 1''' справа показывает нормальную последовательность событий (зеленые стрелки) и указывает на некоторые возможные пути неудачи (красные стрелки).&lt;br /&gt;
&lt;br /&gt;
===Знакомимся с загрузкой поближе===&lt;br /&gt;
&lt;br /&gt;
Загрузка – операция многоступенчатая. При включении компьютера&lt;br /&gt;
контроль вначале переходит к программе, называемой '''BIOS''', которая&lt;br /&gt;
хранится в постоянной памяти на материнской плате. '''BIOS''' выполняет&lt;br /&gt;
тестирование оборудования и разведку окрестностей на предмет устройств для загрузки, и выводит экран конфигурации, позволяющий&lt;br /&gt;
установить порядок поиска загрузочных устройств; в современных '''BIOS''' их диапазон весьма широк, в том числе PXE-загрузка с сетевого&lt;br /&gt;
сервера. На нашем уроке мы рассмотрим только загрузку с жесткого диска.&lt;br /&gt;
&lt;br /&gt;
Затем '''BIOS''' считывает главную загрузочную запись (Master Boot Record, '''MBR''') с выбранного устройства и запускает ее. (Не найдя '''MBR''',&lt;br /&gt;
'''BIOS''' выведет сообщение вида «Нет операционной системы» и впадет&lt;br /&gt;
в полный ступор.) '''MBR''' занимает первый сектор диска. Он содержит&lt;br /&gt;
таблицу разделов (64 байта) и очень короткую (446 байт) программу&lt;br /&gt;
первичной загрузки, или ‘stage 1’. Этот загрузчик всего-навсего выводит на экран слово ''Grub'' и передает эстафету загрузчику второй стадии,&lt;br /&gt;
используя «карту блоков», внедренную в '''MBR''' (карта содержит номера блоков, где находится загрузчик ‘stage 2’). Здесь я подразумеваю,&lt;br /&gt;
что вы используете загрузчик ''Grub''. Существует также более старый&lt;br /&gt;
загрузчик ''Lilo'', но ''Grub'' «умнее» и используется в большинстве современных дистрибутивов Linux. Второй этап работы загрузчика ''Grub'' по&lt;br /&gt;
сути дела «полуторный», и если вы посмотрите в директории '''/boot/grub''', то увидите там файлы, содержащие различные его варианты, с&lt;br /&gt;
именами вида '''e2fs_stage_1_5''' и '''reiserfs_stage_1_5'''. Каждая из этих&lt;br /&gt;
программ способна получить доступ к файлам по их имени, используя определенный формат файловой системы. '''e2fs_stage_1_5''' может&lt;br /&gt;
читать файловые системы '''ext2''' и '''ext3''', '''reiserfs_stage_1_5''' – файловую&lt;br /&gt;
систему '''reiser''', и т.д. ''Grub'' способен обратиться к файлам по их имени&lt;br /&gt;
во время начальной загрузки (перед запуском Linux), и этим он отличается от ''Lilo''. Программа «полуторного» этапа загружает ''Grub'' stage 2,&lt;br /&gt;
который значительно больше. На этом этапе считывается файл конфигурации ''Grub'' (обычно '''/boot/grub/menu.lst '''или '''/boot/grub/grub.conf''')&lt;br /&gt;
и, на основе содержащихся там записей, выводится меню выбора&lt;br /&gt;
операционных систем для загрузки. Если Grub не может найти свой&lt;br /&gt;
файл конфигурации, он переходит в интерактивную командную строку,&lt;br /&gt;
позволяющую ввести команды ''Grub'' вручную. Типичное содержание&lt;br /&gt;
записи '''menu.lst''' такое:&lt;br /&gt;
&lt;br /&gt;
 title openSUSE 10.2&lt;br /&gt;
       root (hd0,0)&lt;br /&gt;
       kernel /boot/vmlinuz-2.6.18.2-34-default root=/dev/hda1 vga=0x317 showopts&lt;br /&gt;
       initrd /boot/initrd-2.6.18.2-34-default&lt;br /&gt;
&lt;br /&gt;
Первая строчка просто содержит текст, который появится в меню загрузки. Следующие за ней строки содержат команды, которые ''Grub''&lt;br /&gt;
должен выполнить, если вы выберите этот пункт меню. Строка '''root''' подсказывает ''Grub'', где искать корневую файловую систему. У Grub своя&lt;br /&gt;
система именования разделов диска, отличная от системы, принятой в Linux, что сбивает с толку. На языке ''Grub'' '''hd0''' означает первый диск – а&lt;br /&gt;
на обычном ПК с IDE-дисками это будет ссылка на Linux-устройство '''/dev/hda''', или, на более свежих дистрибутивах, '''/dev/sda''' [''на самом деле что для ''grub'' означает '''hd0''' итд определяется в файле '''/boot/grub/device.map''''']. На языке ''Grub'' ('''hd0,0''') ссылается на первый раздел этого диска – в Linux это будет '''/dev/hda1''' или '''/dev/sda1'''. Строка '''kernel''' определяет файл, который ''Grub'' должен загрузить как ядро Linux; в конце этой строки вы увидите несколько дополнительных параметров загрузки, передаваемых ядру. Подробнее об этом чуть позже. Строка '''initrd''' определяет файл ‘initial RAM Disk’ – образ файловой системы, которая будет использоваться&lt;br /&gt;
ядром как загрузочная. ''Grub'' также отвечает за загрузку его в память.&lt;br /&gt;
Если ''Grub'' не может найти ядро или образ ram-диска, он выводит Error 15: File not found (Ошибка 15: Файл не найден) и останавливается.&lt;br /&gt;
&lt;br /&gt;
Как только ядро стартует, оно монтирует корневую файловую систему с жесткого диска. Имя раздела, содержащего эту файловую систему, передается ядру как параметр, который вы видели в файле '''menu.lst''' выше. Монтирование корневой файловой системы – ключевая точка процесса загрузки, и если вы пытаетесь точно определить проблему, жизненно важно выяснить, удалось ли ядру это сделать. Сбой в монтировании файловой системы, как правило, приводит к «панике ядра» ['''kernel panic'''], хотя некоторые системы просто зависают. Если же ядро благополучно смонтировало корневую файловую систему, оно создает&lt;br /&gt;
одиночный процесс (с ID 1), выполняющий программу ''/sbin/init''. Если ядро не может найти ''init'', оно также «паникует» и останавливается или&lt;br /&gt;
(в зависимости от дистрибутива) выкидывается в командную строку суперпользователя. Да, кстати, придется добавить вам путаницы: Ubuntu больше не использует ''init'', он заменен на ''upstart''.&lt;br /&gt;
&lt;br /&gt;
''Init'' отвечает за запуск скриптов, которые запустят все остальные&lt;br /&gt;
сервисы в системе. Существует очень важный и достаточно низкоуровневый скрипт, запускаемый ''init'' в начале процесса. В Red-Hat-подобных&lt;br /&gt;
системах это ''/etc/rc.d/rc.sysinit'', в SUSE – ''/etc/init.d/boot''. Среди прочего, этот первичный скрипт последовательно проверяет и монтирует&lt;br /&gt;
остальные разделы диска, прописанные в '''/etc/fstab'''. Хотя, конечно, на этом этапе тоже хватает потенциальных неприятностей, но рассказ о&lt;br /&gt;
них придется оставить до следующего месяца.&lt;/div&gt;</summary>
		<author><name>Crazy Rebel</name></author>	</entry>

	</feed>