SliTaz GNU/Linux official and community documentation wiki.
.png
This translation is older than the original page and might be outdated.
Translations of this page:

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

Скрипты запуска и завершения работы и их конфигурация.

Процесс запуска SliTaz

SliTaz не использует уровни исполнения (runlevels), вся система загружается через основной скрипт и его главный файл конфигурации. Сам скрипт запускает другие скрипты поменьше, которые управляют локализацией системы и программами в автозагрузке.

/etc/init.d/* — папка со скриптами и демонами

Папка /etc/init.d содержит все скрипты .rc и .sh, а также маленькие shell-скрипты и демоны, запускающие те или иные службы (например, dropbear или lighttpd). Демоны можно запускать, перезапускать и останавливать командой

# /etc/init.d/daemon [start|stop|restart]

В SliTaz вы найдете файл /etc/init.d/README, описывающий основной принцип работы rc-скриптов. Кроме того, все скрипты и демоны автозагрузки могут обращаться к файлу /etc/init.d/rc.functions. Данный файл дает возможность добавлять в rc-скрипты различные функции. SliTaz использует функцию status, чтобы проверить, завершилась ли предыдущая команда успешно (при этом она возвращает код выхода 0) или нет.

/etc/init.d/rcS — основной скрипт инициализации

Скрипт /etc/init.d/rcS настраивает все основные службы и запускает базу системы. Вначале он монтирует файловые системы и запускает службы вроде syslogd, klogd и mdev, после чего выполняет очистку системы и некоторые другие действия. Этот скрипт использует файл конфигурации /etc/rcS.conf, где указаны скрипты и демоны, запускаемые при загрузке. Вы можете просмотреть этот скрипт, чтобы узнать, какие команды запускаются при старте вашей системы:

# nano rootfs/etc/init.d/rcS

Специфические скрипты и демоны

bootopts.sh — опции режима LiveCD

В этом скрипте указываются опции LiveCD, передаваемые при загрузке. К нему также обращается файл /proc/cmdline. Этот скрипт позволяет использовать флешку или внешний жесткий диск для раздела /home, указав параметр home=usb или home=sda[1-9] соответственно. Можно также указать язык системы и раскладку клавиатуры.

network.sh — запуск сети

Этот скрипт ищет собственный файл конфигурации /etc/network.conf, где указано, какой сетевой интерфейс должен быть запущен; скажем, вы хотите запускать клиент DHCP или использовать статический IP. Если переменная $DHCP равна yes, то скрипт запускает клиент DHCP на интерфейсе $INTERFACE.

i18n.sh — поддержка языков

SliTaz хранит настройки текущей локали в файле /etc/locale.conf, который считывается файлом /etc/profile при каждой загрузке. /etc/locale.conf создается при запуске системы скриптом /etc/i18n.sh. Этот скрипт запускает приложение tazlocale в случае, если файла /etc/locale.conf не существует. Тот же процесс осуществляется tazkmap в отношении файла /etc/kmap.conf. Обе эти утилиты находятся в папке /sbin и используют dialog и библиотеки ncurses.

Скрипт также проверяет наличие файла настроек для часового пояса /etc/TZ, при его отсутствии создается новый файл на основе конфигурации клавиатуры.

local.sh — локальные команды

Скрипт /etc/init.d/local.sh позволяет системному администратору добавлять локальные команды в автозапуск. Например:

#!/bin/sh
# /etc/init.d/local.sh: Local startup commands.
# All commands here will be executed at boot time.
#
. /etc/init.d/rc.functions

echo "Starting local startup commands... "

rc.shutdown

Этот скрипт вызывается файлом /etc/inittab при завершении работы системы. Он останавливает все демоны, указанные в переменной RUN_DAEMONS файла /etc/rcS.conf.

/etc/inittab — файл конфигурации для init

Это самый первый файл, к которому обращается ядро при загрузке. Он определяет скрипт инициализации (/etc/init.d/rcS), командные оболочки (ttys) и действия в случае перезагрузки или сбоя. В SliTaz tools вы найдете полный вариант этого файла с комментариями.

# /etc/inittab: init configuration for SliTaz GNU/Linux.
# Boot-time system configuration/initialization script.
#
::sysinit:/etc/init.d/rcS

# /sbin/getty respawn shell invocations for selected ttys.
tty1::respawn:/sbin/getty 38400 tty1
tty2::respawn:/sbin/getty 38400 tty2
tty3::respawn:/sbin/getty 38400 tty3
tty4::respawn:/sbin/getty 38400 tty4
tty5::respawn:/sbin/getty 38400 tty5
tty6::respawn:/sbin/getty 38400 tty6

# Stuff to do when restarting the init 
# process, or before rebooting.
::restart:/etc/init.d/rc.shutdown
::restart:/sbin/init
::ctrlaltdel:/sbin/reboot
::shutdown:/etc/init.d/rc.shutdown

Следующая глава

В следующей главе речь пойдет о сборке оконной системы Х.


Статью перевел Cyril

 
ru/scratchbook/boot-scripts.txt · Last modified: 2010/09/30 20:41 by lexeii