summaryrefslogtreecommitdiff
path: root/lfs-12.2-sysv/chapter07/chroot.html
diff options
context:
space:
mode:
authorSn4il <sn4il@thedroth.rocks>2024-09-02 15:54:35 +0300
committerSn4il <sn4il@thedroth.rocks>2024-09-02 15:54:35 +0300
commit2203e654b389586650d553251b04544a34f189bf (patch)
tree0125b69fc70a2506c53158ba2020993a5b8985b7 /lfs-12.2-sysv/chapter07/chroot.html
parent200d528e55ca954d37769f4d143f10c9519b00e7 (diff)
downloadsn4il-site-2203e654b389586650d553251b04544a34f189bf.tar.gz
sn4il-site-2203e654b389586650d553251b04544a34f189bf.zip
LFS 12.2
Diffstat (limited to 'lfs-12.2-sysv/chapter07/chroot.html')
-rw-r--r--lfs-12.2-sysv/chapter07/chroot.html170
1 files changed, 170 insertions, 0 deletions
diff --git a/lfs-12.2-sysv/chapter07/chroot.html b/lfs-12.2-sysv/chapter07/chroot.html
new file mode 100644
index 0000000..e02272c
--- /dev/null
+++ b/lfs-12.2-sysv/chapter07/chroot.html
@@ -0,0 +1,170 @@
+<!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>
+ 7.4. Вход в окружение Chroot
+ </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.2">
+ <div class="navheader">
+ <h4>
+ Линукс с нуля - Версия 12.2
+ </h4>
+ <h3>
+ Глава 7. Вход в окружение Chroot и создание дополнительных временных
+ инструментов
+ </h3>
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="kernfs.html" title=
+ "Подготовка виртуальных файловых систем ядра">Пред.</a>
+ <p>
+ Подготовка виртуальных файловых систем ядра
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="creatingdirs.html" title=
+ "Создание каталогов">След.</a>
+ <p>
+ Создание каталогов
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter07.html" title=
+ "Глава 7. Вход в окружение Chroot и создание дополнительных временных инструментов">
+ Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.2">Начало</a>
+ </li>
+ </ul>
+ </div>
+ <h1 class="sect1">
+ <a id="ch-tools-chroot" name="ch-tools-chroot"></a>7.4. Вход в
+ окружение Chroot
+ </h1>
+ <div class="sect1" lang="ru" xml:lang="ru">
+ <p>
+ Теперь, когда все пакеты, необходимые для сборки остальных
+ инструментов установлены в системе, пришло время войти в окружение
+ chroot и завершить установку временных инструментов. Эта среда также
+ будет использоваться для установки конечной системы. От имени
+ пользователя <code class="systemitem">root</code> выполните следующую
+ команду для входа в chroot, в которой на данный момент нет ничего,
+ кроме временных инструментов:
+ </p>
+ <pre class="userinput"><kbd class=
+ "command">chroot "$LFS" /usr/bin/env -i \
+ HOME=/root \
+ TERM="$TERM" \
+ PS1='(lfs chroot) \u:\w\$ ' \
+ PATH=/usr/bin:/usr/sbin \
+ MAKEFLAGS="-j<em class="replaceable"><code>$(nproc)</code></em>" \
+ TESTSUITEFLAGS="-j<em class="replaceable"><code>$(nproc)</code></em>" \
+ /bin/bash --login</kbd></pre>
+ <p>
+ Если вы не хотите использовать все доступные логические ядра,
+ замените параметр <em class="replaceable"><code>$(nproc)</code></em>
+ количеством логических ядер, которые вы хотите использовать для
+ сборки пакетов в этой и последующих главах. На наборы тестов
+ некоторых пакетов (в частности Autoconf, Libtool и Tar) в <a class=
+ "xref" href="../chapter08/chapter08.html" title=
+ "Глава 8. Установка базового системного программного обеспечения">Глава&nbsp;8</a>
+ не влияет установка переменной <code class="envar">MAKEFLAGS</code>,
+ вместо этого они используют переменную среды <code class=
+ "envar">TESTSUITEFLAGS</code>. Мы также установили её здесь для
+ запуска тестов с поддержкой нескольких ядер.
+ </p>
+ <p>
+ Параметр <em class="parameter"><code>-i</code></em> команды
+ <span class="command"><strong>env</strong></span>, очистит все
+ переменные в среде chroot. После этого переменные <code class=
+ "envar">HOME</code>, <code class="envar">TERM</code>, <code class=
+ "envar">PS1</code> и <code class="envar">PATH</code> будут
+ установлены заново. Конструкция <em class=
+ "parameter"><code>TERM=$TERM</code></em> установит переменную TERM
+ внутри chroot в то же значение, что и вне chroot. Эта переменная
+ необходима для корректной работы таких программ как <span class=
+ "command"><strong>vim</strong></span> и <span class=
+ "command"><strong>less</strong></span>. Если понадобятся другие
+ переменные окружения, такие как <code class="envar">CFLAGS</code> или
+ <code class="envar">CXXFLAGS</code>, то это подходящее место для их
+ установки.
+ </p>
+ <p>
+ С этого момента больше нет необходимости использовать переменную
+ <code class="envar">LFS</code>, поскольку вся работа будет ограничена
+ файловой системой LFS; команда <span class=
+ "command"><strong>chroot</strong></span> запускает оболочку Bash с
+ корневым каталогом (<code class="filename">/</code>), установленным в
+ <code class="filename">$LFS</code>.
+ </p>
+ <p>
+ Обратите внимание, что каталог <code class=
+ "filename">/tools/bin</code> не указан в переменной окружения
+ <code class="envar">PATH</code>. Это означает, что кросс-тулчейн
+ больше не будет использоваться.
+ </p>
+ <p>
+ Также обратите внимание, что в командной строке <span class=
+ "command"><strong>bash</strong></span> будет указано <code class=
+ "computeroutput">I have no name!</code>. Это нормально, поскольку
+ файл <code class="filename">/etc/passwd</code> еще не создан.
+ </p>
+ <div class="admon note">
+ <img alt="[Примечание]" src="../images/note.png" />
+ <h3>
+ Примечание
+ </h3>
+ <p>
+ Важно, чтобы все команды в оставшейся части этой главы и следующих
+ главах выполнялись из среды chroot. Если вы покидаете эту среду по
+ какой-либо причине (например, при перезагрузке), убедитесь, что
+ файловые системы виртуального ядра смонтированы, как описано в
+ <a class="xref" href="kernfs.html#ch-tools-bindmount" title=
+ "7.3.1. Монтирование и заполнение /dev">Раздел&nbsp;7.3.1,
+ «Монтирование и заполнение /dev»</a> и <a class="xref" href=
+ "kernfs.html#ch-tools-kernfsmount" title=
+ "7.3.2. Монтирование виртуальных файловых систем ядра">Раздел&nbsp;7.3.2,
+ «Монтирование виртуальных файловых систем ядра»</a>, а затем
+ войдите в среду chroot для продолжения установки.
+ </p>
+ </div>
+ </div>
+ <div class="navfooter">
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="kernfs.html" title=
+ "Подготовка виртуальных файловых систем ядра">Пред.</a>
+ <p>
+ Подготовка виртуальных файловых систем ядра
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="creatingdirs.html" title=
+ "Создание каталогов">След.</a>
+ <p>
+ Создание каталогов
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter07.html" title=
+ "Глава 7. Вход в окружение Chroot и создание дополнительных временных инструментов">
+ Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.2">Начало</a>
+ </li>
+ </ul>
+ </div>
+ </body>
+</html>