summaryrefslogtreecommitdiff
path: root/lfs-12.1-sysv/chapter02
diff options
context:
space:
mode:
authorSn4il <sn4il@thedroth.rocks>2024-03-06 10:25:41 +0300
committerSn4il <sn4il@thedroth.rocks>2024-03-06 10:25:41 +0300
commit5a6834585c43296c2207f5f251d3d5c237c7c8d2 (patch)
tree5c3f9adc4c5fd0b3bdc3b017b021a36016c0f15b /lfs-12.1-sysv/chapter02
parent2b6ec04f001bbdf660476a1275d90075d746833c (diff)
downloadsn4il-site-5a6834585c43296c2207f5f251d3d5c237c7c8d2.tar.gz
sn4il-site-5a6834585c43296c2207f5f251d3d5c237c7c8d2.zip
Update LFS mirror
Diffstat (limited to 'lfs-12.1-sysv/chapter02')
-rw-r--r--lfs-12.1-sysv/chapter02/aboutlfs.html156
-rw-r--r--lfs-12.1-sysv/chapter02/chapter02.html110
-rw-r--r--lfs-12.1-sysv/chapter02/creatingfilesystem.html167
-rw-r--r--lfs-12.1-sysv/chapter02/creatingpartition.html343
-rw-r--r--lfs-12.1-sysv/chapter02/hostreqs.html392
-rw-r--r--lfs-12.1-sysv/chapter02/introduction.html87
-rw-r--r--lfs-12.1-sysv/chapter02/mounting.html171
-rw-r--r--lfs-12.1-sysv/chapter02/stages.html195
8 files changed, 1621 insertions, 0 deletions
diff --git a/lfs-12.1-sysv/chapter02/aboutlfs.html b/lfs-12.1-sysv/chapter02/aboutlfs.html
new file mode 100644
index 0000000..4530d9f
--- /dev/null
+++ b/lfs-12.1-sysv/chapter02/aboutlfs.html
@@ -0,0 +1,156 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
+ <title>
+ 2.6. Установка переменной $LFS
+ </title>
+ <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
+ <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" />
+ <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
+ "text/css" media="print" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ </head>
+ <body class="lfs" id="lfs-12.1">
+ <div class="navheader">
+ <h4>
+ Линукс с нуля - Версия 12.1
+ </h4>
+ <h3>
+ Глава 2. Подготовка хост-системы
+ </h3>
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="creatingfilesystem.html" title=
+ "Создание файловой системы на разделе">Пред.</a>
+ <p>
+ Создание файловой системы на разделе
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="mounting.html" title=
+ "Монтирование нового раздела">След.</a>
+ <p>
+ Монтирование нового раздела
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter02.html" title=
+ "Глава 2. Подготовка хост-системы">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ <h1 class="sect1">
+ <a id="ch-partitioning-aboutlfs" name=
+ "ch-partitioning-aboutlfs"></a>2.6. Установка переменной $LFS
+ </h1>
+ <div class="sect1" lang="ru" xml:lang="ru">
+ <p>
+ В этой книге переменная окружения <code class="envar">LFS</code>
+ будет использоваться несколько раз. Вы должны убедиться, что эта
+ переменная всегда определена в процессе сборки LFS. Она должна быть
+ установлена на каталог, в котором вы будете создавать свою систему
+ LFS — мы, для примера, будем использовать <code class=
+ "filename">/mnt/lfs</code>, но вы можете выбрать любой другой. Если
+ вы собираете LFS на отдельном разделе, этот каталог будет точкой
+ монтирования для раздела. Выберите расположение каталога и установите
+ переменную с помощью следующей команды:
+ </p>
+ <pre class="userinput"><kbd class="command">export LFS=<em class=
+ "replaceable"><code>/mnt/lfs</code></em></kbd></pre>
+ <p>
+ Установка этой переменной полезна тем, что такие команды, как
+ <span class="command"><strong>mkdir -v $LFS/tools</strong></span>,
+ можно вводить буквально. Оболочка автоматически заменит <span class=
+ "quote">«<span class="quote">$LFS</span>»</span> на <span class=
+ "quote">«<span class="quote">/mnt/lfs</span>»</span> (или любое
+ другое значение переменной) при обработке команды.
+ </p>
+ <div class="admon caution">
+ <img alt="[Внимание]" src="../images/caution.png" />
+ <h3>
+ Внимание
+ </h3>
+ <p>
+ Не забывайте проверять, что переменная <code class=
+ "envar">LFS</code> установлена, всякий раз, когда вы покидаете и
+ снова входите в текущую рабочую среду (например, когда выполняете
+ <span class="command"><strong>su</strong></span> для <code class=
+ "systemitem">root</code> или другого пользователя). Убедитесь, что
+ переменная <code class="envar">LFS</code> настроена правильно:
+ </p>
+ <pre class="userinput"><kbd class="command">echo $LFS</kbd></pre>
+ <p>
+ Убедитесь, что в выходных данных указан путь к местоположению
+ сборки вашей системы LFS, то есть <code class=
+ "filename">/mnt/lfs</code>, если вы следовали примеру. Если вывод
+ неверен, используйте команду, указанную ранее, чтобы установить
+ <code class="envar">$LFS</code> в правильное значение каталога LFS.
+ </p>
+ </div>
+ <div class="admon note">
+ <img alt="[Примечание]" src="../images/note.png" />
+ <h3>
+ Примечание
+ </h3>
+ <p>
+ Один из способов гарантировать, что переменная <code class=
+ "envar">LFS</code> всегда установлена, — отредактировать файл
+ <code class="filename">.bash_profile</code> как в вашем личном
+ домашнем каталоге, так и в <code class=
+ "filename">/root/.bash_profile</code> и добавить приведенную выше
+ команду экспорта. Кроме того, оболочка, указанная в файле
+ <code class="filename">/etc/passwd</code> для всех пользователей,
+ которым нужна переменная <code class="envar">LFS</code>, должна
+ быть bash, чтобы гарантировать, что файл <code class=
+ "filename">/root/.bash_profile</code> используется как часть
+ процесса входа в систему.
+ </p>
+ <p>
+ Еще один способ, который используется для входа в хост-систему. При
+ входе в систему через диспетчер графического дисплея
+ пользовательский <code class="filename">.bash_profile</code> не
+ используется при запуске виртуального терминала. В этом случае
+ добавьте команду экспорта в файл <code class=
+ "filename">.bashrc</code> для своего пользователя и <code class=
+ "systemitem">root</code>. Кроме того, некоторые дистрибутивы
+ используют тест "if" и не запускают оставшиеся инструкции
+ <code class="filename">.bashrc</code> для не интерактивного вызова
+ bash. Обязательно разместите команду экспорта перед тестом для не
+ интерактивного использования.
+ </p>
+ </div>
+ </div>
+ <div class="navfooter">
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="creatingfilesystem.html" title=
+ "Создание файловой системы на разделе">Пред.</a>
+ <p>
+ Создание файловой системы на разделе
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="mounting.html" title=
+ "Монтирование нового раздела">След.</a>
+ <p>
+ Монтирование нового раздела
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter02.html" title=
+ "Глава 2. Подготовка хост-системы">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ </body>
+</html>
diff --git a/lfs-12.1-sysv/chapter02/chapter02.html b/lfs-12.1-sysv/chapter02/chapter02.html
new file mode 100644
index 0000000..fa5690e
--- /dev/null
+++ b/lfs-12.1-sysv/chapter02/chapter02.html
@@ -0,0 +1,110 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
+ <title>
+ Глава 2. Подготовка хост-системы
+ </title>
+ <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
+ <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" />
+ <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
+ "text/css" media="print" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ </head>
+ <body class="lfs" id="lfs-12.1">
+ <div class="navheader">
+ <h4>
+ Линукс с нуля - Версия 12.1
+ </h4>
+ <h3>
+ Часть&nbsp;II.&nbsp;Подготовка к сборке
+ </h3>
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="../part2.html" title=
+ "Подготовка к сборке">Пред.</a>
+ <p>
+ Подготовка к сборке
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="introduction.html" title=
+ "Введение">След.</a>
+ <p>
+ Введение
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="../part2.html" title=
+ "Часть&nbsp;II.&nbsp;Подготовка к сборке">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ <h1 class="chapter">
+ <a id="chapter-partitioning" name="chapter-partitioning"></a>2.
+ Подготовка хост-системы
+ </h1>
+ <div class="chapter" lang="ru" xml:lang="ru">
+ <div class="toc">
+ <h3>
+ Содержание
+ </h3>
+ <ul>
+ <li class="sect1">
+ <a href="introduction.html">Введение</a>
+ </li>
+ <li class="sect1">
+ <a href="hostreqs.html">Требования к хост-системе</a>
+ </li>
+ <li class="sect1">
+ <a href="stages.html">Этапы сборки системы LFS</a>
+ </li>
+ <li class="sect1">
+ <a href="creatingpartition.html">Создание нового раздела</a>
+ </li>
+ <li class="sect1">
+ <a href="creatingfilesystem.html">Создание файловой системы на
+ разделе</a>
+ </li>
+ <li class="sect1">
+ <a href="aboutlfs.html">Установка переменной $LFS</a>
+ </li>
+ <li class="sect1">
+ <a href="mounting.html">Монтирование нового раздела</a>
+ </li>
+ </ul>
+ </div>
+ </div>
+ <div class="navfooter">
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="../part2.html" title=
+ "Подготовка к сборке">Пред.</a>
+ <p>
+ Подготовка к сборке
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="introduction.html" title=
+ "Введение">След.</a>
+ <p>
+ Введение
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="../part2.html" title=
+ "Часть&nbsp;II.&nbsp;Подготовка к сборке">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ </body>
+</html>
diff --git a/lfs-12.1-sysv/chapter02/creatingfilesystem.html b/lfs-12.1-sysv/chapter02/creatingfilesystem.html
new file mode 100644
index 0000000..56eec58
--- /dev/null
+++ b/lfs-12.1-sysv/chapter02/creatingfilesystem.html
@@ -0,0 +1,167 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
+ <title>
+ 2.5. Создание файловой системы на разделе
+ </title>
+ <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
+ <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" />
+ <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
+ "text/css" media="print" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ </head>
+ <body class="lfs" id="lfs-12.1">
+ <div class="navheader">
+ <h4>
+ Линукс с нуля - Версия 12.1
+ </h4>
+ <h3>
+ Глава 2. Подготовка хост-системы
+ </h3>
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="creatingpartition.html" title=
+ "Создание нового раздела">Пред.</a>
+ <p>
+ Создание нового раздела
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="aboutlfs.html" title=
+ "Установка переменной $LFS">След.</a>
+ <p>
+ Установка переменной $LFS
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter02.html" title=
+ "Глава 2. Подготовка хост-системы">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ <h1 class="sect1">
+ <a id="ch-partitioning-creatingfilesystem" name=
+ "ch-partitioning-creatingfilesystem"></a>2.5. Создание файловой системы
+ на разделе
+ </h1>
+ <div class="sect1" lang="ru" xml:lang="ru">
+ <p>
+ Раздел - это всего лишь диапазон секторов на диске, указанный в
+ таблице разделов. Прежде чем операционная система сможет использовать
+ раздел для хранения каких-либо файлов, он должен быть отформатирован,
+ чтобы содержать файловую систему, обычно состоящую из метки, блоков
+ каталогов, блоков данных и схемы индексации для поиска конкретного
+ файла по запросу. Файловая система также помогает операционной
+ системе отслеживать свободное пространство на разделе, резервировать
+ необходимые секторы при создании нового файла или расширении
+ существующего и повторно использует свободные сегменты данных,
+ полученные в результате удаления файлов. Она также может обеспечивать
+ поддержку избыточности данных и восстановления после ошибок.
+ </p>
+ <p>
+ LFS может использовать любую файловую систему, распознаваемую ядром
+ Linux, но наиболее распространенными типами являются ext3 и ext4.
+ Выбор правильной файловой системы может быть сложным; это зависит от
+ характеристик файлов и размера раздела. Например:
+ </p>
+ <div class="variablelist">
+ <dl class="variablelist">
+ <dt>
+ <span class="term">ext2</span>
+ </dt>
+ <dd>
+ <p>
+ подходит для небольших разделов, которые редко обновляются,
+ например /boot.
+ </p>
+ </dd>
+ <dt>
+ <span class="term">ext3</span>
+ </dt>
+ <dd>
+ <p>
+ это обновленная файловая система ext2, которая включает в себя
+ журнал, помогающий восстановить состояние раздела в случае
+ некорректного завершения работы. Обычно используется в качестве
+ файловой системы общего назначения.
+ </p>
+ </dd>
+ <dt>
+ <span class="term">ext4</span>
+ </dt>
+ <dd>
+ <p>
+ является последней версией файловых систем семейства ext. Она
+ предоставляет несколько новых возможностей, включая временные
+ метки с точностью до наносекунды, создание и использование
+ очень больших файлов (16 ТБ) и повышение скорости работы.
+ </p>
+ </dd>
+ </dl>
+ </div>
+ <p>
+ Другие файловые системы, включая FAT32, NTFS, ReiserFS, JFS и XFS,
+ полезны для конкретных задач. Более подробную информацию об этих
+ файловых системах и многих других можно найти по адресу <a class=
+ "ulink" href=
+ "https://en.wikipedia.org/wiki/Comparison_of_file_systems">https://en.wikipedia.org/wiki/Comparison_of_file_systems</a>.
+ </p>
+ <p>
+ LFS предполагает, что корневая файловая система (/) имеет тип ext4.
+ Чтобы создать файловую систему <code class="systemitem">ext4</code>
+ на разделе LFS, выполните следующую команду:
+ </p>
+ <pre class="userinput"><kbd class=
+ "command">mkfs -v -t ext4 /dev/<em class=
+ "replaceable"><code>&lt;xxx&gt;</code></em></kbd></pre>
+ <p>
+ Замените <em class="replaceable"><code>&lt;xxx&gt;</code></em> именем
+ раздела LFS
+ </p>
+ <p>
+ Если вы используете существующий <code class="systemitem">раздел
+ подкачки</code>, нет необходимости его форматировать. Если был создан
+ новый <code class="systemitem">раздел подкачки</code>, его нужно
+ будет инициализировать с помощью этой команды:
+ </p>
+ <pre class="userinput"><kbd class="command">mkswap /dev/<em class=
+ "replaceable"><code>&lt;yyy&gt;</code></em></kbd></pre>
+ <p>
+ Замените <em class="replaceable"><code>&lt;yyy&gt;</code></em> именем
+ <code class="systemitem">раздела подкачки</code>.
+ </p>
+ </div>
+ <div class="navfooter">
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="creatingpartition.html" title=
+ "Создание нового раздела">Пред.</a>
+ <p>
+ Создание нового раздела
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="aboutlfs.html" title=
+ "Установка переменной $LFS">След.</a>
+ <p>
+ Установка переменной $LFS
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter02.html" title=
+ "Глава 2. Подготовка хост-системы">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ </body>
+</html>
diff --git a/lfs-12.1-sysv/chapter02/creatingpartition.html b/lfs-12.1-sysv/chapter02/creatingpartition.html
new file mode 100644
index 0000000..1724548
--- /dev/null
+++ b/lfs-12.1-sysv/chapter02/creatingpartition.html
@@ -0,0 +1,343 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
+ <title>
+ 2.4. Создание нового раздела
+ </title>
+ <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
+ <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" />
+ <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
+ "text/css" media="print" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ </head>
+ <body class="lfs" id="lfs-12.1">
+ <div class="navheader">
+ <h4>
+ Линукс с нуля - Версия 12.1
+ </h4>
+ <h3>
+ Глава 2. Подготовка хост-системы
+ </h3>
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="stages.html" title=
+ "Этапы сборки системы LFS">Пред.</a>
+ <p>
+ Этапы сборки системы LFS
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="creatingfilesystem.html" title=
+ "Создание файловой системы на разделе">След.</a>
+ <p>
+ Создание файловой системы на разделе
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter02.html" title=
+ "Глава 2. Подготовка хост-системы">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ <h1 class="sect1">
+ <a id="ch-partitioning-creatingpartition" name=
+ "ch-partitioning-creatingpartition"></a>2.4. Создание нового раздела
+ </h1>
+ <div class="sect1" lang="ru" xml:lang="ru">
+ <p>
+ Как и большинство других операционных систем, LFS обычно
+ устанавливается на выделенный раздел. Рекомендуемый подход к
+ построению системы LFS состоит в том, чтобы использовать доступный
+ пустой раздел или, если у вас достаточно неразмеченного пространства,
+ использовать его
+ </p>
+ <p>
+ Минимальная система требует раздел размером около 10 гигабайт (ГБ).
+ Этого достаточно для хранения всех архивов с исходным кодом и
+ компиляции пакетов. Однако, если система LFS предназначена для
+ использования в качестве основной системы Linux, вероятно, будет
+ установлено дополнительное программное обеспечение, для которого
+ потребуется дополнительное пространство. Раздел размером 30 ГБ
+ является разумным размером для расширения. Сама система LFS не займет
+ столько места. Большая часть этого требования заключается в
+ предоставлении достаточного временного хранилища, а также в
+ добавлении дополнительных возможностей после сборки LFS. Кроме того,
+ для компиляции пакетов может потребоваться много места на диске,
+ которое будет освобождено после установки пакета.
+ </p>
+ <p>
+ Поскольку для компиляции не всегда достаточно оперативной памяти
+ (ОЗУ), рекомендуется использовать небольшой раздел диска в качестве
+ <code class="systemitem">раздела подкачки</code>. Он используется
+ ядром для хранения редко используемых данных и оставляет больше
+ памяти для активных процессов. <code class="systemitem">Раздел
+ подкачки</code> для системы LFS может совпадать с разделом,
+ используемым хост-системой, и в этом случае нет необходимости
+ создавать еще один.
+ </p>
+ <p>
+ Запустите программу создания разделов диска, такую как <span class=
+ "command"><strong>cfdisk</strong></span> или <span class=
+ "command"><strong>fdisk</strong></span>, с параметром командной
+ строки, указав имя жесткого диска, на котором будет создан новый
+ раздел, например, <code class="filename">/dev/sda</code> для
+ основного диска. Создайте раздел Linux и <code class=
+ "systemitem">раздел подкачки</code>, если это необходимо. Пожалуйста,
+ обратитесь к справке <a class="ulink" href=
+ "https://man.archlinux.org/man/cfdisk.8">cfdisk(8)</a> или <a class=
+ "ulink" href="https://man.archlinux.org/man/fdisk.8">fdisk(8)</a>,
+ если вы еще не знаете, как пользоваться этими программами.
+ </p>
+ <div class="admon note">
+ <img alt="[Примечание]" src="../images/note.png" />
+ <h3>
+ Примечание
+ </h3>
+ <p>
+ Для опытных пользователей возможны и другие схемы разбиения.
+ Система LFS может располагаться на программном <a class="ulink"
+ href=
+ "https://mirror.linuxfromscratch.ru/blfs/view/12.1/postlfs/raid.html">
+ RAID-массиве</a> или логическом томе <a class="ulink" href=
+ "https://mirror.linuxfromscratch.ru/blfs/view/12.1/postlfs/aboutlvm.html">
+ LVM</a>. Однако для некоторых опций требуется <a class="ulink"
+ href="https://mirror.linuxfromscratch.ru/blfs/view/12.1/postlfs/initramfs.html">
+ initramfs</a>, что является сложной темой. Эти методы разбиения не
+ рекомендуются начинающим пользователям LFS.
+ </p>
+ </div>
+ <p>
+ Запомните обозначение созданного раздела (например, <code class=
+ "filename">sda5</code>). В этой книге он будет называться разделом
+ LFS. Также запомните обозначение <code class="systemitem">раздела
+ подкачки</code>. Эти имена понадобятся позже для файла <code class=
+ "filename">/etc/fstab</code>.
+ </p>
+ <div class="sect2" lang="ru" xml:lang="ru">
+ <h2 class="sect2">
+ 2.4.1. Другие вопросы по созданию разделов
+ </h2>
+ <p>
+ Рекомендации по созданию разделов системы часто публикуются в
+ списках рассылки LFS. Это очень субъективная тема. По умолчанию для
+ большинства дистрибутивов используется весь диск, за исключением
+ небольшого раздела подкачки. Это не оптимально для LFS по
+ нескольким причинам. Это снижает гибкость, затрудняет совместное
+ использование данных между несколькими дистрибутивами или сборками
+ LFS, делает резервное копирование более трудоемким и может тратить
+ дисковое пространство из-за неэффективно распределенной файловой
+ системы.
+ </p>
+ <div class="sect3">
+ <h3 class="sect3">
+ 2.4.1.1. Корневой раздел
+ </h3>
+ <p>
+ Корневой раздел LFS (не путать с каталогом <code class=
+ "filename">/root</code>) размером в 20 гигабайт является хорошим
+ компромиссом для большинства систем. Он обеспечивает достаточно
+ места для построения LFS и большей части BLFS, но достаточно мал,
+ чтобы можно было легко создать несколько разделов для
+ экспериментов.
+ </p>
+ </div>
+ <div class="sect3">
+ <h3 class="sect3">
+ 2.4.1.2. Раздел подкачки
+ </h3>
+ <p>
+ Большинство дистрибутивов автоматически создают раздел подкачки.
+ Обычно рекомендуемый размер раздела подкачки примерно в два раза
+ превышает объем физической памяти, однако это требуется редко.
+ Если дисковое пространство ограничено, установите размер раздела
+ подкачки в два гигабайта и контролируйте его объемом.
+ </p>
+ <p>
+ Если вы хотите использовать режим гибернации (suspend-to-disk)
+ Linux, которая записывает содержимое ОЗУ в раздел подкачки перед
+ выключением машины. Установите размер раздела подкачки не меньше
+ объема установленной оперативной памяти.
+ </p>
+ <p>
+ Использование файла подкачки - это не очень хорошо. Для
+ механических жестких дисков вы можете определить, что система
+ использует раздел подкачки, просто слыша активность диска и
+ наблюдая, как система реагирует на команды. Для SSD-накопителя вы
+ не сможете услышать, что используется раздел подкачки, но сможете
+ оценить, сколько места на разделе подкачки занято, используя
+ команды <span class="command"><strong>top</strong></span> или
+ <span class="command"><strong>free</strong></span>. По
+ возможности следует избегать использования SSD-накопителя для
+ раздела подкачки. Первой реакцией на активность раздела подкачки
+ должна быть проверка на необоснованное применение какой-либо
+ команды, например, попытка редактирования пятигигабайтного файла.
+ Если использование раздела подкачки становится обычным явлением,
+ лучшее решение — приобретение большего объема оперативной памяти
+ для вашей системы.
+ </p>
+ </div>
+ <div class="sect3">
+ <h3 class="sect3">
+ 2.4.1.3. Раздел GRUB
+ </h3>
+ <p>
+ Если <span class="emphasis"><em>загрузочный диск</em></span>
+ размечен с помощью таблицы разделов GUID (GPT), необходимо
+ создать небольшой раздел, обычно размером 1 МБ, если он еще не
+ существует. Этот раздел не форматируется, но должен быть доступен
+ для использования GRUB во время установки загрузчика. Обычно он
+ помечен как 'BIOS Boot' при использовании <span class=
+ "command"><strong>fdisk</strong></span> или имеет код
+ <span class="emphasis"><em>EF02</em></span> при использовании
+ <span class="command"><strong>gdisk</strong></span>.
+ </p>
+ <div class="admon note">
+ <img alt="[Примечание]" src="../images/note.png" />
+ <h3>
+ Примечание
+ </h3>
+ <p>
+ Раздел Grub Bios должен находиться на диске, который BIOS
+ использует для загрузки системы. Это не обязательно тот же
+ диск, на котором расположен корневой раздел LFS. Диски в
+ системе могут использовать разные типы таблиц разделов. Наличие
+ раздела Grub Bios зависит только от типа таблицы разделов на
+ загрузочном диске.
+ </p>
+ </div>
+ </div>
+ <div class="sect3">
+ <h3 class="sect3">
+ 2.4.1.4. Разделы, используемые для удобства
+ </h3>
+ <p>
+ Есть несколько других разделов, которые не являются
+ обязательными, но их следует учитывать при разработке схемы
+ диска. Следующий список не является исчерпывающим, а представлен
+ в качестве справочного руководства.
+ </p>
+ <div class="itemizedlist">
+ <ul>
+ <li class="listitem">
+ <p>
+ /boot – Настоятельно рекомендуется. Используйте этот раздел
+ для хранения ядер и другой загрузочной информации. Чтобы
+ свести к минимуму возможные проблемы с загрузкой дисков
+ большого размера, сделайте этот раздел первым физическим
+ разделом на первом диске. Размер раздела в 200 мегабайт
+ вполне достаточен.
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ /boot/efi – Системный раздел EFI, используемый для загрузки
+ системы с помощью UEFI. Подробнее читайте на <a class=
+ "ulink" href=
+ "https://mirror.linuxfromscratch.ru/blfs/view/12.1/postlfs/grub-setup.html">
+ странице BLFS</a>.
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ /home – Настоятельно рекомендуется. Предоставьте общий
+ доступ к своему домашнему каталогу и пользовательским
+ настройкам нескольким дистрибутивам или сборкам LFS.
+ Размер, как правило, довольно большой и зависит от
+ доступного места на диске.
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ /usr – в LFS, <code class="filename">/bin</code>,
+ <code class="filename">/lib</code>, и <code class=
+ "filename">/sbin</code> являются символическими ссылками на
+ их аналоги в <code class="filename">/usr</code>. Таким
+ образом <code class="filename">/usr</code> содержит все
+ двоичные файлы, необходимые для работы системы. Для LFS
+ отдельный раздел <code class="filename">/usr</code> не
+ требуется. Если он вам необходим, вы должны сделать раздел
+ достаточно большим, чтобы поместить туда все программы и
+ библиотеки в системе. В этой конфигурации, корневой раздел
+ может быть очень маленьким (возможно, всего один гигабайт),
+ поэтому он подходит для тонкого клиента или бездисковой
+ рабочей станции (где <code class="filename">/usr</code>
+ монтируется с удаленного сервера). Однако вы должны знать,
+ что для загрузки системы с отдельного раздела <code class=
+ "filename">/usr</code> потребуется initramfs (не включенный
+ в LFS).
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ /opt – Этот каталог наиболее полезен для BLFS, в него можно
+ установить некоторые большие пакеты, такие как KDE или
+ Texlive, без использования иерархии /usr. Для /opt
+ достаточно размера от 5 до 10 гигабайт.
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ /tmp – Отдельный раздел /tmp используется редко, он полезен
+ при настройке тонкого клиента. Обычно, его размер не должен
+ превышать пару гигабайт. Если у вас достаточно оперативной
+ памяти, вы можете смонтировать /tmp как <code class=
+ "systemitem">tmpfs</code>, чтобы ускорить доступ к
+ временным файлам.
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ /usr/src – Этот раздел очень удобен для хранения исходников
+ BLFS и совместного использования их в сборках LFS. Его
+ также можно использовать в качестве места для сборки
+ пакетов BLFS. Размера в 30-50 гигабайт вполне достаточно.
+ </p>
+ </li>
+ </ul>
+ </div>
+ <p>
+ Любой отдельный раздел, который вы хотите автоматически
+ монтировать при загрузке, должен быть указан в файле <code class=
+ "filename">/etc/fstab</code>. Подробности о том, как указать
+ разделы, будут обсуждаться в <a class="xref" href=
+ "../chapter10/fstab.html" title=
+ "10.2. Создание файла /etc/fstab">Раздел&nbsp;10.2, «Создание
+ файла /etc/fstab»</a>.
+ </p>
+ </div>
+ </div>
+ </div>
+ <div class="navfooter">
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="stages.html" title=
+ "Этапы сборки системы LFS">Пред.</a>
+ <p>
+ Этапы сборки системы LFS
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="creatingfilesystem.html" title=
+ "Создание файловой системы на разделе">След.</a>
+ <p>
+ Создание файловой системы на разделе
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter02.html" title=
+ "Глава 2. Подготовка хост-системы">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ </body>
+</html>
diff --git a/lfs-12.1-sysv/chapter02/hostreqs.html b/lfs-12.1-sysv/chapter02/hostreqs.html
new file mode 100644
index 0000000..589da18
--- /dev/null
+++ b/lfs-12.1-sysv/chapter02/hostreqs.html
@@ -0,0 +1,392 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
+ <title>
+ 2.2. Требования к хост-системе
+ </title>
+ <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
+ <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" />
+ <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
+ "text/css" media="print" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ </head>
+ <body class="lfs" id="lfs-12.1">
+ <div class="navheader">
+ <h4>
+ Линукс с нуля - Версия 12.1
+ </h4>
+ <h3>
+ Глава 2. Подготовка хост-системы
+ </h3>
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="introduction.html" title=
+ "Введение">Пред.</a>
+ <p>
+ Введение
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="stages.html" title=
+ "Этапы сборки системы LFS">След.</a>
+ <p>
+ Этапы сборки системы LFS
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter02.html" title=
+ "Глава 2. Подготовка хост-системы">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ <h1 class="sect1">
+ <a id="ch-partitioning-hostreqs" name=
+ "ch-partitioning-hostreqs"></a>2.2. Требования к хост-системе
+ </h1>
+ <div class="sect1" lang="ru" xml:lang="ru">
+ <div class="sect2" lang="ru" xml:lang="ru">
+ <h2 class="sect2">
+ 2.2.1. Аппаратное обеспечение
+ </h2>
+ <p>
+ Редакторы LFS рекомендуют, чтобы процессор имел не менее четырех
+ ядер и не менее 8 ГБ памяти. Старые системы, не отвечающие этим
+ требованиям, будут по-прежнему работать, но время сборки пакетов
+ будет значительно больше, чем указано в документации.
+ </p>
+ </div>
+ <div class="sect2" lang="ru" xml:lang="ru">
+ <h2 class="sect2">
+ 2.2.2. Программное обеспечение
+ </h2>
+ <p>
+ Ваша хост-система должна иметь следующее программное обеспечение с
+ указанными минимальными версиями. Это не должно быть проблемой для
+ большинства современных дистрибутивов Linux. Также обратите
+ внимание на то, что многие дистрибутивы помещают заголовочные файлы
+ в отдельные пакеты, как правило в формате <code class=
+ "literal"><em class=
+ "replaceable"><code>&lt;package-name&gt;</code></em>-devel</code>
+ или <code class="literal"><em class=
+ "replaceable"><code>&lt;package-name&gt;</code></em>-dev</code>.
+ Обязательно установите эти пакеты, если ваш дистрибутив их
+ предоставляет.
+ </p>
+ <p>
+ Более ранние версии перечисленных ниже пакетов могут работать, но
+ это не проверялось.
+ </p>
+ <div class="itemizedlist">
+ <ul class="compact">
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Bash-3.2</strong></span>
+ (/bin/sh должен быть символической или жесткой ссылкой на
+ bash)
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Binutils-2.13.1</strong></span>
+ (Версия выше 2.42 не рекомендуется, так как она не
+ тестировалась)
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Bison-2.7</strong></span>
+ (/usr/bin/yacc должен быть ссылкой на bison или небольшой
+ скрипт, запускающий bison)
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Coreutils-8.1</strong></span>
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Diffutils-2.8.1</strong></span>
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Findutils-4.2.31</strong></span>
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Gawk-4.0.1</strong></span>
+ (/usr/bin/awk должен быть ссылкой на gawk)
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>GCC-5.2</strong></span>, включая
+ компилятор C++, <span class=
+ "command"><strong>g++</strong></span> (версии выше 13.2.0 не
+ рекомендуются, поскольку они не тестировались). Также должны
+ присутствовать стандартные библиотеки C и C++ (с
+ заголовочными файлами), чтобы компилятор C++ мог осуществлять
+ сборку программ.
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Grep-2.5.1a</strong></span>
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Gzip-1.3.12</strong></span>
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Linux
+ Kernel-4.19</strong></span>
+ </p>
+ <p>
+ Причиной, по которой указаны минимальные требования к версии
+ ядра, является то, что мы указываем эту версию при сборке
+ <span class="application">glibc</span> в <a class="xref"
+ href="../chapter05/chapter05.html" title=
+ "Глава 5. Сборка кросс-тулчейна">Глава&nbsp;5</a> и <a class=
+ "xref" href="../chapter08/chapter08.html" title=
+ "Глава 8. Установка базового системного программного обеспечения">
+ Глава&nbsp;8</a>. Так как более старые ядра не
+ поддерживаются, скомпилированный пакет <span class=
+ "application">glibc</span> немного меньше и быстрее. По
+ состоянию на февраль 2024 г. 4.19 является самой старой
+ версией ядра, поддерживаемой разработчиками ядра. Некоторые
+ версии ядра, более старые, чем 4.19, могут по-прежнему
+ поддерживаться сторонними командами, но они не считаются
+ официальными выпусками ядра; подробности читайте на странице
+ <a class="ulink" href=
+ "https://kernel.org/category/releases.html">https://kernel.org/category/releases.html</a>
+ </p>
+ <p>
+ Если версия ядра хоста более ранняя, чем 4.19, вам необходимо
+ обновить ядро на более современную версию. Есть два способа
+ сделать это. Во-первых, посмотрите, предоставляет ли ваш
+ дистрибутив Linux пакет ядра 4.19 или более позднюю версию.
+ Если это так, установите его. Если ваш дистрибутив не
+ предлагает приемлемый пакет ядра или вы предпочитаете не
+ устанавливать его, вы можете скомпилировать ядро
+ самостоятельно. Инструкции по компиляции ядра и настройке
+ загрузчика (при условии, что хост использует GRUB) находятся
+ в <a class="xref" href="../chapter10/chapter10.html" title=
+ "Глава 10. Делаем систему LFS загрузочной">Глава&nbsp;10</a>.
+ </p>
+ <p>
+ Для сборки LFS необходимо, чтобы ядро хоста поддерживало
+ псевдотерминал UNIX 98 (PTY). Обычно он включен на всех
+ настольных или серверных дистрибутивах, поставляющих Linux
+ 4.19 или более новое ядро. Если на хосте вы используете
+ самостоятельно собранное ядро, убедитесь, что для параметра
+ <code class="option">CONFIG_UNIX98_PTYS</code> установлено
+ значение <code class="literal">y</code> в конфигурационном
+ файле ядра.
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>M4-1.4.10</strong></span>
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Make-4.0</strong></span>
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Patch-2.5.4</strong></span>
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Perl-5.8.8</strong></span>
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Python-3.4</strong></span>
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Sed-4.1.5</strong></span>
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Tar-1.22</strong></span>
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Texinfo-5.0</strong></span>
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ <span class="strong"><strong>Xz-5.0.0</strong></span>
+ </p>
+ </li>
+ </ul>
+ </div>
+ <div class="admon important">
+ <img alt="[Важно]" src="../images/important.png" />
+ <h3>
+ Важно
+ </h3>
+ <p>
+ Обратите внимание, что упомянутые выше символические ссылки
+ необходимы для создания системы LFS с использованием инструкций,
+ содержащихся в этой книге. Симлинки, указывающие на другое
+ программное обеспечение (например, dash, mawk и т. д.), могут
+ работать, но не тестируются и не поддерживаются командой
+ разработчиков LFS, и могут потребовать либо отклонения от
+ инструкций, либо дополнительных исправлений для некоторых
+ пакетов.
+ </p>
+ </div>
+ <h2>
+ <a id="version-check" name="version-check"></a>
+ </h2>
+ <p>
+ Чтобы узнать, есть ли в вашей хост-системе все необходимые пакеты и
+ возможность компилировать программы, выполните следующий скрипт:
+ </p>
+ <pre class="userinput"><kbd class=
+ "command">cat &gt; version-check.sh &lt;&lt; "EOF"
+<code class="literal">#!/bin/bash
+# A script to list version numbers of critical development tools
+
+# If you have tools installed in other directories, adjust PATH here AND
+# in ~lfs/.bashrc (section 4.4) as well.
+
+LC_ALL=C
+PATH=/usr/bin:/bin
+
+bail() { echo "FATAL: $1"; exit 1; }
+grep --version &gt; /dev/null 2&gt; /dev/null || bail "grep does not work"
+sed '' /dev/null || bail "sed does not work"
+sort /dev/null || bail "sort does not work"
+
+ver_check()
+{
+ if ! type -p $2 &amp;&gt;/dev/null
+ then
+ echo "ERROR: Cannot find $2 ($1)"; return 1;
+ fi
+ v=$($2 --version 2&gt;&amp;1 | grep -E -o '[0-9]+\.[0-9\.]+[a-z]*' | head -n1)
+ if printf '%s\n' $3 $v | sort --version-sort --check &amp;&gt;/dev/null
+ then
+ printf "OK: %-9s %-6s &gt;= $3\n" "$1" "$v"; return 0;
+ else
+ printf "ERROR: %-9s is TOO OLD ($3 or later required)\n" "$1";
+ return 1;
+ fi
+}
+
+ver_kernel()
+{
+ kver=$(uname -r | grep -E -o '^[0-9\.]+')
+ if printf '%s\n' $1 $kver | sort --version-sort --check &amp;&gt;/dev/null
+ then
+ printf "OK: Linux Kernel $kver &gt;= $1\n"; return 0;
+ else
+ printf "ERROR: Linux Kernel ($kver) is TOO OLD ($1 or later required)\n" "$kver";
+ return 1;
+ fi
+}
+
+# Coreutils first because --version-sort needs Coreutils &gt;= 7.0
+ver_check Coreutils sort 8.1 || bail "Coreutils too old, stop"
+ver_check Bash bash 3.2
+ver_check Binutils ld 2.13.1
+ver_check Bison bison 2.7
+ver_check Diffutils diff 2.8.1
+ver_check Findutils find 4.2.31
+ver_check Gawk gawk 4.0.1
+ver_check GCC gcc 5.2
+ver_check "GCC (C++)" g++ 5.2
+ver_check Grep grep 2.5.1a
+ver_check Gzip gzip 1.3.12
+ver_check M4 m4 1.4.10
+ver_check Make make 4.0
+ver_check Patch patch 2.5.4
+ver_check Perl perl 5.8.8
+ver_check Python python3 3.4
+ver_check Sed sed 4.1.5
+ver_check Tar tar 1.22
+ver_check Texinfo texi2any 5.0
+ver_check Xz xz 5.0.0
+ver_kernel 4.19
+
+if mount | grep -q 'devpts on /dev/pts' &amp;&amp; [ -e /dev/ptmx ]
+then echo "OK: Linux Kernel supports UNIX 98 PTY";
+else echo "ERROR: Linux Kernel does NOT support UNIX 98 PTY"; fi
+
+alias_check() {
+ if $1 --version 2&gt;&amp;1 | grep -qi $2
+ then printf "OK: %-4s is $2\n" "$1";
+ else printf "ERROR: %-4s is NOT $2\n" "$1"; fi
+}
+echo "Aliases:"
+alias_check awk GNU
+alias_check yacc Bison
+alias_check sh Bash
+
+echo "Compiler check:"
+if printf "int main(){}" | g++ -x c++ -
+then echo "OK: g++ works";
+else echo "ERROR: g++ does NOT work"; fi
+rm -f a.out
+
+if [ "$(nproc)" = "" ]; then
+ echo "ERROR: nproc is not available or it produces empty output"
+else
+ echo "OK: nproc reports $(nproc) logical cores are available"
+fi</code>
+EOF
+
+bash version-check.sh</kbd></pre>
+ </div>
+ </div>
+ <div class="navfooter">
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="introduction.html" title=
+ "Введение">Пред.</a>
+ <p>
+ Введение
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="stages.html" title=
+ "Этапы сборки системы LFS">След.</a>
+ <p>
+ Этапы сборки системы LFS
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter02.html" title=
+ "Глава 2. Подготовка хост-системы">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ </body>
+</html>
diff --git a/lfs-12.1-sysv/chapter02/introduction.html b/lfs-12.1-sysv/chapter02/introduction.html
new file mode 100644
index 0000000..0183f5d
--- /dev/null
+++ b/lfs-12.1-sysv/chapter02/introduction.html
@@ -0,0 +1,87 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
+ <title>
+ 2.1. Введение
+ </title>
+ <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
+ <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" />
+ <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
+ "text/css" media="print" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ </head>
+ <body class="lfs" id="lfs-12.1">
+ <div class="navheader">
+ <h4>
+ Линукс с нуля - Версия 12.1
+ </h4>
+ <h3>
+ Глава 2. Подготовка хост-системы
+ </h3>
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="chapter02.html" title=
+ "Подготовка хост-системы">Пред.</a>
+ <p>
+ Подготовка хост-системы
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="hostreqs.html" title=
+ "Требования к хост-системе">След.</a>
+ <p>
+ Требования к хост-системе
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter02.html" title=
+ "Глава 2. Подготовка хост-системы">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ <h1 class="sect1">
+ <a id="ch-partitioning-introduction" name=
+ "ch-partitioning-introduction"></a>2.1. Введение
+ </h1>
+ <div class="sect1" lang="ru" xml:lang="ru">
+ <p>
+ В этой главе проверяются и при необходимости устанавливаются основные
+ инструменты, необходимые для построения LFS. Затем подготавливается
+ раздел, в котором будет размещаться система LFS. Мы создадим сам
+ раздел, создадим на нем файловую систему и смонтируем его.
+ </p>
+ </div>
+ <div class="navfooter">
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="chapter02.html" title=
+ "Подготовка хост-системы">Пред.</a>
+ <p>
+ Подготовка хост-системы
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="hostreqs.html" title=
+ "Требования к хост-системе">След.</a>
+ <p>
+ Требования к хост-системе
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter02.html" title=
+ "Глава 2. Подготовка хост-системы">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ </body>
+</html>
diff --git a/lfs-12.1-sysv/chapter02/mounting.html b/lfs-12.1-sysv/chapter02/mounting.html
new file mode 100644
index 0000000..d602dbd
--- /dev/null
+++ b/lfs-12.1-sysv/chapter02/mounting.html
@@ -0,0 +1,171 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
+ <title>
+ 2.7. Монтирование нового раздела
+ </title>
+ <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
+ <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" />
+ <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
+ "text/css" media="print" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ </head>
+ <body class="lfs" id="lfs-12.1">
+ <div class="navheader">
+ <h4>
+ Линукс с нуля - Версия 12.1
+ </h4>
+ <h3>
+ Глава 2. Подготовка хост-системы
+ </h3>
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="aboutlfs.html" title=
+ "Установка переменной $LFS">Пред.</a>
+ <p>
+ Установка переменной $LFS
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="../chapter03/chapter03.html" title=
+ "Пакеты и патчи">След.</a>
+ <p>
+ Пакеты и патчи
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter02.html" title=
+ "Глава 2. Подготовка хост-системы">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ <h1 class="sect1">
+ <a id="ch-partitioning-mounting" name=
+ "ch-partitioning-mounting"></a>2.7. Монтирование нового раздела
+ </h1>
+ <div class="sect1" lang="ru" xml:lang="ru">
+ <p>
+ Теперь, когда файловая система создана, раздел должен быть
+ смонтирован, чтобы хост-система могла получить доступ к нему. В книге
+ предполагается, что файловая система монтируется в каталог, указанный
+ в переменной <code class="envar">LFS</code>, описанной в предыдущем
+ разделе.
+ </p>
+ <p>
+ Строго говоря, нельзя <span class="quote">«<span class=
+ "quote">смонтировать раздел</span>»</span>. Монтируется <span class=
+ "emphasis"><em>файловая система</em></span> на этом разделе. Но так
+ как один раздел не может содержать несколько файловых систем, люди
+ часто говорят о разделе и связанной с ним файловой системе так, как
+ если бы они были одним и тем же.
+ </p>
+ <p>
+ Создайте точку монтирования и смонтируйте файловую систему LFS с
+ помощью этих команд:
+ </p>
+ <pre class="userinput"><kbd class="command">mkdir -pv $LFS
+mount -v -t ext4 /dev/<em class=
+"replaceable"><code>&lt;xxx&gt;</code></em> $LFS</kbd></pre>
+ <p>
+ Замените <em class="replaceable"><code>&lt;xxx&gt;</code></em> на имя
+ раздела LFS.
+ </p>
+ <p>
+ Если вы используете несколько разделов для LFS (например, один для
+ <code class="filename">/</code>, а другой для <code class=
+ "filename">/home</code>), смонтируйте их вот так:
+ </p>
+ <pre class="userinput"><kbd class="command">mkdir -pv $LFS
+mount -v -t ext4 /dev/<em class=
+"replaceable"><code>&lt;xxx&gt;</code></em> $LFS
+mkdir -v $LFS/home
+mount -v -t ext4 /dev/<em class=
+"replaceable"><code>&lt;yyy&gt;</code></em> $LFS/home</kbd></pre>
+ <p>
+ Замените <em class="replaceable"><code>&lt;xxx&gt;</code></em> и
+ <em class="replaceable"><code>&lt;yyy&gt;</code></em>
+ соответствующими именами разделов.
+ </p>
+ <p>
+ Убедитесь, что этот новый раздел не смонтирован со слишком строгими
+ разрешениями (такими как параметры <code class="option">nosuid</code>
+ или <code class="option">nodev</code>). Запустите команду
+ <span class="command"><strong>mount</strong></span> без каких-либо
+ параметров, чтобы увидеть, какие параметры установлены для
+ смонтированного раздела LFS. Если установлены <code class=
+ "option">nosuid</code> и/или <code class="option">nodev</code>,
+ раздел должен быть размонтирован и смонтирован повторно.
+ </p>
+ <div class="admon warning">
+ <img alt="[Предупреждение]" src="../images/warning.png" />
+ <h3>
+ Предупреждение
+ </h3>
+ <p>
+ Приведенные выше инструкции предполагают, что вы не будете
+ перезагружать компьютер в процессе сборки LFS. Если вы выключите
+ свою систему, вам придется либо перемонтировать раздел LFS каждый
+ раз, когда вы перезапускаете процесс сборки, либо изменить файл
+ <code class="filename">/etc/fstab</code> вашей хост-системы, чтобы
+ он автоматически монтировал его при загрузке. Например, вы можете
+ добавить эту строку в свой <code class=
+ "filename">/etc/fstab</code>:
+ </p>
+ <pre class="screen">/dev/<em class=
+ "replaceable"><code>&lt;xxx&gt;</code></em> /mnt/lfs ext4 defaults 1 1</pre>
+ <p>
+ Если вы используете дополнительные разделы, обязательно добавьте
+ их.
+ </p>
+ </div>
+ <p>
+ Если вы используете <code class="systemitem">раздел подкачки</code>,
+ убедитесь, что он включен с помощью команды <span class=
+ "command"><strong>swapon</strong></span>:
+ </p>
+ <pre class="userinput"><kbd class=
+ "command">/sbin/swapon -v /dev/<em class=
+ "replaceable"><code>&lt;zzz&gt;</code></em></kbd></pre>
+ <p>
+ Замените <em class="replaceable"><code>&lt;zzz&gt;</code></em> именем
+ <code class="systemitem">раздела подкачки</code>.
+ </p>
+ <p>
+ Теперь, когда новый раздел LFS готов к работе, пришло время загрузить
+ пакеты.
+ </p>
+ </div>
+ <div class="navfooter">
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="aboutlfs.html" title=
+ "Установка переменной $LFS">Пред.</a>
+ <p>
+ Установка переменной $LFS
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="../chapter03/chapter03.html" title=
+ "Пакеты и патчи">След.</a>
+ <p>
+ Пакеты и патчи
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter02.html" title=
+ "Глава 2. Подготовка хост-системы">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ </body>
+</html>
diff --git a/lfs-12.1-sysv/chapter02/stages.html b/lfs-12.1-sysv/chapter02/stages.html
new file mode 100644
index 0000000..aa6f7fe
--- /dev/null
+++ b/lfs-12.1-sysv/chapter02/stages.html
@@ -0,0 +1,195 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
+ <title>
+ 2.3. Этапы сборки системы LFS
+ </title>
+ <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
+ <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" />
+ <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
+ "text/css" media="print" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ </head>
+ <body class="lfs" id="lfs-12.1">
+ <div class="navheader">
+ <h4>
+ Линукс с нуля - Версия 12.1
+ </h4>
+ <h3>
+ Глава 2. Подготовка хост-системы
+ </h3>
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="hostreqs.html" title=
+ "Требования к хост-системе">Пред.</a>
+ <p>
+ Требования к хост-системе
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="creatingpartition.html" title=
+ "Создание нового раздела">След.</a>
+ <p>
+ Создание нового раздела
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter02.html" title=
+ "Глава 2. Подготовка хост-системы">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ <h1 class="sect1">
+ <a id="ch-partitioning-stages" name="ch-partitioning-stages"></a>2.3.
+ Этапы сборки системы LFS
+ </h1>
+ <div class="sect1" lang="ru" xml:lang="ru">
+ <p>
+ LFS разработан для сборки за один сеанс. То есть инструкция
+ предполагает, что система не будет выключаться в процессе. Это не
+ означает, что система должна быть собрана за один присест. Для
+ возобновления сборки в точке предыдущей остановки (после
+ перезагрузки/выключения), необходимо выполнить некоторые процедуры
+ повторно.
+ </p>
+ <div class="sect2" lang="ru" xml:lang="ru">
+ <h2 class="sect2">
+ 2.3.1. Главы&nbsp;1–4
+ </h2>
+ <p>
+ Эти главы выполняются на хост-системе. После перезагрузки обратите
+ внимание на следующее:
+ </p>
+ <div class="itemizedlist">
+ <ul>
+ <li class="listitem">
+ <p>
+ При выполнении операций, от имени пользователя <code class=
+ "systemitem">root</code> после Раздела 2.4, <span class=
+ "emphasis"><em>ДЛЯ ПОЛЬЗОВАТЕЛЯ</em></span> <code class=
+ "systemitem">root</code> должна быть установлена переменная
+ окружения LFS.
+ </p>
+ </li>
+ </ul>
+ </div>
+ </div>
+ <div class="sect2" lang="ru" xml:lang="ru">
+ <h2 class="sect2">
+ 2.3.2. Главы&nbsp;5–6
+ </h2>
+ <div class="itemizedlist">
+ <ul>
+ <li class="listitem">
+ <p>
+ Раздел /mnt/lfs должен быть смонтирован.
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ Эти две главы <span class="emphasis"><em>должны</em></span>
+ быть выполнены из-под пользователя <code class=
+ "systemitem">lfs</code>. Перед выполнением любой задачи в
+ этих главах необходимо выполнить команду <span class=
+ "command"><strong>su - lfs</strong></span>. В противном
+ случае вы рискуете установить пакеты на хост и сделать его
+ непригодным для использования.
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ Выполнение процедур из <a class="xref" href=
+ "../partintro/generalinstructions.html" title=
+ "Общие инструкции по компиляции">Общие инструкции по
+ компиляции</a> имеет решающее значение. Если есть какие-либо
+ сомнения по поводу установки пакета, убедитесь, что все ранее
+ распакованные tar-архивы удалены, затем повторно извлеките
+ файлы и выполните все инструкции, приведенные в этом разделе.
+ </p>
+ </li>
+ </ul>
+ </div>
+ </div>
+ <div class="sect2" lang="ru" xml:lang="ru">
+ <h2 class="sect2">
+ 2.3.3. Главы&nbsp;7–10
+ </h2>
+ <div class="itemizedlist">
+ <ul>
+ <li class="listitem">
+ <p>
+ Раздел /mnt/lfs должен быть смонтирован.
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ Некоторые операции, такие как <span class=
+ "quote">«<span class="quote">Смена владельца</span>»</span>
+ или <span class="quote">«<span class="quote">Вход в среду
+ Chroot</span>»</span>, должны быть выполнены от имени
+ пользователя <code class="systemitem">root</code> с
+ переменной окружения $LFS, установленной для пользователя
+ <code class="systemitem">root</code>.
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ При входе в chroot переменная среды LFS должна быть
+ установлена для пользователя <code class=
+ "systemitem">root</code>. Переменная LFS не используется
+ после входа в среду chroot.
+ </p>
+ </li>
+ <li class="listitem">
+ <p>
+ Виртуальные файловые системы должны быть смонтированы. Это
+ можно сделать до или после входа в chroot, переключившись на
+ виртуальный терминал хоста и от имени пользователя
+ <code class="systemitem">root</code> выполнив команды,
+ описанные в <a class="xref" href=
+ "../chapter07/kernfs.html#ch-tools-bindmount" title=
+ "7.3.1. Монтирование и заполнение /dev">Раздел&nbsp;7.3.1,
+ «Монтирование и заполнение /dev»</a> и <a class="xref" href=
+ "../chapter07/kernfs.html#ch-tools-kernfsmount" title=
+ "7.3.2. Монтирование виртуальных файловых систем ядра">Раздел&nbsp;7.3.2,
+ «Монтирование виртуальных файловых систем ядра»</a>.
+ </p>
+ </li>
+ </ul>
+ </div>
+ </div>
+ </div>
+ <div class="navfooter">
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="hostreqs.html" title=
+ "Требования к хост-системе">Пред.</a>
+ <p>
+ Требования к хост-системе
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="creatingpartition.html" title=
+ "Создание нового раздела">След.</a>
+ <p>
+ Создание нового раздела
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter02.html" title=
+ "Глава 2. Подготовка хост-системы">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.1">Начало</a>
+ </li>
+ </ul>
+ </div>
+ </body>
+</html>