💻 Справочник команд¶
Все доступные команды и скрипты для работы с Home Assistant.
📑 Содержание¶
- 🔧 Основные скрипты
- setup.sh
- mount.sh
- check.sh
- 📦 Скрипты в scripts/
- scripts/setup_samba.sh
- scripts/deploy.sh
- scripts/backup.sh
- scripts/restore.sh
- scripts/view_logs.sh
- 🔐 SSH команды
- Подключение
- Выполнение команды без входа
- Полезные команды HA
- 📁 SAMBA операции
- Монтирование
- Работа с файлами
- Проверка
- 📝 YAML валидация
- Проверка синтаксиса
- Проверка через HA
- 🗂️ Git команды
- Инициализация (делается автоматически)
- Ежедневное использование
- Откат изменений
- 🤖 MCP команды (через AI в Cursor)
- 🛠️ Полезные алиасы
- 📊 Проверка статуса
- Быстрая проверка
- Детальная проверка
- 🔄 Копирование файлов
- С сервера на локальный
- С локального на сервер
- 📈 Мониторинг
- Проверка доступности
- Использование ресурсов
- Логи в реальном времени
- 🎯 Быстрая справка
🔧 Основные скрипты¶
setup.sh¶
Установка всех зависимостей (выполняется один раз).
Что делает:
- Устанавливает системные пакеты
- Устанавливает Python пакеты
- Создаёт SSH ключ
- Создаёт директории
mount.sh¶
Монтирование конфигов Home Assistant через SAMBA.
Что делает:
- Монтирует
//your-server/config
в/mnt/hassio
- Создаёт символическую ссылку
config/
в проекте - Показывает содержимое
Размонтировать:
check.sh¶
Проверка состояния окружения.
Проверяет:
- SSH подключение
- SAMBA монтирование
- Доступ к configuration.yaml
- MCP конфигурацию
📦 Скрипты в scripts/¶
scripts/setup_samba.sh¶
Создание файла с SAMBA credentials.
Создаёт: .samba-credentials
с username/password
scripts/deploy.sh¶
Безопасное развертывание изменений.
Что делает (автоматически):
- Создаёт бэкап
- Проверяет YAML синтаксис
- Валидирует конфигурацию HA
- Коммитит в Git
- Перезагружает Home Assistant
- Проверяет что всё запустилось
scripts/backup.sh¶
Создание резервной копии конфигурации.
Создаёт: backups/config_YYYYMMDD_HHMMSS.tar.gz
Хранение: 7 дней (старые удаляются автоматически)
scripts/restore.sh¶
Восстановление из резервной копии.
Интерактивно:
- Показывает список доступных бэкапов
- Просит выбрать номер
- Запрашивает подтверждение
- Создаёт бэкап текущей конфигурации
- Восстанавливает выбранный бэкап
scripts/view_logs.sh¶
Просмотр логов Home Assistant.
Интерактивное меню:
- Последние 50 строк
- Последние 100 строк
- Только ошибки (ERROR)
- Только предупреждения (WARNING)
- В реальном времени (tail -f)
- Поиск по тексту
🔐 SSH команды¶
Подключение¶
Выполнение команды без входа¶
Полезные команды HA¶
Информация о системе:
ssh -F .ssh/config hassio "ha core info"
ssh -F .ssh/config hassio "ha host info"
ssh -F .ssh/config hassio "ha os info"
Управление:
ssh -F .ssh/config hassio "ha core restart"
ssh -F .ssh/config hassio "ha core check"
ssh -F .ssh/config hassio "ha core update"
ssh -F .ssh/config hassio "ha core rebuild"
Add-ons:
ssh -F .ssh/config hassio "ha addons list"
ssh -F .ssh/config hassio "ha addons info ADDON"
ssh -F .ssh/config hassio "ha addons restart ADDON"
Логи:
ssh -F .ssh/config hassio "tail -f /config/home-assistant.log"
ssh -F .ssh/config hassio "grep ERROR /config/home-assistant.log"
ssh -F .ssh/config hassio "ha core logs"
Снапшоты:
ssh -F .ssh/config hassio "ha backups list"
ssh -F .ssh/config hassio "ha backups new --name='manual'"
ssh -F .ssh/config hassio "ha backups restore SLUG"
📁 SAMBA операции¶
Монтирование¶
./mount.sh # Монтировать
sudo umount /mnt/hassio # Размонтировать
mountpoint /mnt/hassio # Проверить статус
Работа с файлами¶
ls config/ # Список файлов
cat config/configuration.yaml # Просмотр файла
code config/ # Открыть в Cursor
nano config/automations.yaml # Редактировать в nano
Проверка¶
📝 YAML валидация¶
Быстрая проверка всех YAML¶
Или через меню:
📚 Валидация документации¶
Проверка качества Markdown файлов¶
Или через меню:
Что проверяется:
- ✅ Сломанные блоки кода (закрывающий и сразу открывающий fence)
- ✅ Отсутствие пустой строки между блоками
- ✅ Trailing spaces после fence markers
- ✅ Пустые блоки кода
- ✅ Незакрытые fence markers
- ✅ Hardcoded пути пользователей (~/path вместо /home/username/path)
Автоматическая проверка:
Валидатор интегрирован в pre-commit hooks и запускается автоматически при каждом коммите!
Проверка конкретного файла¶
yamllint config.yml # Стандартная проверка
yamllint -d relaxed config.yml # Мягкая проверка
yamllint --print-config # Показать текущие правила
Проверка конфигураций Home Assistant¶
yamllint config/configuration.yaml
yamllint config/*.yaml
yamllint config/automations.yaml # Конкретный файл
Проверка через Home Assistant¶
Настройка правил¶
Правила валидации настраиваются в .yamllint
:
# Основные правила
- Отступы: 2 пробела
- Длина строки: 120 символов (warning)
- Кавычки: только когда необходимо
- Булевы значения: on/off, yes/no, true/false
Проверить правила:
🗂️ Git команды¶
Инициализация (делается автоматически)¶
Ежедневное использование¶
cd config/
git status # Что изменилось
git diff # Детали изменений
git diff configuration.yaml # Изменения в файле
git add configuration.yaml # Добавить файл
git add . # Добавить всё
git commit -m "Описание изменений" # Закоммитить
git log --oneline # История
git log --oneline --graph # История с графом
Откат изменений¶
git checkout -- configuration.yaml # Откатить файл
git revert HEAD # Откатить последний коммит
git reset --hard HEAD~1 # Удалить последний коммит (осторожно!)
🤖 MCP команды (через AI в Cursor)¶
Просто спрашивайте AI в Cursor:
Мониторинг:
"Какая температура в доме?" "Покажи все устройства" "Какая влажность?" "Покажи все термостаты"
Управление:
"Включи свет SONOFF" "Выключи свет на кухне" "Установи температуру 22 градуса в спальне" "Включи отопление"
Камеры:
"Покажи снимок с входной камеры" "Сделай снапшот с камеры в саду"
🛠️ Полезные алиасы¶
Добавьте в ~/.bashrc
:
# Home Assistant
alias ha='ssh -F ~/HASSio/.ssh/config hassio'
alias halog='ssh -F ~/HASSio/.ssh/config hassio "tail -f /config/home-assistant.log"'
alias harestart='ssh -F ~/HASSio/.ssh/config hassio "ha core restart"'
alias hacheck='ssh -F ~/HASSio/.ssh/config hassio "ha core check"'
alias hamount='cd ~/HASSio && ./mount.sh'
alias haedit='code ~/HASSio/config/'
alias hadeploy='cd ~/HASSio && ./scripts/deploy.sh'
Применить:
Использование:
ha # = ssh hassio
halog # = логи в реальном времени
hacheck # = проверить конфиг
harestart # = перезагрузить
hamount # = смонтировать
haedit # = открыть в Cursor
hadeploy # = развернуть изменения
📊 Проверка статуса¶
Быстрая проверка¶
Детальная проверка¶
# SSH
ssh -F .ssh/config hassio "ha core info"
# SAMBA
mountpoint /mnt/hassio && echo "✅" || echo "❌"
# Место на диске
ssh -F .ssh/config hassio "df -h /config"
# Версия HA
ssh -F .ssh/config hassio "ha core info" | grep version
🔄 Копирование файлов¶
С сервера на локальный¶
С локального на сервер¶
Или через SAMBA (проще):
📈 Мониторинг¶
Проверка доступности¶
Использование ресурсов¶
ssh -F .ssh/config hassio "top -bn1 | head -20"
ssh -F .ssh/config hassio "free -h"
ssh -F .ssh/config hassio "df -h"