RussianLDP Рейтинг@Mail.ru
WebMoney: 
WMZ Z294115950220 
WMR R409981405661 
WME E134003968233 
YandexMoney: 
41001198119846 
E-gold:
5128052

Глава 1. Вступление

Содержание
Как Вы будете работать
Соглашения, используемые в книге
Версия книги
Список изменений
Ресурсы
Благодарности
Как Вы будете работать

Вы собираетесь собрать LFS-систему, используя ранее установленный дистрибутив Linux (такой как Debian, Mandrake, Red Hat или SuSE). Эта существующая Linux-система (основа) будет использована как отправная точка, потому, что будут необходимы некоторые программы, такие как компилятор, компоновщик и командный интерпретатор для сборки системы. Обычно все перечисленные средства доступны, если при установке дистрибутива Вы отметили пункт "разработка" ("development").

В главе 3 Вы сначала создадите новый раздел Linux native и файловую систему, место для компиляции и установки LFS-системы. Затем в главе 4 Вы скачаете все необходимые пакеты и патчи для LFS-системы и сохраните их в новой файловой системе.

Глава 5 описывает установку ряда пакетов, которые составят среду разработки (или инструментальные средства) с помощью которых Вы соберете систему в главе 6. Некоторые из этих пакетов являются рекурсивно зависимыми: к примеру, компилятору для компиляции тоже нужен компилятор.

Первым делом в главе 5 Вы соберете инструментальные средства: Binutils и GCC. Программы из этих пакетов будут скомпонованы статически для того, чтобы обеспечить независимость при их использовании от основной системы. После этого Вы соберете Glibc, библиотеку C. Glibc будет скомпилирована с использованием средств, собранных ранее. Затем Вы соберете средства снова. На этот раз Ваши средства будут динамически скомпонованы с использованием только что собранной Glibc. Все остальные пакеты из главы 5 будут собраны с использованием новых средств и динамически скомпонованы с использованием новой, независимой от основной системы, Glibc. Когда Вы все сделаем, дальнейший процесс установки LFS не будет более зависеть от основного дистрибутива и запущенного ядра.

Это большая работа, почему надо обязательно не зависеть от основного дистрибутива? Техническое описание ответа на этот вопрос содержится в самом начале главы 5, включая описание разницы между статически и динамически скомпонованными программами.

В главе 6 система LFS быдет собрана. С помощию программы chroot (change root) Вы войдете в виртуальную среду и запустите интерпретатор команд с использованием в качестве корневого каталога раздела LFS. Это намного проще перезагрузки и указаний для ядра использовать раздел LFS в качестве корневого. Помимо этого, чтобы перезагрузиться, а не использовать chroot, надо создать полностью способную к загрузке систему, что Вы еще не сделали к этому времени. Но главной причиной при использовании chroot является то, что Вы можете использовать основную систему во время сборки LFS. Пока идет компиляция, Вы можете просто переключится на другую VC (Virtual Console) или на X (графический сервер) и продолжить нормальное использование компьютера.

В заключение установки Вы установите загрузочные скрипты в главе 7, ядро и загрузчик в главе 8, а глава 9 содержит некоторые моменты, которые могут помочь по окончании прочтения книги. В конце концов Вы будете готовы перезагрузить компьютер в Вашу новую LFS-систему.

Это общее описание процесса. Более детальная информация содержится в соответствующих главах и описаниях пакетов. Если что-то не совсем ясно сейчас, не волнуйтесь, со временем Вы все поймете.

Пожалуйста, прочтите главу 2 внимательно, она содержит важную информацию, которую Вы должны принять к сведению перед работой с главой 5 и последующими главами.

Соглашения, используемые в книге

Для облегчения понимания книги, ознакомьтесь с некоторыми соглашениями, которые будут в ней использованы:

./configure --prefix=/usr

Текст такого формата предназначен для набора в командной строке в точности как на экране, помимо случаев, когда даны другие указания. Также он используется в пояснительных разделах для пояснения команды, о которой идет речь.

install-info: unknown option `--dir-file=/mnt/lfs/usr/info/dir'

Текст такого формата (моноширный) показывает вывод на экран, как результат выполнения какой-либо команды. Также он используется для указания имени файла, например /etc/ld.so.conf.

Выделение

Текст такого формата имеет несколько назначений в книге. В основном, он используется для подчеркивания наиболее важных моментов и для примеров.

http://www.linuxfromscratch.org

Текст такого формата используется для ссылок как внутри книги, так и на внешние ресурсы: руководства, сайты, места для скачивания.

cat > $LFS/etc/group << "EOF"
root:x:0:
bin:x:1:
......
EOF

Такой раздел используется, в основном длоя создания файлов конфигурации. Первая команда говорит системе создать файл $LFS/etc/group, наполняя его строчками до EOF. В командной строке эта секция печатается в точности как на экране.

Это версия 5.0 книги Linux From Scratch, датированная 5-м ноября 2003 г. Если этой книге больше двух месяцев, то более новая и улучшенная версия, возможно, уже есть на одном из зеркал из списка на http://www.linuxfromscratch.org.

Список изменений

5.0: 5 ноября 2003

  • Обновлены до:

    • automake-1.7.6
    • bash-2.05b
    • binutils-2.14
    • e2fsprogs-1.34
    • file-4.04
    • findutils-4.1.20
    • gawk-3.1.3
    • gcc-3.3.1
    • gettext-0.12.1
    • glibc-2.3.2
    • glibc-2.3.2-sscanf-1.patch
    • grep-2.5.1
    • groff-1.19
    • gzip-1.3.5
    • less-381
    • lfs-bootscripts-1.12
    • libtool-1.5
    • linux-2.4.22
    • man-1.5m2
    • man-1.5m2-80cols.patch
    • man-1.5m2-manpath.patch
    • man-1.5m2-pager.patch
    • man-pages-1.60
    • modutils-2.4.25
    • procps-3.1.11
    • procps-3.1.11.patch
    • psmisc-21.3
    • sed-4.0.7
    • sysvinit-2.85
    • tar-1.13.25
    • texinfo-4.6
    • util-linux-2.12
    • vim-6.2
  • Добавлены:

    • bash-2.05b-2.patch
    • bison-1.875-attribute.patch
    • coreutils-5.0
    • coreutils-5.0-uname.patch
    • coreutils-5.0-hostname-2.patch
    • dejagnu-1.4.3
    • expect-5.39.0
    • expect-5.39.0.patch
    • gawk-3.1.3.patch
    • gcc-2.95.3
    • gcc-2.95.3-2.patch
    • gcc-2.95.3-no-fixinc.patch
    • gcc-2.95.3-returntype-fix.patch
    • gcc-3.3.1-no_fixincludes-2.patch
    • gcc-3.3.1-specs-2.patch
    • gcc-3.3.1-suppress-libiberty.patch
    • grub-0.93
    • grub-0.93-gcc33-1.patch
    • inetutils-1.4.2
    • lfs-utils-0.3
    • ncurses-5.3-etip-2.patch
    • ncurses-5.3-vsscanf.patch
    • perl-5.8.0-libc-3.patch
    • shadow-4.0.3-newgroup-fix.patch
    • tcl-8.4.4
    • zlib-1.1.4-vsnprintf.patch
  • Удалены:

    • bin86-0.16.3
    • fileutils-4.1
    • fileutils-4.1.patch
    • findutils-4.1-segfault.patch
    • findutils-4.1.patch
    • glibc-2.3.1-libnss.patch
    • glibc-2.3.1-root-perl.patch
    • gzip-1.2.4b.patch
    • lilo-22.2
    • netkit-base-0.17
    • sh-utils-2.0
    • sh-utils-2.0.patch
    • sh-utils-2.0-hostname.patch
    • tar-1.13.patch
    • textutils-2.1
    • vim-6.1.patch
  • November 2nd, 2003 [alex]: Appendix A - Commented out all the "last checked against" lines.

  • October 28th, 2003 [greg]: Strengthened the seds in "Locking in Glibc" and "Re-adjusting the toolchain" sections.

  • October 26th, 2003 [greg]: chap 6 - Glibc: Added command to create /etc/ld.so.conf to match chap 5 Glibc. Closes bug 700.

  • October 24th, 2003 [alex]: Appendix A - Changed the dependencies to the concise format, based on Tushar's post.

  • October 23rd, 2003 [gerard] chap 9 - The End: Changed the /etc/lfs filename to /etc/lfs-release to be more consistent with other distributions out there.

  • October 23rd, 2003 [alex]: Changed most of the "chap" references to proper "xref" cross references.

  • October 22nd, 2003 [alex]: chap 6 - Gawk and Shadow: Adjusted the text. And added some markup elsewhere.

  • October 22nd, 2003 [alex]: chap 6 - Entering the chroot environment: Dropped the set +h command, as it is pointless there: it's redone several sections later.

  • October 15th, 2003 [greg]: chap 9: Reworked final strip command. Relocated paragraphs about directory removal from chap 6.

  • October 14th, 2003 [greg]: chap 8 - Making the LFS system bootable: Expanded Grub details and added a warning.

  • October 14th, 2003 [alex]: Appendix A - Updated the contents of Perl and Procps.

  • October 14th, 2003 [alex]: chap 4 and 5 - Added a suggestion to use $LFS/sources as the working and storage place.

  • October 13th, 2003 [greg]: chap 9 - Rebooting the system: Reworked umount commands.

  • October 11th, 2003 [alex]: Adapted the required disk space values and SBUs, as posted by Bruce Dubbs.

  • October 11th, 2003 [alex]: chap 5 - Toolchain technical notes: Added and changed some markup.

  • October 9th, 2003 [gerard]: Upgraded to lfs-bootscripts-1.12.

  • October 9th, 2003 [greg]: Performed internal markup reworking to fix an extraneous whitespace problem in "tidy generated" web site pages. Essentially replace all occurrences of <para><screen> with <screen> (and the matching closing tags).

  • October 9th, 2003 [alex]: chap 6 - Basic Networking: Moved one half to the Lfs-Utils section, the other half to Perl.

  • October 8th, 2003 [alex]: chap 8 - Making bootable: Adapted the style of the screens, and reworded some paragraphs.

  • October 8th, 2003 [alex]: Removed a series of unused entities.

  • October 7th, 2003 [jeremy]: Added notes to the linking tests in chap 5 and 6 stating that blank output is a bad thing.

  • October 7th, 2003 [alex]: Changed the patch entities to contain the full filename instead of just the version number.

  • October 7th, 2003 [jeremy]: chap 1 - Added a note regarding #LFS-support on IRC.

  • October 7th, 2003 [greg]: Preface: Add note about the Essential Pre-Reading Hint. Closes Bug 585.

  • October 6th, 2003 [alex]: Changed the style of the Contents subsections in chaps 5 and 6 and Appendix A.

  • October 6th, 2003 [greg]: Simplified seds in "Locking in Glibc" and "Re-adjusting the toolchain" sections. Rearranged "How things are going to be done" section.

  • October 5th, 2003 [greg]: chap 5: Added new section "Toolchain technical notes". Integrated and scaled back the old "Why we use static linking" section. Closes Bug 658.

  • October 4th, 2003 [alex]: Minor rewordings and additions of markup here and there.

  • October 4th, 2003 [greg]: chap 5 - Binutils Pass 1: Added extra LDFLAGS to ensure static rebuild of ld.

  • October 2nd, 2003 [greg]: chap 6: Reinstated INSTALL=/tools/bin/install for linker adjustment command due to issues on hosts where a ginstall symlink exists. This renders the "install" symlinks redundant, so removed those too.

  • October 2nd, 2003 [greg]: chap 6 - Shadow: Enabled MD5 passwords. Closes Bug 600.

  • September 27th, 2003 [greg]: chap 5 - Expect: Tweaked install so that redundant scripts are not installed. chap 6 - Creating essential symlinks: Removed redundant links. chap 6 - man: Removed PATH, closes Bug 574.

  • September 27th, 2003 [greg]: Added Tcl, Expect and DejaGnu items to Appendix A. Closes Bug 661.

  • September 26th, 2003 [jeremy]: Added new workaround for the devpts problems.

  • September 24th, 2003 [greg]: Various changes across the board addressing Bug 675.

  • September 24th, 2003 [alex]: Appendix A - Changed the style of the short descriptions, and the content of most of them too.

  • September 22nd, 2003 [greg]: chap 8 - Creating the /etc/fstab file: Made mounting devpts the default.

  • September 22nd, 2003 [jeremy]: Added Net-tools patch to fix mii-tool compilation.

  • September 22nd, 2003 [jwrober]: chap 5 - Updated the Why Static page to more accurately represent the difference between statically and dynamically linked binaries. Thanks to Ian Molton for pointing this out. Fixes Bug 602.

  • September 22nd, 2003 [jeremy]: Removed the make command from DejaGnu, since it performs nothing.

  • September 22nd, 2003 [jeremy]: Removed the -k from Tcl's make check, since it's not expected to have failures anymore

  • September 22nd, 2003 [jeremy]: Changed the reference to the man hint to a pointer to BLFS.

  • September 22nd, 2003 [jeremy]: Added a note to remember to mount devpts if you exit and re-enter chroot.

  • September 22nd, 2003 [jeremy]: Removed make check from Patch and Diffutils, since these tests perform no actions.

  • September 22nd, 2003 [greg]: chap 5 - Setting up the environment: Added unset CC CXX CPP LD_LIBRARY_PATH LD_PRELOAD to .bash_profile to stop accidental build breakage.

  • September 20th, 2003 [greg]: chap 5 - GCC Pass 2: Updated to gcc-3.3.1-specs-2.patch. Ncurses: added --enable-overwrite and description.

  • September 19th, 2003 [jeremy]: Corrected bash tags for proper use of the +h flag to bash.

  • September 19th, 2003 [jwrober]: Various updates to the acknowledgments page.

  • September 18th, 2003 [jeremy]: chap 5 - GCC Pass 2: Added some extra comments regarding the 3 tarballs to unpack.

  • September 17th, 2003 [greg]: chap 6 - GCC-2.95.3: Added rationale notes.

  • September 17th, 2003 [jwrober]: Updated the acknowledgments page to match the website.

  • September 17th, 2003 [jeremy]: Upgraded File to 4.04.

  • September 17th, 2003 [jeremy]: chap 6 - Changed 2 of the occurrences of exec bash --login to include the +h directive.

  • September 17th, 2003 [greg]: chaps 5 and 6 - Locking in Glibc and Re-adjusting the toolchain: Do "make -C ld install" instead of "make -C ld install-data-local" to install a whole new linker instead of just the new ldscripts.

  • September 17th, 2003 [alex]: Normalized the spelling of 'Tcl' and 'DejaGnu', following their own documentation.

  • September 17th, 2003 [alex]: Properly alphabetized the dependencies.

  • September 16th, 2003 [alex]: Finally updated the dependencies for the new Coreutils.

  • September 16th, 2003 [greg]: chaps 5 and 6 - Locking in Glibc and Re-adjusting the toolchain: Added sanity checks.

  • September 16th, 2003 [greg]: chaps 5 and 6 - Binutils, GCC, and Glibc: Added notes on the test suites.

  • September 15th, 2003 [alex]: Corrected several typos and some inconsistencies.

  • September 14th, 2003 [greg]: chap 6 - Revised chroot command: Removed no longer needed set +h.

  • September 14th, 2003 [alex]: Fixed some typos, and added some markup. Dropped the removal of program files from the Stripping section in chap 5.

  • September 14th, 2003 [greg]: chap 6 - Create essential symlinks: Add symlink /usr/lib/libgcc_s.so.1 to allow GCC abi_check to run. Future NPTL needs this as well.

  • September 13th, 2003 [jwrober]: Added PLFS hint text to the page in chap 6 for creating passwd and group: bug 596.

  • September 13th, 2003 [jwrober]: Updated the "How things are going to be done" page to include more of the PLFS hint's text.

  • September 13th, 2003 [jwrober]: Preface - Merged whoread and whonotread into a single audience page.

  • September 13th, 2003 [greg]: chap 2 - Added new section about the test suites.

  • September 12th, 2003 [jeremy]: chap 5 - Ncurses: Added description for the --without-ada configure switch.

  • September 12th, 2003 [jeremy]: chap 5 - Gawk: Added the test suite

  • September 12th, 2003 [jeremy]: chap 5 - Grep: Added descriptions of configure switches courtesy of Anderson Lizardo

  • September 12th, 2003 [gerard]: Removed /usr/lib/locale directory creation - it's created during chap 6 - Glibc where it's more relevant.

  • September 11th, 2003 [jwrober]: chap 5 - Fixed GCC Pass 2 specs patch text to be more vague, but in actuality more accurate - provided by Anderson Lizardo.

  • September 11th, 2003 [jwrober]: chap 5 - Grammar fix in Tcl install directions provided by Anderson Lizardo.

  • September 11th, 2003 [jwrober]: chap 5 - Small textual change in the locking in Glibc page for /lib/ld.so.1 provided by Anderson Lizardo.

  • September 11th, 2003 [jeremy]: Added bootloader setup to chap 8, after the addition of Grub to the book.

  • September 11th, 2003 [gerard]: Removed Bin86 and LILO and replaced it with Grub.

  • September 11th, 2003 [jeremy]: Dropped non-toolchain tests to optional actions. Added a note to use the Wiki for failed tests.

  • September 11th, 2003 [jeremy]: Added Bison patch, backported from CVS, to fix pwlib compilation problems

  • September 11th, 2003 [jeremy]: Added Greg's patch to GCC to suppress the installation of libiberty, and changed Binutils to allow its libiberty to stay.

  • September 11th, 2003 [jeremy]: Added caution tags around the reminder to not delete the Binutils source and build directories in chap 5.

  • September 11th, 2003 [jeremy]: Added new perl-libc-3 patch from Anderson Lizardo

  • September 9th, 2003 [jwrober]: Fixed the Findutils package download link on the packages page closing bug 578.

  • September 9th, 2003 [jeremy]: chap 6 - GCC 2.95.3: Removed compilation of C++, added Zack's return-type patch.

  • September 9th, 2003 [jeremy]: chap 6 - Coreutils: Added coreutils-5.0-hostname-2.patch, which suppresses the build of the hostname binary, and also suppresses its check.

  • September 9th, 2003 [jeremy]: Added some notes regarding failed tests to Glibc and DejaGnu.

  • September 9th, 2003 [jeremy]: Glibc - Added commands to both chap 5 and 6 to include minimum locales necessary for checks.

  • September 9th, 2003 [jeremy]: chap 6 - Removed Zlib's munging of CFLAGS in favor of a note to add -fPIC.

  • September 8th, 2003 [matt]: chap 5 - Fixed the rm command that deletes unneeded documentation from /tools/share.

  • September 6th, 2003 [matt]: chap 6 - Removed a reference to "the static" directory in the intro.

  • September 6th, 2003 [jeremy]: chap 4 - Updated download locations for some packages.

  • September 5th, 2003 [jeremy]: chap 5 - GCC Pass 2: Corrected the make check error explanation

  • September 5th, 2003 [jeremy]: chap 6 - Makedev: Changed the default device creation to generic-nopty, because we now use devpts by default.

  • September 5th, 2003 [jeremy]: chap 6 - GCC: Corrected wording to reflect the removal of the /usr/lib/cpp symlink.

  • September 5th, 2003 [jeremy]: Corrected perl libc patch to -2, changing the old /stage1 structure to /tools

  • September 5th, 2003 [matt]: chap 6 - Updated GCC specs patch and upgraded to man-1.5m2

  • September 4th, 2003 [jeremy]: chap 6 - Creating Directories: Eliminated the creation of /usr/tmp - Closes bug 176.

  • September 4th, 2003 [jeremy]: chap 6 - Mounting Proc: Added mounting the devpts filesystem into chroot here. Closes bug 533.

  • September 4th, 2003 [jeremy]: chap 6 - Mounting Proc: Added a warning at the end regarding checking that proc is still mounted if you stop and restart the lfs process.

  • September 4th, 2003 [jeremy]: chap 6 - Gzip: Altered text to better explain the reason behind the sed command used in the gzip installation. Closes bug 551.

  • September 4th, 2003 [jeremy]: chap 4 - Downloading patches: Added a note regarding Tushar's patches project, and a link to the patches home page.

  • September 3rd, 2003 [matt]: Fixed issue with Util-linux not utilizing headers and libraries installed in /stage1.

  • September 3rd, 2003 [matt]: Removed "rm /bin/pwd" instruction from chap 6 kernel-headers installation as the link is still required by Glibc's installation.

  • September 2nd, 2003 [alex]: Adjusted all the SBUs from the values posted by Jeremy.

  • September 2nd, 2003 [alex]: Finally got around to renaming /stage1 to /tools.

  • September 2nd, 2003 [alex]: Merged several of the main book structure files.

  • September 2nd, 2003 [alex]: Alphabetized download lists, added note to Tcl instructions.

  • September 2nd, 2003 [alex]: Reworded Organization, $LFS and SBUs sections.

  • September 1, 2003 [jeremy] - chap 6 - Groff - Added note about choice of A4 or letter for the PAGE variable.

  • September 1, 2003 [jeremy] - Added in shadow newgrp patch from Greg Schafer

  • August 31, 2003 [jeremy] - chap 6 - Inetutils - added the --disable-whois and --disable-servers flags

  • August 31, 2003 [jeremy] - Added in Greg's new instructions for GCC 3.3.1 with respect to the fixincludes process. Also added extra verbiage to the Locking in Glibc and GCC Pass 2 pages on the fixincludes process.

  • August 31st, 2003 [alex]: Reworded some paragraphs, added missing markup, and rearranged the changelog.

  • August 31st, 2003 [alex]: Wrapped the 'Last checked' lines in parentheses. Several other small retouches.

  • August 30, 2003 [jeremy] - Updated fix-includes patch to GCC 3.3.1

  • August 29, 2003 [jeremy] - Glibc - updated instructions with the sscanf patch from patches.

  • August 29, 2003 [jeremy] - Updated GCC to version 3.3.1, including fixes based on Zack's mini-hint for GCC 3.3, and patches from his docs.

  • August 29th, 2003 [alex]: Removed obsolete Netkit-base, Fileutils, Sh-utils, and Textutils files.

  • August 29th, 2003 [alex]: Added some missing markup, changed a few /static's to /stage1's.

  • August 29th, 2003 [alex]: chap 06 - Added all the missing text lines before the make checks, and reworded other lines.

  • August 28, 2003 [matt] - Updated packages to linux-2.4.22, man-pages-1.60, expect-5.39.0, findutils-4.1.20 and tcl-8.4.4

  • August 28, 2003 [jeremy] - New bash-2.05b-2.patch file to include the 7 patches from ftp.gnu.org

  • August 28th, 2003 [alex]: chap 06 - Re-adjusting toolchain: Added a forgotten backslash.

  • August 28th, 2003 [alex]: Fixed a few typos and added some missing markup.

  • August 28th, 2003 [alex]: chap 06 - Binutils and GCC: Integrated text from the pure-lfs hint.

  • August 27, 2003 [jeremy] - chap 06 - Inetutils: Added --sysconfdir=/etc --localstatedir=/var and moved the ping binary from /usr/bin to /bin

  • August 27th, 2003 [alex]: chap 06 - Glibc: Integrated text from the pure-lfs hint.

  • August 26, 2003 [jeremy] - chap 07 - Creating /etc/hosts: Changed www.mydomain.org to <value of HOSTNAME>.mydomain.org

  • August 26th, 2003 [alex]: chap 06 & 08 - Moved the installation of the kernel manpages from chap 6 to 8.

  • August 26, 2003 [jeremy] - chap 04 - Mounting the LFS partition: Added text regarding mounting with too restrictive permissions.

  • August 26, 2003 [jeremy] - chap 06 - Creating Directories: Added the creation of the /dev/shm directory.

  • August 26, 2003 [jeremy] - chap 08 - Creating fstab: Added the mount of tmpfs filesystem to /dev/shm.

  • August 26, 2003 [jeremy] - chap 08 - Kernel Installation: Added a reminder to compile tmpfs support into the kernel.

  • August 25th, 2003 [alex]: chap 06 - Rewrote the installation text of Shadow and Util-Linux while correcting some typos.

  • August 25th, 2003 [alex]: chap 05 & 06 - Made the "Locking in" and "Re-adjusting" look similar.

  • August 24th, 2003 [alex]: chap 04 - Merged the many little files into one file. Gave packages and patches a separate page.

  • August 17th, 2003 [alex]: chap 05 - From Bash to Perl: put text in between commands. Added a section on stripping unneeded symbols to decrease the size of the tools.

  • August 16th, 2003 [alex]: chap 05 - From Make to Texinfo: put text in between commands.

  • August 11th, 2003 [alex]: chap 05 - From Binutils Pass 1 to Findutils: several small textual adjustments. For the second passes not giving the contents and dependencies.

  • August 11th, 2003 [alex]: chap 04 - Listed separate core, g++, and test suite tarballs for GCC.

  • August 11th, 2003 [alex]: chap 04 - Suppressed the mention of a wget script.

  • August 9th, 2003 [alex]: chap 05 - Binutils Pass 2 and GCC Pass 2: integrated some text from the pure-lfs hint.

  • August 8th, 2003 [alex]: chap 05 - Tcl, Expect, and DejaGnu: added some text.

  • August 6th, 2003 [gerard]: Applied Alex Groenewoud's patch that adds Appendix B, providing a list of all installed programs and libraries plus references to the installation pages.

  • July 30th, 2003 [gerard]: chap 06 - Vim: Changed the way the global vimrc and gvimrc locations are defined.

  • July 30th, 2003 [gerard]: chap 05 - Binutils Pass 2: removed the lib patch, it's no longer needed with the binutils-2.14 upgrade.

  • July 30th, 2003 [gerard]: chap 05 Binutils Pass 1: Added make configure-host.

  • July 30th, 2003 [gerard]: Upgraded to binutils-2.14, linux-2.4.21, expect-5.38.4, gawk-3.1.3, texinfo-4.6, util-linux-2.12, man-pages-1.58, lfs-utils-0.3, vim-6.2, gettext-0.12.1, automake-1.7.6, file-4.03, e2fsprogs-1.34, procps-3.1.11, psmisc-21.3

  • June 3rd, 2003 [gerard]: chap 06 - Gawk: removed the removal of /bin/awk. This symlink isn't created anymore.

  • May 21st, 2003 [gerard]: chap 06 - GCC-2.95.3: Added /opt/gcc-2.95.3/lib to the /etc/ld.so.conf file so the libraries can be found during run-time.

  • May 21st, 2003 [gerard]: chap 05 - Gzip: Simplified commands.

  • May 21st, 2003 [gerard]: chap 05 - Bzip2: Simplified commands.

  • May 21st, 2003 [gerard]: chap 06 - Shadow: Added the grpconv command to complement the enabling of all shadowed passwords.

  • May 21st, 2003 [winkie]: chap 06 - Creating Files: All those ln commands can be made into a few long ln commands.

  • May 21st, 2003 [winkie]: chap 05 - Installing Glibc: Create an ld.so.conf file before building Glibc, to prevent an (harmless) error.

  • May 21st, 2003 [winkie]: chap 06 - Installing Glibc: Don't bother doing the 'exec /stage1/bin/bash' stuff, it doesn't do anything now that we use PLFS.

  • May 21st, 2003 [winkie]: chap 05 & 06 - Installing Coreutils: Only test the non-root stuff in chap 05, but test everything in chap 06.

  • May 21st, 2003 [winkie]: chap 05 - Installing Expect: Don't bother passing anything more than --prefix=/stage1. None of it is needed.

  • May 16th, 2003 [gerard]: chap 06: Net-tools: Changed make install to make update.

  • May 15th, 2003 [timothy]: chap 05: Installing Patch: Added CPPFLAGS=-D_GNU_SOURCE before ./configure to fix patch build on PPC.

  • May 13th, 2003 [gerard]: chap 06: When we exec /path/to/bash --login, also run set +h to keep the hashing option turned off. Fixes bug #531

  • May 13th, 2003 [gerard]: chap 06 - Basic Network: Changed the single quotes to double quotes in the echo command. Without it, $(hostname) won't expand which defeats the sole purpose of this command - to make Perl's hostname check work.

  • May 13th, 2003 [winkie]: Removed all occurrences &&. Updated bug syntax. Added "make check/test" where necessary in chap 6.

  • May 13th, 2003 [winkie]: chap 06: Applied "Changing ownership" patch to polish the text. Closes bug #511.

  • May 13th, 2003 [winkie]: chap 06: Applied "Configuring system components" patch to polish the text. Closes bug #510.

  • May 13th, 2003 [gerard]: chap 06: Removed Tcl, Expect and DejaGnu. Nothing uses this once past GCC in chap 6. The versions in /stage1/bin do the job just fine.

  • May 13th, 2003 [winkie]: chap 06 - Installing Shadow: Touching the /usr/bin/passwd file before installation. Not doing so results in Shadow thinking passwd will be in /bin/passwd.

  • May 13th, 2003 [winkie]: chap 06 - Installing Procps: Remove the /lib/libproc.so symlink. No package outside of Procps itself uses this library, and none should.

  • May 13th, 2003 [winkie]: chap 06 - Installing Net-tools: Run "make config" before doing make. Fixes bugs #462 and #497.

  • May 13th, 2003 [gerard]: chap 06 - Ncurses: Added the vsscanf patch.

  • May 12th, 2003 [gerard]: chap 05 - Gzip: Removed make check. It doesn't do anything.

  • May 12th, 2003 [winkie]: chap 05 - Installing Texinfo: Don't install the texmf data. It's not used by anything.

  • May 12th, 2003 [winkie]: chap 05 & 06 - Installing Ncurses: In chap 6, symlink creation has been updated to include libcurses.*, and libncurses++.a has its properties changed to 644. chap 5 doesn't need any libcurses.* so those are removed.

  • May 12th, 2003 [gerard]: chap 06 - Basic Network: Added $(hostname) to /etc/hosts, without it Perl's hostname test doesn't pass.

  • May 12th, 2003 [gerard]: chap 06 - Installing GCC: Don't try to remove /usr/include/libiberty.h. It isn't installed in the first place.

  • May 12th, 2003 [winkie]: Upgraded to findutils-4.1.7, gzip-1.3.5, and tar-1.13.25.

  • May 12th, 2003 [winkie]: chap 05 - Installing Perl: Added extra commands to build certain modules into Perl. This is to accommodate the Coreutils "make check". Partially fixes bug #528.

  • May 12th, 2003 [winkie]: chap 05 - Installing Gzip: Nothing in chap 6 checks for or uses the uncompress command, therefore we shouldn't create it.

  • May 12th, 2003 [winkie]: chap 05 - Installing Bzip2: Running "make" implies "make check", therefore there is no reason whatsoever for us to run it manually.

  • May 12th, 2003 [winkie]: chap 05 - Installing Lfs-Utils: Removed. The only package that checks for mktemp before it is installed is GCC, and that's only for gccbug.

  • May 11th, 2003 [gerard]: chap 06 - GCC-2.95.3: Added --enable-threads=posix as well to complete the C++ addition.

  • May 11th, 2003 [gerard]: chap 06 - GCC-2.95.3: Added --enable-languages=c,c++ to fix that GCC's version bug with regards to -Wreturn-type. Fixes bug #525

  • May 11th, 2003 [gerard]: chap 05 - Bash: Removed the --without-bash-malloc configure option.

  • May 11th, 2003 [gerard]: Updated to gcc-3.2.3-specs-4.patch.

  • May 11th, 2003 [winkie]: chap 06 - Setting up Basic Networking: Added section. Create a basic /etc/hosts files, and create /etc/services and /etc/protocols from IANA. Fixes bugs #359 & #515.

  • May 11th, 2003 [winkie]: Upgrading to lfs-utils-0.2.2. This adds two files needed for proper networking configuration.

  • May 11th, 2003 [winkie]: Removed Netkit-base 0.17. Added Inetutils 1.4.2. Fixes bug #490.

  • May 11th, 2003 [winkie]: Added lfs-utils-0.2.1. Fixes bug #493.

  • May 11th, 2003 [winkie]: chap 06 - Installing Ncurses: Fix up the symlinks so that they follow suit of other library symlinks. No more weirdness here.

  • May 11th, 2003 [winkie]: chap 06 - Installing Procps: Removed XSCPT="" cruft and its corresponding paragraph. This stuff isn't needed anymore.

  • May 11th, 2003 [winkie]: chap 06 - Installing Ncurses: Pass --without-debug to the configure script. It seems to have gotten lost at some point.

  • May 11th, 2003 [timothy]: chap 5 & 6 - Installing Bzip2, Installing Zlib: Modified build commands per bug #524.

  • May 11th, 2003 [winkie]: chap 06 - Installing Glibc: Install the linuxthreads man pages, too. This got lost somewhere.

  • May 11th, 2003 [winkie]: chap 06 - Installing Grep: Added --with-included-regex to prevent Grep from using Glibc's somewhat bugged regex.

  • May 11th, 2003 [winkie]: chap 06 - Installing Coreutils: Fix some functionality of the uname command with a patch.

  • May 11th, 2003 [winkie]: chap 06 - Installing Net-tools: Just do regular old "make install" instead of "make update". The latter works fine now.

  • May 11th, 2003 [winkie]: chap 06 - Installing GCC: After installation, remove /usr/include/libiberty.h. It is not used outside of the GCC build tree.

  • May 11th, 2003 [winkie]: Upgraded to Bash 2.05b and added its patch.

  • May 11th, 2003 [winkie]: chap 06 - Installing Zlib: Apply a patch to fix the buffer overflow in gzprintf().

  • May 11th, 2003 [winkie]: chap 06 - Configuring system components: Moved the creation of the btmp, wtmp, lastlog and utmp to just before Shadow, so that they are detected at their proper locations.

  • May 10th, 2003 [winkie]: chap 06 - Installing Automake: Run "make" before installing. This is needed now with the newer releases of Automake.

  • May 10th, 2003 [winkie]: chap 06 - Installing Vim: Removed the patch. It hasn't been required since GCC 3.2.1.

  • May 10th, 2003 [winkie]: chap 06 - Creating the mtab file: Removed. Mounting /proc has the side effect of creating /etc/mtab for us.

  • May 10th, 2003 [winkie]: chap 06 - Installing Make: Removed modification of /usr/bin/make file. It is no longer mistakenly installed with strange ownership or permissions.

  • May 10th, 2003 [winkie]: chap 06 - Installing Glibc: Made /etc/localtime a file instead of a symlink. The symlink method breaks on systems where /usr is a separate partition.

  • May 10th, 2003 [winkie]: chap 06 - Installing E2fsprogs: Removed install-info commands for e2fsprogs. The "make install" target handles this for us.

  • May 10th, 2003 [gerard]: Removed all CFLAGS and LDFLAGS variables where they are not essential (so, not including static binutils, GCC and compiling Zlib with -fPIC).

  • May 10th, 2003 [gerard]: chap 05 - Binutils (pass1, pass2), locking in Glibc and adjusting toolchain: Changed tooldir to /stage1 (likewise we use tooldir=/usr in chap 6).

  • May 10th, 2003 [gerard]: chap 05 - Kernel headers: Removed the usage of cp -H because there are distributions out there that do not know about the -H option.

  • May 10th, 2003 [gerard]: New gcc-3.2.3-specs-3.patch.

  • May 10th, 2003 [gerard]: chap 06 - Adjusting toolchain: Made it more architecture-independent.

  • May 10th, 2003 [gerard]: chap 05 - Locking in Glibc: Made it more architecture-independent.

  • May 7th, 2003 [gerard]: Removed GCC No Debug patches. No longer assume gcc-core and gcc-g++ packages are downloaded, so added appropriate --enable-languages options.

  • May 7th, 2003 [gerard]: Removed chap 6 - Glibc-Pass2. It's not needed anymore with the pure-lfs integration.

  • May 7th, 2003 [gerard]: Downgraded to flex-2.5.4a again. Newer versions just don't work properly.

  • May 5th, 2003 [gerard]: Removed zlib installation from chap 5 (its inclusion was a mistake).

  • May 5th, 2003 [gerard]: Various bug fixes that were introduced during the pure-lfs integration.

  • May 2nd, 2003 [gerard]: Upgraded to: automake-1.7.4, e2fsprogs-1.33, file-4.02, flex-2.5.31, gawk-3.1.2, gcc-3.2.3, glibc-2.3.2, grep-2.5.1, groff-1.19, less-381, libtool-1.5, man-1.5l, man-pages-1.56, modutils-2.4.25, procps-3.1.8, sed-4.0.7, sysvinit-2.85, texinfo-4.5, util-linux-2.11z

  • May 2nd, 2003 [gerard]: Removed fileutils-4.1, sh-utils-2.0, textutils-2.1 (all replaced with coreutils-5.0).

  • May 2nd, 2003 [gerard]: Added binutils-2.13.2-libc.patch, coreutils-5.0, dejagnu-1.4.3, expect-5.38, gawk-3.1.2, gcc-2.95.3, tcl-8.4.2

  • May 2nd, 2003 [gerard] - Integrated new installation method from the Pure LFS hint written by Greg Schafer and Ryan Oliver.

Release of version 4.1 on April 28th, 2003.

Ресурсы

ЧАВО

Если в процессе построения Вашей системы LFS Вы обнаружили ошибку, у Вас возникли вопросы, или Вы считаете, что в книгу вкралась опечатка, то просмотрите в первую очередь ЧАВО (ЧАсто задаваемые ВОпросы) на http://www.linuxfromscratch.org/faq.

IRC

Множество членов сообщества LFS используют IRC-сервер сообщества. Перед тем как использовать этот вид поддержки, проверьте LFS ЧАВО и архивы списков рассылки. Возможно, на Ваш вопрос уже есть ответ. Вы сможете найти IRC-сервер на irc.linuxfromscratch.org, порт 6667. Канал поддержки называется #LFS-support.

Списки рассылки

На linuxfromscratch.org есть несколько списков рассылки, используемых разработчиками проекта LFS. Эти списки включают, помимо прочего, список разработчиков и список поддержки.

За информацией о доступных списках рассылки, подписки на них, просмотра их архивов и т. п. загляните на http://www.linuxfromscratch.org/mail.html.

Сервер новостей

Все списки рассылки с linuxfromscratch.org также доступны в виде NNTP-сервера. Все сообщения, отправленные в списки рассылки, копируются в соответствующую группу новостей.

Сервер новостей доступен по адресу news.linuxfromscratch.org.

Зеркала сайта

Проект LFS имеет ряд зеркал в сети. Список зеркал можно увидеть на http://www.linuxfromscratch.org .

Контактная информация

Пожалуйста, направляйте все Ваши вопросы и комментарии в списки рассылки LFS (см. выше).

Но если Вы хотите обратиться лично к Джерарду Бикмансу, то пишите на gerard@linuxfromscratch.org.

Благодарности

Я хочу поблагодарить следующих людей и организации за их вклад в развитие проекта Linux From Scratch. Никто не забыт, и ничто не забыто...

Члены группы проекта

  • Gerard Beekmans <gerard@linuxfromscratch.org>: Инициатор Linux-From-Scratch, организатор проекта LFS.
  • Matthew Burgess <matthew@linuxfromscratch.org>: Поддержка LFS General Package, редактор книги LFS Book.
  • Craig Colton <meerkats@bellsouth.net>: Логотипы LFS, ALFS, BLFS и Hints Project.
  • Jeroen Coumans <jeroen@linuxfromscratch.org>: Разработка сайта, поддержка ЧАВО.
  • Bruce Dubbs <bdubbs@linuxfromscratch.org>: Лидер LFS Quality Assurance Team, редактор книги BLFS.
  • Alex Groenewoud <alex@linuxfromscratch.org>: Редактор книги LFS.
  • Mark Hymers <markh@linuxfromscratch.org>: Поддержка CVS, создатель книги BLFS, редактор книги LFS.
  • James Iwanek <iwanek@linuxfromscratch.org>: член System Administration Team.
  • Nicholas Leippe <nicholas@linuxfromscratch.org>: Поддержка Wiki.
  • Anderson Lizardo <lizardo@linuxfromscratch.org>: Создание и поддержка движка сайта.
  • Bill Maltby <bill@linuxfromscratch.org>: Организатор LFS Project.
  • Scot Mc Pherson <scot@linuxfromscratch.org>: поддержка LFS NNTP.
  • Ryan Oliver <ryan@linuxfromscratch.org>: Лидер Testing Team, соавтор PLFS.
  • James Robertson <jwrober@linuxfromscratch.org>: Поддержка Bugzilla, разработчик Wiki, редактор книги LFS.
  • Greg Schafer <greg@linuxfromscratch.org>: Поддержка инструментальных средств, редактор книги LFS, соавтор PLFS.
  • Tushar Teredesai <tushar@linuxfromscratch.org>: Редактор книги BLFS, поддержка Hints и Patches Projects.
  • Jeremy Utley <jeremy@linuxfromscratch.org>: Редактор книги LFS, поддержка Bugzilla.
  • Множество людей из списков рассылки LFS и BLFS с их поддержкой, отчетами об ошибках и за их усердие в установке пакетов.

Переводчики

Поддержка зеркал

  • Jason Andrade <jason@dstc.edu.au>: au.linuxfromscratch.org mirror.
  • William Astle <lost@l-w.net>: ca.linuxfromscratch.org mirror.
  • Baque <baque@cict.fr>: lfs.cict.fr mirror.
  • Stephan Brendel <stevie@stevie20.de>: lfs.netservice-neuss.de mirror.
  • Ian Chilton <ian@ichilton.co.uk>: us.linuxfromscratch.org, linuxfromscratch.co.uk mirrors.
  • Fredrik Danerklint <fredan-lfs@fredan.org>: se.linuxfromscratch.org mirror.
  • David D.W. Downey <pgpkeys@aeternamtech.com>: lfs.learnbyexample.com mirror.
  • Eduardo B. Fonseca <ebf@aedsolucoes.com.br>: br.linuxfromscratch.org mirror.
  • Hagen Herrschaft <hrx@hrxnet.de>: de.linuxfromscratch.org mirror.
  • Tim Jackson <tim@idge.net>: linuxfromscratch.idge.net mirror.
  • Barna Koczka <barna@siker.hu>: hu.linuxfromscratch.org mirror.
  • Roel Neefs: linuxfromscratch.rave.org mirror.
  • Simon Nicoll <sime@dot-sime.com>: uk.linuxfromscratch.org mirror.
  • Ervin S. Odisho <ervin@activalink.net>: lfs.activalink.net mirror.
  • Guido Passet <guido@primerelay.net>: nl.linuxfromscratch.org mirror.
  • Mikhail Pastukhov <miha@xuy.biz>: lfs.130th.net mirror.
  • Jeremy Polen <jpolen@rackspace.com>: us2.linuxfromscratch.org mirror.

  • UK Mirror Service: linuxfromscratch.mirror.co.uk mirror.
  • Thomas Skyt <thomas@sofagang.dk>: dk.linuxfromscratch.org mirror.
  • Antonin Sprinzl <Antonin.Sprinzl@tuwien.ac.at>: at.linuxfromscratch.org mirror.
  • Dag Stenstad <dag@stenstad.net> за обеспечение no.linuxfromscratch.org и Ian Chilton за его работу.
  • Parisian sysadmins <archive@doc.cs.univ-paris8.fr>: www2.fr.linuxfromscratch.org mirror.
  • Jesse Tie-Ten-Quee <highos@linuxfromscratch.org> за обеспечение и работу сервера linuxfromscratch.org.
  • Alexander Velin <velin@zadnik.org>: bg.linuxfromscratch.org mirror.
  • Martin Voss <Martin.Voss@ada.de>: lfs.linux-matrix.net mirror.
  • Pui Yong <pyng@spam.averse.net>: sg.linuxfromscratch.org mirror.

Материальная поддержка

  • Dean Benson <dean@vipersoft.co.uk> за финансовую поддержку.
  • DREAMWVR.COM за их спонсорскую поддержку и пожертвования для LFS и сопутствующих проектов.
  • Hagen Herrschaft <hrx@hrxnet.de> за пожертвование 2.2 GHz P4 системы, ныне работает под именем lorien.
  • O'Reilly за пожертвование книг по SQL и PHP.
  • VA Software котоая через Linux.com пожертвовала рабочую станцию VA Linux 420 (former StartX SP2).
  • Mark Stone за пожертвование shadowfax, первого сервера linuxfromscratch.org, 750 MHz P3 с 512 MB RAM и двумя 9 GB SCSI-дисками. После перемещения этот сервер переименовали в belgarath.
  • Jesse Tie-Ten-Quee <highos@linuxfromscratch.org> за пожертвование Yamaha CDRW 8824E CD-рекордер.
  • Множество людей из списков рассылки LFS за их поддержку, критику и отчеты.

Члены команды формирования

  • Timothy Bauscher <timothy@linuxfromscratch.org>: редактор книги LFS, поддержка Hints Project.
  • Robert Briggs за оригинальное пожертвование в виде доменов linuxfromscratch.org и linuxfromscratch.com.
  • Ian Chilton <ian@ichilton.co.uk> за поддержку Hints project.
  • Marc Heerdink <gimli@linuxfromscratch.org>: редактор книги LFS.
  • Seth W. Klein <sklein@linuxfromscratch.org>: создатель LFS FAQ.
  • Garrett LeSage <garrett@linuxart.com>: создатель оригиналиных баннеров LFS.
  • Simon Perreault <nomis80@videotron.ca>: поддержка Hints Project.
  • Geert Poels <Geert.Poels@skynet.be>: создатель оригинальных баннеров BLFS, основаных на баннерах LFS от Garrett LeSage.
  • Frank Skettino <bkenoah@oswd.org> за идею дизайна старого сайта: http://www.oswd.org.
  • Jesse Tie-Ten-Quee <highos@linuxfromscratch.org> за его ответы в IRC и за его безграничное терпение.

Поиск

 

Найди своих коллег!