KnigaRead.com/

Gerard Beekmans - Linux From Scratch

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Gerard Beekmans, "Linux From Scratch" бесплатно, без регистрации.
Перейти на страницу:

После скачивания необходимых для построения системы LFS пакетов, мы создадим раздел Linux native и файловую систему на нем. Там будет скомпилирована и установлена система LFS.

Затем, в Главе 5, мы опишем процесс инсталляции различных пакетов, которые сформируют среду разработки, которую мы используем для построения самой системы и для решения проблемы зависимостей. Например, для сборки нового компилятора необходим компилятор, а для установки оболочки необходима оболочка. Пакеты в этой главе будут слинкованы статически.

Использование статических ссылок позволяет нам избежать необходимости в наличии библиотек на момент завершения сборки. Собранная программа самодостаточна, т.к. части программы, которые обычно находятся в библиотеках, в нашем случае копируются из библиотек и вставляются в программу. Обычно программы компилируются с использованием динамических ссылок. Это позволяет сэкономить место на диске и повышает эффективность многих программ. В Главе 5 мы используем статические ссылки, т.к. теоретически мы перемещаем нашу систему разработки в виртуальную среду, где указанные библиотеки отсутствуют. Если скомпилировать программы на данном этапе с динамическими ссылками, то средства разработки не будут работать. Так как необходимые библиотеки предоставлены нам установленным дистрибутивом Linux, цель Главы 5 – создание среды разработки, в которой эти библиотеки не требуются, что делает эту среду независимым дистрибутивом.

В Главе 6 мы скомпилируем и инсталлируем конечную систему. Мы используем программу chroot, для того, чтобы войти в виртуальную среду и запустить оболочку, для которой корневой каталог будет тот раздел, куда мы установили программы из Главы 5. Это похоже на то, когда при перезагрузке системы мы даем указание ядру монтировать раздел LFS как корневой. Почему мы используем chroot вместо того, чтобы перезагрузиться? Дело в том, что создание загрузочной системы LFS со статическими ссылками подразумевает выполнение дополнительных шагов, которые сейчас излишни. А также мы хотим иметь возможность использовать наш базовый дистрибутив во время установки LFS. Пока компилируется LFS, вы сможете переключиться в другую виртуальную консоль и сессию Х и заняться своими делами.

Когда все пакеты из Главы 6 проинсталлированы, Главы 7, 8 и 9 опишут завершающую стадию установки. Следуя указаниям Главы 7, мы напишем загрузочные скрипты. С помощью Главы 8 мы скомпилируем ядро Linux и установим загрузчик. Глава 9 содержит дополнительные указания по доводке системы после прочтения книги. И, наконец, можно будет перезагрузить систему и начать использовать LFS.

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

Прочтите Главу 2 внимательно. Она объясняет некоторые важные моменты, необходимые для понимания перед тем, как приступить к Главе 5 и далее.

Условные обозначения, используемые в книге

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

./configure –prefix=/usr

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

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

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

Emphasis

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

http://www.linuxfromscratch.org/

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

cat > $LFS/etc/group << «EOF»

root:x:0:

bin:x:1:

......

EOF


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

Версия книги

Перед вами Книга LFS версии 4.0 от 5 октября 2002 г. В случае, если данная версия старше месяца, наверняка обновленная версия книги доступна для скачивания с нижеперечисленных зеркал.

Зеркала

Ниже приведен список HTTP и FTP зеркал по состоянию на 10 апреля 2002 г. Для обновления этой информации, посетите http://www.linuxfromscratch.org.

Зеркала HTTP

Северная Америка

Fremont, California, USA [8 Mbit] – http://www.linuxfromscratch.org/lfs/intro.shtml

Lufkin, Texas, USA [6 Mbit] – http://linuxfromscratch.idge.net/lfs/intro.shtml

Columbus, Ohio, United States [1 Mbit] – http://www.us.linuxfromscratch.org/lfs/intro.shtml

Европа

Mainz, Germany [100 Mbit] – http://lfs.linux-provider.net/lfs/intro.shtml

Amsterdam, The Netherlands [100 Mbit] – http://www.nl.linuxfromscratch.org/lfs/intro.shtml

Oslo, Norway [100 Mbit] – http://www.no.linuxfromscratch.org/lfs/intro.shtml

Lancaster, United Kingdom [100 Mbit] – http://linuxfromscratch.mirror.ac.uk/lfs/intro.shtml

Vienna Univ. of Technology, Austria [64 Mbit] – http://www.at.linuxfromscratch.org/lfs/intro.shtml

Karlskrona, Sweden [10 Mbit] – http://www.se.linuxfromscratch.org/lfs/intro.shtml

Freising, Germany [4 Mbit] – http://www.de.linuxfromscratch.org/lfs/intro.shtml

Teeside, United Kingdom [256 Kbit] – http://www.linuxfromscratch.co.uk/lfs/intro.shtml

Австралия

Brisbane, Australia [155 Mbit] – http://www.au.linuxfromscratch.org/lfs/intro.shtml

Зеркала FTP

Северная Америка

Fremont, California, USA [FTP] [8 Mbit] – ftp://ftp.linuxfromscratch.org

Fremont, California, USA [HTTP] [8 Mbit] – http://ftp.linuxfromscratch.org

Lufkin, Texas, USA [FTP] [6 Mbit] – ftp://linuxfromscratch.idge.net/linuxfromscratch

Lufkin, Texas, USA [HTTP] [6 Mbit] – http://ftp.idge.net/linuxfromscratch

Европа

Univ. of Twente, The Netherlands [HTTP] [100 Mbit] – http://ftp.snt.utwente.nl/linux/lfs/

Univ. of Twente, The Netherlands [FTP] [100 Mbit] – ftp://ftp.snt.utwente.nl/pub/linux/lfs/

Oslo, Norway [FTP] [100 Mbit] – ftp://ftp.no.linuxfromscratch.org/mirrors/lfs/

Lancaster, United Kingdom [HTTP] [100 Mbit] – http://www.mirror.ac.uk/sites/ftp.linuxfromscratch.org/

Vienna Univ. of Tech., Austria [FTP] [64 Mbit] – ftp://ftp.at.linuxfromscratch.org/pub/lfs/

Vienna Univ. of Tech., Austria [HTTP] [64 Mbit] – http://ftp.at.linuxfromscratch.org/pub/lfs

Karlskrona, Sweden [FTP] [10 Mbit] – ftp://ftp.se.linuxfromscratch.org/lfs

Freising, Germany [HTTP] [4 Mbit] – http://ftp.de.linuxfromscratch.org/

Freising, Germany [FTP] [4 Mbit] – ftp://ftp.de.linuxfromscratch.org/mirrors/ftp.linuxfromscratch.org/

Австралия

Brisbane, Australia [FTP] [155 Mbit] – ftp://ftp.planetmirror.com/pub/lfs/

Changelog

4.0 – 5 октября 2002 г.

3 октября 2002 [gerard]: Глава 06 – Linuxthreads: Вместо cd man используйте опцию –C для make. В этом больше смысла, и так короче.

29 сентября 2002 [gerard]: Глава 05 – GCC: Исправлен и заново инсталлирован старый патч nofixincludes.

29 сентября 2002 [markh]: Глава 05 – Bash: Правильная ссылка к предыдущему стабильному релизу Debian (potato), т.к. он не подходит к нынешнему (woody). Сообщил h2k1 на канале #lfs.

4.0-RC1 – 28 сентября 2002

Обновления:

automake-1.6.3

bin86-0.16.3

binutils-2.13

bison-1.35

diffutils-2.8.1

file-3.39

gawk-3.1.1

gcc-3.2

gettext-0.11.5

groff-1.18

gzip-1.2.4b.patch

lfs-bootscripts-1.10

linux-2.4.19

MAKEDEV-1.7

man-1.5k

man-pages-1.52

modutils-2.4.19

ncurses-5.2-2.patch

perl-5.8.0

psmisc-21

texinfo-4.2

textutils-2.1

util-linux-2.11u

Добавления:

ed-0.2.patch

fileutils-4.1.patch

gawk-3.1.1-2.patch

gcc-3.2.patch

gcc-3.2-nofixincludes.patch

glibc-2.2.5-2.patch

gzip-1.2.4b.patch

kbd-1.06-3.patch

man-1.5k.patch

ncurses-5.2.patch

procps-2.0.7.patch

sh-utils-2.0-hostname.patch

vim-6.1.patch

zlib-1.1.4

Удалено:

gzip-1.2.4a.patch

kbd-1.06-2.patch

reiserfsprogs-3.x.1b

28 сентября 2002 [gerard]: Глава 05 – GCC: Добавлен патч nofixincludes, чтобы предотвратить запуск этого скрипта в Главе 05. Он должен запускаться в Главе 06, для этого нужен отдельный патч.

28 сентября 2002 [gerard]: Глава 06 – Man: Удалена конструкция sed, теперь используется патч.

28 сентября 2002 [gerard]: Глава 06 – Bzip2: Удалено PREFIX=/usr из команды make install, т.к. PREFIX уже указывает на /usr по умолчанию.

28 сентября 2002 [gerard]: Глава 06 – Vim: Удалены записи о соответствии с FHS. Они не имеют смысла, т.к. Vim вообще не использует localstatedir.

28 сентября 2002 [timothy]: Применен грамматический патч от Bill Maltby. Изменен «$LFS» на «LFS», в случаях когда речь идет о переменной среды LFS.

23 сентября 2002 [timothy]: Применены различные грамматические патчи от Bill Maltby.

23 сентября 2002 [timothy]: Добавлено - опции tar (для ясности).

22 сентября 2002 [timothy]: Глава 06: Применен грамматический патч от Alex.

21 сентября 2002 [timothy]: Глава 02: Применены различные грамматические патчи от Bill Maltby.

21 сентября 2002 [timothy]: Глава 06 – Zlib: mv общую библиотеку в /lib.

20 сентября 2002 [timothy]: Глава 05 – GCC: Удалена опция –enable-threads=posix, т.к. компилятор С++ не собирается в данной главе.

18 сентября 2002 [timothy]: Глава 05 – Вступление: Удален параграф о статических ссылках, т.к. темы лучше раскрыта в разделе «Почему статические ссылки?»

18 сентября 2002 [timothy]: Глава 08 – Linux: Удалена команда cd.

18 сентября 2002 [timothy]: Глава 06 – Ncurses: Удалены старые пояснения команд mv /lib/*.a /usr/lib.

13 сентября 2002 [gerard]: Глава 06 – Shadow: Добавлено –libdir=/usr/lib к опциям скрипта configure. This way a proper libshadow.la is generated. Also changed the mv command to move all the libshadow.so* files to the /lib directory. The lib*a files are already in the /usr/lib directory.

September 13th, 2002 [gerard]: Chapter 06 – Man: Added another regex to the sed command that modifies the man.conf file. The added regex comments out the MANPATH /usr/man line which causes for duplicate results when using the whatis command

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*