После рождения сына встала необходимость в хранении большого объема фото и видео контента, доступного для просмотра родствениками через интернет. Я начал думать как это организовать, и вот мой путь самурая с хэпиендом:
Облачные хранилища (GoogleDisk, DropBox и т.п.)
Первое что пришло в голову — выкладывать фото в облачное хранилище и настроить у всех заинтересованных родствеников синхронизацию с этим хранилищем. Это было пожалуй самое простое решение и я бы им пользовался если бы не одно но — доступное место в облаке кончилось ровно через год.
Пришлось думать что-то дальше…
Домашнее облако
К этому моменту мой домашний десктоп уже стал виртуальным сервером и переехал в прихожую на шкаф. Я решил что нужно иметь свое облако и выбрал для этого owncloud, в теории должно было быть все так же как в предыдущем варианте только вместо 2Гб свободного места я получаю 100Гб и возможность дальнейшего расширения.
Установил облако на виртуальную машину, работающую под управлением Debian 7.
Первый эксперимент закончился полным фейлом, я смонтировал в папку обрабатываемую этим облаком свой фотоархив ( 400 Гб ) и попытался посмотреть его через браузер. Сервер завис и даже перезагрузка его не спасла. Он ушел в индексацию каталога из которой уже не вернулся.
Следующая попытка и я не монтирую фотоархив а использую облако только для новых файлов. Вроде все работает нормально — синхронизация, доступ по вебу. НО! это приложение периодически что-то делает с загруженными файлами ( возможно читает хэш, выяснить так и не удалось ) и нагрузка на диск дико возрастает. Так как помимо этого сервера на виртуалке у меня стоит ещё 4 системы, такой загруз диска стал для меня критический. К тому же периодически в моменты таких загрузок облако становилось недоступным. Было принято решение отказаться от этого варианта из-за высокой ресурсоемкости.
Dropbox + Архивация + rsync + QuickGallery
К сожалению пришлось писать что-то свое, зато быстрое, эффективное и рабочее.
Итак я решил вернуться к облакам, но только для того чтобы передать контент с телефона/ноутбука на файловый сервер.
Выглядит это примерно так:
1) В течении недели я или супруга делаем фотографии с ребенком, периодически что-то стоящее публикуем в Dropbox, остальное удаляем.
2) Dropbox синхронизируется с папкой на файловом сервере под управлением Debian 7.
3) Раз в неделю запускается незатейливый скрипт, который берет все файлы из папки Dropbox и перемещает их в папку «Шара». Все файлы разбиваются по папкам соответствующим дате создания файла. В результате Dropbox постоянно чистится и мы не испытываем проблем с нехваткой места, а в папке Шара есть набор папок вида — 2014-11-26, 2014-11-27 в которых лежат фотографии
4) На домашнем ноутбуке настроена синхронизация через rsync с папкой «Шара» на файловом сервере, что позволяет иметь на ноуте полную копию того что лежит на файловом сервере. Ноутбук работает на Elementary OS.
5) Я или супруга периодически заходим на ноуте в папку с фотками и наводим там порядок — объединяем папки, даем им осмысленные названия. Все это синхронизируется с файловым сервером и там так же приводится все в порядок.
6) Теперь самое интересное — доступ родственикам к фотографиям. Реализация вобщем то простая, на файловом сервере поднимается веб-сервер, настраивается на фотоархив, а в фотоархив кладется скрипт фотогаллереи Quick Gallery. Для доступа к серверу из вне делается проброс портов через маршрутизатор и покупку статичного IP у провайдера.
P.S.: На данный момент Quick Gallery не может проигрывать видео, от чего было принято решение заменить её на что-то другое.
Почему нельзя просто все фотки и видео скидывать во вКонтакте например? Зарегистрировать там всех родственников и дать им доступ, там же можно и комментарии писать и описания и в альбомы объединять, и место не ограничено.
Или можно другой сервис подобрать, типа Flickr или кучу других.
Личные фото вконтакт не скинешь. А вот фотохостинги имеют лимиты и показывают рекламу на бесплатных аккаунтах http://www.diffen.com/difference/Flickr_vs_Picasa
Почему не скинешь, в Контакте можно закрывать доступ к фотоальбомам, можно доступ открыть только для определенной группы друзей или некоторых друзей.
А реклама не так уж и мешает, можно баннерорезку включить.
А лучше использовать ВК или фотохостинги для хранения, а для просмотра написать свой движок (с хранением URL всех фото) и выложить его на бесплатном хостинге без рекламы.
А то свой сервер дома держать ИМХО стремно, он шумит и энергию потребляет.
О как, не знал про закрытые галлереи в ВК. Но всеравно не подходит — у меня 300 Гб. фото а там только в ручную переносить.
Я задумался насчет Flickr, возможно это лучшее решение. Если там есть приватные галлереи то попробую перейти на него.
Спасибо.
В ВК кстати можно и по несколько файлов закачивать, если несколько выделить или несколько перетащить в поле закачки, тогда они все по очереди закачиваются.
Так что, чтобы все 300гб закачать, надо все в одну папку сложить (или в Linux жесткие ссылки создать), все их выделить и передать на закачку. Или отдельные папки в отдельные альбомы закачивать.