Облачное хранилище своими руками linux

/4te.me

Из-за очередного приступа параноии, я решил сменить Google Drive на собственное решение и хранить свои файлики поближе к телу. Выбор был между: поднимать в каком-нибудь DigitalOcean виртуалку и хранить там, или собрать дома свое хардварное решение. Подсчитав сколько будет стоить виртуалка с нужным объемом диска, выбор был сделан в пользу домашнего NAS-сервера.

Выбор

У меня было примерно 100 ГБ данных на момент съезда из Google Drive. Виртуалка в DigitalOcean на 160ГБ стоит 40$ в месяц, то есть в год будет выходить

500$. Дорого. За эти деньги можно дома собрать NAS на терабайт с SSD дисками. Есть ещё вариант брать маленькую виртуалку, и к нему подключить S3 хранилище, но софт, который я планировал использовать, не умеет работать с S3.

Итак, вариант с виртуалкой в облаке я отмёл и пошел смотреть, что нынче есть на рынке домашних NAS серверов. Так как я живу в маленькой квартире, NAS я планировал ставить в жилой комнате, и, если он будет шуметь вентиляторами и вибрировать HDD-дисками, то житья в комнате не будет. Поэтому я хотел найти NAS с пассивным охлаждением и вставить туда SSD диски. Не самое дешевое решение, но за тишину приходится платить.

Как выяснилось, на рынке практически нет NAS с пассивным охлаждением. Почему так я не понимаю, по опыту использования — максимальная температура дисков за год использования у меня была 47.0 C (наверно когда я переносил все данные), в покое — 36.0 C, крышка NAS-а чуть теплая. 90% времени диски простаивают и зачем им вентилятор я не понимаю.

Вот модели с пассивным охлаждением которые я смог найти — QNAP HS-210 , QNAP HS-251 , QNAP HS-251+ (он же QNAP S2 ), QNAP HS-453 . У всех моделей обычный x64-процессор, не ARM. Получается маленькая такая desktop-тачка с местом для двух HDD.

  • HS-210 — 512 МБ ОЗУ мало.
  • HS-251 — 1ГБ ОЗУ мало
  • HS-251+ — 2ГБ ОЗУ норм
  • HS-453 — 4 или 8 ГБ ОЗУ. Ultimate решение, но не продается в России и стоит космос.

У Synology бесшумных решений я не нашел. Собирать системник тоже не хотелось — он не получится таким же маленьким и бесшумным как QNAP. В общем выбрал золотую середину — QNAP HS-251+ (QNAP S2).

Из дисков я выбрал WD BLUE 3D NAND SATA SSD 1 TB (WDS100T2B0A). Взял две штуки. Они без проблем заходят в NAS. Итого вышло:

Не самое дешевое решение для NAS, но самое дешевое из подходящих под требования. Кроме этого, чтобы создать свое облако потребуется статический “белый” IP-адрес дома. Чтобы подключаться из интернета к домашнему серверу. Обычно такая услуга есть у любого провайдера.

Программная часть

После покупки и установки самого NAS-а, решил попробовать использовать софт от самого QNAP. Стоит сказать, что он очень разнообразный — полностью заменяет публичные облака и даже умеет запускать виртуальные машины. Из себя он представляет некую ОС (на основе Debian, кажется), с веб-интерфейсом а-ля iPad и проприетарными приложениями.

К сожалению все работает довольно медленно, да и менять один проприетарный продукт на другой, внутренний параноик мне не позволил, поэтому я установил на NAS обыкновенный чистый Linux.

Так как это обычный x86_64 ПК, я записал на флешку свежий дистрибутив, зашел в BIOS и загрузился с нее:

В этом NAS-е есть постоянная память размером 512 МБ куда установлена дефолтная прошивка. Ее я не перезаписывал (при желании можно будет вернуться на нее), и поставил Ubuntu 18.04 на software RAID, собранный из двух установленных дисков. На каждом диске создается по партиции одинакового размера, и они объединяются в RAID1. На одном диске также раздел для загузчика и /boot:

Читайте также:  Как сшить водолазку своими руками выкройки

Домашнее облако

Для замены Google Drive (Яндекс.Диск, Dropbox и тд.) я выбрал Seafile — https://www.seafile.com/en/home/

Выбор был между ним и Nextcloud/ownCloud, но после тестовых установок выбрал Seafile. До 3-х пользователей можно использовать Enterprise версию — её и взял. В ней есть поиск по файлам и еще несколько полезных функций, вот здесь есть сравнение бесплатной и enterprise версий. Разворачивал с помощью Docker — очень просто и быстро, на сайте есть подробный мануал

У Seafile есть веб-интерфейс, desktop-приложение для всех ОС и мобильный клиент.

Nextcloud/ownCloud гораздо богаче по функционалу и хранят файлы в открытом виде, то есть их можно интегрировать в другие серверные приложения, но жуткие тормоза при аплоаде файлов и на веб-интерфейсе делают их неработопригодными.

Seafile тоже не идеален, всё что он умеет — просто хранить файлы. Особенности использования:

    хранит данные в бинарных файлах. То есть их нельзя просматривать на диске. Получаем высокую скорость при доступе к данным, но теряем в гибкости. Вот так выглядят данные на ФС:

есть приложение для Android/iOS. Довольно скромное, но заливать фотки с телефона и просматривать файлы умеет.

Домашний NAS и медиа-плеер

Так как в NAS-е есть HDMI выход, я его подключил к телевизору и сделал из него медиа-плеер. В комплекте также есть пульт ДУ:

С помощью очень классной программы Kodi (https://kodi.tv/) можно полностью заменить smartTV, онлайн-кинотеатр и приставку для проигрывания IPTV. Он устанавливается на linux и на экран выводит свой интерфейс. Навигация пультом ДУ или приложением Kore. С пультом были проблемы, не заводился из коробки, пришлось немного потанцевать с бубном.

Вот так выглядит интерфейс Kodi на телевизоре:

Как я использую Kodi:

  • плеер фильмов, которые лежат на NAS-диске
  • плеер IPTV вместо MAG-250. Умеет показывать multicast-потоки
  • проигрыватель YouTube (приложение не очень удобное, но юзабельное)
  • в поездках с помощью приложения Kodi для Android подключаюсь к своему NAS и смотрю с него фильмы. Получается такой self-hosted онлайн-кинотеатр
  • для скачивания новых фильмов на NAS установил Transmission + web-интерфейс

Также на NAS поставил FTP и Samba, чтобы подключаться с девайсов в локальной сети и NFS для монтирования сетевого диска.

Такой схемой я пользуюсь около года и вот какие выводы сделал:

  • приложения Яндекс.Диск/Google Photo удобнее и быстрее. Да, opensource-аналоги не дают такого удобства использования — то тут, то там встречаются мелкие косяки (например в android-приложении seafile фотки при просмотре скачиваются полностью, т.е. не превью сжатое, а фото если весит 5МБ — оно все полетит на телефон, это медленно и занимает место на телефоне; хотя в веб-морде есть превьюхи). Ну и поиск в Гугл.фото по содержанию фотографий (когда в поиске вводишь “горы”, и он показывает все фотографии гор из вашей библиотеки) — это вообще киллер фича, такого в бесплатные аналоги не знаю когда завезут.
  • скорость загрузки файлов в Seafile гораздо выше, чем в публичные облака
  • смотреть фильмы теперь супер удобно. Особенно в поездках. 4G есть практически везде в России, и теперь не надо закачивать кучу фильмов на телефон — смотрю онлайн, подключаясь с телефона к домашнему серверу. В случае отсутствия связи, например в поезде, подключаюсь по FTP и скачиваю перед отправлением.
  • Kodi — супер комбайн, но хотелось бы научиться стримить телевизионный сигнал на телефон, чтобы смотреть ТВ не из дома. Этого еще не понял как сделать.
  • чтобы все это настроить пришлось покурить мануалы и подзаморочиться с установкой и наладкой.

Хочу ли я вернуться в публичные облака (Google Drive, Яндекс.Диск)? Нет, не хочу. На мой взгляд, плюсов в такой схеме все же больше, чем минусов. А внутренний параноик теперь спит сладким сном.

Источник

NextCloud: Создаем свое облачное хранилище

NextCloud – больше чем облачное хранилище

NextCloud – веб-платформа, позволяющая создать свое собственное облачное хранилище.

Набор функций NextCloud часто сравнивают с функциональностью таких облачных файловых хостингов как Dropbox, OneDrive и т.д. Но на самом деле, NextCloud предлагает гораздо большую функциональность. В своем хранилище NextCloud вы можете создать не только файловый хостинг, но и закрытое сообщество в котором можно совершать аудио/видео звонки (NextCloud Talk), переписываться, создавать рабочие задачи и совместно работать (по типу Trello).

Читайте также:  Кукольный домик деревянный своими руками чертежи

Расширение функциональности легко достигается с помощью добавления приложений из магазина приложений apps.nextcloud.com.

Для управления облачным хранилищем доступны настольные (для Windows, macOS и Linux) и мобильные приложения (для Android и iOS):

Содержание

Установка NextCloud с помощью snap-пакета

NextCloud доступен в магазине snap-пакетов snapcraft, поэтому процесс установки будет максимально простым.

В качестве серверной системы мы использовали Ubuntu 20.04.

Обновим систему и включим поддержку snap-пакетов:

Установка пакета snap NextCloud:

Проверяем установку пакета:

Посмотреть сетевые интерфейсы пакета:

Посмотреть список служб пакета:

Настройка учетной записи NextCloud

Создание учетной записи Администратора:

Вместо «имя» вводим имя администратора учетной записи и вместо слова «пароль» вводим непосредственно придуманный пароль для учетной записи.

По умолчанию NextCloud работает только с внутренним доменом localhost, проверить можно командой:

Поэтому мы зададим доменное имя или IP-адрес сервера:

Вместо example.com указываем свой домен или IP-адрес. Для добавления еще одного домена нужно изменить индекс на 1. Пример:

Проверяем доверенные домены:

В настройках DNS (А-запись) учетной записи регистратора доменного имени не забудьте добавить IP-адрес сервера.

Шифрование домена NextCloud с помощью сертификата SSL от Let’s Encrypt

Для нашего домена добавим бесплатный SSL сертификат от Let’s Encrypt.

Если вы пользуетесь ufw в качестве настройки системного фаервола, то сначала откройте порты 80 и 443:

sudo nextcloud.enable-https lets-encrypt

В ходе установки сертификата нужно будет указать свою электронную почту и указать доменное имя.

После установки сертификата откройте доменное имя или IP-адрес в браузере.

Интерфейс NextCloud по умолчанию.

Дополнительные настройки NextCloud

Если вам потребуется доступ к консоли mysql, то сначала нужно узнать название базы. Сделать это можно следующей командой:

Отобразить список баз:

Скорее всего название базы будет nextcloud, значит подключиться к консоле нашей базы можно будет следующей командой:

Список команд и приложений доступен по ссылке: nextcloud-snap.

В NextCloud доступно огромное количество приложений для расширения функциональности.

Отдельно хочу выделить следующие приложения (кстати, устанавливаются они легко через веб-интерфейс):

  • Auto Groups – автоматическое добавление пользователей в группы.
  • Checksum – вычисление хеш-сумм файлов (md5, sha1, sha256, sha384, sha512 и crc32).
  • Music – удобный аудио плеер.
  • Group folders – расшаривание папок для групп со стороны администратора.
  • News – приложение для чтения новостей с помощью формата RSS/Atom.
  • ONLYOFFICE – офисное приложение для создания и редактирования документов. Созданные документы автоматически сохраняются в облаке.
  • Registration – добавление опции регистрации на главной странице.
  • Social login – регистрация с помощью соц.сетей.
  • Social – чат.
  • Talk – видео и аудио звонки, создание комнат для обсуждения. Для мобильных устройств доступно отдельное приложение.

NextCloud – это однозначно интересное решение, которое подойдет не только для создания личного облачного хранилища, но и в качестве создания облачного хранилища для сообществ, ведения обсуждений и совершения звонков внутри сообщества.

Источник

linux-notes.org

Свое облачное хранилище ownCloud для Debian/Ubuntu/Mint

Хочу рассказать как я сделал свое облачное хранилище ownCloud для Debian ( работать будет и для Ubuntu/Mint). Расскажу что такое ownCloud и как его установить в своей статье «Свое облачное хранилище ownCloud для Debian/Ubuntu/Mint».

Для начала нужно понять что такое ownCloud?

ownCloud – это облачное хранилище для ваших данных (что то типа Google Drive и Dropbox но свое), но это не основная его функция так же есть возможность сохранить файлы и получить доступ к ним с любого другого вашего устройства (телефон, планшет).

Основные возможности ownCloud:

  • Есть возможность синхронизации календаря на всех ваших устройствах;
  • Возможно сохранение для всех ваших контактов;
  • Сохранение ваших фотографий, видио файлов;
  • Файловое хранилище специально для каждого пользователя;
  • Есть возможность синхронизации с другими облачными сервисвами, такие как DropBox, Swift, Google Docs, Amazon S3;
  • Есть встроенная утилита для просмотра PDF;
  • Есть свой музыкальный проигрыватель;
Читайте также:  Крюк для рыбалки своими руками

Установка ownCloud для Debian/Ubuntu/Mint

Буду иметь ввиду что Вы заказали или имеете свой выделенный сервер, VDS или VPS в зависимости от того сколько нужно будет места (объем ХДД) для ваших данных. В качестве ОС я выбираю именно Debian Ubuntu, однако можете установить и на другие ОС.

Устанавливаем веб сервер Apache с поддержкой PHP и MySQL

Самый простой способ для этого — это использовать LAMP, который можно установить:

Apache установится без проблем, а при ходе установки MySQL Вас попросят ввести пароль для root вашей БД — пароль администратора. Создавайте хороший и надежный пароль с помощью моего генератора паролей, на данном сайте ( если его нет, то он на доработке и появится очень скоро).

Следующим шагом нужно будет произвести инсталляцию нужных модулей для PHP и так же некоторых дополнительных утилит для работы:

Сейчас мы немного настроим веб сервер Apache.

Первое что мы сделаем — это подключим модули mod_rewrite и mod_headers в апач:

Сейчас открываем файл с настройками веб-сервера апач в вашем любимом текстовом редакторе ( я предпочитаю использовать vim, но вы можете и открыть, например, nano) и внесем небольшие изменение:

Находим в этом файлу секцию , тут нужно разрешить обработку .htaccess внутри директории /var/www, по этому изменим параметр AllowOverride с None на All, должно выглядеть следующим образом:

После этого сохраняем данный файл и перезагружаем сервер Apache:

Нужно теперь настроить MySQL.

Подключаемся к серверу MySQL и создадим новую базу данных для нашего облачного сервиса (вам нужен будет пароль, который вы задавали при установки MySQL):

Все настройки сделали и теперь можно приступать к установке самого сервера ownCloud. Для этого перейдем в директорию, скачаем архив с ownCloud и после чего распакуем его, это делается следующими командами:

Выставляем права на папку, чтобы некто кроме нас не заходил в нее и не повредил что либо:

Если не выставить права, то получите следующее сообщение об ошибке:
Cannot create «data» directory (/var/www/owncloud/data)
This can usually be fixed by giving the webserver write access to the root directory.

На этом и завершена установка и настройка нашего облачка. Теперь что делаем дальше, нужно перейти в браузер и открыть ссылку:
http://your_IP_or_domain/owncloud/

облачное хранилище ownCloud

Вводим логин и пароль для администратора вашего облачного хранилища owncloud и вводим параметры доступа к БД. Нажимаем по настройкам БД «Mysql/MariaDB» и прописываем все настройки ( имя пользователя, его пароль и имя БД), после чего нажимаем «Завершаем установку».

начальный экран owncloud при входе в систему

Можно скачать ПО для телефонов на ОС android, iOS и для десктопных компьютеров на ОС — Windows, Mac OS, Linux.

owncloud на Debian

На этом я завершаю свою статью «Свое облачное хранилище ownCloud для Debian/Ubuntu/Mint», надеюсь все понятно было и полезно.

4 thoughts on “ Свое облачное хранилище ownCloud для Debian/Ubuntu/Mint ”

Добрый день.
Но OWN Cloud есть ограничение на размер закачиваемого фала. это 2Гб.
Как «помойку» для фоточек и документиков это использовать можно.
Но для служебных целей — образ закачать, core-dump залить — совершенно непригодно.

Добрый день.
Попробуйте исправить это в конфиге.

По умолчанию вы не сможете загружать в ownCloud файлы размером более 2 Мб. Чтобы преодолеть это ограничение, необходимо отредактировать файл /etc/php5/apache2/php.ini:
# vim /etc/php5/apache2/php.ini

Найдите в файле строку:
upload_max_filesize post_max_size

И замените это значение на то, которое вам нужно. Теперь сохраните файл и перезапустите Apache:
$ sudo /etc/init.d/apache2 restart

Должно помочь, напишите ответ пожалуйста.

И ни слова нет про лицензирование… Как это непохоже на линуксоидов.
Побурчал, мысленно пальцем погрозил… Пойду на офсайт за требуемой информацией.

Лицензия MIT — можно свободно модифицировать, но если изменил — должен предоставить исходный код с изменениями любым желающим (ссылочкой).
Подробнее я недоперевел. Будет еще время. Пора спать.

Добавить комментарий Отменить ответ

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Источник

Оцените статью
Своими руками