diff options
author | Sn4il <sn4il@thedroth.rocks> | 2024-09-02 15:54:35 +0300 |
---|---|---|
committer | Sn4il <sn4il@thedroth.rocks> | 2024-09-02 15:54:35 +0300 |
commit | 2203e654b389586650d553251b04544a34f189bf (patch) | |
tree | 0125b69fc70a2506c53158ba2020993a5b8985b7 /lfs-12.1-sysv/chapter07 | |
parent | 200d528e55ca954d37769f4d143f10c9519b00e7 (diff) | |
download | sn4il-site-2203e654b389586650d553251b04544a34f189bf.tar.gz sn4il-site-2203e654b389586650d553251b04544a34f189bf.zip |
LFS 12.2
Diffstat (limited to 'lfs-12.1-sysv/chapter07')
-rw-r--r-- | lfs-12.1-sysv/chapter07/Python.html | 186 | ||||
-rw-r--r-- | lfs-12.1-sysv/chapter07/bison.html | 142 | ||||
-rw-r--r-- | lfs-12.1-sysv/chapter07/changingowner.html | 119 | ||||
-rw-r--r-- | lfs-12.1-sysv/chapter07/chapter07.html | 134 | ||||
-rw-r--r-- | lfs-12.1-sysv/chapter07/chroot.html | 170 | ||||
-rw-r--r-- | lfs-12.1-sysv/chapter07/cleanup.html | 285 | ||||
-rw-r--r-- | lfs-12.1-sysv/chapter07/createfiles.html | 261 | ||||
-rw-r--r-- | lfs-12.1-sysv/chapter07/creatingdirs.html | 172 | ||||
-rw-r--r-- | lfs-12.1-sysv/chapter07/gettext.html | 153 | ||||
-rw-r--r-- | lfs-12.1-sysv/chapter07/introduction.html | 115 | ||||
-rw-r--r-- | lfs-12.1-sysv/chapter07/kernfs.html | 207 | ||||
-rw-r--r-- | lfs-12.1-sysv/chapter07/perl.html | 186 | ||||
-rw-r--r-- | lfs-12.1-sysv/chapter07/texinfo.html | 125 | ||||
-rw-r--r-- | lfs-12.1-sysv/chapter07/util-linux.html | 213 |
14 files changed, 0 insertions, 2468 deletions
diff --git a/lfs-12.1-sysv/chapter07/Python.html b/lfs-12.1-sysv/chapter07/Python.html deleted file mode 100644 index d6e4439..0000000 --- a/lfs-12.1-sysv/chapter07/Python.html +++ /dev/null @@ -1,186 +0,0 @@ -<!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.10. Python-3.12.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> - Глава 7. Вход в окружение Chroot и создание дополнительных временных - инструментов - </h3> - <ul> - <li class="prev"> - <a accesskey="p" href="perl.html" title="Perl-5.38.2">Пред.</a> - <p> - Perl-5.38.2 - </p> - </li> - <li class="next"> - <a accesskey="n" href="texinfo.html" title="Texinfo-7.1">След.</a> - <p> - Texinfo-7.1 - </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.1">Начало</a> - </li> - </ul> - </div> - <h1 class="sect1"> - <a id="ch-tools-Python" name="ch-tools-Python"></a>7.10. Python-3.12.2 - </h1> - <div class="wrap" lang="ru" xml:lang="ru"> - <div class="package" lang="ru" xml:lang="ru"> - <p> - Пакет Python 3 содержит среду разработчика Python. Его можно - использовать для объектно-ориентированного программирования, - написания скриптов, прототипирования больших программ и разработка - целых приложений. Python — это интерпретируемый язык - программирования. - </p> - <div class="segmentedlist"> - <div class="seglistitem"> - <div class="seg"> - <strong class="segtitle">Приблизительное время сборки:</strong> - <span class="segbody">0.5 SBU</span> - </div> - <div class="seg"> - <strong class="segtitle">Требуемое дисковое - пространство:</strong> <span class="segbody">598 MB</span> - </div> - </div> - </div> - </div> - <div class="installation" lang="ru" xml:lang="ru"> - <h2 class="sect2"> - 7.10.1. Установка пакета Python - </h2> - <div class="admon note"> - <img alt="[Примечание]" src="../images/note.png" /> - <h3> - Примечание - </h3> - <p> - Существует два пакета, имена которых начинаются с префикса - <span class="quote">«<span class="quote">python</span>»</span>. - Сейчас необходимо распаковать файл <code class= - "filename">Python-3.12.2.tar.xz</code> (обратите внимание на - заглавную первую букву). - </p> - </div> - <p> - Подготовка Python к компиляции: - </p> - <pre class="userinput"><kbd class= - "command">./configure --prefix=/usr \ - --enable-shared \ - --without-ensurepip</kbd></pre> - <div class="variablelist"> - <p class="title"> - <strong>Значение параметров настройки:</strong> - </p> - <dl class="variablelist"> - <dt> - <span class="term"><em class= - "parameter"><code>--enable-shared</code></em></span> - </dt> - <dd> - <p> - Этот параметр отключает установку статичных библиотек. - </p> - </dd> - <dt> - <span class="term"><em class= - "parameter"><code>--without-ensurepip</code></em></span> - </dt> - <dd> - <p> - Этот параметр отключает установщик пакетов Python, который на - данном этапе не нужен. - </p> - </dd> - </dl> - </div> - <p> - Скомпилируйте пакет: - </p> - <pre class="userinput"><kbd class="command">make</kbd></pre> - <div class="admon note"> - <img alt="[Примечание]" src="../images/note.png" /> - <h3> - Примечание - </h3> - <p> - Некоторые модули Python 3 не могут быть собраны сейчас, потому - что зависимости еще не установлены. Для модуля <code class= - "filename">ssl</code> выводится сообщение <code class= - "computeroutput">Python требует OpenSSL 1.1.1 или новее</code>. - Сообщение следует проигнорировать. Просто убедитесь, что команда - <span class="command"><strong>make</strong></span> верхнего - уровня не завершилась ошибкой. Дополнительные модули сейчас не - нужны, и они будут собраны в <a class="xref" href= - "../chapter08/chapter08.html" title= - "Глава 8. Установка базового системного программного обеспечения"> - Глава 8</a>. - </p> - </div> - <p> - Установите пакет: - </p> - <pre class="userinput"><kbd class="command">make install</kbd></pre> - </div> - <div class="content" lang="ru" xml:lang="ru"> - <p> - Подробная информация об этом пакете находится в <a class="xref" - href="../chapter08/Python.html#contents-python" title= - "8.51.2. Содержимое пакета Python 3">Раздел 8.51.2, - «Содержимое пакета Python 3.»</a> - </p> - </div> - </div> - <div class="navfooter"> - <ul> - <li class="prev"> - <a accesskey="p" href="perl.html" title="Perl-5.38.2">Пред.</a> - <p> - Perl-5.38.2 - </p> - </li> - <li class="next"> - <a accesskey="n" href="texinfo.html" title="Texinfo-7.1">След.</a> - <p> - Texinfo-7.1 - </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.1">Начало</a> - </li> - </ul> - </div> - </body> -</html> diff --git a/lfs-12.1-sysv/chapter07/bison.html b/lfs-12.1-sysv/chapter07/bison.html deleted file mode 100644 index aff296a..0000000 --- a/lfs-12.1-sysv/chapter07/bison.html +++ /dev/null @@ -1,142 +0,0 @@ -<!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.8. Bison-3.8.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> - Глава 7. Вход в окружение Chroot и создание дополнительных временных - инструментов - </h3> - <ul> - <li class="prev"> - <a accesskey="p" href="gettext.html" title= - "Gettext-0.22.4">Пред.</a> - <p> - Gettext-0.22.4 - </p> - </li> - <li class="next"> - <a accesskey="n" href="perl.html" title="Perl-5.38.2">След.</a> - <p> - Perl-5.38.2 - </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.1">Начало</a> - </li> - </ul> - </div> - <h1 class="sect1"> - <a id="ch-tools-bison" name="ch-tools-bison"></a>7.8. Bison-3.8.2 - </h1> - <div class="wrap" lang="ru" xml:lang="ru"> - <div class="package" lang="ru" xml:lang="ru"> - <p> - Пакет Bison содержит генератор синтаксического анализа. - </p> - <div class="segmentedlist"> - <div class="seglistitem"> - <div class="seg"> - <strong class="segtitle">Приблизительное время сборки:</strong> - <span class="segbody">0.2 SBU</span> - </div> - <div class="seg"> - <strong class="segtitle">Требуемое дисковое - пространство:</strong> <span class="segbody">57 MB</span> - </div> - </div> - </div> - </div> - <div class="installation" lang="ru" xml:lang="ru"> - <h2 class="sect2"> - 7.8.1. Установка пакета Bison - </h2> - <p> - Подготовьте Bison к компиляции: - </p> - <pre class="userinput"><kbd class= - "command">./configure --prefix=/usr \ - --docdir=/usr/share/doc/bison-3.8.2</kbd></pre> - <div class="variablelist"> - <p class="title"> - <strong>Значение нового параметра конфигурации:</strong> - </p> - <dl class="variablelist"> - <dt> - <span class="term"><em class= - "parameter"><code>--docdir=/usr/share/doc/bison-3.8.2</code></em></span> - </dt> - <dd> - <p> - Этот параметр указывает системе сборки установить - документацию к bison в каталог с версией пакета. - </p> - </dd> - </dl> - </div> - <p> - Скомпилируйте пакет: - </p> - <pre class="userinput"><kbd class="command">make</kbd></pre> - <p> - Установите пакет: - </p> - <pre class="userinput"><kbd class="command">make install</kbd></pre> - </div> - <div class="content" lang="ru" xml:lang="ru"> - <p> - Подробная информация об этом пакете находится в <a class="xref" - href="../chapter08/bison.html#contents-bison" title= - "8.33.2. Содержимое пакета Bison">Раздел 8.33.2, «Содержимое - пакета Bison.»</a> - </p> - </div> - </div> - <div class="navfooter"> - <ul> - <li class="prev"> - <a accesskey="p" href="gettext.html" title= - "Gettext-0.22.4">Пред.</a> - <p> - Gettext-0.22.4 - </p> - </li> - <li class="next"> - <a accesskey="n" href="perl.html" title="Perl-5.38.2">След.</a> - <p> - Perl-5.38.2 - </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.1">Начало</a> - </li> - </ul> - </div> - </body> -</html> diff --git a/lfs-12.1-sysv/chapter07/changingowner.html b/lfs-12.1-sysv/chapter07/changingowner.html deleted file mode 100644 index e21a812..0000000 --- a/lfs-12.1-sysv/chapter07/changingowner.html +++ /dev/null @@ -1,119 +0,0 @@ -<!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.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> - Глава 7. Вход в окружение Chroot и создание дополнительных временных - инструментов - </h3> - <ul> - <li class="prev"> - <a accesskey="p" href="introduction.html" title= - "Введение">Пред.</a> - <p> - Введение - </p> - </li> - <li class="next"> - <a accesskey="n" href="kernfs.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.1">Начало</a> - </li> - </ul> - </div> - <h1 class="sect1"> - <a id="ch-tools-changingowner" name="ch-tools-changingowner"></a>7.2. - Смена владельца - </h1> - <div class="sect1" lang="ru" xml:lang="ru"> - <div class="admon note"> - <img alt="[Примечание]" src="../images/note.png" /> - <h3> - Примечание - </h3> - <p> - Команды, приведенные в оставшейся части книги, должны выполняться - от имени пользователя <code class="systemitem">root</code>, а не - <code class="systemitem">lfs</code>. Дважды проверьте, что - переменная <code class="envar">$LFS</code> установлена в переменных - окружения пользователя <code class="systemitem">root</code>. - </p> - </div> - <p> - В настоящее время вся иерархия каталогов в <code class= - "filename">$LFS</code> принадлежит пользователю <code class= - "systemitem">lfs</code>, существующему только на хост-системе. Если - права на файлы и каталоги внутри <code class="filename">$LFS</code> - оставить как есть, то они будут принадлежать ID пользователя без - существующей учетной записи. Это опасно, так как созданная позже - учетная запись, может получить такой же ID пользователя и стать - владельцем всех файлов в <code class="filename">$LFS</code>, тем - самым делая эти файлы уязвимыми для возможных злонамеренных - манипуляций. - </p> - <p> - Для решения проблемы измените владельца каталогов <code class= - "filename">$LFS/*</code> на пользователя <code class= - "systemitem">root</code>, выполнив следующую команду: - </p> - <pre class="userinput"><kbd class= - "command">chown -R root:root $LFS/{usr,lib,var,etc,bin,sbin,tools} -case $(uname -m) in - x86_64) chown -R root:root $LFS/lib64 ;; -esac</kbd></pre> - </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="kernfs.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.1">Начало</a> - </li> - </ul> - </div> - </body> -</html> diff --git a/lfs-12.1-sysv/chapter07/chapter07.html b/lfs-12.1-sysv/chapter07/chapter07.html deleted file mode 100644 index ebcf204..0000000 --- a/lfs-12.1-sysv/chapter07/chapter07.html +++ /dev/null @@ -1,134 +0,0 @@ -<!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. Вход в окружение 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.1"> - <div class="navheader"> - <h4> - Линукс с нуля - Версия 12.1 - </h4> - <h3> - Часть III. Сборка кросс-компилятора и набора временных - инструментов - </h3> - <ul> - <li class="prev"> - <a accesskey="p" href="../chapter06/gcc-pass2.html" title= - "GCC-13.2.0 - Проход 2">Пред.</a> - <p> - GCC-13.2.0 - Проход 2 - </p> - </li> - <li class="next"> - <a accesskey="n" href="introduction.html" title= - "Введение">След.</a> - <p> - Введение - </p> - </li> - <li class="up"> - <a accesskey="u" href="../part3.html" title= - "Часть III. Сборка кросс-компилятора и набора временных инструментов"> - Наверх</a> - </li> - <li class="home"> - <a accesskey="h" href="../index.html" title= - "Линукс с нуля - Версия 12.1">Начало</a> - </li> - </ul> - </div> - <h1 class="chapter"> - <a id="chapter-chroot-temporary-tools" name= - "chapter-chroot-temporary-tools"></a>7. Вход в окружение Chroot и - создание дополнительных временных инструментов - </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="changingowner.html">Смена владельца</a> - </li> - <li class="sect1"> - <a href="kernfs.html">Подготовка виртуальных файловых систем - ядра</a> - </li> - <li class="sect1"> - <a href="chroot.html">Вход в окружение Chroot</a> - </li> - <li class="sect1"> - <a href="creatingdirs.html">Создание каталогов</a> - </li> - <li class="sect1"> - <a href="createfiles.html">Создание основных файлов и - символических ссылок</a> - </li> - <li class="sect1"> - <a href="gettext.html">Gettext-0.22.4</a> - </li> - <li class="sect1"> - <a href="bison.html">Bison-3.8.2</a> - </li> - <li class="sect1"> - <a href="perl.html">Perl-5.38.2</a> - </li> - <li class="sect1"> - <a href="Python.html">Python-3.12.2</a> - </li> - <li class="sect1"> - <a href="texinfo.html">Texinfo-7.1</a> - </li> - <li class="sect1"> - <a href="util-linux.html">Util-linux-2.39.3</a> - </li> - <li class="sect1"> - <a href="cleanup.html">Очистка и сохранение временной системы</a> - </li> - </ul> - </div> - </div> - <div class="navfooter"> - <ul> - <li class="prev"> - <a accesskey="p" href="../chapter06/gcc-pass2.html" title= - "GCC-13.2.0 - Проход 2">Пред.</a> - <p> - GCC-13.2.0 - Проход 2 - </p> - </li> - <li class="next"> - <a accesskey="n" href="introduction.html" title= - "Введение">След.</a> - <p> - Введение - </p> - </li> - <li class="up"> - <a accesskey="u" href="../part3.html" title= - "Часть III. Сборка кросс-компилятора и набора временных инструментов"> - Наверх</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/chapter07/chroot.html b/lfs-12.1-sysv/chapter07/chroot.html deleted file mode 100644 index 1e05bb7..0000000 --- a/lfs-12.1-sysv/chapter07/chroot.html +++ /dev/null @@ -1,170 +0,0 @@ -<!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.1"> - <div class="navheader"> - <h4> - Линукс с нуля - Версия 12.1 - </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.1">Начало</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. Установка базового системного программного обеспечения">Глава 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">Раздел 7.3.1, - «Монтирование и заполнение /dev»</a> и <a class="xref" href= - "kernfs.html#ch-tools-kernfsmount" title= - "7.3.2. Монтирование виртуальных файловых систем ядра">Раздел 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.1">Начало</a> - </li> - </ul> - </div> - </body> -</html> diff --git a/lfs-12.1-sysv/chapter07/cleanup.html b/lfs-12.1-sysv/chapter07/cleanup.html deleted file mode 100644 index 7fc935f..0000000 --- a/lfs-12.1-sysv/chapter07/cleanup.html +++ /dev/null @@ -1,285 +0,0 @@ -<!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.13. Очистка и сохранение временной системы - </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> - Глава 7. Вход в окружение Chroot и создание дополнительных временных - инструментов - </h3> - <ul> - <li class="prev"> - <a accesskey="p" href="util-linux.html" title= - "Util-linux-2.39.3">Пред.</a> - <p> - Util-linux-2.39.3 - </p> - </li> - <li class="next"> - <a accesskey="n" href="../part4.html" title= - "Сборка системы LFS">След.</a> - <p> - Сборка системы LFS - </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.1">Начало</a> - </li> - </ul> - </div> - <h1 class="sect1"> - <a id="ch-tools-cleanup" name="ch-tools-cleanup"></a>7.13. Очистка и - сохранение временной системы - </h1> - <div class="sect1" lang="ru" xml:lang="ru"> - <div class="sect2" lang="ru" xml:lang="ru"> - <h2 class="sect2"> - 7.13.1. Очистка - </h2> - <p> - Во-первых, удалите установленную документацию, чтобы предотвратить - ее попадание в конечную систему и сэкономить около 35 МБ места: - </p> - <pre class="userinput"><kbd class= - "command">rm -rf /usr/share/{info,man,doc}/*</kbd></pre> - <p> - Во-вторых, в современных системах Linux файлы .la библиотеки - libtool полезны только для libltdl. Никакие библиотеки в LFS не - загружаются с помощью libltdl. Известно, что некоторые файлы .la - могут привести к сбою во время сборки пакетов BLFS. Удалите эти - файлы сейчас: - </p> - <pre class="userinput"><kbd class= - "command">find /usr/{lib,libexec} -name \*.la -delete</kbd></pre> - <p> - Сейчас размер системы составляет около 3 ГБ, однако каталог /tools - больше не понадобится. Удалите его, чтобы освободить около 1 ГБ - дискового пространства: - </p> - <pre class="userinput"><kbd class="command">rm -rf /tools</kbd></pre> - </div> - <div class="sect2" lang="ru" xml:lang="ru"> - <h2 class="sect2"> - 7.13.2. Резервное копирование - </h2> - <p> - На данный момент основные программы и библиотеки собраны, и ваша - система LFS находится в хорошем состоянии. Можно создать резервную - копию вашей системы для последующего повторного использования. В - случае фатальных сбоев в следующих главах часто оказывается, что - удалить все и начать заново (более осторожно) — лучший вариант - восстановления. К сожалению, все временные файлы также будут - удалены. Чтобы не тратить лишнее время на повторную сборку того, - что было успешно собрано, полезно создать резервную копию текущей - системы LFS. - </p> - <div class="admon note"> - <img alt="[Примечание]" src="../images/note.png" /> - <h3> - Примечание - </h3> - <p> - Все остальные шаги в этом разделе являются необязательными. Тем - не менее, как только вы начнете устанавливать пакеты в <a class= - "xref" href="../chapter08/chapter08.html" title= - "Глава 8. Установка базового системного программного обеспечения"> - Глава 8</a>, временные файлы будут перезаписаны. Поэтому - рекомендуется создание резервной копии текущей системы, как - описано ниже. - </p> - </div> - <p> - Следующие шаги выполняются вне среды chroot. Это означает, что - прежде чем продолжить вы должны покинуть среду chroot. Причиной - этого является то, что необходимо получить доступ к расположению - файловой системы за пределами среды chroot для хранения/чтения - архива резервных копий, который не должен размещаться в иерархии - <code class="filename">$LFS</code>. - </p> - <p> - Если вы решили сделать резервную копию, покиньте среду chroot: - </p> - <pre class="userinput"><kbd class="command">exit</kbd></pre> - <div class="admon important"> - <img alt="[Важно]" src="../images/important.png" /> - <h3> - Важно - </h3> - <p> - Все следующие инструкции выполняются пользователем <code class= - "systemitem">root</code> в вашей хост-системе. Будьте особенно - внимательны к командам, которые вы собираетесь запускать, - поскольку ошибки, допущенные здесь, могут изменить вашу - хост-систему. Имейте в виду, что переменная окружения - <code class="envar">LFS</code> по умолчанию установлена для - пользователя <code class="systemitem">lfs</code>, но может не - быть установлена для <code class="systemitem">root</code>. - </p> - <p> - Всякий раз, когда команды должны выполняться от <code class= - "systemitem">root</code>, убедитесь, что вы установили переменную - <code class="envar">LFS</code>. - </p> - <p> - Это обсуждалось в <a class="xref" href= - "../chapter02/aboutlfs.html" title= - "2.6. Установка переменной $LFS">Раздел 2.6, «Установка - переменной $LFS»</a>. - </p> - </div> - <p> - Перед созданием резервной копии размонтируйте виртуальные файловые - системы: - </p> - <pre class="userinput"><kbd class= - "command">mountpoint -q $LFS/dev/shm && umount $LFS/dev/shm -umount $LFS/dev/pts -umount $LFS/{sys,proc,run,dev}</kbd></pre> - <p> - Убедитесь, что у вас есть как минимум 1 ГБ свободного места на - диске (исходные tar-архивы будут включены в архив резервных копий) - в файловой системе, содержащей каталог, в котором вы создаете архив - резервных копий. - </p> - <p> - Обратите внимание, что в приведенных ниже инструкциях указан - домашний каталог пользователя <code class="systemitem">root</code> - хост-системы, который обычно находится в корневой файловой системе. - Замените <code class="envar">$HOME</code> каталогом на ваш выбор, - если вы не хотите, чтобы резервная копия хранилась в домашнем - каталоге пользователя <code class="systemitem">root</code>. - </p> - <p> - Создайте архив резервной копии, выполнив следующую команду: - </p> - <div class="admon note"> - <img alt="[Примечание]" src="../images/note.png" /> - <h3> - Примечание - </h3> - <p> - Поскольку архив резервной копии сжимается, процесс занимает - довольно много времени (более 10 минут) даже на достаточно - быстрой системе. - </p> - </div> - <pre class="userinput"><kbd class="command">cd $LFS -tar -cJpf $HOME/lfs-temp-tools-12.1.tar.xz .</kbd></pre> - <div class="admon note"> - <img alt="[Примечание]" src="../images/note.png" /> - <h3> - Примечание - </h3> - <p> - Если вы переходите к главе 8, не забудьте повторно войти в среду - chroot, как описано в разделе <span class="quote">«<span class= - "quote">Важно</span>»</span> ниже. - </p> - </div> - </div> - <div class="sect2" lang="ru" xml:lang="ru"> - <h2 class="sect2"> - 7.13.3. Восстановление - </h2> - <p> - В случае, если были допущены какие-либо ошибки и вам нужно начать - все сначала, вы можете использовать эту резервную копию для - восстановления системы и сэкономить время на восстановление. - Поскольку исходники находятся в папке <code class= - "filename">$LFS</code>, они также включены в архив резервной копии, - поэтому их не нужно загружать повторно. Убедившись, что переменная - <code class="envar">$LFS</code> настроена правильно, вы можете - восстановить резервную копию, выполнив следующие команды: - </p> - <div class="admon warning"> - <img alt="[Предупреждение]" src="../images/warning.png" /> - <h3> - Предупреждение - </h3> - <p> - Следующие команды чрезвычайно опасны. Если вы запустите команду - <span class="command"><strong>rm -rf ./*</strong></span> от имени - пользователя <code class="systemitem">root</code> и не перейдете - в каталог $LFS или переменная окружения <code class= - "envar">LFS</code> не будет установлена для пользователя - <code class="systemitem">root</code>, это уничтожит всю вашу - хост-систему. ВЫ ПРЕДУПРЕЖДЕНЫ. - </p> - </div> - <pre class="screen"><code class="computeroutput">cd $LFS -rm -rf ./* -tar -xpf $HOME/lfs-temp-tools-12.1.tar.xz</code></pre> - <p> - Еще раз проверьте, правильно ли настроено окружение, и продолжайте - сборку остальной части системы. - </p> - <div class="admon important"> - <img alt="[Важно]" src="../images/important.png" /> - <h3> - Важно - </h3> - <p> - Если вы покинули среду chroot, чтобы создать резервную копию или - перезапустить сборку с помощью восстановления, не забудьте - проверить, что виртуальные файловые системы все еще смонтированы - (<span class="command"><strong>findmnt | grep - $LFS</strong></span>). Если они не смонтированы, перемонтируйте - их сейчас, как описано в <a class="xref" href="kernfs.html" - title="7.3. Подготовка виртуальных файловых систем ядра">Раздел 7.3, - «Подготовка виртуальных файловых систем ядра»</a>, и повторно - войдите в среду chroot (см. <a class="xref" href="chroot.html" - title="7.4. Вход в окружение Chroot">Раздел 7.4, «Вход в - окружение Chroot»</a>), прежде чем продолжить. - </p> - </div> - </div> - </div> - <div class="navfooter"> - <ul> - <li class="prev"> - <a accesskey="p" href="util-linux.html" title= - "Util-linux-2.39.3">Пред.</a> - <p> - Util-linux-2.39.3 - </p> - </li> - <li class="next"> - <a accesskey="n" href="../part4.html" title= - "Сборка системы LFS">След.</a> - <p> - Сборка системы LFS - </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.1">Начало</a> - </li> - </ul> - </div> - </body> -</html> diff --git a/lfs-12.1-sysv/chapter07/createfiles.html b/lfs-12.1-sysv/chapter07/createfiles.html deleted file mode 100644 index b775d46..0000000 --- a/lfs-12.1-sysv/chapter07/createfiles.html +++ /dev/null @@ -1,261 +0,0 @@ -<!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.6. Создание основных файлов и символических ссылок - </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> - Глава 7. Вход в окружение Chroot и создание дополнительных временных - инструментов - </h3> - <ul> - <li class="prev"> - <a accesskey="p" href="creatingdirs.html" title= - "Создание каталогов">Пред.</a> - <p> - Создание каталогов - </p> - </li> - <li class="next"> - <a accesskey="n" href="gettext.html" title= - "Gettext-0.22.4">След.</a> - <p> - Gettext-0.22.4 - </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.1">Начало</a> - </li> - </ul> - </div> - <h1 class="sect1"> - <a id="ch-tools-createfiles" name="ch-tools-createfiles"></a>7.6. - Создание основных файлов и символических ссылок - </h1> - <div class="sect1" lang="ru" xml:lang="ru"> - <p> - Исторически сложилось, что Linux хранит список примонтированных - файловых систем в файле <code class="filename">/etc/mtab</code>. - Современные ядра хранят этот список внутри себя и предоставляют его - пользователю через файловую систему <code class= - "filename">/proc</code>. Чтобы удовлетворять требованиям утилит, - которые ожидают наличия <code class="filename">/etc/mtab</code>, - создайте следующую символическую ссылку: - </p> - <pre class="userinput"><kbd class= - "command">ln -sv /proc/self/mounts /etc/mtab</kbd></pre> - <p> - Создайте файл <code class="filename">/etc/hosts</code>, на который - будут ссылаться некоторые наборы тестов, а также один из файлов - конфигурации Perl: - </p> - <pre class="userinput"><kbd class= - "command">cat > /etc/hosts << EOF -<code class="literal">127.0.0.1 localhost $(hostname) -::1 localhost</code> -EOF</kbd></pre> - <p> - Чтобы пользователь <code class="systemitem">root</code> мог войти в - систему и распознавался системой, в файлах <code class= - "filename">/etc/passwd</code> и <code class= - "filename">/etc/group</code> должны быть соответствующие записи. - </p> - <p> - Создайте файл <code class="filename">/etc/passwd</code> выполнив - следующую команду: - </p> - <pre class="userinput"><kbd class= - "command">cat > /etc/passwd << "EOF" -<code class="literal">root:x:0:0:root:/root:/bin/bash -bin:x:1:1:bin:/dev/null:/usr/bin/false -daemon:x:6:6:Daemon User:/dev/null:/usr/bin/false -messagebus:x:18:18:D-Bus Message Daemon User:/run/dbus:/usr/bin/false -uuidd:x:80:80:UUID Generation Daemon User:/dev/null:/usr/bin/false -nobody:x:65534:65534:Unprivileged User:/dev/null:/usr/bin/false</code> -EOF</kbd></pre> - <p> - Пароль пользователя <code class="systemitem">root</code> будет задан - позднее. - </p> - <p> - Создайте файл <code class="filename">/etc/group</code>, выполнив - следующую команду: - </p> - <pre class="userinput"><kbd class= - "command">cat > /etc/group << "EOF" -<code class="literal">root:x:0: -bin:x:1:daemon -sys:x:2: -kmem:x:3: -tape:x:4: -tty:x:5: -daemon:x:6: -floppy:x:7: -disk:x:8: -lp:x:9: -dialout:x:10: -audio:x:11: -video:x:12: -utmp:x:13: -cdrom:x:15: -adm:x:16: -messagebus:x:18: -input:x:24: -mail:x:34: -kvm:x:61: -uuidd:x:80: -wheel:x:97: -users:x:999: -nogroup:x:65534:</code> -EOF</kbd></pre> - <p> - Созданные группы не являются частью какого-либо стандарта — это - группы, определяемые частично требованиями конфигурации Udev в главе - 9, а частично общими соглашениями, используемыми в ряде существующих - дистрибутивов Linux. Кроме того, некоторые наборы тестов зависят от - конкретных пользователей или групп. Спецификация LSB (доступна по - адресу <a class="ulink" href= - "https://refspecs.linuxfoundation.org/lsb.shtml">https://refspecs.linuxfoundation.org/lsb.shtml</a>) - рекомендует, чтобы, помимо группы <code class= - "systemitem">root</code> с идентификатор (GID) 0 присутствовала - группа <code class="systemitem">bin</code> с GID 1. GID 5 широко - используется для группы <code class="systemitem">tty</code>, число 5 - также используется в <span class="phrase"><code class= - "filename">/etc/fstab</code></span> для файловой системы <code class= - "systemitem">devpts</code>. Все остальные имена групп и GID могут - свободно выбираться системным администратором, так как хорошо - написанные программы не зависят от номеров GID, а чаще используют - название группы. - </p> - <p> - Идентификатор 65534 используется ядром для NFS и отдельных - пользовательских пространств имен для несопоставленных пользователей - и групп (они существуют на сервере NFS или родительском пространстве - имен пользователя, но <span class="quote">«<span class="quote">не - существует</span>»</span> на локальном компьютере или в отдельном - пространстве имен). Мы присваиваем <code class= - "systemitem">nobody</code> и <code class="systemitem">nogroup</code> - для того, чтобы избежать несопоставленных идентификаторов. Другие - дистрибутивы могут обрабатывать этот идентификатор по-разному, - поэтому любая переносимая программа не должна зависеть от этого - присвоения. - </p> - <p> - Для некоторых тестов в <a class="xref" href= - "../chapter08/chapter08.html" title= - "Глава 8. Установка базового системного программного обеспечения">Глава 8</a> - требуется обычный пользователь. Добавим такого пользователя здесь и - удалим эту учетную запись в конце главы. - </p> - <pre class="userinput"><kbd class= - "command">echo "tester:x:101:101::/home/tester:/bin/bash" >> /etc/passwd -echo "tester:x:101:" >> /etc/group -install -o tester -d /home/tester</kbd></pre> - <p> - Чтобы удалить приглашение <span class="quote">«<span class="quote">I - have no name!</span>»</span>, запустите новую оболочку. Поскольку - файлы <code class="filename">/etc/passwd</code> и <code class= - "filename">/etc/group</code> были созданы, разрешение имен - пользователей и групп теперь будет работать: - </p> - <pre class="userinput"><kbd class= - "command">exec /usr/bin/bash --login</kbd></pre> - <p> - Программы <span class="command"><strong>login</strong></span>, - <span class="command"><strong>agetty</strong></span>, <span class= - "command"><strong>init</strong></span> (и другие) используют ряд - журналов для записи такой информации, как кто и когда входил в - систему. Однако эти программы не будут записывать данные в журналы, - если они еще не существуют. Инициализируйте журналы и предоставьте им - соответствующие разрешения: - </p> - <pre class="userinput"><kbd class= - "command">touch /var/log/{btmp,lastlog,faillog,wtmp} -chgrp -v utmp /var/log/lastlog -chmod -v 664 /var/log/lastlog -chmod -v 600 /var/log/btmp</kbd></pre> - <p> - В файл <code class="filename">/var/log/wtmp</code> записываются все - входы и выходы из системы. В файл <code class= - "filename">/var/log/lastlog</code> записывается время последнего - входа каждого пользователя в систему. В файл <code class= - "filename">/var/log/faillog</code> записываются неудачные попытки - входа в систему. В файл <code class="filename">/var/log/btmp</code> - также записываются неудачные попытки входа в систему. - </p> - <div class="admon note"> - <img alt="[Примечание]" src="../images/note.png" /> - <h3> - Примечание - </h3> - <p> - В файл <code class="filename">/run/utmp</code> записываются - пользователи, которые в данный момент вошли в систему. Он создаётся - динамически, в процессе выполнения сценариев загрузки. - </p> - </div> - <div class="admon note"> - <img alt="[Примечание]" src="../images/note.png" /> - <h3> - Примечание - </h3> - <p> - Файлы <span class="phrase"><code class= - "filename">utmp</code>,</span> <code class="filename">wtmp</code>, - <code class="filename">btmp</code> и <code class= - "filename">lastlog</code> используют для временных меток - 32-разрядные целые числа, значения счетчика достигнет максимума (2 - 147 483 647) 19 января 2038 года ("проблема 2038 года"). Многие - пакеты перестали их использовать, другие же, собираются прекратить - их использование. Вероятно, лучше считать их устаревшими. - </p> - </div> - </div> - <div class="navfooter"> - <ul> - <li class="prev"> - <a accesskey="p" href="creatingdirs.html" title= - "Создание каталогов">Пред.</a> - <p> - Создание каталогов - </p> - </li> - <li class="next"> - <a accesskey="n" href="gettext.html" title= - "Gettext-0.22.4">След.</a> - <p> - Gettext-0.22.4 - </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.1">Начало</a> - </li> - </ul> - </div> - </body> -</html> diff --git a/lfs-12.1-sysv/chapter07/creatingdirs.html b/lfs-12.1-sysv/chapter07/creatingdirs.html deleted file mode 100644 index 6199a24..0000000 --- a/lfs-12.1-sysv/chapter07/creatingdirs.html +++ /dev/null @@ -1,172 +0,0 @@ -<!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.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> - Глава 7. Вход в окружение Chroot и создание дополнительных временных - инструментов - </h3> - <ul> - <li class="prev"> - <a accesskey="p" href="chroot.html" title= - "Вход в окружение Chroot">Пред.</a> - <p> - Вход в окружение Chroot - </p> - </li> - <li class="next"> - <a accesskey="n" href="createfiles.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.1">Начало</a> - </li> - </ul> - </div> - <h1 class="sect1"> - <a id="ch-tools-creatingdirs" name="ch-tools-creatingdirs"></a>7.5. - Создание каталогов - </h1> - <div class="sect1" lang="ru" xml:lang="ru"> - <p> - Пришло время создать полную структуру каталогов в файловой системе - LFS. - </p> - <div class="admon note"> - <img alt="[Примечание]" src="../images/note.png" /> - <h3> - Примечание - </h3> - <p> - Некоторые из каталогов, упомянутых в этом разделе, возможно, уже - были созданы ранее с помощью явных инструкций или при установке - некоторых пакетов. Они повторяются ниже для полноты картины. - </p> - </div> - <p> - Создайте несколько каталогов, которые не входили в ограниченный - набор, используемый в предыдущих главах, выполнив следующую команду: - </p> - <pre class="userinput"><kbd class= - "command">mkdir -pv /{boot,home,mnt,opt,srv}</kbd></pre> - <p> - Создайте необходимые подкаталоги, выполнив следующие команды: - </p> - <pre class="userinput"><kbd class= - "command">mkdir -pv /etc/{opt,sysconfig} -mkdir -pv /lib/firmware -mkdir -pv /media/{floppy,cdrom} -mkdir -pv /usr/{,local/}{include,src} -mkdir -pv /usr/local/{bin,lib,sbin} -mkdir -pv /usr/{,local/}share/{color,dict,doc,info,locale,man} -mkdir -pv /usr/{,local/}share/{misc,terminfo,zoneinfo} -mkdir -pv /usr/{,local/}share/man/man{1..8} -mkdir -pv /var/{cache,local,log,mail,opt,spool} -mkdir -pv /var/lib/{color,misc,locate} - -ln -sfv /run /var/run -ln -sfv /run/lock /var/lock - -install -dv -m 0750 /root -install -dv -m 1777 /tmp /var/tmp</kbd></pre> - <p> - По умолчанию каталоги создаются с правами 755, но это нежелательно - делать для всех каталогов. В приведенных выше командах вносятся два - изменения — одно в домашний каталог пользователя <code class= - "systemitem">root</code>, а другое в каталоги для временных файлов. - </p> - <p> - Первое изменение гарантирует, что никто не сможет войти в каталог - <code class="filename">/root</code> — точно так же, как обычный - пользователь сделал бы это со своим собственным домашним каталогом. - Второе изменение гарантирует, что любой пользователь может писать в - каталоги <code class="filename">/tmp</code> и <code class= - "filename">/var/tmp</code>, но не может удалять из них файлы другого - пользователя. Последнее запрещено так называемым <span class= - "quote">«<span class="quote">sticky bit (липким - битом)</span>»</span>, старшим битом (1) в битовой маске 1777 - </p> - <div class="sect2" lang="ru" xml:lang="ru"> - <h2 class="sect2"> - 7.5.1. Примечание о соответствии требованиям FHS - </h2> - <p> - Это дерево каталогов основано на стандарте иерархии файловой - системы (FHS) (доступен по адресу <a class="ulink" href= - "https://refspecs.linuxfoundation.org/fhs.shtml">https://refspecs.linuxfoundation.org/fhs.shtml</a>). - FHS также указывает, что наличие некоторых каталогов необязательно, - например, <code class="filename">/usr/local/games</code> и - <code class="filename">/usr/share/games</code>. В LFS мы создаем - только те каталоги, которые действительно необходимы. Однако, не - стесняйтесь создавать дополнительные каталоги, если хотите. - </p> - <div class="admon warning"> - <img alt="[Предупреждение]" src="../images/warning.png" /> - <h3> - Предупреждение - </h3> - <p> - FHS не требует наличия каталога <code class= - "filename">/usr/lib64</code>, и редакторы LFS решили его не - использовать. Чтобы инструкции в LFS и BLFS работали корректно, - крайне важно, чтобы этот каталог не существовал. Время от времени - вам следует проверять, что он не существует, потому что его легко - создать непреднамеренно, и это, вероятно, приведет к поломке - вашей системы. - </p> - </div> - </div> - </div> - <div class="navfooter"> - <ul> - <li class="prev"> - <a accesskey="p" href="chroot.html" title= - "Вход в окружение Chroot">Пред.</a> - <p> - Вход в окружение Chroot - </p> - </li> - <li class="next"> - <a accesskey="n" href="createfiles.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.1">Начало</a> - </li> - </ul> - </div> - </body> -</html> diff --git a/lfs-12.1-sysv/chapter07/gettext.html b/lfs-12.1-sysv/chapter07/gettext.html deleted file mode 100644 index 2f17f22..0000000 --- a/lfs-12.1-sysv/chapter07/gettext.html +++ /dev/null @@ -1,153 +0,0 @@ -<!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.7. Gettext-0.22.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> - Глава 7. Вход в окружение Chroot и создание дополнительных временных - инструментов - </h3> - <ul> - <li class="prev"> - <a accesskey="p" href="createfiles.html" title= - "Создание основных файлов и символических ссылок">Пред.</a> - <p> - Создание основных файлов и символических ссылок - </p> - </li> - <li class="next"> - <a accesskey="n" href="bison.html" title="Bison-3.8.2">След.</a> - <p> - Bison-3.8.2 - </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.1">Начало</a> - </li> - </ul> - </div> - <h1 class="sect1"> - <a id="ch-tools-gettext" name="ch-tools-gettext"></a>7.7. - Gettext-0.22.4 - </h1> - <div class="wrap" lang="ru" xml:lang="ru"> - <div class="package" lang="ru" xml:lang="ru"> - <p> - Пакет Gettext содержит утилиты для интернационализации и - локализации. Они позволяют компилировать программы с поддержкой NLS - (Native Language Support), позволяя им выводить сообщения на родном - языке пользователя. - </p> - <div class="segmentedlist"> - <div class="seglistitem"> - <div class="seg"> - <strong class="segtitle">Приблизительное время сборки:</strong> - <span class="segbody">1.1 SBU</span> - </div> - <div class="seg"> - <strong class="segtitle">Требуемое дисковое - пространство:</strong> <span class="segbody">306 MB</span> - </div> - </div> - </div> - </div> - <div class="installation" lang="ru" xml:lang="ru"> - <h2 class="sect2"> - 7.7.1. Установка пакета Gettext - </h2> - <p> - Для временного набора инструментов нам нужно установить только три - программы из пакета Gettext. - </p> - <p> - Подготовьте Gettext к компиляции: - </p> - <pre class="userinput"><kbd class= - "command">./configure --disable-shared</kbd></pre> - <div class="variablelist"> - <p class="title"> - <strong>Значение параметров настройки:</strong> - </p> - <dl class="variablelist"> - <dt> - <span class="term"><em class= - "parameter"><code>--disable-shared</code></em></span> - </dt> - <dd> - <p> - В настоящее время нам не нужно устанавливать какие-либо общие - библиотеки Gettext, поэтому нет необходимости их собирать. - </p> - </dd> - </dl> - </div> - <p> - Скомпилируйте пакет: - </p> - <pre class="userinput"><kbd class="command">make</kbd></pre> - <p> - Установите программы <span class= - "command"><strong>msgfmt</strong></span>, <span class= - "command"><strong>msgmerge</strong></span>, и <span class= - "command"><strong>xgettext</strong></span> programs: - </p> - <pre class="userinput"><kbd class= - "command">cp -v gettext-tools/src/{msgfmt,msgmerge,xgettext} /usr/bin</kbd></pre> - </div> - <div class="content" lang="ru" xml:lang="ru"> - <p> - Подробная информация об этом пакете находится в <a class="xref" - href="../chapter08/gettext.html#contents-gettext" title= - "8.32.2. Содержимое пакета Gettext">Раздел 8.32.2, «Содержимое - пакета Gettext.»</a> - </p> - </div> - </div> - <div class="navfooter"> - <ul> - <li class="prev"> - <a accesskey="p" href="createfiles.html" title= - "Создание основных файлов и символических ссылок">Пред.</a> - <p> - Создание основных файлов и символических ссылок - </p> - </li> - <li class="next"> - <a accesskey="n" href="bison.html" title="Bison-3.8.2">След.</a> - <p> - Bison-3.8.2 - </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.1">Начало</a> - </li> - </ul> - </div> - </body> -</html> diff --git a/lfs-12.1-sysv/chapter07/introduction.html b/lfs-12.1-sysv/chapter07/introduction.html deleted file mode 100644 index 16eb636..0000000 --- a/lfs-12.1-sysv/chapter07/introduction.html +++ /dev/null @@ -1,115 +0,0 @@ -<!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.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> - Глава 7. Вход в окружение Chroot и создание дополнительных временных - инструментов - </h3> - <ul> - <li class="prev"> - <a accesskey="p" href="chapter07.html" title= - "Вход в окружение Chroot и создание дополнительных временных инструментов"> - Пред.</a> - <p> - Вход в окружение Chroot и создание дополнительных временных - инструментов - </p> - </li> - <li class="next"> - <a accesskey="n" href="changingowner.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.1">Начало</a> - </li> - </ul> - </div> - <h1 class="sect1"> - <a id="ch-tools-introduction-chroot" name= - "ch-tools-introduction-chroot"></a>7.1. Введение - </h1> - <div class="sect1" lang="ru" xml:lang="ru"> - <p> - В этой главе рассказывается, как собрать последние недостающие части - временной системы: инструменты, необходимые для сборки различных - пакетов. Теперь, когда все циклические зависимости устранены, для - сборки можно использовать среду <span class="quote">«<span class= - "quote">chroot</span>»</span>, полностью изолированную от - операционной системы хоста (за исключением работающего ядра). - </p> - <p> - Для правильной работы изолированной среды необходимо установить связь - с работающим ядром. Это делается с помощью так называемых - <span class="emphasis"><em>виртуальных файловых систем - ядра</em></span>, которые будут смонтированы перед входом в среду - chroot. Вы можете проверить, смонтированы ли они, выполнив команду - <span class="command"><strong>findmnt</strong></span>. - </p> - <p> - До <a class="xref" href="chroot.html" title= - "7.4. Вход в окружение Chroot">Раздел 7.4, «Вход в окружение - Chroot»</a> команды должны выполняться от имени <code class= - "systemitem">root</code> с установленной переменной <code class= - "envar">LFS</code>. После входа в chroot все команды выполняются от - имени <code class="systemitem">root</code>, к счастью, без доступа к - операционной системе компьютера, на котором вы собираете LFS. В любом - случае будьте осторожны, так как неверными командами легко разрушить - всю систему LFS. - </p> - </div> - <div class="navfooter"> - <ul> - <li class="prev"> - <a accesskey="p" href="chapter07.html" title= - "Вход в окружение Chroot и создание дополнительных временных инструментов"> - Пред.</a> - <p> - Вход в окружение Chroot и создание дополнительных временных - инструментов - </p> - </li> - <li class="next"> - <a accesskey="n" href="changingowner.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.1">Начало</a> - </li> - </ul> - </div> - </body> -</html> diff --git a/lfs-12.1-sysv/chapter07/kernfs.html b/lfs-12.1-sysv/chapter07/kernfs.html deleted file mode 100644 index f30a70e..0000000 --- a/lfs-12.1-sysv/chapter07/kernfs.html +++ /dev/null @@ -1,207 +0,0 @@ -<!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.3. Подготовка виртуальных файловых систем ядра - </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> - Глава 7. Вход в окружение Chroot и создание дополнительных временных - инструментов - </h3> - <ul> - <li class="prev"> - <a accesskey="p" href="changingowner.html" title= - "Смена владельца">Пред.</a> - <p> - Смена владельца - </p> - </li> - <li class="next"> - <a accesskey="n" href="chroot.html" title= - "Вход в окружение Chroot">След.</a> - <p> - Вход в окружение Chroot - </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.1">Начало</a> - </li> - </ul> - </div> - <h1 class="sect1"> - <a id="ch-tools-kernfs" name="ch-tools-kernfs"></a>7.3. Подготовка - виртуальных файловых систем ядра - </h1> - <div class="sect1" lang="ru" xml:lang="ru"> - <p> - Приложения, работающие в пользовательском пространстве, используют - различные файловые системы, созданные ядром, для взаимодействия с - самим ядром. Эти файловые системы являются виртуальными: для них не - используется дисковое пространство. Содержимое файловых систем - находится в памяти. Эти файловые системы должны быть смонтированы в - дереве каталогов $LFS, чтобы приложения могли найти их в среде - <span class="command"><strong>chroot</strong></span>. - </p> - <p> - Начните с создания каталогов, в которые будут смонтированы эти - виртуальные файловые системы: - </p> - <pre class="userinput"><kbd class= - "command">mkdir -pv $LFS/{dev,proc,sys,run}</kbd></pre> - <div class="sect2" lang="ru" xml:lang="ru"> - <h2 class="sect2"> - <a id="ch-tools-bindmount" name="ch-tools-bindmount"></a>7.3.1. - Монтирование и заполнение /dev - </h2> - <p> - Во время обычной загрузки ядро автоматически монтирует файловую - систему <code class="systemitem">devtmpfs</code> в каталог - <code class="filename">/dev</code>; ядро создает узлы устройств в - этой виртуальной файловой системе в процессе загрузки или при - первом обнаружении устройства, или доступе к нему. Демон udev может - изменять владельца или разрешения узлов устройств, созданных ядром, - или создавать новые узлы устройств или символические ссылки, чтобы - облегчить работу разработчиков дистрибутива или системных - администраторов. (Подробности смотрите в <a class="xref" href= - "../chapter09/udev.html#ch-config-udev-device-node-creation" title= - "9.3.2.2. Создание узла устройства">Раздел 9.3.2.2, «Создание - узла устройства»</a>.) Если ядро хоста поддерживает <code class= - "systemitem">devtmpfs</code>, мы можем просто смонтировать - <code class="systemitem">devtmpfs</code> в <code class= - "filename">$LFS/dev</code> и положиться на ядро для его заполнения. - </p> - <p> - Но в некоторых ядрах хоста отсутствует поддержка <code class= - "systemitem">devtmpfs</code>, эти хост-дистрибутивы используют - разные методы для создания содержимого <code class= - "filename">/dev</code>. Таким образом, единственный независимый от - хоста способ заполнить каталог <code class= - "filename">$LFS/dev</code> - это привязка к каталогу <code class= - "filename">/dev</code> хост-системы. Связное монтирование - это - особый тип монтирования, который делает дерево каталога или файл - видимым в каком-либо другом месте. Для этого используйте следующую - команду: - </p> - <pre class="userinput"><kbd class= - "command">mount -v --bind /dev $LFS/dev</kbd></pre> - </div> - <div class="sect2" lang="ru" xml:lang="ru"> - <h2 class="sect2"> - <a id="ch-tools-kernfsmount" name="ch-tools-kernfsmount"></a>7.3.2. - Монтирование виртуальных файловых систем ядра - </h2> - <p> - Теперь смонтируйте оставшиеся виртуальные файловые системы: - </p> - <pre class="userinput"><kbd class= - "command">mount -vt devpts devpts -o gid=5,mode=0620 $LFS/dev/pts -mount -vt proc proc $LFS/proc -mount -vt sysfs sysfs $LFS/sys -mount -vt tmpfs tmpfs $LFS/run</kbd></pre> - <div class="variablelist"> - <p class="title"> - <strong>Значение параметров монтирования для devpts:</strong> - </p> - <dl class="variablelist"> - <dt> - <span class="term"><em class= - "parameter"><code>gid=5</code></em></span> - </dt> - <dd> - <p> - Этот параметр гарантирует, что все узлы устройств, созданные - devpts, принадлежат группе с идентификатором 5. Это - идентификатор, который мы будем использовать позже для группы - <code class="systemitem">tty</code>. Мы используем - идентификатор группы вместо имени, поскольку хост-система - может использовать другой идентификатор для своей группы - <code class="systemitem">tty</code>. - </p> - </dd> - <dt> - <span class="term"><em class= - "parameter"><code>mode=0620</code></em></span> - </dt> - <dd> - <p> - Этот параметр гарантирует, что все узлы устройств, созданные - devpts, будут иметь права 0620 (доступен для чтения и записи - пользователем, доступен для записи группе). Вместе с - вышеуказанной опцией это гарантирует, что devpts создаст узлы - устройств, соответствующие требованиям grantpt(), а это - означает, что вспомогательный файл Glibc <span class= - "command"><strong>pt_chown</strong></span> (который не - установлен по умолчанию) не требуется. - </p> - </dd> - </dl> - </div> - <p> - В некоторых хост-системах <code class="filename">/dev/shm</code> - является символической ссылкой на каталог <code class= - "filename">/run/shm</code>. /run tmpfs был смонтирован выше, - поэтому сейчас необходимо только создать каталог с правильными - разрешениями. - </p> - <p> - В других хост-системах <code class="filename">/dev/shm</code> - является точкой монтирования для tmpfs. В этом случае монтирование - /dev приведет только к созданию /dev/shm как каталога в среде - chroot. В этой ситуации мы должны явно смонтировать tmpfs: - </p> - <pre class="userinput"><kbd class= - "command">if [ -h $LFS/dev/shm ]; then - install -v -d -m 1777 $LFS$(realpath /dev/shm) -else - mount -vt tmpfs -o nosuid,nodev tmpfs $LFS/dev/shm -fi</kbd></pre> - </div> - </div> - <div class="navfooter"> - <ul> - <li class="prev"> - <a accesskey="p" href="changingowner.html" title= - "Смена владельца">Пред.</a> - <p> - Смена владельца - </p> - </li> - <li class="next"> - <a accesskey="n" href="chroot.html" title= - "Вход в окружение Chroot">След.</a> - <p> - Вход в окружение Chroot - </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.1">Начало</a> - </li> - </ul> - </div> - </body> -</html> diff --git a/lfs-12.1-sysv/chapter07/perl.html b/lfs-12.1-sysv/chapter07/perl.html deleted file mode 100644 index 3a32ac5..0000000 --- a/lfs-12.1-sysv/chapter07/perl.html +++ /dev/null @@ -1,186 +0,0 @@ -<!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.9. Perl-5.38.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> - Глава 7. Вход в окружение Chroot и создание дополнительных временных - инструментов - </h3> - <ul> - <li class="prev"> - <a accesskey="p" href="bison.html" title="Bison-3.8.2">Пред.</a> - <p> - Bison-3.8.2 - </p> - </li> - <li class="next"> - <a accesskey="n" href="Python.html" title="Python-3.12.2">След.</a> - <p> - Python-3.12.2 - </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.1">Начало</a> - </li> - </ul> - </div> - <h1 class="sect1"> - <a id="ch-tools-perl" name="ch-tools-perl"></a>7.9. Perl-5.38.2 - </h1> - <div class="wrap" lang="ru" xml:lang="ru"> - <div class="package" lang="ru" xml:lang="ru"> - <p> - Пакет Perl содержит практический язык для извлечения данных и - составления отчётов (Practical Extraction and Report Language). - </p> - <div class="segmentedlist"> - <div class="seglistitem"> - <div class="seg"> - <strong class="segtitle">Приблизительное время сборки:</strong> - <span class="segbody">0.6 SBU</span> - </div> - <div class="seg"> - <strong class="segtitle">Требуемое дисковое - пространство:</strong> <span class="segbody">280 MB</span> - </div> - </div> - </div> - </div> - <div class="installation" lang="ru" xml:lang="ru"> - <h2 class="sect2"> - 7.9.1. Установка пакета Perl - </h2> - <p> - Подготовьте Perl к компиляции: - </p> - <pre class="userinput"><kbd class= - "command">sh Configure -des \ - -Dprefix=/usr \ - -Dvendorprefix=/usr \ - -Duseshrplib \ - -Dprivlib=/usr/lib/perl5/5.38/core_perl \ - -Darchlib=/usr/lib/perl5/5.38/core_perl \ - -Dsitelib=/usr/lib/perl5/5.38/site_perl \ - -Dsitearch=/usr/lib/perl5/5.38/site_perl \ - -Dvendorlib=/usr/lib/perl5/5.38/vendor_perl \ - -Dvendorarch=/usr/lib/perl5/5.38/vendor_perl</kbd></pre> - <div class="variablelist"> - <p class="title"> - <strong>Значение новых опций Configure:</strong> - </p> - <dl class="variablelist"> - <dt> - <span class="term"><em class= - "parameter"><code>-des</code></em></span> - </dt> - <dd> - <p> - Это комбинация из трех параметров: -d использует значения по - умолчанию для всех элементов; -e обеспечивает выполнение всех - задач; -s отключает несущественные выходные данные. - </p> - </dd> - <dt> - <span class="term"><em class= - "parameter"><code>-Dvendorprefix=/usr</code></em></span> - </dt> - <dd> - <p> - Параметр гарантирует, что <span class= - "command"><strong>perl</strong></span> знает, как указать - пакетам, где они должны устанавливать свои модули Perl. - </p> - </dd> - <dt> - <span class="term"><em class= - "parameter"><code>-Duseshrplib</code></em></span> - </dt> - <dd> - <p> - Собрать библиотеку libperl, необходимую некоторым модулям - Perl, как общую библиотеку вместо статической. - </p> - </dd> - <dt> - <span class="term"><em class= - "parameter"><code>-Dprivlib,-Darchlib,-Dsitelib,...</code></em></span> - </dt> - <dd> - <p> - Эти настройки определяют, где Perl ищет установленные модули. - Редакторы LFS решили поместить их в структуру каталогов, - основанную на MAJOR.MINOR версии Perl (5.38), что позволяет - обновлять Perl до более новых уровней исправлений (уровень - исправления - это последняя разделенная точками часть в - строке полной версии, например 5.38.2) без необходимости - переустанавливать все модули. - </p> - </dd> - </dl> - </div> - <p> - Скомпилируйте пакет: - </p> - <pre class="userinput"><kbd class="command">make</kbd></pre> - <p> - Установите пакет: - </p> - <pre class="userinput"><kbd class="command">make install</kbd></pre> - </div> - <div class="content" lang="ru" xml:lang="ru"> - <p> - Подробная информация об этом пакете находится в <a class="xref" - href="../chapter08/perl.html#contents-perl" title= - "8.42.2. Содержимое пакета Perl">Раздел 8.42.2, «Содержимое - пакета Perl.»</a> - </p> - </div> - </div> - <div class="navfooter"> - <ul> - <li class="prev"> - <a accesskey="p" href="bison.html" title="Bison-3.8.2">Пред.</a> - <p> - Bison-3.8.2 - </p> - </li> - <li class="next"> - <a accesskey="n" href="Python.html" title="Python-3.12.2">След.</a> - <p> - Python-3.12.2 - </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.1">Начало</a> - </li> - </ul> - </div> - </body> -</html> diff --git a/lfs-12.1-sysv/chapter07/texinfo.html b/lfs-12.1-sysv/chapter07/texinfo.html deleted file mode 100644 index 40921ce..0000000 --- a/lfs-12.1-sysv/chapter07/texinfo.html +++ /dev/null @@ -1,125 +0,0 @@ -<!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.11. Texinfo-7.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> - Глава 7. Вход в окружение Chroot и создание дополнительных временных - инструментов - </h3> - <ul> - <li class="prev"> - <a accesskey="p" href="Python.html" title="Python-3.12.2">Пред.</a> - <p> - Python-3.12.2 - </p> - </li> - <li class="next"> - <a accesskey="n" href="util-linux.html" title= - "Util-linux-2.39.3">След.</a> - <p> - Util-linux-2.39.3 - </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.1">Начало</a> - </li> - </ul> - </div> - <h1 class="sect1"> - <a id="ch-tools-texinfo" name="ch-tools-texinfo"></a>7.11. Texinfo-7.1 - </h1> - <div class="wrap" lang="ru" xml:lang="ru"> - <div class="package" lang="ru" xml:lang="ru"> - <p> - Пакет Texinfo содержит программы для чтения, записи и - преобразования информационных страниц. - </p> - <div class="segmentedlist"> - <div class="seglistitem"> - <div class="seg"> - <strong class="segtitle">Приблизительное время сборки:</strong> - <span class="segbody">0.2 SBU</span> - </div> - <div class="seg"> - <strong class="segtitle">Требуемое дисковое - пространство:</strong> <span class="segbody">130 MB</span> - </div> - </div> - </div> - </div> - <div class="installation" lang="ru" xml:lang="ru"> - <h2 class="sect2"> - 7.11.1. Установка пакета Texinfo - </h2> - <p> - Подготовьте Texinfo к компиляции: - </p> - <pre class="userinput"><kbd class= - "command">./configure --prefix=/usr</kbd></pre> - <p> - Скомпилируйте пакет: - </p> - <pre class="userinput"><kbd class="command">make</kbd></pre> - <p> - Установите пакет: - </p> - <pre class="userinput"><kbd class="command">make install</kbd></pre> - </div> - <div class="content" lang="ru" xml:lang="ru"> - <p> - Подробная информация об этом пакете находится в <a class="xref" - href="../chapter08/texinfo.html#contents-texinfo" title= - "8.71.2. Содержимое пакета Texinfo">Раздел 8.71.2, «Содержимое - пакета Texinfo.»</a> - </p> - </div> - </div> - <div class="navfooter"> - <ul> - <li class="prev"> - <a accesskey="p" href="Python.html" title="Python-3.12.2">Пред.</a> - <p> - Python-3.12.2 - </p> - </li> - <li class="next"> - <a accesskey="n" href="util-linux.html" title= - "Util-linux-2.39.3">След.</a> - <p> - Util-linux-2.39.3 - </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.1">Начало</a> - </li> - </ul> - </div> - </body> -</html> diff --git a/lfs-12.1-sysv/chapter07/util-linux.html b/lfs-12.1-sysv/chapter07/util-linux.html deleted file mode 100644 index 9fe0cca..0000000 --- a/lfs-12.1-sysv/chapter07/util-linux.html +++ /dev/null @@ -1,213 +0,0 @@ -<!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.12. Util-linux-2.39.3 - </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> - Глава 7. Вход в окружение Chroot и создание дополнительных временных - инструментов - </h3> - <ul> - <li class="prev"> - <a accesskey="p" href="texinfo.html" title="Texinfo-7.1">Пред.</a> - <p> - Texinfo-7.1 - </p> - </li> - <li class="next"> - <a accesskey="n" href="cleanup.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.1">Начало</a> - </li> - </ul> - </div> - <h1 class="sect1"> - <a id="ch-tools-util-linux" name="ch-tools-util-linux"></a>7.12. - Util-linux-2.39.3 - </h1> - <div class="wrap" lang="ru" xml:lang="ru"> - <div class="package" lang="ru" xml:lang="ru"> - <p> - Пакет Util-linux содержит различные служебные программы. Среди них - утилиты для работы с файловыми системами, консолями, разделами и - сообщениями. - </p> - <div class="segmentedlist"> - <div class="seglistitem"> - <div class="seg"> - <strong class="segtitle">Приблизительное время сборки:</strong> - <span class="segbody">0.2 SBU</span> - </div> - <div class="seg"> - <strong class="segtitle">Требуемое дисковое - пространство:</strong> <span class="segbody">172 MB</span> - </div> - </div> - </div> - </div> - <div class="installation" lang="ru" xml:lang="ru"> - <h2 class="sect2"> - 7.12.1. Установка пакета Util-linux - </h2> - <p> - FHS рекомендует использовать каталог <code class= - "filename">/var/lib/hwclock</code> вместо каталога <code class= - "filename">/etc</code> в качестве местоположения для файла - <code class="filename">adjtime</code>. Создайте этот каталог: - </p> - <pre class="userinput"><kbd class= - "command">mkdir -pv /var/lib/hwclock</kbd></pre> - <p> - Подготовьте Util-linux к компиляции: - </p> - <pre class="userinput"><kbd class= - "command">./configure --libdir=/usr/lib \ - --runstatedir=/run \ - --disable-chfn-chsh \ - --disable-login \ - --disable-nologin \ - --disable-su \ - --disable-setpriv \ - --disable-runuser \ - --disable-pylibmount \ - --disable-static \ - --without-python \ - ADJTIME_PATH=/var/lib/hwclock/adjtime \ - --docdir=/usr/share/doc/util-linux-2.39.3</kbd></pre> - <div class="variablelist"> - <p class="title"> - <strong>Значение параметров настройки:</strong> - </p> - <dl class="variablelist"> - <dt> - <span class="term"><em class= - "parameter"><code>ADJTIME_PATH=/var/lib/hwclock/adjtime</code></em></span> - </dt> - <dd> - <p> - Этот параметр устанавливает расположение файла для записи - информации об аппаратных часах в соответствии с FHS. Он не - обязателен для временного инструментария, но предотвращает - создание файла в другом месте, где файл не будет перезаписан - или удален при финальной сборке пакета util-linux. - </p> - </dd> - <dt> - <span class="term"><em class= - "parameter"><code>--libdir=/usr/lib</code></em></span> - </dt> - <dd> - <p> - Этот параметр гарантирует, что символические ссылки - <code class="filename">.so</code>, будут указывать на файл - общей библиотеки в том же каталоге (<code class= - "filename">/usr/lib</code>). - </p> - </dd> - <dt> - <span class="term"><em class= - "parameter"><code>--disable-*</code></em></span> - </dt> - <dd> - <p> - Этот параметр предотвращают появление предупреждений о сборке - компонентов, для которых требуются пакеты, отсутствующие или - еще не установленные в LFS. - </p> - </dd> - <dt> - <span class="term"><em class= - "parameter"><code>--without-python</code></em></span> - </dt> - <dd> - <p> - Этот параметр отключает использование <span class= - "application">Python</span>. Это позволяет избежать попыток - создания ненужных привязок. - </p> - </dd> - <dt> - <span class="term"><em class= - "parameter"><code>--runstatedir=/run</code></em></span> - </dt> - <dd> - <p> - Этот параметр устанавливает расположение сокета, - используемого <span class= - "command"><strong>uuidd</strong></span> и <code class= - "filename">libuuid</code>. - </p> - </dd> - </dl> - </div> - <p> - Скомпилируйте пакет: - </p> - <pre class="userinput"><kbd class="command">make</kbd></pre> - <p> - Установите пакет: - </p> - <pre class="userinput"><kbd class="command">make install</kbd></pre> - </div> - <div class="content" lang="ru" xml:lang="ru"> - <p> - Подробная информация об этом пакете находится в <a class="xref" - href="../chapter08/util-linux.html#contents-utillinux" title= - "8.78.2. Содержимое пакета Util-linux">Раздел 8.78.2, - «Содержимое пакета Util-linux.»</a> - </p> - </div> - </div> - <div class="navfooter"> - <ul> - <li class="prev"> - <a accesskey="p" href="texinfo.html" title="Texinfo-7.1">Пред.</a> - <p> - Texinfo-7.1 - </p> - </li> - <li class="next"> - <a accesskey="n" href="cleanup.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.1">Начало</a> - </li> - </ul> - </div> - </body> -</html> |