~patsev-anton/+junk/ubuntu-russian-guide

« back to all changes in this revision

Viewing changes to p1-install/ch3-uefi/uefi.tex

  • Committer: Anton patsev
  • Date: 2014-07-01 09:37:18 UTC
  • Revision ID: patsev.anton@gmail.com-20140701093718-kk63k6tth3fw529x
Обновил проект до главы 11 Обзор системы

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
\chapter{Особенности установки на платы с UEFI}
 
2
 
 
3
Итак, вы указали в настройках BIOS загрузку с CD/DVD или с USB, и при загрузке с Ubuntu LiveCD получили вместо фиолетового экрана с пиктограммами клавиатуры и человечка вот такой экран:
 
4
 
 
5
\pictscale{grub_efi_try}{Загрузка с UEFI}{0.72}
 
6
 
 
7
Ничего страшного, так бывает\footnote{Просто UEFI системы определил, что на загрузочном носителе с Ubuntu есть grub-efi (а не grub-pc, как в более ранних версиях), и передал управление по загрузке операционной системы ему.}. В этом случае нужно учесть ряд моментов, о которых и будет рассказано в этом разделе. Кстати, наличие фиолетового экрана при загрузке совсем не означает, что у вас нет {\bfseries UEFI}, просто с чёрным экраном все особенности {\bfseries UEFI} проявляются наиболее ярко. Так что, в любом случае прочитать этот раздел будет очень полезно. А пока смело выбирайте верхнюю строчку «Try Ubuntu without installing» и нажимайте \key{Enter}. После непродолжительного ожидания вы попадёте на рабочий стол Ubuntu, и, пока ждёте загрузки Ubuntu, поговорим об {\bfseries UEFI}. 
 
8
 
 
9
\section{Введение в UEFI и GPT}
 
10
 
 
11
Вы, наверное, помните, что одна из задач этого руководства — научить читателя эффективно и непринуждённо использовать все основные инструменты системы. Но для этого нужно копнуть глубже и рассказать об аппаратной начинке вашего компьютера, и как эта начинка работает с системой. Поэтому опять теория, без неё не обойтись.
 
12
 
 
13
Что происходит при включении компьютера? Прежде всего компьютер должен корректно инициализировать сам себя, то есть своё собственное оборудование, и передать управление загрузчику операционной системы. Занимается этим процессом «Extensible Firmware Interface» ({\bfseries EFI}) (Расширяемый интерфейс прошивки) — интерфейс между операционной системой и микропрограммами, управляющими низкоуровневыми функциями оборудования. Раньше за это отвечал BIOS, а теперь EFI, котрый после очередного изменения стандарта стал называться «Unified Extensible Firmware Interface» ({\bfseries UEFI}) — это название и будет использоваться в дальнейшем. Надо заметить, что UEFI, как более современный интерфейс, полностью поддерживает все функции BIOS, обратное, к сожалению, не верно. В настройках режим поддержки BIOS чаще всего называется «Legacy» («наследуемый» или «традиционный» по-английски) или просто «UEFI Disabled» («UEFI отключён», как не трудно догадаться). Сейчас, однако, нас интересует включённый режим UEFI.
 
14
 
 
15
Итак, при включении компьютера {\bfseries UEFI} начинает инициализировать оборудование и находит какое-то блочное устройство, скажем, жёсткий диск. Вы, наверное, знаете, что целиком жёсткий диск практически никогда не используется — диск обязательно разбивается на разделы, в том числе и для удобства в обращении. А вот разбить его на разделы можно, на сегодняшний день, двумя стандартными способами: с помощью {\bfseries MBR} или {\bfseries GPT}. В чём их отличие?
 
16
 
 
17
{\bfseries MBR} («Master Boot Record» — основная загрузочная {\bfseries запись}) использует 32-битные идентификаторы для разделов\footnote{Точнее будет сказать, что указатели на начало и конец раздела имеют размерность 32 бита}, которые размещаются в очень маленьком кусочке пространства (64 байта) в самом начале диска (в конце первого сектора диска). Из-за такого маленького объёма поддерживаются только четыре первичных раздела (подробнее об этом можно узнать в этой статье). Поскольку используется 32-битная адресация, то каждый раздел может быть не более 2,2 ТБ. Кроме того, загрузочная запись не имеет никакой запасной MBR, так что если приложение перезапишет основную загрузочную запись, то вся информация о разделах будет потеряна.
 
18
 
 
19
{\bfseries GPT} («GUID Partition table» — таблица разделов GUID) использует уже 64-битные идентификаторы для разделов, поэтому кусочек пространства, в котором сохраняется информация о разделах, уже больше чем 512 байт, кроме того, не существует ограничения на количество разделов. Заметьте, ограничение на размер раздела в этом случае почти 9,4 ЗБ (да-да, вы всё прочитали правильно — зеттабайт, единичка с двадцатью одним нулём!). А в конце диска имеется копия GPT, которая может использоваться для восстановления повреждённой основной таблицы разделов в начале диска\footnote{Кроме того, в GPT хранятся контрольные суммы по алгоритму CRC32 для обнаружения ошибок в заголовке и таблицах разделов, но это так, к слову.}.
 
20
 
 
21
Так вот, когда связь между оборудованием и операционной системой осуществляется через включённый режим UEFI (а не Legacy BIOS), использование GPT для разбивки разделов является практически {\bfseries обязательным}, иначе наверняка возникнут проблемы совместимости с MBR\footnote{GPT можно использовать и с отключённым UEFI (в режиме Legacy BIOS), но при этом не получится установить на компьютере Windows как вторую систему. Причина в том, что как только Windows увидит метку раздела GPT, то тотчас же попытается загрузиться в режиме EFI со всеми вытекающими.}.
 
22
 
 
23
Ну вот, с блочными устройствами, кажется, разобрались, UEFI всё корректно инициализировал, и теперь он должен найти загрузчик операционной системы и передать управление ему. В первом приближении это выглядит так: поскольку UEFI преемник BIOS, то он выполняет поиск загрузчика в строгом соответствии с установленными правилами. Если он находит загрузчик операционной системы, который не поддерживает UEFI, то активируется режим эмуляции BIOS (именно так, даже если Legacy BIOS явно не указан). И начинается всё сначала, с той лишь разницей, что теперь уже эмулированный BIOS проверяет состояние оборудования и загружает микропрограммное обеспечение — простые драйверы для отдельных аппаратных компонентов. После этого эмулированный BIOS опять выполняет поиск загрузчика ОС и активирует его. Тот, в свою очередь, загружает операционную систему или выводит на экран список доступных ОС\footnote{Кстати, одна из причин более быстрой загрузки систем с UEFI кроется именно в этом.}.
 
24
 
 
25
А в случае UEFI всё происходит несколько иначе. Дело в том, что UEFI имеет собственный загрузчик операционных систем с интегрированными менеджерами запуска установленных ОС. С этой целью для него — для загрузчика UEFI — на диске должен быть создан небольшой раздел (100–250 МБ), который называется «Extensible Firmware Interface System Partition» (системный раздел расширяемого интерфейса прошивки, {\bfseries ESP}). Кроме указанного размера, раздел должен быть отформатирован в файловой системе FAT32\footnote{Требование стандарта — UEFI может загружаться только с носителя, отформатированного в файловой системе FAT32.} и быть загрузочным. На нем находятся драйверы аппаратных компонентов, к которым может получать доступ запущенная операционная система. И в этом случае загрузка происходит прямо с этого раздела, что намного быстрее.
 
26
 
 
27
Итак, подведём некоторые итоги: чтобы по полной задействовать функционал UEFI, диск должен быть с GPT, и на нём должен быть специальный раздел ESP\footnote{Вы, наверное, знаете, что загрузочный раздел на диске должен быть один. Поэтому выделять небольшой раздел для записи таблиц GPT смысла нет — всё нужное уже будет в ESP.}. Обратите внимание на фразу «чтобы по {\bfseries полной} задействовать функционал» — существует масса способов установки Ubuntu на систему с «урезанным» в той или иной степени UEFI, и все они зависят от наличия или отсутствия предустановленных операционных систем на вашем компьютере. Например, вы хотите оставить предустановленную Windows. Какую Windows — «семёрку» или новомодную 8.1? А может быть у вас, не дай бог, установлена «пераццкая винда», активированная с MBR, и не желающая запускаться с GPT, и вы, тем не менее, хотите дальше её изучать? Кроме того, очень много зависит от разрядности операционных систем — без плясок с бубном невозможно 32-битную систему заставить работать с UEFI. И таких примеров достаточно много. Поэтому в этом разделе пойдёт разговор только про установку Ubuntu в режиме «максимально полного» задействования возможностей UEFI, хотя даже после прочтения этого введения, вы уже сможете представлять устройство своего компьютера и, при желании, реализовать свой собственный сценарий установки.
 
28
 
 
29
Ну что, приступим?
 
30
 
 
31
\section{Разметка диска}
 
32
 
 
33
\HRule { \bfseries
 
34
Прежде чем продолжить, обязательно ознакомьтесь с правилами разметки диска и устройством файловой системы в Ubuntu, иначе некоторые вещи вам могут быть не совсем понятны.
 
35
\HRule }
 
36
 
 
37
Итак, вы загрузились в Ubuntu с LiveCD в режиме UEFI. Открывайте «Редактор разделов GParted»\footnote{Как это сделать написано в статье разметка диска для Ubuntu.}, а пока поговорим об очень важных особенностях, на которые нужно обратить внимание.
 
38
 
 
39
Самое главное, у вас должен быть план ваших действий, поверьте — перечень шагов и порядок их выполнения достаточно обширен, так что желательно записать где-нибудь на бумажке основные пункты плана и периодически с ними сверяться. Итак, что же вам известно. Для нормальной установки Ubuntu в режиме UEFI жёсткий диск вашего компьютера должен быть правильно подготовлен, а именно:
 
40
 
 
41
\begin{itemize}
 
42
\item диск должен быть с GPT;
 
43
\item на диске должен быть специальный раздел ESP;
 
44
\item на диске должны быть стандартные разделы: системный, подкачки, а также раздел для домашнего каталога.
 
45
\end{itemize}
 
46
       
 
47
 
 
48
Кроме того, нужно определиться с операционными системами на вашем компьютере — от того, будет ли Ubuntu единственной системой, или рядом с ней будут находиться другие поддерживающие режим UEFI системы, зависит план разбивки и установки.
 
49
 
 
50
Начнём с ответа на второй вопрос: о наличии других операционных систем. Если на вашем компьютере уже установлены операционные системы, поддерживающие загрузку в режиме UEFI (например, Windows 8), и вы не намерены пока от них отказываться, то первые два пункта плана уже выполнены: раздел ESP наверняка уже есть, ну и диск, разумеется, с GPT. Давайте проверим, что это действительно так.
 
51
 
 
52
Предположим, после запуска редактора разделов GParted у вас откроется вот такое окно\footnote{Это пример — у вас может быть совсем другая конфигурация, просто обращайте внимание на общее между вашим диском и диском, представленным здесь.}:
 
53
 
 
54
\pictscale{gparted_main}{Окно GParted}{0.72}
 
55
 
 
56
Какую информацию можно получить при внимательном изучении этого окна? Во-первых, посмотрите на столбец «File System» («Файловая система»): все разделы отформатированы в ntfs, кроме одного раздела с файловой системой fat32 — это, по всей видимости, и есть раздел ESP. На диске уже установлена Windows 8 (раздел /dev/sda4 — в Windows это диск C:) — об этом говорит метка диска (столбец «Label»). Во-вторых, на жёстком диске есть ряд служебных разделов Windows — об этом можно узнать не только по меткам (WINRE\_DRV и LRS\_ESP), но и по флагам (столбец «Flags») — все эти разделы скрыты, поскольку у них установлен флаг hidden, что намекает на специальный характер информации на них. И, наконец, присмотритесь к разделу /dev/sda5 — вы случайно не потеряли диск D: в Windows? Вот он, в целости и сохранности.
 
57
 
 
58
Итак, первые два пункта плана уже выполнены, а реализация третьего пункта: создание разделов для Ubuntu — достаточно подробно описана в примере использования GParted для переразбивки жёсткого диска. Напомним вкратце, что от диска с данными (в примере это /dev/sda5, или диск D: в Windows) нужно «отрезать» достаточное пространство и на его месте создать три раздела: подкачки, системный и раздел для домашнего каталога. Учтите также, что ваш диск — GPT, так что расширенного раздела, содержащего логические диски, у него нет, следовательно, при создании разделов выбирайте Primary partition («Основной раздел»).
 
59
 
 
60
 
 
61
\HRule { \itshape
 
62
Не производите никаких операций со служебными разделами Windows — они предназначены для нормального функционирования этой ОС. Случайное или преднамеренное изменение этих разделов гарантировано приведёт к возникновению проблем в Windows, вплоть до полной её неработоспособности.
 
63
\HRule }
 
64
 
 
65
В итоге должно получиться что-то похожее на эту картинку:
 
66
 
 
67
\pictscale{gparted_efi}{Результат работы GParted}{0.72}
 
68
 
 
69
Здесь показаны дополнительно созданные разделы:
 
70
 
 
71
 
 
72
\begin{itemize}
 
73
\item /dev/sda6 — системный раздел для вашей будущей Ubuntu, в примере его размер 15 ГБ;
 
74
\item /dev/sda7 — раздел подкачки размером 4 ГБ\footnote{Вы, наверное, помните, что размер свопа подбирается равным или чуть большим, чем размер оперативной памяти системы, а сейчас сложно найти компьютер с UEFI, у которого оперативки меньше четырёх гигабайт.};
 
75
\item /dev/sda8 — раздел для пользовательских данных или, другими словами, раздел для домашнего каталога /home — в примере под него выделено всё оставшееся свободное пространство.
 
76
\end{itemize}
 
77
 
 
78
 
 
79
\HRule { \itshape
 
80
Пожалуйста, запишите назначение разделов. В показанном примере:
 
81
 
 
82
\begin{itemize}
 
83
\item /dev/sda2 — раздел EFI (ESP)
 
84
\item /dev/sda6 — системный раздел (раздел для «корня» системы)
 
85
\item /dev/sda7 — раздел подкачки
 
86
\item /dev/sda8 — раздел для пользовательских данных.
 
87
\end{itemize}
 
88
 
 
89
Эта информация очень пригодится в дальнейшем при установке Ubuntu, поскольку из-за большого количества разделов можно очень легко запутаться и назначить не той «цифре» требуемую точку монтирования.
 
90
\HRule }
 
91
 
 
92
А что делать, если ОН\footnote{«Вендекапец» — светлая мечта всех настоящих линуксоидов. Заключается в том, что Microsoft откроет исходные коды и перелицензирует все свои поделия под GPL.} уже наступил вы решили отказаться от использования других операционных систем и хотите установить Ubuntu единственной системой?
 
93
 
 
94
Нет ничего проще, хотя и придётся постараться. Прежде всего хочется предупредить, что после этого вся, абсолютно вся информация на вашем жёстком диске будет утрачена\footnote{Дело в том, что преобразование файловой системы ntfs, принятой в Windows, в файловую систему ext4, используемую по умолчанию в Ubuntu, невозможно без потери информации.}. Так что позаботьтесь о резервном копировании всех важных для вас файлов. Есть, конечно, способ избежать бэкапа, но только если общий объём сохраняемых файлов немного меньше половины общего дискового пространства. Догадаетесь как\footnote{Нужно оставить все ваши файлы на существующем разделе ntfs, после установки переместить их в домашний каталог, а после этого раздел ntfs удалить и расширить домашний каталог на освободившееся место с помощью того же GParted. Правда, после установки его придётся доустановить.}?
 
95
 
 
96
Тем не менее, продолжаем работать с редактором GParted. Ваша задача — удалить все разделы и на свободном месте создать нужную для Ubuntu конфигурацию диска. Для этого можно щёлкнуть правой кнопкой мыши на каждом из разделов и выбрать из выпадающего меню пункт «Delete». Но лучше поступить по-другому: найдите на панели меню редактора GParted пункт «Device» (Устройство) и выберите в меню «Create Partition Table…» (Создать таблицу разделов…). Появится предупреждение:
 
97
 
 
98
\HRule { \bfseries
 
99
WARNING: This will ERASE ALL DATA on the ENTIRE DISK /dev/sda
 
100
 
 
101
(ВНИМАНИЕ: это приведёт к УДАЛЕНИЮ ВСЕХ ДАННЫХ на ВСЁМ ДИСКЕ /dev/sda)
 
102
\HRule }
 
103
 
 
104
Не переживайте, вы же позаботились о резервных копиях? Посмотрите чуть ниже — на надпись «Advanced» (Подробности). Щёлкните мышью на треугольник слева и в меню выберите gpt:
 
105
 
 
106
\pictscale{gparted_gpt1}{Выбор GPT}{0.72}
 
107
 
 
108
Всё дисковое пространство станет серым. Щёлкните на нём правой кнопкой мыши и начните создавать необходимые разделы, выбрав «New» (Новый) из выпадающего меню. Первый из новых разделов — специальный раздел ESP, требуемый, как вы помните, для работы UEFI. Поскольку он форматирован в неродной для Linux файловой системе, и кроме того, должен быть загрузочным, то расположить его надо в начале дискового пространства. Определите ему размер в поле «New size (MiB)» (Новый размер в МиБ\footnote{Мебибайт — 220 = 1 048 576 байт.}) 100 МБ\footnote{Вполне достаточно для единственной операционной системы на компьютере, главное, чтобы размер раздела был не менее 35 МБ.}, а файловую систему — fat32:
 
109
 
 
110
\pictscale{gparted_new_fat1}{Создание раздела ESP}{0.72}
 
111
 
 
112
Таким же образом создайте разделы под будущие: системный (15 ГБ с файловой системой ext4), раздел подкачки (4 ГБ с linux-swap) и для домашнего каталога (всё оставшееся пространство в ext4). Как вы помните, GParted применяет изменения не сразу, а просто ставит их в очередь на выполнение. Поэтому нажмите на зелёную галочку «Apply All Operations» (Выполнить все операции):
 
113
 
 
114
 
 
115
\pictscale{gparted_final}{Применить изменения}{0.72}
 
116
 
 
117
Да, совсем не обязательно управлять флагами загрузки на этом этапе — установщик Ubuntu выполнит всё так, как надо. А теперь внимательно читайте про то, как устанавливать Ubuntu, и, как будете готовы, продолжим.
 
118
 
 
119
\section{Установка Ubuntu}
 
120
 
 
121
После такой подготовительной работы установка Ubuntu не вызовет трудностей, особенно если вы внимательно прочитали правила установки. Просто достаньте бумажку с перечнем разделов и обратите внимание, что для специального раздела EFI (/dev/sda2 из примера о совместной установки Ubuntu и Windows) нужно точно назначить свойство {\bfseries загрузочного раздела EFI}, а не резервной загрузочной области BIOS:
 
122
 
 
123
 
 
124
\pictscale{efi_install}{Назначение раздела EFI}{0.72}
 
125
 
 
126
Если вы этого не сделаете, то установщик покажет вам такое уведомление:
 
127
 
 
128
 
 
129
\pictscale{boot_incorrect}{Ошибка при установке}{0.72}
 
130
 
 
131
Исправьте ошибку, а если не получится, выйдите из установщика, запустите редактор GParted и проверьте, что всё, рассказанное выше, выполнено.
 
132
 
 
133
Назначения для всех остальных разделов, требуемых при установке Ubuntu, очень детально описаны в этом разделе, поэтому нет особого смысла останавливаться на этом подробней.
 
134
 
 
135
\section{Возможные проблемы}
 
136
 
 
137
Иногда бывает так, что после установки одна из операционных систем, предустановленных на компьютере, не запускается. Что ж, не вдаваясь в достаточно сложные способы приведения всего в норму, отметим, что есть комплексное решение возможных проблем с загрузкой. Имя этому решению — {\bfseries Boot-repair}\footnote{Ожидается, что эта программа будет включена в установочный образ Ubuntu.}.
 
138
 
 
139
Эта небольшая программа — очень мощный инструмент, позволяющий исправить практически все ошибки, которые могут возникнуть при загрузке Ubuntu и других операционных систем после установки.
 
140
 
 
141
\HRule { \itshape
 
142
Придерживайтесь золотого правила: «Никогда не чинить то, что ещё не сломалось»!
 
143
\HRule }
 
144
 
 
145
Загрузитесь в Ubuntu. Не имеет значения как вы это сделаете — Boot-Repair работает как с LiveCD, так и на установленной системе. Разумеется, если вы испытываете трудности с загрузкой только что поставленной Ubuntu, то первый способ становится единственным\footnote{Можно воспользоваться также «спасательным CD» Boot-Repair-Disk}. Для начала Boot-Repair нужно поставить на ваш компьютер, делается это с помощью терминала. Нажмите \key{Ctrl+Alt+T} и в появившемся окне наберите:
 
146
 
 
147
FIXME: Изменить команду ближе к выходу релиза.
 
148
 
 
149
sudo add-apt-repository 'deb http://ppa.launchpad.net/yannubuntu/boot-repair/ubuntu saucy main'
 
150
 
 
151
Сейчас вы, конечно, скажете: «Вы что там, совсем? Столько букв — я же ничего не понимаю и обязательно ошибусь!» Разумеется, никто представленную команду\footnote{Команда add-apt-repository добавляет в систему репозиторий, содержащий программу Boot-Repair и выполняется от имени «суперпользователя» с помощью sudo.} по буквам в терминал не вводит — просто выделите её полностью и щёлкните средней кнопкой мыши в окне терминала, или перетащите выделенный текст туда же. Нажмите \key{Enter}. Если вы находитесь в уже установленной Ubuntu, появится предложение ввести ваш пароль. Обратите внимание, при вводе пароля никакие символы не отображаются: ни точки, ни звёздочки — вообще ничего, — наверное, не нужно объяснять почему так сделано. После ввода пароля опять нажмите \key{Enter}.
 
152
 
 
153
Загрузите открытый ключ репозитория с программой из хранилища доверенных ключей\footnote{Подробней о принципах работы репозиториев и установке программ в Ubuntu можно прочитать в  статье "Управление программами и обновлениями"}:
 
154
 
 
155
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 60D8DA0B
 
156
 
 
157
Обновите список приложений командой:
 
158
 
 
159
\begin{code}
 
160
sudo apt-get update
 
161
\end{code}
 
162
 
 
163
Установите и запустите Boot-Repair:
 
164
 
 
165
\begin{code}
 
166
sudo apt-get install -y boot-repair \&\& (boot-repair \&)
 
167
\end{code}
 
168
 
 
169
 
 
170
После непродолжительного сканирования появится основное окно Boot-Repair: 
 
171
 
 
172
\pictscale{br_main}{Стартовое окно Boot-Repair}{0.72}
 
173
 
 
174
FIXME: В процессе написания. 
 
175