- Shell 100%
| fonts | ||
| .bashrc | ||
| .gitignore | ||
| .zshrc | ||
| alacritty-theme | ||
| alacritty.toml | ||
| apt_list | ||
| backup_home.sh | ||
| fedora-setup.sh | ||
| gnome-shell-extensions | ||
| README.md | ||
| setup-zsh.sh | ||
| snap_list | ||
| ubuntu-setup.sh | ||
| VOT_Tampermonkey_settings.txt | ||
| zen_browser_install.sh | ||
Ubuntu 25.10 Automated Setup Script
Автоматизированный скрипт для полной настройки Ubuntu 25.10 с поддержкой модульной установки, гибкой конфигурации и восстановлением системных параметров.
🎯 Возможности
- Полная автоматизация системного конфигурирования на свежей Ubuntu
- Гибкие режимы работы (подробный, тихий, проверка, обновление-только)
- Модульная установка с возможностью пропускать отдельные компоненты
- Восстановление конфигов из резервной копии через Yandex.Disk
- Цветной вывод логов для удобного отслеживания прогресса
- Обработка ошибок с автоматическими повторами и резервными копиями
- 16-этапная установка с возможностью начать с конкретного шага
📦 Устанавливаемые компоненты
APT пакеты
- Системные утилиты:
curl,git,htop,btop,zip,unzip,net-tools - Текстовые редакторы:
vim,neovim - Shell:
zsh,powerline,fonts-powerline - Терминальные инструменты:
lsd,ranger,tldr,tree-sitter-cli,ripgrep,bat,fd-find,tmux,zellij - Мониторинг:
powertop,lm-sensors,psensor,nvtop,intel-gpu-tools - Медиа:
mpv,vlc - Разработка:
python3,python3-neovim,postgresql-client - DevOps:
docker,apache2-utils - Дополнительно:
wireshark,stress,gnome-tweaks,gnome-shell-extensions
Snap пакеты
telegram-desktopmultipassmusescorek9s- модуль
zen_browser_install.sh, который устанавливает Zen Browser.
Инструменты DevOps
- Docker & Docker Compose с настройкой группы пользователя
- Kubernetes: kubectl v1.30.0, Helm с репозиториями
- K9s - интерактивный CLI для Kubernetes
Shell & Терминал
- Oh My Zsh с плагинами и темами
- Powerlevel10k - мощная тема для Zsh
- Плагины: zsh-syntax-highlighting, zsh-autosuggestions
- AstroNvim - готовый конфиг для Neovim
Дополнительное ПО
- Yandex.Disk для синхронизации файлов
- GNOME расширения (Places Menu, и возможность установки других)
- SSH ключи - восстановление из резервной копии
- Git конфиг с предустановленными параметрами
- Zen Browser — установка из релизов GitHub с регистрацией .desktop и алиасом
zen
🚀 Быстрый старт
Подготовка
- Создайте директорию для конфигов на свежей Ubuntu:
mkdir -p ~/system_configs
- Скопируйте необходимые файлы через USB или Yandex.Disk:
~/system_configs/
├── .bashrc # конфиг для bash
├── .zshrc # конфиг для zsh
├── .p10k.zsh # конфиг Powerlevel10k (опционально)
├── fonts/ # шрифты .ttf
├── ssh_keys_backup.zip # бэкап SSH ключей
├── obsidian_1.8.9_amd64.deb # опциональные DEB пакеты
├── Yandex_Music_amd64_5.75.2.deb
├── Hiddify-Debian-x64.deb
└── zen_browser_install.sh # скрипт установки Zen Browser
- Сделайте скрипт исполняемым:
chmod +x ~/system_configs/ubuntu-setup-flags.sh
Запуск скрипта
Обязательно используйте один из режимов работы:
# Подробный режим (выводит все логи установки)
./ubuntu-setup-flags.sh -v
# Тихий режим (выводит только ошибки и успехи)
./ubuntu-setup-flags.sh -q
📋 Параметры запуска
Основные параметры
-v, --verbose Подробный режим установки
-q, --quiet Тихий режим установки (только ошибки/успех)
-h, --help Показать справку и выход
Специальные режимы
--dry-run Проверочный запуск без установки
--only-update Только обновить систему
--config-only Только восстановить конфиги
Пропуск компонентов
--skip-docker Пропустить установку Docker
--skip-kubernetes Пропустить Kubernetes инструменты
--skip-helm Пропустить только Helm
--skip-packages Пропустить все пакеты (apt/snap/deb)
Логирование
-l, --log-file FILE Сохранять логи в файл
📝 Примеры использования
# Стандартная тихая установка
./ubuntu-setup-flags.sh -q
# Подробная установка с логированием
./ubuntu-setup-flags.sh -v -l ~/setup.log
# Только обновление системы
./ubuntu-setup-flags.sh -q --only-update
# Восстановление только конфигов
./ubuntu-setup-flags.sh -q --config-only
# Проверка перед установкой
./ubuntu-setup-flags.sh --dry-run -q
# Установка без Docker
./ubuntu-setup-flags.sh -q --skip-docker
# Установка без Kubernetes
./ubuntu-setup-flags.sh -q --skip-kubernetes
# Комбо: подробная установка без Helm и Docker, с логами
./ubuntu-setup-flags.sh -v --skip-docker --skip-helm -l ~/setup.log
⚙️ 16-этапная установка
Скрипт предоставляет интерактивное меню для выбора этапа запуска:
- Обновление системы -
apt update,apt upgrade,snap refresh - Основные APT пакеты - терминальные утилиты, редакторы, инструменты
- Docker - установка и конфигурация группы пользователя
- Kubernetes - kubectl, Helm, k9s
- Yandex.Disk - облачная синхронизация
- Snap пакеты - Telegram, Multipass, MuseScore
- Шрифты - установка из
fonts/директории - Zsh и Oh My Zsh - Powerlevel10k, плагины
- Восстановление .bashrc - из резервной копии
- NeoVim с AstroNvim - IDE для терминала
- GNOME расширения - Places Menu и другие
- DEB пакеты - Obsidian, Yandex Music, Hiddify
- SSH ключи - восстановление из
ssh_keys_backup.zip - Конфигурация Git - пользователь и credHelper
- Алиасы и функции - полезные команды shell
- Финальные действия - проверка Docker, настройка Yandex.Disk
🔧 Подготовка резервной копии
Создание бэкапа конфигов
# 1. Создайте папку на Yandex.Disk
mkdir -p ~/Yandex.Disk/system_configs/fonts
# 2. Скопируйте конфиги shell
cp ~/.bashrc ~/Yandex.Disk/system_configs/
cp ~/.zshrc ~/Yandex.Disk/system_configs/
cp ~/.p10k.zsh ~/Yandex.Disk/system_configs/ # если есть
# 3. Скопируйте шрифты
cp ~/.local/share/fonts/*.ttf ~/Yandex.Disk/system_configs/fonts/
# 4. Создайте бэкап SSH ключей (зашифрованный архив)
cd ~/.ssh
zip -e -r ~/Yandex.Disk/system_configs/ssh_keys_backup.zip ./*
# 5. Переместите DEB пакеты
mv ~/Obsidian_*.deb ~/Yandex.Disk/system_configs/
mv ~/Yandex_Music_*.deb ~/Yandex.Disk/system_configs/
mv ~/Downloads/Hiddify-Debian-x64.deb ~/Yandex.Disk/system_configs/
📋 Требования
- ОС: Ubuntu 25.10 (или совместимая версия)
- Пользователь: обычный пользователь с sudo правами
- Интернет: требуется для загрузки пакетов
- Место на диске: ~20 GB для полной установки
- Время: 30-60 минут в зависимости от скорости интернета
❌ Ограничения
- Не запускайте от root - используйте обычного пользователя
- Флаги
-vи-qвзаимоисключающие - укажите только один - Требуется явно указать режим - без флага получите справку
- DRY-RUN не выполняет команды - только показывает, что будет сделано
🐛 Обработка ошибок
- Скрипт автоматически пропускает уже установленные пакеты
- При повторном запуске пропускаются выполненные этапы
- Создаются резервные копии конфигов в
~/.config_backup_YYYYMMDD_HHMMSS - Все ошибки логируются с подробным контекстом
📌 Важные замечания
-
После установки требуется перезагрузка:
sudo rebootЭто необходимо для применения изменений группы Docker
-
Powerlevel10k конфигурация:
p10k configure -
Yandex.Disk первоначальная настройка:
yandex-disk setup -
Docker работа без sudo (после перезагрузки):
docker run hello-world -
GNOME расширения устанавливаются через браузер с расширением "GNOME Shell Integration"
📁 Структура проекта
ubuntu-setup-flags.sh
├── Функции логирования
├── Парсинг аргументов
├── 16 этапов установки
└── Финальная проверка компонентов
zen_browser_install.sh # модульная установка Zen Browser, вызывается из основного скрипта
🤝 Интеграция с DevOps
Скрипт полностью интегрирован с современным DevOps стеком:
- Containerization: Docker, Docker Compose
- Orchestration: Kubernetes (kubectl, Helm)
- Monitoring: K9s CLI, GPU tools
- Configuration Management: Git, SSH keys
- Infrastructure as Code: готовность к Ansible, Terraform
📞 Поддержка и обновления
Скрипт автоматически проверяет и обновляет все установленные компоненты при каждом запуске.
📜 Лицензия
Используйте свободно для личных и коммерческих проектов.
Автор: toxusa
Последнее обновление: 2025-12-13
Версия: 1.1 (Advanced with Flags)