Как превратить Raspberry Pi в NAS с помощью Samba

Что потребуется
Соберите компоненты заранее, чтобы установка шла без остановок:
- Raspberry Pi 5 или Pi 4 (оптимально для скоростных передач). Pi 3 подойдёт, но ограничит пропускную способность.
- МикроSD карта не менее 32 ГБ с актуальной Raspberry Pi OS (используйте Raspberry Pi OS Lite для сервера без графики).
- Внешний диск: USB SSD для скорости или механический HDD для дешёвого архивного хранения. Можно использовать USB флеш‑накопитель для теста.
- Ethernet‑кабель и доступ к роутеру (проводное соединение предпочтительнее для стабильности и скорости).
- Источник бесперебойного питания (UPS) для защиты от потерь данных при отключениях питания — рекомендовано.
Кратко о RAID: если нужна отказоустойчивость, рассмотрите аппаратный или программный RAID (mdadm) с зеркалированием (RAID 1). Это защищает от выхода одного диска, но не заменяет резервное копирование.

Важно: не используйте карту памяти для долговременного хранения важных данных — SD-карты плохо переносят большое число циклов записи.
Пошаговый план установки Samba NAS
Ниже — упрощённый рабочий алгоритм «что делать сначала». После каждого блока приведены команды, которые нужно выполнять в терминале на Raspberry Pi.
- Подготовить и подключить накопитель
- Отформатировать и смонтировать диск (постоянно через fstab)
- Установить Samba
- Настроить шаринг в /etc/samba/smb.conf
- Создать Samba‑пользователя и перезапустить сервис
- Подключиться с Windows или macOS
1. Подготовка хранилища
Если вы хотите временно хранить данные на SD-карте (не рекомендуется), можно создать папку:
mkdir /home/pi/nas-storageРекомендуемый вариант — внешний диск. Чтобы подготовить его для использования, сначала определите устройство:
sudo fdisk -lВ выводе найдите имя устройства (например, /dev/sda или /dev/sda1). Перед форматированием отмонтируйте диск:
sudo umount /dev/NAMEФорматирование в ext4 (стандарт для Linux, хорошая совместимость и стабильность):
sudo mkfs -t ext4 /dev/NAMEПрисвоение метки диску для удобства:
sudo e2label /dev/NAME YOURLABELСоздайте точку монтирования и примонтируйте диск:
sudo mkdir -p /mnt/nas-storage
sudo mount /dev/NAME /mnt/nas-storageЧтобы монтирование было постоянным после перезагрузки, используйте UUID и /etc/fstab. Сначала узнайте UUID:
sudo blkid /dev/NAMEДобавьте строку в /etc/fstab (откройте файл через nano):
sudo nano /etc/fstabПример строки (замените UUID и опции при необходимости):
UUID=ваш-uuid-от-blkid /mnt/nas-storage ext4 defaults,noatime 0 2После изменения fstab проверьте правильность синтаксиса и примонтируйте все записи:
sudo mount -aЕсли всё нормально, перезагрузите систему:
sudo rebootПолезный совет: используйте USB 3.0 порт на Pi 4/5 и качественные кабели, чтобы получить заявленную скорость. Для многодисковых конфигураций или RAID применяйте хабы с внешним питанием.
2. Установка Samba
Samba позволяет Windows, macOS и Linux обмениваться файлами. Перед установкой обновите пакеты и установите Samba:
sudo apt update && sudo apt upgrade -y
sudo apt install samba samba-common-bin -yПосле установки сервис smbd обычно запускается автоматически. Проверьте статус:
sudo systemctl status smbdЕсли сервис неактивен, запустите:
sudo systemctl start smbd
3. Настройка Samba
Откройте конфигурационный файл Samba:
sudo nano /etc/samba/smb.confПрокрутите до конца и добавьте секцию шаринга. Пример конфигурации для личного NAS:
[sambadrive]
path = /mnt/nas-storage
read only = no
browsable = yes
guest ok = no
create mask = 0775
directory mask = 0775
valid users = @sambashareПояснения:
- [sambadrive] — имя шары, которое увидят клиенты сети. Измените на удобное.
- path — путь к точке монтирования.
- read only = no — разрешает запись.
- guest ok = no — запрещает анонимный доступ; лучше защищать паролем.
- valid users — допустимые пользователи/группы.
После сохранения файла (Ctrl+O, Enter) и выхода (Ctrl+X) перезапустите Samba:
sudo systemctl restart smbdВажно: если вы хотите отдельные папки с разными правами, создайте несколько секций в smb.conf и укажите разные пути и параметры прав доступа.

4. Создание Samba‑пользователя и группы
Лучше создать отдельную группу для доступа к шару и добавлять туда пользователей. Пример:
sudo groupadd sambashare
sudo usermod -aG sambashare pi
sudo chown -R root:sambashare /mnt/nas-storage
sudo chmod -R 2775 /mnt/nas-storageЗатем создайте Samba‑пароль для пользователя (например, pi):
sudo smbpasswd -a piВас попросят ввести и подтвердить пароль. После этого убедитесь, что пользователь активен в smb.conf (valid users). Перезапустите сервис:
sudo systemctl restart smbd
5. Подключение с Windows
В Windows откройте Проводник (File Explorer) → This PC → Map Network Drive. В поле папки введите адрес в формате:
\\raspberrypi\sambadriveили замените raspberrypi на IP‑адрес устройства, например \192.168.1.50\sambadrive. Поставьте галочку «Connect using different credentials» и введите имя пользователя (pi) и пароль Samba.
Если подключение не проходит, попробуйте сначала посмотреть доступные шары по адресу \raspberrypi в Проводнике либо проверьте сетевые настройки и брандмауэр Windows.

6. Подключение с macOS
В Finder нажмите Go → Connect to Server (Cmd+K). Введите адрес в формате:
smb://raspberrypi/sambadriveВыберите Registered User, введите имя и пароль Samba. Можно сохранить пароль в Keychain для автоподключения.

Типичные проблемы и их решения
Ошибка доступа или права доступа
Если вы не можете записать файлы, вероятно, права и владелец каталога настроены неправильно. Исправьте владельца и группу:
sudo chown -R pi:sambashare /mnt/nas-storage
sudo chmod -R 2775 /mnt/nas-storageКоманда chown даёт права владельца, а chmod 2775 сохраняет setgid, чтобы новые файлы наследовали группу.
Шара не видна в сети
Проверьте, что Pi и клиент находятся в одной подсети. Затем проверьте статус Samba:
sudo systemctl status smbdЕсли сервис не запущен — стартуйте и проверьте логи:
sudo journalctl -u smbd -b --no-pagerПодключение постоянно обрывается
Часто проблемы с разрывом связи связаны с Wi‑Fi и экономией энергии. Для стабильности используйте проводной Ethernet. Если Wi‑Fi — отключите энергосбережение:
sudo nano /etc/rc.localДобавьте перед строкой exit 0:
/sbin/iwconfig wlan0 power offПерезапустите или примените изменения.
Скорость и производительность
- Для максимальной скорости используйте Pi 4/5 и SSD на USB 3.0.
- Подключение через Ethernet (гигабит) даёт лучшие результаты для больших файлов.
- Проверьте, не ограничивает ли smb.conf протоколы — при необходимости выставьте max protocol = SMB3 для современных клиентов.
Безопасность и бэкапы
Samba открывает доступ к данным в вашей локальной сети — соблюдайте базовые меры безопасности:
- Отключите guest доступ (guest ok = no).
- Используйте сильные пароли и отдельные учетные записи для разных пользователей.
- Ограничьте IP‑диапазон, если ваш роутер/брандмауэр это поддерживает.
- Обновляйте систему и пакеты безопасности регулярно (sudo apt update && sudo apt upgrade).
- Для удалённого доступа используйте VPN, а не прямой проброс портов на роутере.
- Настройте регулярный бэкап (локальный диск → внешний носитель → облако) и проверяйте целостность копий.
Рекомендация по hardening: добавьте fail2ban для SSH, ограничьте доступ к Samba через firewall (ufw) и выставьте минимально нужные права на файлы.
Дополнительные подходы и альтернативы
- OpenMediaVault — готовая NAS‑дистрибуция с веб‑интерфейсом, плагинами и расширенными опциями (RAID, бэкапы, Docker).
- Nextcloud — если нужно синхронизировать файлы и иметь веб‑интерфейс с календарями и контактами.
- NFS — более «нативный» способ шаринга между Linux‑машинами; подходит для Linux‑клиентов и виртуализации.
Рекомендации по роли (краткий чеклист)
Для домашнего пользователя:
- Используйте один внешний SSD/HDD.
- Включите автоматическое монтирование через fstab.
- Создайте одного пользователя и подключитесь по SMB.
Для небольшого офиса:
- Используйте проводной Ethernet и RAID1 для отказоустойчивости.
- Создайте группы и отдельные шары для отделов.
- Настройте регулярные бэкапы на внешний сервер или облако.
Для продвинутого пользователя или тестовой лаборатории:
- Разверните OpenMediaVault или TrueNAS Scale на отдельном сервере.
- Используйте LVM и snapshot‑бэкапы для точек восстановления.
Мини‑методология для деплоя
- Подготовка ОС и обновление (apt update/upgrade).
- Подключение и форматирование диска (ext4).
- Настройка постоянного монтирования через fstab.
- Установка и базовая конфигурация Samba.
- Создание пользователей, групп и настройка прав.
- Тестирование доступа с Windows/macOS.
- Настройка резервного копирования и мониторинга.
Критерии приёмки
- Диск автоматически монтируется после перезагрузки.
- Шара видна и доступна для чтения/записи с разных клиентов.
- Права доступа и владельцы настроены в соответствии с политикой.
- Сервис smbd работает без ошибок в логах.
Тестовые кейсы
- Попытаться создать файл через Windows и подтвердить права и владельца.
- Перезагрузить Pi и проверить, что монтирование и шар по‑прежнему доступны.
- Попытаться подключиться с неправильным паролем и убедиться, что доступ запрещён.
Подведение итогов
Raspberry Pi + Samba — простое и недорогое решение для локального NAS. Для домашнего использования достаточно одной Raspberry Pi с внешним SSD/HDD и базовой настройки Samba. Для повышения надёжности используйте проводное подключение, RAID и регулярные бэкапы. Если вам нужны расширенные возможности — рассмотрите OpenMediaVault или специальные NAS‑решения.
Изображения: демонстрация установки, конфигурации и подключения Samba на Raspberry Pi.
Image credits: Raspberry 4 Model B Screenshots by Andrew Braun and David Morelo.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента