From 2203e654b389586650d553251b04544a34f189bf Mon Sep 17 00:00:00 2001 From: Sn4il Date: Mon, 2 Sep 2024 15:54:35 +0300 Subject: LFS 12.2 --- lfs-12.1-sysv/chapter09/usage.html | 1081 ------------------------------------ 1 file changed, 1081 deletions(-) delete mode 100644 lfs-12.1-sysv/chapter09/usage.html (limited to 'lfs-12.1-sysv/chapter09/usage.html') diff --git a/lfs-12.1-sysv/chapter09/usage.html b/lfs-12.1-sysv/chapter09/usage.html deleted file mode 100644 index 43c41a4..0000000 --- a/lfs-12.1-sysv/chapter09/usage.html +++ /dev/null @@ -1,1081 +0,0 @@ - - - - - - 9.6. Настройка и использование загрузочных скриптов System V - - - - - - - - -

- 9.6. Настройка и - использование загрузочных скриптов System V -

-
-
-

- 9.6.1. Как работают загрузочные скрипты System V? -

-

- В этой версии LFS используется специальное средство загрузки под - названием SysVinit, основанное на наборе уровней выполнения - (run-levels). Процедура - загрузки может сильно отличаться от одной системы к другой; и тот - факт, что в конкретном дистрибутиве Linux все работало должным - образом, не гарантирует, что оно будут работать так же в LFS. LFS - работает по-своему, но соблюдает общепринятые стандарты. -

-

- Существует альтернативная система загрузки, которая называется - systemd. Мы не будем - обсуждать этот вариант загрузки здесь. Для получения подробного - описания, посетите - https://www.linux.com/training-tutorials/understanding-and-using-systemd/. -

-

- SysVinit (в дальнейшем именуемый «init») использует схему уровней выполнения. - Существует семь уровней выполнения, пронумерованных от 0 до 6. (На - самом деле уровней больше, но они предназначены для особых случаев - и обычно не используются. Подробности смотрите в руководстве - init(8)). Каждый из них - соответствует действиям, которые компьютер должен выполнить при - запуске и выключении. Уровень выполнения по умолчанию — 3. Ниже - приведено описание различных уровней в том виде, в каком они - реализованы в LFS: -

-
-

- 0: выключение компьютера
- 1: однопользовательский режим
- 2: зарезервировано для настройки, в остальном аналогично 3
- - 3: многопользовательский режим с поддержкой сети
- - 4: зарезервировано для настройки, в остальном аналогично 3
- - 5: то же, что и 4, обычно используется для входа в систему с графическим интерфейсом (например, 
- - gdm от GNOME или lxdm от LXDE)
- - 6: перезагрузка компьютера -

-
-
- [Примечание] -

- Примечание -

-

- Раньше, много лет назад, уровень выполнения 2 обозначался как - «многопользовательский - режим без поддержки сети», тогда, несколько - пользователей могли подключаться к системе через последовательные - порты. В сегодняшних условиях это не имеет смысла, и мы - обозначаем этот уровень как «зарезервировано». -

-
-
-
-

- 9.6.2. Настройка - Sysvinit -

-

- Во время инициализации ядра первой запускаемой программой (если она - не переопределена в командной строке) является init. Эта программа считывает - файл инициализации /etc/inittab. - Создайте этот файл: -

-
cat > /etc/inittab << "EOF"
-# Begin /etc/inittab
-
-id:3:initdefault:
-
-si::sysinit:/etc/rc.d/init.d/rc S
-
-l0:0:wait:/etc/rc.d/init.d/rc 0
-l1:S1:wait:/etc/rc.d/init.d/rc 1
-l2:2:wait:/etc/rc.d/init.d/rc 2
-l3:3:wait:/etc/rc.d/init.d/rc 3
-l4:4:wait:/etc/rc.d/init.d/rc 4
-l5:5:wait:/etc/rc.d/init.d/rc 5
-l6:6:wait:/etc/rc.d/init.d/rc 6
-
-ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now
-
-su:S06:once:/sbin/sulogin
-s1:1:respawn:/sbin/sulogin
-
-1:2345:respawn:/sbin/agetty --noclear tty1 9600
-2:2345:respawn:/sbin/agetty tty2 9600
-3:2345:respawn:/sbin/agetty tty3 9600
-4:2345:respawn:/sbin/agetty tty4 9600
-5:2345:respawn:/sbin/agetty tty5 9600
-6:2345:respawn:/sbin/agetty tty6 9600
-
-# End /etc/inittab
-EOF
-

- Пояснения по содержимому этого файла инициализации находится на - справочной странице inittab. - Для LFS основной командой является rc. В приведенном выше файле - инициализации, rc - будет выполнять все сценарии, начинающиеся с символа S в каталоге - /etc/rc.d/rcS.d, за которыми следуют - все скрипты, начинающиеся с S в каталоге /etc/rc.d/rc?.d, где знак вопроса задается - значением initdefault. -

-

- Для удобства, скрипт rc считывает библиотеку функций - из /lib/lsb/init-functions. Эта - библиотека также читает необязательный файл конфигурации - /etc/sysconfig/rc.site. В этот файл - можно поместить любой из параметров конфигурации системы, описанных - в последующих разделах, что позволяет объединить все параметры - системы в одном файле. -

-

- Для удобства отладки скрипт functions также записывает весь вывод в - /run/var/bootlog. Поскольку каталог - /run является tmpfs, этот файл не - сохраняется при загрузке; однако его содержимое добавляется в файл - /var/log/boot.log по окончании - процесса загрузки. -

-
-

- 9.6.2.1. Изменение - уровней выполнения -

-

- Изменить уровень выполнения можно с помощью команды init <runlevel>, - где <runlevel> - - это целевой уровнем выполнения. Например, чтобы перезагрузить - компьютер, пользователь должен выполнить команду init 6, которая является - псевдонимом для команды reboot. Аналогично, init 0 - является псевдонимом для команды halt. -

-

- В каталоге /etc/rc.d есть ещё - несколько каталогов, которые выглядят как rc?.d (где ? - номер уровня выполнения), все - они содержат ряд символических ссылок. Некоторые ссылки - начинаются с K, другие - начинаются с S, и все они - содержат две цифры после начальной буквы. K означает остановить - (убить) службу, а S означает запустить службу. Числа определяют - порядок выполнения сценариев от 00 до 99—чем меньше число, тем - раньше запускается скрипт. Когда init переключается на другой - уровень выполнения, соответствующие службы либо запускаются, либо - останавливаются, в зависимости от выбранного уровня выполнения. -

-

- Реальные скрипты находятся в каталоге /etc/rc.d/init.d. Они выполняют фактическую - работу, и символические ссылки указывают на них. Ссылки К и S - указывают на один и тот же скрипт в /etc/rc.d/init.d. Это связано с тем, что - скрипты могут вызываться с разными параметрами, такими как - start, stop, restart, reload, и status. Когда встречается ссылка K, - соответствующий скрипт запускается с аргументом stop. Когда встречается S-ссылка, - соответствующий скрипт запускается с аргументом start. -

-

- Ниже приведено описание к аргументам скриптов: -

-
-
-
- start -
-
-

- Служба запущена. -

-
-
- stop -
-
-

- Служба остановлена. -

-
-
- restart -
-
-

- Служба остановлена и снова запущена. -

-
-
- reload -
-
-

- Конфигурация сервиса обновлена. Используется после - изменения файла конфигурации службы, когда перезапуск не - требуется. -

-
-
- status -
-
-

- Сообщает, запущена ли служба и с какими ИД процессов. -

-
-
-
-

- Не стесняйтесь изменять работу процесса загрузки (в конце концов, - это ваша собственная система LFS). Приведенные здесь файлы - являются примером того, как это можно сделать. -

-
-
-
-

- 9.6.3. Загрузочные скрипты Udev -

-

- Инит-скрипт /etc/rc.d/init.d/udev - запускает udevd, - который инициализирует все устройства "холодного подключения", - которые уже были созданы ядром, и ожидает выполнения всех правил. - Скрипт также отключает обработчик uevent по умолчанию /sbin/hotplug. Это сделано потому, что ядру - больше не нужно обращаться к внешнему бинарному файлу. Вместо этого - udevd будет - прослушивать сокет netlink на предмет событий, которые вызывает - ядро. -

-

- Инит-скрипт /etc/rc.d/init.d/udev_retry - решает задачу повторного запуска событий для подсистем, правила - которых могут зависеть от файловых систем, которые не монтируются - до запуска скрипта mountfs (в частности, его - вызывают /usr и /var). Этот скрипт запускается после скрипта - mountfs, поэтому эти - правила (при повторном запуске) должны сработать во второй раз. Он - настраивается в файле /etc/sysconfig/udev_retry; любые слова в этом - файле, кроме комментариев, являются именами подсистем, которые - запускаются при повторной попытке. Чтобы найти подсистему - устройства, используйте udevadm info - --attribute-walk <device>, где <device> - - это абсолютный путь в /dev или /sys, такой как /dev/sr0 или - /sys/class/rtc. -

-

- Для получения информации о загрузке модуля ядра и udev смотрите - Раздел 9.3.2.3, «Загрузка - модуля». -

-
-
-

- 9.6.4. Настройка - системного времени -

-

- Скрипт setclock - считывает время с аппаратных часов, также известных как часы BIOS - или CMOS (Complementary Metal Oxide Semiconductor). Если на - аппаратных часах установлено время UTC (всемирное скоординированное - время), этот скрипт преобразует полученное значение в локальное - время, используя файл /etc/localtime - (который сообщает программе hwclock, в какой временной зоне - находится пользователь). Невозможно определить, установленное на - аппаратных часах время UTC или же локальное, поэтому необходимо - указать его вручную. -

-

- Скрипт setclock - запускается системой udev при - загрузке, когда ядро определяет возможности аппаратного - обеспечения. Также его можно запустить вручную с параметром stop, - чтобы сохранить системное время в аппаратные часы CMOS. -

-

- Если Вы не можете вспомнить, установлено на аппаратных часах UTC - или локальное время, запустите команду hwclock --localtime --show. Она - отобразит текущее время в соответствии с аппаратными часами. Если - оно совпадает с тем, что показывают ваши настенные/наручные часы, - значит на часах CMOS установлено локальное время. Если вывод - hwclock не совпадает - с локальным временем, скорее всего, это UTC. Проверьте это, добавив - или вычитая нужное количество часов для вашего часового пояса ко - времени, отображаемому hwclock. Например, если ваш - часовой пояс это MSK, также известный как GMT +0300, то нужно - вычесть три часа из локального времени. -

-

- Измените значение переменной UTC ниже на - 0 (ноль), если на - аппаратных часах установлено НЕ UTC. -

-

- Создайте новый файл /etc/sysconfig/clock выполнив: -

-
cat > /etc/sysconfig/clock << "EOF"
-# Begin /etc/sysconfig/clock
-
-UTC=1
-
-# Set this to any options you might need to give to hwclock,
-# such as machine hardware clock type for Alphas.
-CLOCKPARAMS=
-
-# End /etc/sysconfig/clock
-EOF
-

- Хороший совет, объясняющий, как обращаться с временем в LFS, - доступен по адресу - https://mirror.linuxfromscratch.ru/hints/downloads/files/time.txt. - Там объясняются такие вопросы, как часовые пояса, UTC и переменная - окружения TZ. -

-
- [Примечание] -

- Примечание -

-

- Параметры CLOCKPARAMS и UTC также могут быть указаны в файле - /etc/sysconfig/rc.site. -

-
-
-
-

- 9.6.5. - Настройка консоли Linux -

-

- Эта секция описывает настройку скрипта console, который устанавливает - раскладку клавиатуры, шрифт консоли и уровень подробности - информации, выводимой ядром на консоль. Если Вы не планируете - использовать символы, не соответствующие стандарту ASCII (например, - знак копирайта, символы фунта и евро), и собираетесь печатать - только в английской раскладке, то можете пропустить большую часть - секции. Без файла конфигурации (или эквивалентных настроек в - rc.site), скрипт console не будет ничего делать. -

-

- Скрипт console - считывает конфигурацию из файла /etc/sysconfig/console. Решите для себя, какую - раскладку клавиатуры и какой шрифт намерены использовать. В этом - также могут помочь различные HOWTO для конкретных языков; смотрите - https://tldp.org/HOWTO/HOWTO-INDEX/other-lang.html. - Если вы все еще сомневаетесь, посмотрите в каталогах /usr/share/keymaps и /usr/share/consolefonts допустимые раскладки и - экранные шрифты. Прочтите справочные страницы loadkeys(1) и - setfont(8), чтобы - определить правильные аргументы для этих программ. -

-

- Файл /etc/sysconfig/console должен - содержать строки вида: ПЕРЕМЕННАЯ=значение. Допустимы следующие переменные: -

-
-
-
- LOGLEVEL -
-
-

- Эта переменная задает уровень подробности сообщений, - посылаемых ядром на системную консоль. Значение этой - переменной передается в качестве аргумента утилите - dmesg -n. - Допустимы уровни от 1(нет - сообщений) до 8. По умолчанию - 7, что является довольно - подробным. -

-
-
- KEYMAP -
-
-

- Эта переменная указывает аргументы для программы loadkeys, обычно это имя - загружаемой раскладки, например, it. Если эта переменная не установлена, - загрузочный скрипт не будет запускать программу loadkeys, и - будет использоваться раскладка по умолчанию. Обратите - внимание, что некоторые раскладки имеют несколько версий с - одним и тем же именем (cz и его варианты в qwerty/ и qwertz/, - es в olpc/ и qwerty/ и trf в fgGIod/ и qwerty/). В этих - случаях также следует указать родительский каталог (например, - qwerty/es), чтобы обеспечить загрузку правильной раскладки. -

-
-
- KEYMAP_CORRECTIONS -
-
-

- Эта (крайне редко используемая) переменная задает аргументы - для второго вызова программы loadkeys. Она полезна, если - стандартная раскладка вас не совсем устраивает и необходимо - внести небольшую корректировку. Например, чтобы добавить - символ евро в раскладку, которая его не содержит, присвойте - этой переменной значение euro2. -

-
-
- FONT -
-
-

- Эта переменная определяет аргументы для программы - setfont. Обычно - она включает в себя имя шрифта -m и имя загружаемой таблицы символов. - Например, чтобы загрузить шрифт «lat1-16» вместе с - таблицей символов «8859-1» (подходит для США), установите - эту переменную в lat1-16 -m - 8859-1. В режиме UTF-8 ядро использует таблицу - символов для преобразования 8-битных кодов клавиш в UTF-8, - поэтому аргумент параметра "-m" должен быть установлен на - кодировку соответствующих кодов клавиш в раскладке. -

-
-
- UNICODE -
-
-

- Присвойте этой переменной значение 1, yes или - true, чтобы переключить консоль - в режим UTF-8. Это полезно при использовании локали, - основанной на UTF-8, и не рекомендуется в иных случаях. -

-
-
- LEGACY_CHARSET -
-
-

- Для многих раскладок клавиатуры в пакете Kbd не существует - готового Unicode-варианта. Скрипт console будет на лету - конвертировать имеющуюся раскладку в UTF-8, если присвоить - этой переменной имя доступной не-UTF-8 раскладки. -

-
-
-
-

- Несколько примеров: -

-
-
    -
  • -

    - Мы будем использовать C.UTF-8 в - качестве локали для интерактивных сеансов в консоли Linux в - Раздел 9.7, «Настройка - системной локали,», поэтому нам следует установить - значение переменной UNICODE в - 1. Консольные шрифты, - поставляемые пакетом Kbd, - содержащие глифы для всех символов сообщений программы в - C.UTF-8 являются LatArCyrHeb*.psfu.gz, LatGrkCyr*.psfu.gz, Lat2-Terminus16.psfu.gz и pancyrillic.f16.psfu.gz из каталога - /usr/share/consolefonts (в - других поставляемых консольных шрифтах отсутствуют глифы - некоторых символов Unicode, таких как левые/правые кавычки и - английское тире). Поэтому установите один из них, например - Lat2-Terminus16.psfu.gz, в - качестве шрифта консоли по умолчанию: -

    -
    cat > /etc/sysconfig/console << "EOF"
    -# Begin /etc/sysconfig/console
    -
    -UNICODE="1"
    -FONT="Lat2-Terminus16"
    -
    -# End /etc/sysconfig/console
    -EOF
    -
  • -
  • -

    - Для русскоязычных пользователей может подойти такой вариант: -

    -
    cat > /etc/sysconfig/console << "EOF"
    -# Begin /etc/sysconfig/console
    -
    -UNICODE="1"
    -KEYMAP="ruwin_alt_sh-UTF-8"
    -FONT="cyr-sun16"
    -
    -# End /etc/sysconfig/console
    -EOF
    -
    - [Примечание] -

    - Примечание -

    -

    - Для поиска нужной раскладки, выполните команду: - find /usr/share/keymaps -type - f -

    -

    - ruwin_alt-UTF-8 - переключение - раскладки по Alt. -

    -

    - ruwin_alt_sh-UTF-8 - - переключение раскладки по Alt+Shift. -

    -

    - ruwin_cplk-UTF-8 - - переключение раскладки по Caps Lock. -

    -

    - ruwin_ct_sh-UTF-8 - - переключение раскладки по Ctrl+Shift. -

    -

    - ruwin_ctrl-UTF-8 - - переключение раскладки по Ctrl. -

    -

    - Посмотреть список доступных шрифтов можно с помощью - следующей команды: ls - /usr/share/consolefonts -

    -
    -
  • -
  • -

    - Для не-Unicode настройки необходимы только переменные KEYMAP - и FONT. Например, для польских пользователей может подойти - такой вариант: -

    -
    cat > /etc/sysconfig/console << "EOF"
    -# Begin /etc/sysconfig/console
    -
    -KEYMAP="pl2"
    -FONT="lat2a-16 -m 8859-2"
    -
    -# End /etc/sysconfig/console
    -EOF
    -
  • -
  • -

    - Как упоминалось выше, иногда бывает необходимо - подкорректировать раскладку. Следующий пример добавляет - символ евро к немецкой раскладке: -

    -
    cat > /etc/sysconfig/console << "EOF"
    -# Begin /etc/sysconfig/console
    -
    -KEYMAP="de-latin1"
    -KEYMAP_CORRECTIONS="euro2"
    -FONT="lat0-16 -m 8859-15"
    -UNICODE="1"
    -
    -# End /etc/sysconfig/console
    -EOF
    -
  • -
  • -

    - Ниже приведен пример с поддержкой Unicode для болгарского - языка, где существует стандартная раскладка UTF-8: -

    -
    cat > /etc/sysconfig/console << "EOF"
    -# Begin /etc/sysconfig/console
    -
    -UNICODE="1"
    -KEYMAP="bg_bds-utf8"
    -FONT="LatArCyrHeb-16"
    -
    -# End /etc/sysconfig/console
    -EOF
    -
  • -
  • -

    - Из-за использования 512-символьного шрифта LatArCyrHeb-16 в - предыдущем примере, яркие цвета больше не доступны в консоли - Linux, если используется фреймбуфер. Если Вы хотите - использовать яркие цвета без фреймбуфера и можете обходиться - без символов, не относящихся к вашему языку, тогда можно - использовать специфичный для вашего языка 256-символьный - шрифт, как показано ниже: -

    -
    cat > /etc/sysconfig/console << "EOF"
    -# Begin /etc/sysconfig/console
    -
    -UNICODE="1"
    -KEYMAP="bg_bds-utf8"
    -FONT="cyr-sun16"
    -
    -# End /etc/sysconfig/console
    -EOF
    -
  • -
  • -

    - Следующий пример демонстрирует автоматическое преобразование - раскладки из ISO-8859-15 в UTF-8 и включает "мертвые" клавиши - в режиме Unicode: -

    -
    cat > /etc/sysconfig/console << "EOF"
    -# Begin /etc/sysconfig/console
    -
    -UNICODE="1"
    -KEYMAP="de-latin1"
    -KEYMAP_CORRECTIONS="euro2"
    -LEGACY_CHARSET="iso-8859-15"
    -FONT="LatArCyrHeb-16 -m 8859-15"
    -
    -# End /etc/sysconfig/console
    -EOF
    -
  • -
  • -

    - Некоторые раскладки включают в себя "мертвые" клавиши (то - есть клавиши, нажатие которых само по себе не приводит к - появлению на экране символа, но которые влияют на символ, - генерируемый следующей клавишей) или определяют слияние - символов (например: «нажмите Ctrl+. A E чтобы получить Æ» в - раскладке по умолчанию). Linux-6.7.4 правильно интерпретирует - "мертвые" клавиши и слияния, только когда исходные символы - имеют 8-битные коды. Эта особенность не влияет на раскладки - для европейских языков, поскольку в них "сливаются" два - ASCII-символа или добавляются подчеркивания к неподчеркнутым - ASCII-символам. Однако, в режиме UTF-8 могут быть проблемы, - например, для греческого языка, когда необходимо подчеркнуть - символ α. Решением в этой ситуации будет отказ от - использования UTF-8 или установка графической системы X - Window, не имеющих подобных ограничений. -

    -
  • -
  • -

    - Для китайского, японского, корейского и некоторых других - языков невозможно настроить консоль Linux так, чтобы она - отображала все необходимые символы. Пользователи, которым - требуются эти языки, должны установить систему X Window, - шрифты, покрывающие необходимый диапазон символов, и - правильный метод ввода (например, SCIM поддерживает большое - число разнообразных языков). -

    -
  • -
-
-
- [Примечание] -

- Примечание -

-

- Файл /etc/sysconfig/console - управляет только локализацией текстовой консоли Linux. Он никак - не влияет на настройки раскладки клавиатуры и шрифтов в системе X - Window, в сессиях SSH или на последовательном терминале. В этих - ситуациях ограничения, описанные в двух расположенных выше - абзацах, не применяются. -

-
-
-
-

- 9.6.6. Создание файлов при загрузке -

-

- Иногда необходимо создавать файлы во время загрузки. Например, - часто требуется каталог /tmp/.ICE-unix . Это можно сделать, создав запись - в скрипте /etc/sysconfig/createfiles. - Формат этого файла описан в комментариях файла конфигурации по - умолчанию. -

-
-
-

- 9.6.7. - Настройка скрипта Sysklogd -

-

- Скрипт sysklogd вызывает программу - syslogd как часть - инициализации System V. Параметр -m - 0 отключает периодическую (по умолчанию - каждые 20 - минут) запись временных меток в файлы журналов, производимую - syslogd. Если Вам - необходимо включить периодическую запись временных меток, - отредактируйте файл /etc/sysconfig/rc.site и присвойте переменной - SYSKLOGD_PARMS требуемое значение. Например, чтобы сбросить все - параметры, присвойте переменной пустое значение: -

-
SYSKLOGD_PARMS=
-

- Дополнительные параметры смотрите в man syslogd. -

-
-
-

- 9.6.8. Файл - rc.site -

-

- Необязательный файл /etc/sysconfig/rc.site содержит настройки, - автоматически применяемые всеми загрузочными скриптами. Этот файл - может содержать парамеры, обычно указываемые в файлах hostname, console и - clock из каталога /etc/sysconfig/. Если значение одной и той же - переменной присваивается, как в одном из этих файлов, так и в - rc.site, приоритет имеет значение из - специализированного файла. -

-

- rc.site также содержит параметры, - которые могут настраивать другие аспекты процесса загрузки. - Установка переменной IPROMPT позволит выборочно запускать - загрузочные скрипты. Другие параметры описаны в комментариях к - файлу. Версия файла по умолчанию выглядит следующим образом: -

-
# rc.site
-# Optional parameters for boot scripts.
-
-# Distro Information
-# These values, if specified here, override the defaults
-#DISTRO="Linux From Scratch" # The distro name
-#DISTRO_CONTACT="lfs-dev@lists.linuxfromscratch.org" # Bug report address
-#DISTRO_MINI="LFS" # Short name used in filenames for distro config
-
-# Define custom colors used in messages printed to the screen
-
-# Please consult `man console_codes` for more information
-# under the "ECMA-48 Set Graphics Rendition" section
-#
-# Warning: when switching from a 8bit to a 9bit font,
-# the linux console will reinterpret the bold (1;) to
-# the top 256 glyphs of the 9bit font.  This does
-# not affect framebuffer consoles
-
-# These values, if specified here, override the defaults
-#BRACKET="\\033[1;34m" # Blue
-#FAILURE="\\033[1;31m" # Red
-#INFO="\\033[1;36m"    # Cyan
-#NORMAL="\\033[0;39m"  # Grey
-#SUCCESS="\\033[1;32m" # Green
-#WARNING="\\033[1;33m" # Yellow
-
-# Use a colored prefix
-# These values, if specified here, override the defaults
-#BMPREFIX="      "
-#SUCCESS_PREFIX="${SUCCESS}  *  ${NORMAL} "
-#FAILURE_PREFIX="${FAILURE}*****${NORMAL} "
-#WARNING_PREFIX="${WARNING} *** ${NORMAL} "
-
-# Manually set the right edge of message output (characters)
-# Useful when resetting console font during boot to override
-# automatic screen width detection
-#COLUMNS=120
-
-# Interactive startup
-#IPROMPT="yes" # Whether to display the interactive boot prompt
-#itime="3"    # The amount of time (in seconds) to display the prompt
-
-# The total length of the distro welcome string, without escape codes
-#wlen=$(echo "Welcome to ${DISTRO}" | wc -c )
-#welcome_message="Welcome to ${INFO}${DISTRO}${NORMAL}"
-
-# The total length of the interactive string, without escape codes
-#ilen=$(echo "Press 'I' to enter interactive startup" | wc -c )
-#i_message="Press '${FAILURE}I${NORMAL}' to enter interactive startup"
-
-# Set scripts to skip the file system check on reboot
-#FASTBOOT=yes
-
-# Skip reading from the console
-#HEADLESS=yes
-
-# Write out fsck progress if yes
-#VERBOSE_FSCK=no
-
-# Speed up boot without waiting for settle in udev
-#OMIT_UDEV_SETTLE=y
-
-# Speed up boot without waiting for settle in udev_retry
-#OMIT_UDEV_RETRY_SETTLE=yes
-
-# Skip cleaning /tmp if yes
-#SKIPTMPCLEAN=no
-
-# For setclock
-#UTC=1
-#CLOCKPARAMS=
-
-# For consolelog (Note that the default, 7=debug, is noisy)
-#LOGLEVEL=7
-
-# For network
-#HOSTNAME=mylfs
-
-# Delay between TERM and KILL signals at shutdown
-#KILLDELAY=3
-
-# Optional sysklogd parameters
-#SYSKLOGD_PARMS="-m 0"
-
-# Console parameters
-#UNICODE=1
-#KEYMAP="de-latin1"
-#KEYMAP_CORRECTIONS="euro2"
-#FONT="lat0-16 -m 8859-15"
-#LEGACY_CHARSET=
-
-
-
-

- 9.6.8.1. Настройка скриптов загрузки и завершения работы -

-

- Загрузочные скрипты LFS загружают и завершают работу системы - довольно эффективно, но есть несколько настроек, которые вы - можете внести в файл rc.site, чтобы еще больше повысить скорость - и настроить сообщения в соответствии с вашими предпочтениями. - Чтобы сделать это, измените настройки в приведенном выше файле - /etc/sysconfig/rc.site. -

-
-
    -
  • -

    - Во время работы загрузочного скрипта udev происходит вызов udev settle, для - завершения которого требуется некоторое время. Это время - может и не потребоваться в зависимости от конфигурации - устройств в системе. Если у вас имеются только простые - разделы и одна сетевая карта, процессу загрузки, вероятно, - не нужно будет ждать завершения работы этой команды. Чтобы - пропустить её, установите переменную OMIT_UDEV_SETTLE=y. -

    -
  • -
  • -

    - Скрипт загрузки udev_retry - также по умолчанию запускает udev settle. Команда - необходима только тогда, когда каталог /var смонтирован в отдельный раздел. Это - связано с тем, что часам нужен доступ к файлу /var/lib/hwclock/adjtime. Для других - настроек также может потребоваться дождаться завершения - udev, но в большинстве случаев в этом нет необходимости. - Пропустите команду, установив переменную - OMIT_UDEV_RETRY_SETTLE=y. -

    -
  • -
  • -

    - По умолчанию проверка файловой системы выполняется в - "тихом" режиме. Это может показаться задержкой во время - процесса загрузки. Чтобы включить вывод fsck, установите - переменную VERBOSE_FSCK=y. -

    -
  • -
  • -

    - При перезагрузке вы, возможно, захотите полностью - пропустить проверку файловой системы, fsck. Чтобы сделать это, - либо создайте файл /fastboot, - либо перезагрузите систему командой /sbin/shutdown -f -r now. - С другой стороны, вы можете принудительно проверить все - файловые системы, создав /forcefsck или запустив shutdown с параметром - -F вместо - -f. -

    -

    - Установка переменной FASTBOOT=y отключит fsck во время процесса - загрузки до тех пор, пока она не будет удалена. Это не - рекомендуется делать на постоянной основе. -

    -
  • -
  • -

    - Обычно все файлы в каталоге /tmp удаляются во время загрузки. В - зависимости от количества имеющихся файлов или каталогов - это может привести к заметной задержке в процессе загрузки. - Чтобы пропустить удаление этих файлов, установите - переменную SKIPTMPCLEAN=y. -

    -
  • -
  • -

    - Во время завершения работы, init отправляет сигнал - TERM каждой запущенной программе (например, agetty), - ожидает установленное время (по умолчанию 3 секунды), затем - посылает каждому процессу сигнал завершения(KILL) и снова - ждёт. Этот процесс повторяется в сценарии sendsignals для любых - процессов, которые не завершаются их собственными - скриптами. Задержка для init может быть - установлена путем передачи параметра. Например, чтобы - устранить задержку в init, передайте параметр - -t0 при выключении или перезагрузке (например, /sbin/shutdown -t0 -r - now). Задержку для скрипта sendsignals можно - пропустить, установив параметр KILLDELAY=0. -

    -
  • -
-
-
-
-
- - - -- cgit v1.2.3