Инструменты пользователя

Инструменты сайта

  • Показать страницу
  • История страницы
  • Ссылки сюда
  • Оставить на чай
  • Экспорт в PDF
  • Наверх

  • software:linux_server:lfs-example:chapter03

    Различия

    Показаны различия между двумя версиями страницы.

    Ссылка на это сравнение

    Предыдущая версия справа и слеваПредыдущая версия
    Следующая версия
    Предыдущая версия
    software:linux_server:lfs-example:chapter03 [2024/07/12 08:05] – [3.1. Введение] vladpolskiysoftware:linux_server:lfs-example:chapter03 [2024/07/19 01:59] (текущий) – [3.1. Введение] vladpolskiy
    Строка 1: Строка 1:
     ======Часть II. Глава 3. Пакеты и патчи====== ======Часть II. Глава 3. Пакеты и патчи======
     +  * Пред. [[software:linux_server:lfs-example:chapter02|]]
     Содержание Содержание
       * [[software:linux_server:lfs:chapter03#3.1. Введение|3.1. Введение]]   * [[software:linux_server:lfs:chapter03#3.1. Введение|3.1. Введение]]
    Строка 17: Строка 18:
      
     <code> <code>
    -sudo mkdir -v $LFS/sources+mkdir -v $LFS/sources
     </code> </code>
     {{:software:linux_server:lfs-example:lfs_example_35.png?|}} {{:software:linux_server:lfs-example:lfs_example_35.png?|}}
     +Проверим созданный нами каталог
     +<code>
     +ls $LFS
     +</code>
     +{{:software:linux_server:lfs-example:lfs_example_36.1.png?|}}
     Сделайте этот каталог доступным для записи и установите липкий бит. «Липкий бит» означает, что даже если несколько пользователей имеют право на запись в каталог, только владелец файла может удалить файл в таком каталоге. Следующая команда активирует режимы записи и липкий бит: Сделайте этот каталог доступным для записи и установите липкий бит. «Липкий бит» означает, что даже если несколько пользователей имеют право на запись в каталог, только владелец файла может удалить файл в таком каталоге. Следующая команда активирует режимы записи и липкий бит:
      
     <code> <code>
    -sudo chmod -v a+wt $LFS/sources+chmod -v a+wt $LFS/sources
     </code> </code>
     {{:software:linux_server:lfs-example:lfs_example_36.png?|}} {{:software:linux_server:lfs-example:lfs_example_36.png?|}}
     +
     Есть несколько способов получить все необходимые пакеты и патчи для сборки LFS: Есть несколько способов получить все необходимые пакеты и патчи для сборки LFS:
      
    Строка 35: Строка 42:
      
     Чтобы загрузить все пакеты и патчи, используя {{ :software:linux_server:lfs-example:wget-list |}} в качестве входных данных для команды wget, наберите команду: Чтобы загрузить все пакеты и патчи, используя {{ :software:linux_server:lfs-example:wget-list |}} в качестве входных данных для команды wget, наберите команду:
    - 
     <code> <code>
    -wget https://book51.ru/lib/exe/fetch.php?media=software:linux_server:lfs-example:wget-list --directory-prefix=$LFS/sources+wget https://book51.ru/blfs/lfs-example/wget-list --directory-prefix=$LFS/sources
     </code> </code>
    -{{:software:linux_server:lfs-example:lfs_example_37.png?|}}+{{:software:linux_server:lfs-example:lfs_example_39.png?|}} 
     +Загрузим  файлы с помощью **wget** из нашего загруженного ** wget-list**.
     <code> <code>
    -wget https://book51.ru/lib/exe/fetch.php?media=software:linux_server:lfs-example:md5sums --directory-prefix=$LFS/sources+wget --input-file=$LFS/sources/wget-list --continue --directory-prefix=$LFS/sources
     </code> </code>
    -{{:software:linux_server:lfs-example:lfs_example_38.png?|}}+{{:software:linux_server:lfs-example:lfs_example_40.png?|}} 
     +Начиная с LFS-7.0, существует отдельный файл {{ :software:linux_server:lfs:md5sums.rar |md5sums}}, который можно использовать для проверки всех пакетов. Поместите этот файл в $LFS/sources 
     <code> <code>
    -wget --input-file=wget-list-systemd --continue --directory-prefix=$LFS/sources+wget https://book51.ru/blfs/lfs-example/md5sums --directory-prefix=$LFS/sources
     </code> </code>
    - +{{:software:linux_server:lfs-example:lfs_example_41.png?|}} 
    - +и выполните проверку:
    -Начиная с LFS-7.0, существует отдельный файл {{ :software:linux_server:lfs:md5sums.rar |md5sums}}, который можно использовать для проверки всех пакетов. Поместите этот файл в $LFS/sources и выполните:+
      
     <code> <code>
    Строка 56: Строка 63:
     popd popd
     </code> </code>
     +Команды bash **pushd/popd**  очень удобны, переводящие нас по различным точкам файловой системы с последующим возвратом назад. Команда pushd временно переводит нас в каталог $LFS/sources. Возврат назад происходит командой popd.
      
     Эту проверку можно использовать после загрузки файлов любым из перечисленных выше способов. Эту проверку можно использовать после загрузки файлов любым из перечисленных выше способов.
     +{{:software:linux_server:lfs-example:lfs_example_43.png?|}} 
     +(При проверке ошибок быть не должно!) 
     +<details> 
     +<summary>«Результат проверки»</summary> 
     +  * /mnt/lfs/sources ~ 
     +  * acl-2.3.2.tar.xz: OK 
     +  * attr-2.5.2.tar.gz: OK 
     +  * autoconf-2.72.tar.xz: OK 
     +  * automake-1.16.5.tar.xz: OK 
     +  * bash-5.2.21.tar.gz: OK 
     +  * bc-6.7.5.tar.xz: OK 
     +  * binutils-2.42.tar.xz: OK 
     +  * bison-3.8.2.tar.xz: OK 
     +  * bzip2-1.0.8.tar.gz: OK 
     +  * check-0.15.2.tar.gz: OK 
     +  * coreutils-9.4.tar.xz: OK 
     +  * dejagnu-1.6.3.tar.gz: OK 
     +  * diffutils-3.10.tar.xz: OK 
     +  * e2fsprogs-1.47.0.tar.gz: OK 
     +  * elfutils-0.190.tar.bz2: OK 
     +  * expat-2.6.0.tar.xz: OK 
     +  * expect5.45.4.tar.gz: OK 
     +  * file-5.45.tar.gz: OK 
     +  * findutils-4.9.0.tar.xz: OK 
     +  * flex-2.6.4.tar.gz: OK 
     +  * flit_core-3.9.0.tar.gz: OK 
     +  * gawk-5.3.0.tar.xz: OK 
     +  * gcc-13.2.0.tar.xz: OK 
     +  * gdbm-1.23.tar.gz: OK 
     +  * gettext-0.22.4.tar.xz: OK 
     +  * glibc-2.39.tar.xz: OK 
     +  * gmp-6.3.0.tar.xz: OK 
     +  * gperf-3.1.tar.gz: OK 
     +  * grep-3.11.tar.xz: OK 
     +  * groff-1.23.0.tar.gz: OK 
     +  * grub-2.12.tar.xz: OK 
     +  * gzip-1.13.tar.xz: OK 
     +  * iana-etc-20240125.tar.gz: OK 
     +  * inetutils-2.5.tar.xz: OK 
     +  * intltool-0.51.0.tar.gz: OK 
     +  * iproute2-6.7.0.tar.xz: OK 
     +  * Jinja2-3.1.3.tar.gz: OK 
     +  * kbd-2.6.4.tar.xz: OK 
     +  * kmod-31.tar.xz: OK 
     +  * less-643.tar.gz: OK 
     +  * lfs-bootscripts-20230728.tar.xz: OK 
     +  * libcap-2.69.tar.xz: OK 
     +  * libffi-3.4.4.tar.gz: OK 
     +  * libpipeline-1.5.7.tar.gz: OK 
     +  * libtool-2.4.7.tar.xz: OK 
     +  * libxcrypt-4.4.36.tar.xz: OK 
     +  * linux-6.7.4.tar.xz: OK 
     +  * m4-1.4.19.tar.xz: OK 
     +  * make-4.4.1.tar.gz: OK 
     +  * man-db-2.12.0.tar.xz: OK 
     +  * man-pages-6.06.tar.xz: OK 
     +  * MarkupSafe-2.1.5.tar.gz: OK 
     +  * meson-1.3.2.tar.gz: OK 
     +  * mpc-1.3.1.tar.gz: OK 
     +  * mpfr-4.2.1.tar.xz: OK 
     +  * ncurses-6.4-20230520.tar.xz: OK 
     +  * ninja-1.11.1.tar.gz: OK 
     +  * openssl-3.2.1.tar.gz: OK 
     +  * patch-2.7.6.tar.xz: OK 
     +  * perl-5.38.2.tar.xz: OK 
     +  * pkgconf-2.1.1.tar.xz: OK 
     +  * procps-ng-4.0.4.tar.xz: OK 
     +  * psmisc-23.6.tar.xz: OK 
     +  * Python-3.12.2.tar.xz: OK 
     +  * python-3.12.2-docs-html.tar.bz2: OK 
     +  * readline-8.2.tar.gz: OK 
     +  * sed-4.9.tar.xz: OK 
     +  * setuptools-69.1.0.tar.gz: OK 
     +  * shadow-4.14.5.tar.xz: OK 
     +  * sysklogd-1.5.1.tar.gz: OK 
     +  * systemd-255.tar.gz: OK 
     +  * systemd-man-pages-255.tar.xz: OK 
     +  * sysvinit-3.08.tar.xz: OK 
     +  * tar-1.35.tar.xz: OK 
     +  * tcl8.6.13-src.tar.gz: OK 
     +  * tcl8.6.13-html.tar.gz: OK 
     +  * texinfo-7.1.tar.xz: OK 
     +  * tzdata2024a.tar.gz: OK 
     +  * udev-lfs-20230818.tar.xz: OK 
     +  * util-linux-2.39.3.tar.xz: OK 
     +  * vim-9.1.0041.tar.gz: OK 
     +  * wheel-0.42.0.tar.gz: OK 
     +  * XML-Parser-2.47.tar.gz: OK 
     +  * xz-5.4.6.tar.xz: OK 
     +  * zlib-1.3.1.tar.gz: OK 
     +  * zstd-1.5.5.tar.gz: OK 
     +  * bash-5.2.21-upstream_fixes-1.patch: OK 
     +  * bzip2-1.0.8-install_docs-1.patch: OK 
     +  * coreutils-9.4-i18n-1.patch: OK 
     +  * glibc-2.39-fhs-1.patch: OK 
     +  * kbd-2.6.4-backspace-1.patch: OK 
     +  * readline-8.2-upstream_fixes-3.patch: OK 
     +  * sysvinit-3.08-consolidated-1.patch: OK 
     +
     +</details>
     Если пакеты и исправления загружаются от имени пользователя, без привилегий root, то файлы будут принадлежать этому пользователю. Файловая система записывает владельца по его UID, а UID обычного пользователя в хост-дистрибутиве не будет присвоен в LFS. Таким образом, файлы останутся принадлежащими безымянному UID в конечной системе LFS. Если вы не назначили тот же UID для своего пользователя в системе LFS, измените владельца этих файлов на root сейчас, чтобы избежать этой проблемы: Если пакеты и исправления загружаются от имени пользователя, без привилегий root, то файлы будут принадлежать этому пользователю. Файловая система записывает владельца по его UID, а UID обычного пользователя в хост-дистрибутиве не будет присвоен в LFS. Таким образом, файлы останутся принадлежащими безымянному UID в конечной системе LFS. Если вы не назначили тот же UID для своего пользователя в системе LFS, измените владельца этих файлов на root сейчас, чтобы избежать этой проблемы:
    - 
     <code> <code>
     chown root:root $LFS/sources/* chown root:root $LFS/sources/*
     </code> </code>
     +{{:software:linux_server:lfs-example:lfs_example_44.png?|}}
     =====3.2. Все пакеты===== =====3.2. Все пакеты=====
      
    Строка 73: Строка 180:
     </WRAP> </WRAP>
      
    -Загрузите или иным образом получите следующие пакеты:+<details> 
     +<summary>«Загрузите или иным образом получите следующие пакеты из этого раскрывающегося списка:»</summary>
      
       * **Acl (2.3.2) - 363 KB:**   * **Acl (2.3.2) - 363 KB:**
    Строка 512: Строка 620:
     Общий размер пакетов: примерно 505 MB Общий размер пакетов: примерно 505 MB
      
     +</details>
     =====3.3. Необходимые патчи===== =====3.3. Необходимые патчи=====
      
     В дополнение к пакетам требуется несколько патчей. Эти патчи исправляют ошибки в пакетах, которые должны быть исправлены сопровождающим. Патчи также вносят небольшие изменения, облегчающие работу с пакетами. Для создания системы LFS потребуются следующие исправления: В дополнение к пакетам требуется несколько патчей. Эти патчи исправляют ошибки в пакетах, которые должны быть исправлены сопровождающим. Патчи также вносят небольшие изменения, облегчающие работу с пакетами. Для создания системы LFS потребуются следующие исправления:
      
     +<details>
     +<summary>«Развернуть список»</summary>
       * **Bash Upstream Fixes Patch - 5.9 KB:**   * **Bash Upstream Fixes Patch - 5.9 KB:**
     Ссылка на загрузку: https://mirror.linuxfromscratch.ru/patches/lfs/12.1/bash-5.2.21-upstream_fixes-1.patch \\   Ссылка на загрузку: https://mirror.linuxfromscratch.ru/patches/lfs/12.1/bash-5.2.21-upstream_fixes-1.patch \\  
    Строка 545: Строка 656:
      
     Общий размер этих патчей: примерно 208.5 KB Общий размер этих патчей: примерно 208.5 KB
     +</details>
      
     Помимо указанных выше обязательных исправлений, существует ряд необязательных патчей, созданных сообществом LFS. Эти необязательные исправления решают незначительные проблемы или включают функции, которые не включены по умолчанию. Не стесняйтесь просматривать базу данных исправлений, расположенную по адресу https://mirror.linuxfromscratch.ru/patches/downloads/, и применять патчи, необходимые вашей системе. Помимо указанных выше обязательных исправлений, существует ряд необязательных патчей, созданных сообществом LFS. Эти необязательные исправления решают незначительные проблемы или включают функции, которые не включены по умолчанию. Не стесняйтесь просматривать базу данных исправлений, расположенную по адресу https://mirror.linuxfromscratch.ru/patches/downloads/, и применять патчи, необходимые вашей системе.
     +  * След. [[software:linux_server:lfs-example:chapter04|]]
    software/linux_server/lfs-example/chapter03.1720760745.txt.gz · Последнее изменение: 2024/07/12 08:05 — vladpolskiy