Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия |
software:linux_server:lfs:chapter07 [2024/07/02 12:09] – [7.13.2. Резервное копирование] vladpolskiy | software:linux_server:lfs:chapter07 [2024/07/02 12:38] (текущий) – [7. Вход в окружение Chroot и создание дополнительных временных инструментов] vladpolskiy |
---|
======7. Вход в окружение Chroot и создание дополнительных временных инструментов====== | ======Часть III. Глава 7. Вход в окружение Chroot и создание дополнительных временных инструментов====== |
Содержание | Содержание |
* [[software:linux_server:lfs:chapter07#7.1. Введение|7.1. Введение]] | * [[software:linux_server:lfs:chapter07#7.1. Введение|7.1. Введение]] |
| |
Обратите внимание, что в приведенных ниже инструкциях указан домашний каталог пользователя root хост-системы, который обычно находится в корневой файловой системе. Замените **$HOME** каталогом на ваш выбор, если вы не хотите, чтобы резервная копия хранилась в домашнем каталоге пользователя **root**. | Обратите внимание, что в приведенных ниже инструкциях указан домашний каталог пользователя root хост-системы, который обычно находится в корневой файловой системе. Замените **$HOME** каталогом на ваш выбор, если вы не хотите, чтобы резервная копия хранилась в домашнем каталоге пользователя **root**. |
| |
| Поскольку архив резервной копии сжимается, процесс занимает довольно много времени (более 10 минут) даже на достаточно быстрой системе. |
| |
Создайте архив резервной копии, выполнив следующую команду: | Создайте архив резервной копии, выполнив следующую команду: |
| |
<WRAP left round info 100%> | |
**Примечание** \\ | |
Поскольку архив резервной копии сжимается, процесс занимает довольно много времени (более 10 минут) даже на достаточно быстрой системе. | |
</WRAP> | |
| |
<code> | <code> |
</WRAP> | </WRAP> |
| |
=====7.13. Очистка и сохранение временной системы===== | |
====7.13.1. Очистка==== | |
Во-первых, удалите установленную документацию, чтобы предотвратить ее попадание в конечную систему и сэкономить около 35 МБ места: | |
| |
<code> | |
rm -rf /usr/share/{info,man,doc}/* | |
</code> | |
| |
Во-вторых, в современных системах Linux файлы .la библиотеки libtool полезны только для libltdl. Никакие библиотеки в LFS не загружаются с помощью libltdl. Известно, что некоторые файлы .la могут привести к сбою во время сборки пакетов BLFS. Удалите эти файлы сейчас: | |
| |
<code> | =====7.13.3. Восстановление===== |
find /usr/{lib,libexec} -name \*.la -delete | |
</code> | |
| |
Сейчас размер системы составляет около 3 ГБ, однако каталог /tools больше не понадобится. Удалите его, чтобы освободить около 1 ГБ дискового пространства: | В случае, если были допущены какие-либо ошибки и вам нужно начать все сначала, вы можете использовать эту резервную копию для восстановления системы и сэкономить время на восстановление. Поскольку исходники находятся в папке **$LFS**, они также включены в архив резервной копии, поэтому их не нужно загружать повторно. Убедившись, что переменная **$LFS** настроена правильно, вы можете восстановить резервную копию, выполнив следующие команды: |
| |
<code> | <WRAP left round alert 100%> |
rm -rf /tools | **Предупреждение** \\ |
</code> | Следующие команды чрезвычайно опасны. Если вы запустите команду **rm -rf ./*** от имени пользователя **root** и не перейдете в каталог **$LFS** или переменная окружения **LFS** не будет установлена для пользователя **root**, это уничтожит всю вашу хост-систему. **ВЫ ПРЕДУПРЕЖДЕНЫ.** |
| </WRAP> |
====7.13.2. Резервное копирование==== | |
| |
На данный момент основные программы и библиотеки собраны, и ваша система LFS находится в хорошем состоянии. Можно создать резервную копию вашей системы для последующего повторного использования. В случае фатальных сбоев в следующих главах часто оказывается, что удалить все и начать заново (более осторожно) — лучший вариант восстановления. К сожалению, все временные файлы также будут удалены. Чтобы не тратить лишнее время на повторную сборку того, что было успешно собрано, полезно создать резервную копию текущей системы LFS. | |
| |
[Примечание] Примечание | |
Все остальные шаги в этом разделе являются необязательными. Тем не менее, как только вы начнете устанавливать пакеты в Глава 8, временные файлы будут перезаписаны. Поэтому рекомендуется создание резервной копии текущей системы, как описано ниже. | |
| |
Следующие шаги выполняются вне среды chroot. Это означает, что прежде чем продолжить вы должны покинуть среду chroot. Причиной этого является то, что необходимо получить доступ к расположению файловой системы за пределами среды chroot для хранения/чтения архива резервных копий, который не должен размещаться в иерархии $LFS. | |
| |
Если вы решили сделать резервную копию, покиньте среду chroot: | |
| |
<code> | <code> |
exit | cd $LFS |
| rm -rf ./* |
| tar -xpf $HOME/lfs-temp-tools-12.1-systemd.tar.xz |
</code> | </code> |
| |
[Важно] Важно | Еще раз проверьте, правильно ли настроено окружение, и продолжайте сборку остальной части системы. |
Все следующие инструкции выполняются пользователем root в вашей хост-системе. Будьте особенно внимательны к командам, которые вы собираетесь запускать, поскольку ошибки, допущенные здесь, могут изменить вашу хост-систему. Имейте в виду, что переменная окружения LFS по умолчанию установлена для пользователя lfs, но может не быть установлена для root. | |
| |
Всякий раз, когда команды должны выполняться от root, убедитесь, что вы установили переменную LFS. | <WRAP left round tip 100%> |
| Важно |
Это обсуждалось в Раздел 2.6, «Установка переменной $LFS». | Если вы покинули среду chroot, чтобы создать резервную копию или перезапустить сборку с помощью восстановления, не забудьте проверить, что виртуальные файловые системы все еще смонтированы (**findmnt | grep $LFS**). Если они не смонтированы, перемонтируйте их сейчас, как описано в [[software:linux_server:lfs:chapter07#7.3. Подготовка виртуальных файловых систем ядра|Разделе 7.3. «Подготовка виртуальных файловых систем ядра»]], и повторно войдите в среду chroot (см. [[software:linux_server:lfs:chapter07#7.4. Вход в окружение Chroot|Раздел 7.4. «Вход в окружение Chroot»]]), прежде чем продолжить. |
| |
Перед созданием резервной копии размонтируйте виртуальные файловые системы: | |
| |
mountpoint -q $LFS/dev/shm && umount $LFS/dev/shm | |
umount $LFS/dev/pts | |
umount $LFS/{sys,proc,run,dev} | |
Убедитесь, что у вас есть как минимум 1 ГБ свободного места на диске (исходные tar-архивы будут включены в архив резервных копий) в файловой системе, содержащей каталог, в котором вы создаете архив резервных копий. | |
| |
Обратите внимание, что в приведенных ниже инструкциях указан домашний каталог пользователя root хост-системы, который обычно находится в корневой файловой системе. Замените $HOME каталогом на ваш выбор, если вы не хотите, чтобы резервная копия хранилась в домашнем каталоге пользователя root. | |
| |
Создайте архив резервной копии, выполнив следующую команду: | |
| |
[Примечание] Примечание | |
Поскольку архив резервной копии сжимается, процесс занимает довольно много времени (более 10 минут) даже на достаточно быстрой системе. | |
| |
cd $LFS | |
tar -cJpf $HOME/lfs-temp-tools-12.1-systemd.tar.xz . | |
[Примечание] Примечание | |
Если вы переходите к главе 8, не забудьте повторно войти в среду chroot, как описано в разделе «Важно» ниже. | |
| |
====7.13.3. Восстановление==== | |
| |
В случае, если были допущены какие-либо ошибки и вам нужно начать все сначала, вы можете использовать эту резервную копию для восстановления системы и сэкономить время на восстановление. Поскольку исходники находятся в папке **$LFS**, они также включены в архив резервной копии, поэтому их не нужно загружать повторно. Убедившись, что переменная **$LFS** настроена правильно, вы можете восстановить резервную копию, выполнив следующие команды: | |
| |
<WRAP left round alert 100%> | |
**Предупреждение** \\ | |
Следующие команды чрезвычайно опасны. Если вы запустите команду **rm -rf ./*** от имени пользователя **root** и не перейдете в каталог **$LFS** или переменная окружения **LFS** не будет установлена для пользователя **root**, это уничтожит всю вашу хост-систему. **ВЫ ПРЕДУПРЕЖДЕНЫ.** | |
</WRAP> | </WRAP> |
| |