= Настройка системы и окружения = == Окружение == * Принципы * всё текст * всё файл * на худой конец `программа → текст` | `фильтр` | `программа` * Human Readable * Human Writeable * ⇒ текстовый профиль программ/системы * .-файлы; конфигурационные файлы в $HOME * переменные окружения ⇒ просто sh-сценарии * (кстати, .profile и вот это всё) * `~/.config` (а также `.local` и `.cache`) * `vim` + regex как инструмент управления * Что делать, если не HW? Реестр? :( == ОС == * sh-сценарии как системный конструктор * достоинства: унификация, простота написания, читаемость * недостатки: скорость, текстовые потоки данных * `/etc`: настройка компонентов системы * system-wide конф. файлы * запуск системы с 0 * (пере)настройка системы по ходу * `root` как двигатель всего * а если компонент запускается не от `root`? — `su` :) * Эволюция стартового сценария системы: * `/etc/rc` * + `rc.conf` * + `rc.default` (или `/etc/defaults/rc.default`) * + «уровни выполнения» (а надо ли?) * + `.d`-схема * подробнее про `.d`-схему: HR, HW, независимость частей при установке-удалении, * + старт/стопные сценарии * + зависимости * Нерешённые проблемы/костыли: * не-root * автоматический (пере)запуск * ⇒ скорость * демонизация * …