OpenClaw на Raspberry Pi
Цель
Запустить постоянный, всегда работающий OpenClaw Gateway на Raspberry Pi за ~$35-80 единовременных затрат (без ежемесячной платы).
Идеально для:
- Персонального ИИ-ассистента 24/7
- Хаба домашней автоматизации
- Энергоэффективного, всегда доступного Telegram/WhatsApp бота
Требования к оборудованию
| Модель Pi | RAM | Работает? | Примечания |
|---|---|---|---|
| Pi 5 | 4GB/8GB | ✅ Лучшее | Самый быстрый, рекомендуется |
| Pi 4 | 4GB | ✅ Хорошо | Оптимальный вариант для большинства пользователей |
| Pi 4 | 2GB | ✅ ОК | Работает, добавьте swap |
| Pi 4 | 1GB | ⚠️ Тесно | Возможно со swap, минимальная конфигурация |
| Pi 3B+ | 1GB | ⚠️ Медленно | Работает, но медленно |
| Pi Zero 2 W | 512MB | ❌ | Не рекомендуется |
Минимальные характеристики: 1GB RAM, 1 ядро, 500MB на диске
Рекомендуется: 2GB+ RAM, 64-битная ОС, SD-карта 16GB+ (или USB SSD)
Что вам понадобится
- Raspberry Pi 4 или 5 (рекомендуется 2GB+)
- MicroSD карта (16GB+) или USB SSD (лучшая производительность)
- Блок питания (рекомендуется официальный блок питания Pi)
- Сетевое подключение (Ethernet или WiFi)
- ~30 минут
1) Установка ОС
Используйте Raspberry Pi OS Lite (64-bit) — рабочий стол не нужен для headless-сервера.
- Скачайте Raspberry Pi Imager
- Выберите ОС: Raspberry Pi OS Lite (64-bit)
- Нажмите значок шестеренки (⚙️) для предварительной настройки:
- Установите hostname: gateway-host
- Включите SSH
- Установите имя пользователя/пароль
- Настройте WiFi (если не используете Ethernet)
- Запишите на SD-карту / USB-накопитель
- Вставьте и загрузите Pi
2) Подключение по SSH
ssh user@gateway-host
# или используйте IP-адрес
ssh [email protected]
3) Настройка системы
# Обновление системы
sudo apt update && sudo apt upgrade -y
# Установка необходимых пакетов
sudo apt install -y git curl build-essential
# Установка часового пояса (важно для cron/напоминаний)
sudo timedatectl set-timezone America/Chicago # Измените на свой часовой пояс
4) Установка Node.js 22 (ARM64)
# Установка Node.js через NodeSource
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt install -y nodejs
# Проверка
node --version # Должно показать v22.x.x
npm --version
5) Добавление Swap (важно для 2GB или меньше)
Swap предотвращает сбои из-за нехватки памяти:
# Создание swap-файла 2GB
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
# Сделать постоянным
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
# Оптимизация для малой RAM (уменьшение swappiness)
echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
6) Установка OpenClaw
Вариант A: Стандартная установка (рекомендуется)
curl -fsSL https://openclaw.bot/install.sh | bash
Вариант B: Установка для экспериментов (для настройки)
git clone https://github.com/openclaw/openclaw.git
cd openclaw
npm install
npm run build
npm link
Установка для экспериментов дает прямой доступ к логам и коду — полезно для отладки ARM-специфичных проблем.
7) Запуск настройки
openclaw onboard --install-daemon
Следуйте мастеру:
- Режим Gateway: Local
- Авторизация: Рекомендуются API-ключи (OAuth может быть капризным на headless Pi)
- Каналы: Telegram проще всего для начала
- Daemon: Да (systemd)
8) Проверка установки
# Проверка статуса
openclaw status
# Проверка сервиса
sudo systemctl status openclaw
# Просмотр логов
journalctl -u openclaw -f
9) Доступ к панели управления
Поскольку Pi headless, используйте SSH-туннель:
# С вашего ноутбука/компьютера
ssh -L 18789:localhost:18789 user@gateway-host
# Затем откройте в браузере
open http://localhost:18789
Или используйте Tailscale для постоянного доступа:
# На Pi
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up
# Обновление конфигурации
openclaw config set gateway.bind tailnet
sudo systemctl restart openclaw
Оптимизация производительности
Использование USB SSD (значительное улучшение)
SD-карты медленные и изнашиваются. USB SSD значительно улучшает производительность:
# Проверка загрузки с USB
lsblk
См. руководство по загрузке Pi с USB для настройки.
Уменьшение использования памяти
# Отключение выделения памяти GPU (headless)
echo 'gpu_mem=16' | sudo tee -a /boot/config.txt
# Отключение Bluetooth, если не нужен
sudo systemctl disable bluetooth
Мониторинг ресурсов
# Проверка памяти
free -h
# Проверка температуры CPU
vcgencmd measure_temp
# Мониторинг в реальном времени
htop
Примечания для ARM
Совместимость бинарных файлов
Большинство функций OpenClaw работают на ARM64, но некоторые внешние бинарные файлы могут требовать ARM-сборки:
| Инструмент | Статус ARM64 | Примечания |
|---|---|---|
| Node.js | ✅ | Работает отлично |
| WhatsApp (Baileys) | ✅ | Чистый JS, без проблем |
| Telegram | ✅ | Чистый JS, без проблем |
| gog (Gmail CLI) | ⚠️ | Проверьте наличие ARM-релиза |
| Chromium (browser) | ✅ | sudo apt install chromium-browser |
Если навык не работает, проверьте, есть ли у его бинарного файла ARM-сборка. Многие инструменты Go/Rust есть; некоторых нет.
32-бит vs 64-бит
Всегда используйте 64-битную ОС. Node.js и многие современные инструменты требуют её. Проверьте с помощью:
uname -m
# Должно показать: aarch64 (64-bit), а не armv7l (32-bit)
Рекомендуемая настройка модели
Поскольку Pi — это только Gateway (модели работают в облаке), используйте модели на основе API:
{
"agents": {
"defaults": {
"model": {
"primary": "anthropic/claude-sonnet-4-20250514",
"fallbacks": ["openai/gpt-4o-mini"]
}
}
}
}
Не пытайтесь запускать локальные LLM на Pi — даже маленькие модели слишком медленные. Пусть Claude/GPT делают тяжелую работу.
Автозапуск при загрузке
Мастер настройки настраивает это, но для проверки:
# Проверка, что сервис включен
sudo systemctl is-enabled openclaw
# Включение, если не включен
sudo systemctl enable openclaw
# Запуск при загрузке
sudo systemctl start openclaw
Устранение неполадок
Нехватка памяти (OOM)
# Проверка памяти
free -h
# Добавить больше swap (см. Шаг 5)
# Или уменьшить сервисы, работающие на Pi
Медленная производительность
- Используйте USB SSD вместо SD-карты
- Отключите неиспользуемые сервисы: sudo systemctl disable cups bluetooth avahi-daemon
- Проверьте троттлинг CPU: vcgencmd get_throttled (должно вернуть 0x0)
Сервис не запускается
# Проверка логов
journalctl -u openclaw --no-pager -n 100
# Обычное исправление: пересборка
cd ~/openclaw # если используется установка для экспериментов
npm run build
sudo systemctl restart openclaw
Проблемы с ARM бинарниками
Если навык выдает ошибку "exec format error":
- Проверьте, есть ли у бинарного файла ARM64-сборка
- Попробуйте собрать из исходного кода
- Или используйте Docker-контейнер с поддержкой ARM
Отключение WiFi
Для headless Pi на WiFi:
# Отключение управления питанием WiFi
sudo iwconfig wlan0 power off
# Сделать постоянным
echo 'wireless-power off' | sudo tee -a /etc/network/interfaces
Сравнение затрат
| Установка | Единовременная стоимость | Ежемесячная стоимость | Примечания |
|---|---|---|---|
| Pi 4 (2GB) | ~$45 | $0 | + электричество (~$5/год) |
| Pi 4 (4GB) | ~$55 | $0 | Рекомендуется |
| Pi 5 (4GB) | ~$60 | $0 | Лучшая производительность |
| Pi 5 (8GB) | ~$80 | $0 | Избыточно, но с запасом |
| DigitalOcean | $0 | $6/мес | $72/год |
| Hetzner | $0 | €3.79/мес | ~$50/год |
Точка окупаемости: Pi окупается за ~6-12 месяцев по сравнению с облачным VPS.
См. также
- Руководство по Linux — общая настройка Linux
- Руководство по DigitalOcean — облачная альтернатива
- Руководство по Hetzner — настройка Docker
- Tailscale — удаленный доступ
- Nodes — подключите свой ноутбук/телефон к Pi gateway