Linux From Scratch - Gerard Beekmans
Шрифт:
Интервал:
Закладка:
Описания
agetty
agetty открывает tty, запрашивает регистрационное имя и запускает /bin/login.
arch
arch выводит информацию об архитектуре машины.
blockdev
blockdev позволяет вызывать ioctls блочного устройства из командной строки.
cal
cal выводит простой календарь.
cfdisk
cfdisk – редактор разделов диска, основанный на библиотеке libncurses.
chkdupexe
chkdupexe находит дублирующиеся исполняемые файлы.
col
col фильтрует перевернутые строки, поступающие с ввода.
colcrt
colcrt фильтрует вывод nroff для предпросмотра CRT.
colrm
colrm удаляет колонки из файла.
column
column объединяет списки в файл из нескольких колонок.
ctrlaltdel
ctrlaltdel устанавливает действие для комбинации клавиш CTRL+ALT+DEL (жесткая или мягкая перезагрузка).
cytune
cytune запрашивает и изменяет порог прерывания для драйвера Cyclades.
ddate
ddate конвертирует дату по Грегорианскому календарю в дату по календарю Discordian.
dmesg
dmesg просматривает и контролирует буфер kernel ring (сообщения загрузки ядра).
elvtune
elvtune позволяет настраивать the I/O elevator per block device queue basis.
fdformat
fdformat выполняет низкоуровневое форматирование дискет.
fdisk
fdisk – редактор дисковых разделов.
fsck.cramfs
На данный момент нет описания.
fsck.minix
fsck.minix проверяет целостность файловых систем MINIX.
getopt
getopt анализирует переданные из командной строки параметры таким же образом как и одноименная функция C.
hexdump
hexdump выводит указанные файлы на стандартный вывод в указанном формате (ascii, десятичный, шестнадцатеричный, восьмеричный).
hwclock
hwclock устанавливает системные часы (часы RTC или BIOS).
ipcrm
ipcrm удаляет указанный ресурс.
ipcs
ipcs выводит информацию об устройствах IPC.
isosize
isosize выводит объем файловой системы iso9660.
line
line копирует одну строку (до символа новой строки) из стандартного ввода на стандартный вывод.
logger
logger делает записи в системном журнале.
look
look выводит строки, начинающиеся с заданной.
losetup
losetup управляет устройствами loop.
mcookie
mcookie генерирует «магические» ключи для xauth.
mkfs
mkfs создает файловую систему Linux на устройстве, обычно разделе диска.
mkfs.bfs
mkfs.bfs создает файловую систему SCO bfs на устройстве, обычно разделе диска.
mkfs.cramfs
На данный момент нет описания.
mkfs.minix
mkfs.minix создает файловую систему Linux MINIX на устройстве, обычно разделе диска.
mkswap
mkswap создает пространство подкачки на устройстве или в файле.
more
more – фильтр для поэкранного просмотра текста.
mount
mount монтирует файловую систему устройства в каталог (точку монтирования).
namei
namei переходит по заданному пути до тех пор, пока не будет найдена точка терминала.
parse.bash, parse.tcsh, test.bash, test.tcsh
Это примеры скриптов, использующих getopt с BASH или TCSH.
pg
На данный момент нет описания.
pivot_root
pivot_root изменяет корневую файловую систему текущего процесса.
ramsize
ramsize запрашивает и меняет размер RAM диска.
raw
raw используется для привязки символьных устройств к блочным.
rdev
rdev запрашивает и устанавливает образ корневого устройства, устройства подкачки, объем RAM диска или видеорежим.
readprofile
readprofile выводит информацию из профиля ядра.
rename
rename переименовывает файлы.
renice
renice меняет приоритет запущенных процессов.
rev
rev инвертирует строки файлов.
rootflags
rootflags запрашивает и сохраняет дополнительную информацию, используемую для монтирования корневой файловой системы.
script
script создает скрипт терминальной сессии.
setfdprm
setfdprm устанавливает параметры гибких дисков.
setsid
setsid запускает программы в новой сессии.
setterm
setterm устанавливает параметры терминала.
sfdisk
sfdisk – редактор дисковых разделов.
swapoff
swapoff деактивирует файлы и устройства подкачки.
swapon
swapon активирует файлы и устройства подкачки.
tunelp
tunelp устанавливает различные параметры LP устройств.
ul
ul читает файл и переводит символы подчеркивания в последовательность, отображающую подчеркивание на используемом терминале.
umount
umount размонтирует смонтированную файловую систему.
vidmode
vidmode запрашивает и устанавливает видеорежим.
whereis
whereis находит исполняемый файл, исходные коды и документацию для указанной команды.
write
write посылает сообщение другому пользователю.
Зависимости Util-linux
Последняя проверка: версия 2.11n.
Bash: sh Binutils: as, ld Diffutils: cmp Fileutils: chgrp, chmod, cp, install, ln, mv, rm Gettext: msgfmt, xgettext Gcc: cc, cc1, collect2, cpp, cpp0 Glibc: rpcgen Grep: grep Make: make Sed: sed Sh-utils: uname, whoami Textutils: cat
Установка LFS-Bootscripts-1.10
Приблизительное время компиляции: 0.01 SBU Необходимое дисковое пространство: 420 KB
Инсталляция LFS-Bootscripts
Мы будем использовать скрипты инициализации SysV. Выбор в их пользу был сделан нами ввиду его распространенности и комфорта для нас. Если вы не разделяете наших предпочтений, см. руководство Марка Хеердинка по установке скриптов инициализации BSD http://hints.linuxfromscratch.org/hints/bsd-init.txt.
Если вы решите использовать скрипты BSD, или какие-либо другие, отличные от SysV, можете смело пропустить Главу 7.
Для инсталляции LFS-Bootscripts выполните:
cp -a rc.d sysconfig /etc && chown -R root:root /etc/rc.d /etc/sysconfig
Содержимое LFS-bootscripts
Последняя проверка: версия 1.10.
Scripts
checkfs, cleanfs, functions, halt, ifdown, ifup, loadkeys, localnet, mountfs, mountproc, network, rc, reboot, sendsignals, setclock, swap, sysklogd и template
Descriptions
checkfs
checkfs проверяет файловые системы перед их монтированием (исключая журналируемые и сетевые файловые системы).
cleanfs
cleanfs удаляет файлы, которые не нужно хранить между перезагрузками, такие, как /var/run/*, /var/lock/*, создает пустой /var/run/utmp и удаляет /etc/nologin, /fastboot, /forcefsck.
functions
functions содержит общие для многих скриптов функции, такие как проверки ошибок и статуса, etc.
halt
halt останавливает систему.
ifdown, ifup
ifdown и ifup используются совместно с network.
loadkeys
loadkeys загружает keymap table, соответствующую раскладке клавиатуры.
localnet
localnet устанавливает имя системы и local loopback device.
mountfs
mountfs монтирует все локальные файловые системы, не помеченные как noauto.
mountproc
mountproc монтирует файловую систему proc.
network
network активирует сетевые интерфейсы и определяет шлюз по умолчанию.
rc
rc – основной скрипт, управляющий runlevel и отвечающий за исполнение прочих скриптов в установленном порядке.
reboot
reboot перезагружает систему.
sendsignals
sendsignals проверяет, остановлены ли все процессы, перед перезагрузкой ил остановкой системы.
setclock
setclock устанавливает часы ядра на местное время в случае, если системный таймер не установлен на GMT.
swap
swap разрешает/запрещает использование файлов и разделов подкачки.
sysklogd
sysklogd запускает и останавливает демоны журнализации ядра и системы в целом.
template
template – шаблон, который можно использовать для создания собственных загрузочных скриптов для других демонов.
Зависимости LFS-Bootscripts
Последняя проверка: версия 1.10.
Fileutils: chown, cp
Конфигурация основных программ
Теперь, когда все установлено, надо сконфигурировать программы для их корректного запуска.
Конфигурация VIM
По умолчанию vim запускается в режиме совместимости с vi. Некоторым это нравиться, но нам надо запускать vim в режиме vim (иначе мы бы не включили vim в описание, а оставили бы vi). Создайте /root/.vimrc запустив следующее:
cat > /root/.vimrc << «EOF»
" Begin /root/.vimrc
set nocompatible
set bs=2
" End /root/.vimrc
EOF
Конфигурация Glibc
Нам надо создать новый файл /etc/nsswitch.conf запустив следующее:
cat > /etc/nsswitch.conf << «EOF»
# Begin /etc/nsswitch.conf
passwd: files
group: files
shadow: files
publickey: files
hosts: files dns
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: db files
# End /etc/nsswitch.conf
EOF
Скрипт tzselect должен быть запущен, и вы должны ответить на вопрос о вашей временной зоне. Когда ответите, скрипт возьмет значение вашего местоположения из файла.
Создайте /etc/localtime симлинк на:
ln -sf ../usr/share/zoneinfo/<tzselect's output> /etc/localtime
tzselect's должно иметь значение, типа EST5EDT or Canada/Eastern.
Команда на создание симлинка должна быть типа такой:
ln -sf ../usr/share/zoneinfo/EST5EDT /etc/localtime
Или:
ln -sf ../usr/share/zoneinfo/Canada/Eastern /etc/localtime
Конфигурация Dinamic Loader
По умолчанию Dinamic Loader (/lib/ld-linux.so.2) производит поиск в /lib и /usr/lib на предмет наличия dinamic libraries для программ, которые в них нуждаются. Однако, если dinamic libraries находятся в других директориях, вы должны добавить их в файл /etc/ld.so.conf, чтобы Dinamic Loader смог их найти. Две директории общеизвестны для дополнительных библиотек: /usr/local/lib и /opt/lib поэтому мы добавим эти директории в пути поиска Dinamic Loader: Создайте новый файл /etc/ld.so.conf следующей командой:
cat > /etc/ld.so.conf << «EOF»
# Begin /etc/ld.so.conf
/usr/local/lib
/opt/lib
# End /etc/ld.so.conf
EOF
Конфигурация Sysklogd