Створіть свій власний сервер NAS своїми руками за допомогою Raspberry Pi 4

Незалежно від вашого статусу – чи то професійний фотограф із великим архівом знімків у високій роздільній здатності, чи власник малого бізнесу, що оперує цінними даними, чи просто любитель кіно з великою колекцією фільмів – наявність надійного та захищеного способу зберігання даних є надзвичайно важливою. Це також стосується кожного, хто прагне зберігати свої файли в безпеці та мати до них доступ з повною конфіденційністю. Саме тут на допомогу приходить мережеве сховище (NAS).

Хоча існують готові комерційні рішення, ви також можете створити власний NAS на базі Raspberry Pi 4 та програмного забезпечення ownCloud. Такий підхід є більш економічно вигідним і дає більше можливостей для індивідуального налаштування.

Чому варто створити власний NAS, використовуючи Raspberry Pi та ownCloud?

Розробка власного NAS має декілька переваг у порівнянні з придбанням готового пристрою:

  • Ви можете самостійно визначити обсяг пам’яті, який відповідає вашим потребам.
  • Ви отримуєте повний контроль над своїми даними, оскільки вони зберігаються локально та в безпеці.
  • Ви можете використовувати NAS для резервного копіювання даних з усіх ваших пристроїв, щоб захистити їх від випадкової втрати.
  • Це економічно вигідно та енергоефективно, особливо враховуючи, що Raspberry Pi 4 споживає максимум 15 Вт.
  • Ви також можете використовувати сервер для інших сервісів, наприклад, Plex.

ownCloud – це популярне програмне забезпечення з відкритим вихідним кодом, яке дозволяє вам створити власне хмарне сховище. Воно надає захищений та легкий у використанні інтерфейс для керування вашими файлами та доступу до них з будь-якого місця і будь-якого пристрою, включаючи Android, iOS, macOS, Linux та Windows.

Ви також можете синхронізувати файли між різними пристроями та ділитися ними з іншими користувачами. Крім того, платформа підтримує широкий спектр плагінів та розширень, які дозволяють розширити її функціональність та додати двофакторну автентифікацію для посилення безпеки.

На додаток до цього, ви можете створити персональне хмарне сховище своїми руками з віддаленим доступом або веб-сервер, щоб розмістити веб-сайт на Raspberry Pi 4.

Що вам знадобиться

Щоб створити власний NAS на базі Raspberry Pi 4 та ownCloud, вам буде потрібно наступне:

  • Raspberry Pi 4 з 4 ГБ або 8 ГБ оперативної пам’яті для оптимальної продуктивності.
  • NVME або SATA SSD-накопичувач з корпусом/перехідником USB.
  • MicroSD-карта класу 10 об’ємом 16 або 32 ГБ.
  • Блок живлення для Raspberry Pi 4.
  • Надійне гігабітне мережеве підключення (маршрутизатор) для з’єднання NAS з локальною мережею та забезпечення високої швидкості передачі даних.

Крок 1: Підготовка Raspberry Pi 4 для роботи NAS

Перш за все, необхідно завантажити офіційний інструмент Raspberry Pi Imager, а потім, дотримуючись інструкцій, встановити операційну систему.

  • Запустіть програму Raspberry Pi Imager.
  • Натисніть “Вибрати ОС” та оберіть “Raspberry Pi OS (Other) > Raspberry Pi OS Lite (64-bit)”.
  • Натисніть “Вибрати сховище” та оберіть вашу SD-карту.
  • Натисніть на іконку шестерні (внизу праворуч) та увімкніть SSH. Введіть ім’я користувача та пароль для SSH і натисніть “Зберегти”.
  • Натисніть “Записати”. Підтвердіть свій вибір, натиснувши “Так”.
  • Після завершення процесу запису на карту microSD, вставте її в Raspberry Pi 4 та підключіть блок живлення. Raspberry Pi 4 завантажиться в Raspberry Pi OS Lite.

    Тепер можна перевірити налаштування DHCP вашого маршрутизатора, щоб знайти IP-адресу Raspberry Pi, або скористатися застосунком Fing на смартфоні (iOS або Android). Також, ви можете підключити клавіатуру, мишу та монітор до Raspberry Pi, а потім скористатися наступною командою, щоб дізнатися IP-адресу:

    hostname -I

    Крок 2: Встановлення та налаштування ownCloud на Raspberry Pi 4

    Щоб налаштувати ownCloud на Raspberry Pi 4, необхідно встановити наступні компоненти:

    • Веб-сервер (NGINX або Apache).
    • PHP.
    • Базу даних MariaDB.

    Щоб встановити ці сервіси, інсталюйте та запустіть PuTTY на Windows або скористайтесь програмою Terminal на macOS, а потім підключіться до Raspberry Pi через SSH.

    Після цього введіть наступні команди:

    sudo apt-get update
    sudo apt-get upgrade

    Дочекайтесь завершення оновлення. Якщо з’явиться запит, натисніть Y і Enter. Після завершення оновлення введіть наступні команди, щоб встановити необхідні пакети.

    sudo apt-get install apache2
    sudo apt install apache2 libapache2-mod-php7.4 openssl php-imagick php7.4-common php7.4-curl php7.4-gd php7.4-imap php7.4-intl php7.4-json php7.4-ldap php7.4-mbstring php7.4-mysql php7.4-pgsql php-smbclient php-ssh2 php7.4-sqlite3 php7.4-xml php7.4-zip

    Після встановлення необхідних пакетів, перезапустіть сервер Apache.

    sudo service apache2 restart

    Далі скористайтесь командою нижче, щоб додати користувача до групи www-data.

    sudo usermod -a -G www-data www-data

    Наступним кроком є завантаження та встановлення ownCloud на Raspberry Pi 4 за допомогою наступних команд:

    cd /var/www/html
    sudo wget https://download.owncloud.org/community/owncloud-complete-latest.zip
    sudo unzip owncloud-complete-latest.zip

    Створіть каталог для підключення зовнішнього SSD-накопичувача та змініть власника каталогу ownCloud:

    sudo mkdir /media/ExternalSSD
    sudo chown www-data:www-data /media/ExternalSSD
    sudo chmod 750 /media/ExternalSSD

    Виправте дозволи, щоб уникнути проблем:

    sudo chown -R www-data: /var/www/html/owncloud
    sudo chmod 777 /var/www/html/owncloud
    sudo mkdir /var/lib/php/session
    sudo chmod 777 /var/lib/php/session

    Далі необхідно налаштувати веб-сервер Apache. Відкрийте файл конфігурації:

    sudo nano /etc/apache2/conf-available/owncloud.conf

    Додайте наступні рядки до файлу:

    Alias /owncloud "/var/www/owncloud/"

    <Directory /var/www/owncloud/>
      Options +FollowSymlinks
      AllowOverride All

     <IfModule mod_dav.c>
      Dav off
     </IfModule>

     SetEnv HOME /var/www/html/owncloud
     SetEnv HTTP_HOME /var/www/html/owncloud

    </Directory>

    Збережіть зміни та вийдіть з nano, натиснувши Ctrl+O, потім Ctrl+X. Далі активуйте модулі Apache:

    sudo a2enconf owncloud
    sudo a2enmod rewrite
    sudo a2enmod headers
    sudo a2enmod env
    sudo a2enmod dir
    sudo a2enmod mime

    Встановіть базу даних MariaDB:

    sudo apt install mariadb-server

    Створіть базу даних для користувачів:

    sudo mysql

    CREATE DATABASE owncloud;
    CREATE USER 'ownclouduser'@'localhost' IDENTIFIED BY 'YourPassword';
    GRANT ALL PRIVILEGES ON owncloud.* TO 'ownclouduser'@'localhost';
    FLUSH PRIVILEGES;
    Exit;

    Перезавантажте Raspberry Pi:

    sudo reboot

    Крок 3: Додавання зовнішнього накопичувача

    Ви можете підключити декілька USB-накопичувачів до Raspberry Pi 4 через порти USB 3.0. Під’єднайте один із ваших SSD або HDD до порту USB і, дотримуючись інструкцій, підключіть зовнішній диск до каталогу у файловій системі, щоб збільшити обсяг пам’яті вашого саморобного NAS.

    Ми вже створили каталог /media/ExternalSSD для підключення зовнішнього накопичувача. Переконайтесь, що ваш SSD або HDD відформатовано в NTFS. Після цього виконайте наступні дії:

    sudo apt-get install ntfs-3g

    Далі отримайте GID, UID та UUID:

    id -u www-data
    id -g www-data
    ls -l /dev/disk/by-uuid

    Занотуйте UUID, GID та UID. У нашому прикладі sda1 – це зовнішній SSD, відформатований у NTFS. Далі додамо цей диск до файлу fstab.

    sudo nano /etc/fstab

    Додайте наступний рядок:

    UUID=01D9B8034CE29270 /media/ExternalSSD auto nofail,uid=33,gid=33,umask=0027,dmask=0027,noatime 0 0

    Щоб підключити зовнішній накопичувач, необхідно знайти його ідентифікатор пристрою. Використайте наступну команду, щоб отримати список всіх підключених пристроїв зберігання:

    lsusb

    На цьому етапі можна перезавантажити Raspberry Pi, щоб зовнішній накопичувач підключився автоматично, або підключити його вручну:

    sudo mount /dev/sda1 /media/ExternalSSD

    Всі ваші файли на диску NTFS мають бути видимими в каталозі /media/ExternalSSD.

    Зараз на диску знаходяться лише приховані папки System Volume Information та RECYCLE.BIN. Перезавантажте систему.

    sudo reboot

    4. Налаштування ownCloud

    Після перезавантаження введіть IP-адресу Raspberry Pi у веб-браузері, щоб отримати доступ до ownCloud.

    Введіть ім’я користувача та пароль на ваш вибір. Натисніть “Сховище та база даних” та введіть дані бази даних MariaDB, як показано нижче.

    Якщо ви використовуєте зовнішній диск для зберігання даних, обов’язково змініть шлях до папки даних на /media/ExternalSSD з типового /var/www/html/owncloud/data. В майбутньому, якщо вам знадобиться додати новий диск або збільшити обсяг пам’яті, скористайтесь цим довідником ownCloud, щоб оновити шлях до каталогу.

    Натисніть “Завершити налаштування”. Через деякий час ви зможете увійти до ownCloud.

    Ви можете завантажити додаток ownCloud на ваш смартфон або комп’ютер для синхронізації файлів. Проте, перед початком синхронізації або завантаження файлів, переконайтеся, що ви додали зовнішній жорсткий диск або SSD.

    Якщо ви уважно дотримувалися всіх інструкцій, ви готові завантажувати файли на свій NAS-накопичувач OwnCloud.

    Використання вашого нового NAS на базі Raspberry Pi 4

    NAS дозволяє централізувати доступ до ваших даних з різних пристроїв у межах локальної мережі. Це зручний та ефективний спосіб для зберігання, обміну та резервного копіювання файлів вдома чи в офісі. Створіть декілька облікових записів ownCloud для інших користувачів, щоб вони також могли завантажувати та захищати свої дані.

    Створення власного NAS на базі Raspberry Pi 4 та ownCloud – це економічно вигідне рішення з можливістю налаштування під ваші індивідуальні потреби у зберіганні даних та забезпеченні їхнього контролю!