#!/bin/bash # ============================================================================ # install_scripts.sh — установка первичных скриптов в систему # ---------------------------------------------------------------------------- # Копирует скрипты этого репозитория в /usr/local/bin и настраивает # автозапуск: # * /usr/local/bin/init-system -> первичная инициализация (ручной запуск) # * /usr/local/bin/cleanup-system -> очистка системы (ручной запуск) # * /etc/systemd/system/bbox-firstboot.service -> автозапуск при первой загрузке # * /root/firstboot.log -> журнал автозапуска # ============================================================================ set -euo pipefail RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' NC='\033[0m' BIN_DIR="/usr/local/bin" SERVICE_DIR="/etc/systemd/system" MARKER="/var/lib/bbox-firstboot-done" log() { echo -e "${GREEN}[install-scripts]${NC} $*"; } warn() { echo -e "${YELLOW}[install-scripts][warn]${NC} $*"; } fail() { echo -e "${RED}[install-scripts][error]${NC} $*"; exit 1; } SCRIPT_SRC_DIR="$(cd "$(dirname "$(readlink -f "$0")")" && pwd)" install_script() { local src="$1" dst="$2" if [ ! -f "$src" ]; then warn "Не найден: $src" return 1 fi install -m 0755 "$src" "$dst" log "Установлен: $dst" } install_firstboot_service() { local unit="$SERVICE_DIR/bbox-firstboot.service" cat > "$unit" <