Gerard Beekmans - Linux From Scratch
zgrep
zgrep применяет grep к сжатым файлам.
zmore
zmore – фильтр, позволяющий поэкранный просмотр (не)сжатых текстовых файлов (вроде more).
znew
znew конвертирует файлы формата .Z (compress) в .gz (gzip).
Зависимости Gzip
Последняя проверка: версия 1.2.4a.
Bash: sh Binutils: as, ld, nm Fileutils: chmod, cp, install, ln, mv, rm Gcc: cc1, collect2, cpp, cpp0, gcc Grep: egrep, grep Make: make Sed: sed Sh-utils: hostname Textutils: cat, tr
Установка Make-3.79.1
Приблизительное время компиляции: 0.26 SBU Необходимое место на диске: 8 MB
Инсталляция Make
Для инсталляции Make выполните:
./configure –prefix=$LFS/static –disable-nls && make LDFLAGS=-static && make install
Во время стадии make install на экран будет выведено следующее предупреждение:
chgrp: changing group of `/mnt/lfs/static/bin/make': Operation not permitted /mnt/lfs/static/bin/make needs to be owned by group kmem and setgid; otherwise the `-l' option will probably not work. You may need special privileges to complete the installation of /mnt/lfs/static/bin/make.
Не обращайте на него внимания. Программа make не должна принадлежать группе kmem и setgid для выполнения опции –l . (Данная опция говорит команде make не начинать новых заданий, если загрузка системы достигла определенного уровня.)
Содержимое Make
Последняя проверка: версия 3.79.1.
Программы
make
Описания
make
make автоматически определяет, какие части объемной программы нуждаются в рекомпиляции, и выполняет все необходимые для этого команды.
Зависимости Make
Последняя проверка: версия 3.79.1.
Autoconf: autoconf, autoheader Automake: aclocal, automake Bash: sh Binutils: as, ld Diffutils: cmp Fileutils: chgrp, chmod, install, ls, mv, rm Gcc: cc, cc1, collect2, cpp0, gcc Glibc: getconf Grep: egrep, fgrep, grep M4: m4 Make: make Gawk: gawk Sed: sed Sh-utils: basename, echo, expr, hostname, sleep, uname Texinfo: install-info, makeinfo Textutils: cat, tr
Установка Patch-2.5.4
Приблизительное время компиляции: 0.10 SBU Необходимое дисковое пространство: 3 MB
Инсталляция Patch
Для инсталляции Patch выполните:
CPPFLAGS=-D_GNU_SOURCE ./configure –prefix=$LFS/static && make LDFLAGS=-static && make install
Пояснения команд
CPPFLAGS=-D_GNU_SOURCE: Установка этого параметра исправляет ошибки инсталляции на платформах PPC и m68k. Этот параметр не помешает компиляции на других платформах, например на x86, поэтому мы устанавливаем его по умолчанию.
Содержимое Patch
Последняя проверка: версия 2.5.4.
Программы
patch
Описания
patch
patch модифицирует файл в соответствии с патчем. Патч обычно является списком, созданным diff, содержащим инструкции к изменению. Patch часто используется для исправлений в исходном коде, поскольку сохраняет время и место на диске. Например, имеется пакет объемом 1 MB. Следующая версия пакета имеет изменения только в 2 файлах. Новая версия может быть как новым пакетом в 1 MB или патчем в 1 KB. Таким образом, патчи позволяют избежать объемных загрузок.
Зависимости Patch
Последняя проверка: версия 2.5.4.
Bash: sh Binutils: as, ld Diffutils: cmp Fileutils: chmod, install, mv, rm Gcc: cc, cc1, collect2, cpp0, gcc Glibc: getconf Grep: egrep, grep Make: make Sed: sed Sh-utils: echo, expr, hostname, uname Textutils: cat, tr
Установка Sed-3.02
Приблизительное время компиляции: 0.09 SBU Необходимое дисковое пространство: 2 MB
Инсталляция Sed
Для инсталляции Sed выполните:
CPPFLAGS=-Dre_max_failures=re_max_failures2 ====./configure –prefix=$LFS/static && make LDFLAGS=-static && make install
Содержимое Sed
Последняя проверка: версия 3.02.
Программы
sed
Описания
sed
sed – редактор потоков. Он используется для основных преобразований текста на потоке ввода (файл или ввод из другого процесса).
Зависимости Sed
Последняя проверка: версия 3.02.
Autoconf: autoconf, autoheader Automake: aclocal, automake Bash: sh Binutils: ar, as, ld, ranlib Diffutils: cmp Fileutils: chmod, install, ls, mv, rm Gcc: cc1, collect2, cpp0, gcc Glibc: getconf Grep: egrep, fgrep, grep M4: m4 Make: make Gawk: gawk Sed: sed Sh-utils: echo, expr, hostname, sleep Texinfo: install-info, makeinfo Textutils: cat, tr
Установка Sh-utils-2.0
Приблизительное время компиляции: 0.47 SBU Необходимое дисковое пространство: 42 MB
Инсталляция Sh-utils
Перед инсталляцией Sh-utils необходимо применить патч, необходимый для избегания конфликта имен переменных с некоторыми версиями Glibc (обычно glibc-2.1.x) при компиляции sh-utils с использованием статических ссылок. Рекомендуем воспользоваться данным патчем вне зависимости от используемой версии glibc.
patch -Np1 –I ../sh-utils-2.0.patch
Для инсталляции Sh-utils выполните:
./configure –prefix=$LFS/static –disable-nls && make LDFLAGS=-static && make install
На стадии make install следующее предупреждение будет выведено на экран:
WARNING: insufficient access; not installing su NOTE: to install su, run 'make install-root' as root
Не обращайте на него внимание. В соответствии с требованиями Sh-utils для установки программы su, вы должны находиться в системе в режиме пользователя root. Смело проигнорируйте это предупреждение, т.к. на данном этапе команда su не нужна, мы установим ее должным образом при перекомпилировании пакета Sh-utils в Главе 6.
Содержимое Sh-utils
Последняя проверка: версия 2.0.
Программы
basename, chroot, date, dirname, echo, env, expr, factor, false, groups, hostid, id, logname, nice, nohup, pathchk, pinky, printenv, printf, pwd, seq, sleep, stty, su, tee, test, true, tty, uname, uptime, users, who, whoami и yes
Описания
basename
basename удаляет каталоги и суффиксы из имен файлов.
chroot
chroot запускает команду или оболочку в указанном корневом каталоге.
date
date выводит текущее время в указанном формате или устанавливает.
dirname
dirname удаляет суффиксы, не относящиеся к каталогам, из имен файлов.
echo
echo выводит строку текста.
env
env запускает программу в измененном окружении.
expr
expr вычисляет выражения.
factor
factor выводит разложение на простые множители всех указанных целых чисел.
false
false всегда завершается с кодом «ошибка».
groups
groups выводит группу, к которой принадлежит пользователь.
hostid
hostid выводит числовой идентификатор (шестнадцатеричный) текущего хоста.
id
id выводит пользовательский и групповой ID текущего или заданного пользователя.
logname
logname выводит регистрационное имя текущего пользователя.
nice
nice запускает программу с заданным приоритетом.
nohup
nohup выполняет команду, защищенную от зависаний, с выводом в журнальный файл.
pathchk
pathchk проверяет наличие файла.
pinky
pinky – простая утилита finger, показывающая информацию о конкретном пользователе.
printenv
printenv выводит значения переменных окружения.
printf
printf выводит форматированные данные (аналогично функции printf в C).
pwd
pwd выводит имя текущего каталога.
seq
seq выводит числа в заданном диапазоне с заданным шагом.
sleep
sleep делает задержку на указанное количество времени.
stty
stty выводит и изменяет настройки терминала.
su
su запускает командный интерпретатор с правами указанного пользователя и группы.
tee
tee считывает данные со стандартного ввода и записывает их на стандартный вывод и в файлы.
test
test проверяет типы файлов и сравнивает значения.
true
true всегда завершается с кодом «успех».
tty
tty выводит файловое имя терминала, подключенного к стандартному вводу.
uname
uname выводит информацию о системе.
uptime
uptime сообщает, как долго активна система.
users
users выводит имена пользователей, зарегистрированных на локальном хосте.
who
who показывает зарегистрированных пользователей.
whoami
whoami выводит имя пользователя, ассоциированное с текущим пользовательским ID.
yes
yes выводит 'y' или заданную строку до принудительного завершения.
Зависимости Sh-utils
Последняя проверка: версия 2.0.
Autoconf: autoconf, autoheader Automake: aclocal, automake Bash: sh Binutils: ar, as, ld, ranlib Diffutils: cmp Fileutils: chmod, chown, install, ls, mv, rm Gettext: msgfmt, xgettext Gcc: cc, cc1, collect2, cpp0, gcc Glibc: getconf Grep: egrep, fgrep, grep M4: m4 Make: make Gawk: gawk Perl: perl Sed: sed Sh-utils: basename, echo, expr, hostname, sleep, uname Tar: tar Texinfo: install-info, makeinfo Textutils: cat, tr
Установка Tar-1.13
Приблизительное время компиляции: 0.25 SBU Необходимое дисковое пространство: 10 MB
Инсталляция Tar
Для того чтобы использовать tar с файлами формата bzip2 напрямую, примените патч с FTP-сервера LFS. Этот патч добавляет опцию -j, которая работает с командой tar также как опция -z (которая используется с файлами gzip).
Примените патч следующим образом:
patch -Np1 -i ../tar-1.13.patch
Для инсталляции Tar выполните:
./configure –prefix=$LFS/static –disable-nls && make LDFLAGS=-static && make install
Содержимое Tar
Последняя проверка: версия 1.13.
Программы
rmt и tar
Описания
rmt
rmt используется другими программами для удаленного управления приводом магнитных лент.
tar
tar – программа архивации, сохраняющая и извлекающая файлы из архивов tar.
Зависимости Tar
Последняя проверка: версия 1.13.
Autoconf: autoconf, autoheader Automake: aclocal, automake Bash: sh Binutils: ar, as, ld, ranlib Diffutils: cmp Fileutils: chmod, install, ls, mv, rm Gettext: msgfmt, xgettext Gcc: cc, cc1, collect2, cpp0, gcc Glibc: getconf Grep: egrep, fgrep, grep M4: m4 Make: make Gawk: gawk Net-tools: hostname Patch: patch Sed: sed Sh-utils: basename, echo, expr, sleep, uname Texinfo: install-info, makeinfo Textutils: cat, tr
Установка Texinfo-4.2
Приблизительное время компиляции: 0.47 SBU Необходимое дисковое пространство: 19 MB
Инсталляция Texinfo
Для установки Texinfo выполните:
LDFLAGS=-static ./configure –prefix=$LFS/static –disable-nls && make && make install
Содержимое Texinfo
Последняя проверка: версия 4.2.
Программы
info, infokey, install-info, makeinfo, texi2dvi и texindex