slitaz-doc-wiki-data view pages/ru/scratchbook/boot-scripts.txt @ rev 141

Added nmon to en:handbook:systemtools
author Christian Mesh meshca@clarkson.edu
date Mon Mar 19 22:00:56 2012 +0000 (2012-03-19)
parents
children
line source
1 ======Загрузочные скрипты======
3 Скрипты запуска и завершения работы и их конфигурация.
6 =====Процесс запуска SliTaz=====
8 SliTaz не использует уровни исполнения (runlevels), вся система загружается через основной скрипт и его главный файл конфигурации. Сам скрипт запускает другие скрипты поменьше, которые управляют локализацией системы и программами в автозагрузке.
11 =====/etc/init.d/* — папка со скриптами и демонами=====
13 Папка ///etc/init.d// содержит все скрипты .rc и .sh, а также маленькие shell-скрипты и демоны, запускающие те или иные службы (например, dropbear или lighttpd). Демоны можно запускать, перезапускать и останавливать командой
15 <code># /etc/init.d/daemon [start|stop|restart]</code>
17 В SliTaz вы найдете файл ///etc/init.d/README//, описывающий основной принцип работы rc-скриптов. Кроме того, все скрипты и демоны автозагрузки могут обращаться к файлу ///etc/init.d/rc.functions//. Данный файл дает возможность добавлять в rc-скрипты различные функции. SliTaz использует функцию //status//, чтобы проверить, завершилась ли предыдущая команда успешно (при этом она возвращает код выхода 0) или нет.
20 =====/etc/init.d/rcS — основной скрипт инициализации=====
22 Скрипт ///etc/init.d/rcS// настраивает все основные службы и запускает базу системы. Вначале он монтирует файловые системы и запускает службы вроде syslogd, klogd и mdev, после чего выполняет очистку системы и некоторые другие действия. Этот скрипт использует файл конфигурации ///etc/rcS.conf//, где указаны скрипты и демоны, запускаемые при загрузке. Вы можете просмотреть этот скрипт, чтобы узнать, какие команды запускаются при старте вашей системы:
24 <code># nano rootfs/etc/init.d/rcS</code>
27 =====Специфические скрипты и демоны=====
30 ===bootopts.sh — опции режима LiveCD===
32 В этом скрипте указываются опции LiveCD, передаваемые при загрузке. К нему также обращается файл ///proc/cmdline//. Этот скрипт позволяет использовать флешку или внешний жесткий диск для раздела ///home//, указав параметр //home=usb// или //home=sda[1-9]// соответственно. Можно также указать язык системы и раскладку клавиатуры.
35 ===network.sh — запуск сети===
37 Этот скрипт ищет собственный файл конфигурации ///etc/network.conf//, где указано, какой сетевой интерфейс должен быть запущен; скажем, вы хотите запускать клиент DHCP или использовать статический IP. Если переменная $DHCP равна //yes//, то скрипт запускает клиент DHCP на интерфейсе $INTERFACE.
40 ===i18n.sh — поддержка языков===
42 SliTaz хранит настройки текущей локали в файле ///etc/locale.conf//, который считывается файлом ///etc/profile// при каждой загрузке. ///etc/locale.conf// создается при запуске системы скриптом ///etc/i18n.sh//. Этот скрипт запускает приложение tazlocale в случае, если файла ///etc/locale.conf// не существует. Тот же процесс осуществляется tazkmap в отношении файла ///etc/kmap.conf//. Обе эти утилиты находятся в папке ///sbin// и используют dialog и библиотеки ncurses.
44 Скрипт также проверяет наличие файла настроек для часового пояса ///etc/TZ//, при его отсутствии создается новый файл на основе конфигурации клавиатуры.
47 ===local.sh — локальные команды===
49 Скрипт ///etc/init.d/local.sh// позволяет системному администратору добавлять локальные команды в автозапуск. Например:
51 <code>
52 #!/bin/sh
53 # /etc/init.d/local.sh: Local startup commands.
54 # All commands here will be executed at boot time.
55 #
56 . /etc/init.d/rc.functions
58 echo "Starting local startup commands... "
59 </code>
62 ===rc.shutdown===
64 Этот скрипт вызывается файлом ///etc/inittab// при завершении работы системы. Он останавливает все демоны, указанные в переменной RUN_DAEMONS файла ///etc/rcS.conf//.
67 =====/etc/inittab — файл конфигурации для init=====
69 Это самый первый файл, к которому обращается ядро при загрузке. Он определяет скрипт инициализации (///etc/init.d/rcS//), командные оболочки (ttys) и действия в случае перезагрузки или сбоя. В [[ru:cookbook:slitaz-tools|SliTaz tools]] вы найдете полный вариант этого файла с комментариями.
71 <code>
72 # /etc/inittab: init configuration for SliTaz GNU/Linux.
73 # Boot-time system configuration/initialization script.
74 #
75 ::sysinit:/etc/init.d/rcS
77 # /sbin/getty respawn shell invocations for selected ttys.
78 tty1::respawn:/sbin/getty 38400 tty1
79 tty2::respawn:/sbin/getty 38400 tty2
80 tty3::respawn:/sbin/getty 38400 tty3
81 tty4::respawn:/sbin/getty 38400 tty4
82 tty5::respawn:/sbin/getty 38400 tty5
83 tty6::respawn:/sbin/getty 38400 tty6
85 # Stuff to do when restarting the init
86 # process, or before rebooting.
87 ::restart:/etc/init.d/rc.shutdown
88 ::restart:/sbin/init
89 ::ctrlaltdel:/sbin/reboot
90 ::shutdown:/etc/init.d/rc.shutdown
91 </code>
94 ===Следующая глава===
96 В следующей главе речь пойдет о сборке [[x-window-system|оконной системы Х]].
98 ----
99 Статью перевел [[http://forum.slitaz.org/index.php/profile/1273/Cyril|Cyril]]