From 9650365d12a811c473717ba8200975e7d0fcaca0 Mon Sep 17 00:00:00 2001 From: Poltern <2363951+Poltern@users.noreply.github.com> Date: Fri, 30 Jun 2023 03:00:18 +0500 Subject: [PATCH] Translated chapter07 --- chapter07/chroot.xml | 24 +++++++++--------- chapter07/cleanup.xml | 40 ++++++++++++++---------------- chapter07/createfiles.xml | 16 ++++++------ chapter07/creatingdirs.xml | 44 ++++++++++++++++++++------------ chapter07/introduction.xml | 8 +++--- chapter07/kernfs.xml | 51 ++++++++++++++++++++++++++------------ 6 files changed, 105 insertions(+), 78 deletions(-) diff --git a/chapter07/chroot.xml b/chapter07/chroot.xml index ccb9636..b2b62bd 100644 --- a/chapter07/chroot.xml +++ b/chapter07/chroot.xml @@ -10,12 +10,12 @@ Вход в окружение Chroot - Теперь, когда все пакеты, необходимые для сборки остальных инструментов находятся + Теперь, когда все пакеты, необходимые для сборки остальных инструментов установлены в системе, пришло время войти в окружение chroot и завершить установку временных - инструментов. Это окружение также будет использоваться для установки конечной системы. + инструментов. Эта среда также будет использоваться для установки конечной системы. От имени пользователя root выполните - следующую команду для входа в окружение, которое на данный момент заполнено только - временными инструментами: + следующую команду для входа в chroot, в которой на данный момент нет ничего, кроме + временных инструментов: chroot "$LFS" /usr/bin/env -i \ HOME=/root \ @@ -24,25 +24,25 @@ PATH=/usr/bin:/usr/sbin \ /bin/bash --login - Параметр -i команды env - очищает все переменные в окружении chroot. После этого переменные + Параметр -i команды env, очистит + все переменные в среде chroot. После этого переменные HOME, TERM, PS1 и PATH будут установлены заново. Конструкция TERM=$TERM установит переменную TERM внутри chroot - в то же значение, что и вне chroot. Эта переменная необходима для корректной работы таким - программам как vim и less. Если понадобятся + в то же значение, что и вне chroot. Эта переменная необходима для корректной работы таких + программ как vim и less. Если понадобятся другие переменные окружения, такие как CFLAGS или CXXFLAGS, то это подходящее место для их установки. С этого момента больше нет необходимости использовать переменную LFS, поскольку вся работа будет ограничена файловой системой - LFS. Это связано с тем, что оболочке Bash сообщается, что - $LFS теперь является корневым - каталогом (/). + LFS; команда chroot запускает оболочку Bash с корневым + каталогом (/), установленным в + $LFS. Обратите внимание, что каталог /tools/bin не указан в переменной окружения PATH. Это означает, что кросс-тулчейн - больше не будет использоваться внутри chroot окружения. + больше не будет использоваться. Обратите внимание, что в командной строке bash будет указано I have no name!. Это нормально, поскольку файл diff --git a/chapter07/cleanup.xml b/chapter07/cleanup.xml index b12fb38..09d7927 100644 --- a/chapter07/cleanup.xml +++ b/chapter07/cleanup.xml @@ -18,10 +18,10 @@ rm -rf /usr/share/{info,man,doc}/* - Во-вторых, файлы .la библиотеки libtool полезны только при компоновке - статических библиотек. Они не нужны и потенциально опасны при использовании - динамических библиотек, особенно при использовании систем сборки, отличных от - autotools. Удалите эти файлы, пока вы находитесь в chroot: + Во-вторых, в современных системах Linux файлы .la библиотеки libtool полезны + только для libltdl. Никакие библиотеки в LFS не загружаются с помощью libltdl. + Известно, что некоторые файлы .la могут привести к сбою во время сборки + пакетов BLFS. Удалите эти файлы сейчас: find /usr/{lib,libexec} -name \*.la -delete @@ -42,8 +42,8 @@ последующего повторного использования. В случае фатальных сбоев в следующих главах часто оказывается, что удалить все и начать заново (более осторожно) — лучший вариант восстановления. К сожалению, все временные файлы также будут удалены. - Чтобы не тратить лишнее время на переделку того, что было успешно собрано, полезно - создать резервную копию текущей системы LFS. + Чтобы не тратить лишнее время на повторную сборку того, что было успешно собрано, + полезно создать резервную копию текущей системы LFS. @@ -57,9 +57,8 @@ Следующие шаги выполняются вне среды chroot. Это означает, что прежде чем продолжить вы должны покинуть среду chroot. Причиной этого является то, что необходимо получить доступ к расположению файловой системы за пределами - среды chroot для хранения/чтения архива резервных копий, который не следует - помещать в иерархию $LFS из соображений - безопасности. + среды chroot для хранения/чтения архива резервных копий, который не должен + размещаться в иерархии $LFS. @@ -72,9 +71,9 @@ Все следующие инструкции выполняются пользователем root в вашей хост-системе. - Будьте особенно внимательны к командам, которые вы собираетесь запускать, - так как ошибки здесь могут изменить вашу хост-систему. Имейте в виду, - что переменная окружения LFS по умолчанию установлена + Будьте особенно внимательны к командам, которые вы собираетесь запускать, + поскольку ошибки, допущенные здесь, могут изменить вашу хост-систему. Имейте + в виду, что переменная окружения LFS по умолчанию установлена для пользователя lfs, но может не быть установлена для root. @@ -90,7 +89,8 @@ Перед созданием резервной копии размонтируйте виртуальные файловые системы: -umount $LFS/dev/pts +mountpoint -q $LFS/dev/shm && umount $LFS/dev/shm +umount $LFS/dev/pts umount $LFS/{sys,proc,run,dev} @@ -102,13 +102,9 @@ umount $LFS/{sys,proc,run,dev} Обратите внимание, что в приведенных ниже инструкциях указан домашний каталог пользователя root хост-системы, - который обычно находится в корневой файловой системе. - - - - Замените $HOME каталогом по вашему выбору, если вы не хотите, - чтобы резервная копия хранилась в домашнем каталоге пользователя root. + который обычно находится в корневой файловой системе. Замените $HOME + каталогом на ваш выбор, если вы не хотите, чтобы резервная копия хранилась + в домашнем каталоге пользователя root. @@ -143,7 +139,7 @@ tar -cJpf $HOME/lfs-temp-tools-&version;.tar.xz . время на восстановление. Поскольку исходники находятся в папке $LFS, они также включены в архив резервной копии, поэтому их не нужно загружать повторно. Убедившись, что переменная $LFS - настроена правильно, восстановите резервную копию, выполнив следующие команды: + настроена правильно, вы можете восстановить резервную копию, выполнив следующие команды: