Как создать собственный собственный сервер Dropbox / Ubuntu One дома?

Во всех последних установках Ubuntu вы можете использовать hostname.local, и он просто работает. Я считаю, что это означает, что mDNS настроен автоматически, но поскольку он всегда просто работает (за исключением некоторых маршрутизаторов в некоторых отелях, где я получаю уведомление об отключении из-за разбитого маршрутизатора), мне не пришлось копать в.

1
задан 25 August 2013 в 09:02

12 ответов

есть на самом деле их множество.

SparkleShare (дэпс: в git/subversion и, моно, питона) на основе графического интерфейса пользователя на github программное обеспечение для синхронизации. а. Управление версиями: с помощью системы управления исходным кодом, следовательно, это мьютекс-основан на Центральный сервер через номер версии. б. Состояние: на стадии разработки Си. Плюсы: ОСС, моно -, так легко изменяемой, минусы: процесс на уровне пользователя, ГК-зависимость, неэффективность совместного протокола на порядки, как git-это в первую очередь для небольших текстовых файлов, довольно трудно скомпилировать (я пробовал). Используя инструменты высокого уровня. рассинхронизация командной строки (дэпс: унисон по rsync) службы на основе программного обеспечения. а. Версий: через rsync и Дельта-алгоритм. Я предполагаю, что программист должен выбрать разрешение конфликта. б. Состояние: я не могу найти его исходный код, так что я понятия не имею. Единственное, что в его git РЕПО являются двойными. с. Плюсы: приятная установки, с использованием среднего уровня инструменты. к ifolder и Dropbox компании Novell. Я не изучал еще его источник. Я просто хочу, чтобы это изменить и если люди заинтересованы, я еще добавлю. а. Версий: б. Состояние: проблематично заставить его даже скомпилировать на Ubuntu, не говоря уже пакеты. Вот подробное руководство по установке. с. Плюсы: клиент Windows х64, зрелые, АД-интеграция с помощью ACL, функции, никакой другой проект начали реализовывать. Я думаю, это может быть хорошей отправной точкой. Минусы: компания Novell может не пользоваться своим государственным СВН РЕПО в качестве основного РЕПО и только код-капли. Я не знаю точно об этом же. Может быть слишком помноженные на openSUSE с легкостью установить на Ubuntu. Чтобы проверить свои алгоритмы. УПП/РКП - deprecated в пользу команды rsync DRDB - блок инструменты зеркалирования устройств для распределенных рейд-1, т. е. сервер-вариант с Dropbox. Я не проверил его исходный код, но это только для Linux. Фактический алгоритм, вероятно, будет легко сочетать с исходным кодом в мои размышления ниже этого программного обеспечения-листинг. а. Версионность: Формат внутреннего сообщения по локальной сети/глобальной сети б. Состояние: кажется, доросли с. Плюсы: достаточно стабильная для Linux, минусы: никаких других операционных систем поддерживаются

сейчас я расследую улучшение компиляции раз в Виртуализированной системы Windows 7, где компиляции на Windows 7 на металл 40, но виртуализированных приблизительно 3м 20С. Я подумываю о написании драйвера ioctl, который является сквозной записи кэша, который выглядит как RAM-диск для выбранных папок на NTFS.

с помощью вышеуказанного программного обеспечения, я думаю, недели 2-3-человека полного-время развития производства пригодных к использованию Альфа, что не потеряете вы файлов путем объединения программного обеспечения выше.

в моей системе то, общая идея будет;

Смонтировать виртуальный диск?{Идентификатор GUID}, что такое RAM-диск и RW-кэш. Программы для создания этот виртуальный диск принимает два входных параметра (что не важно): есть. Целевой папки, это папки по SMB, так что я будет препятствовать сетевой стек операционной системы, отрегулировать фактическое ИО. В моем случае это, в свою очередь, виртуальные папки в VMware, которая имеет в себе цель, которую в ext4 диск, но это может легко быть свой файл-сервер с использованием Samba/СМБ. б. Путь к папке для установки, напр. C:\ramdisk этот код для создания виртуальных томов быть взяты из кода truecrypt в, в /водитель/DriverFilter.с (среди других файлов) привод использует SMB/по VMware/сетевой протокол для получения данных, когда начнется, он выбирает с низким приоритетом задач, асинхронно от сети и заполняет кэш. Он может использовать простой алгоритм сжатия и 1 поток, который использует сообщение-коробка Тип продолжения прохождения, чтобы получить большую производительность. В Windows это можно использовать обычный асинхронный ИО называет, а в Linux он может использовать в epoll реализации/inotify и взять код с nginx. Моя служба, что такое RAM-диск монтирует безымянный диск диск как NTFS-папку. Все программы могут продолжить писать C:\ramdisk, или как я это называю. Асинхронное копирование из сети еще продолжается. С Скорость чтения около 100 Мб/с и 2 Гб RAM-диск, он будет 20.5 s, чтобы прочитать все данные.

каждый вызов, чтобы прочитать бы выполнить процессор расчета индекса в фиксированных N:Тип ulong Гиб максимум выбора размера. Это потребует хоть и разрешению конфликтов или блокировок чтения-записи. Если бы мы реализовать конфликта-решить алгоритм, как те, которые доступны через Microsoft синхронизации, мы могли бы пройти каждый кусок, что конфликты, как сообщение другому решить конфликт-процесс. Dropbox решает ее, создавая новый файл и назвать его "конфликтной копии PrevFileName Имя пользователя (ГГГГ-мм-ДД).вн". Возможно, это может быть изменено с помощью небольшой виджет, при составлении в отношении, что один источник -- виджет будет обнаруживать выдающиеся изменения в виде Сообщений/событий и выбрать протокол урегулирования конфликтов. Таким образом, при программировании на папку в эксклюзивном режиме виртуальной машины Windows может установить виджет на "эксклюзив".

это будет иметь эти плюсы

[о d54] программное обеспечение SparkleShare (дэпс: в git/subversion и, моно, питона) на основе графического интерфейса пользователя на github синхронизации. а. Управление версиями: с помощью системы управления исходным кодом, следовательно, это мьютекс-основан на Центральный сервер через номер версии. б. Состояние: на стадии разработки Си. Плюсы: ОСС, моно -, так легко изменяемой, минусы: процесс на уровне пользователя, ГК-зависимость, неэффективность совместного протокола на порядки, как git-это в первую очередь для небольших текстовых файлов, довольно трудно скомпилировать (я пробовал). Используя инструменты высокого уровня. было бы сделать предположение, но не требуют, что один компьютер будет писать в основном на файлы. рассинхронизация (дэпс: унисон по rsync) командной строки служебной программы. а. Версий: через rsync и Дельта-алгоритм. Я предполагаю, что программист должен выбрать разрешение конфликта. б. Состояние: я не могу найти его исходный код, так что я понятия не имею. Единственное, что в его git РЕПО являются двойными. с. Плюсы: приятная установки, с использованием среднего уровня инструменты. это будет работать на *nix и Windows посредством связывания упомянутых проектов. к ifolder и Dropbox компании Novell. Я не изучал еще его источник. Я просто хочу, чтобы это изменить и если люди заинтересованы, я еще добавлю. а. Версий: б. Состояние: проблематично заставить его даже скомпилировать на Ubuntu, не говоря уже пакеты. Вот подробное руководство по установке. с. Плюсы: клиент Windows х64, зрелые, АД-интеграция с помощью ACL, функции, никакой другой проект начали реализовывать. Я думаю, это может быть хорошей отправной точкой. Минусы: компания Novell может не пользоваться своим государственным СВН РЕПО в качестве основного РЕПО и только код-капли. Я не знаю точно об этом же. Может быть слишком помноженные на openSUSE с легкостью установить на Ubuntu. Чтобы проверить свои алгоритмы., когда конфликтующие мероприятия будут достигнуты, можно предоставить пользовательский интерфейс приложения, который позволяет пользователю писать/скачать плагины, которые действуют здраво на разного рода события-т. е. разного рода файлов. Е. г. текстовый файл может быть воспитан с Kompare/средство windiff, в то время как двоичный будет повторяться и сохранить как другой файл. [!о d54]
44
ответ дан 29 May 2018 в 12:35
  • 1
    папка binync's bin содержит сценарии оболочки, а не двоичные файлы. – haggai_e 2 October 2011 в 12:19
OwnCloud! звучит как то, что вы ищете.

18
ответ дан 29 May 2018 в 12:35

я слышал о Syncany на Ubuntu UK Podcast, в настоящее время бета-версии, но выглядит так, как будто он соответствует требованиям

5
ответ дан 29 May 2018 в 12:35
  • 1
    Хорошая идея использовать бесплатное веб-пространство независимо от того, какой протокол изначально был предназначен :) – math 4 February 2012 в 03:37

Я не думаю, что это совсем то, что вы ищете, но это зависит от вашего предполагаемого использования.

CrashPlan - это программный пакет для резервного копирования и связанный онлайновый резервный хостинг, но все по-другому. их программное обеспечение имеет режим, позволяющий выполнять резервное копирование данных через Интернет (или локальную сеть) на другой компьютер, на котором запущено программное обеспечение.

Это означает, что пункт назначения не должен находиться в облаке. Это не совсем похоже на Dropbox в том, что речь идет скорее о резервном копировании, а не о синхронизации и доступе к файлам извне, но если это просто резервные копии, которые вы хотите, тогда это работает хорошо. Если вы хотите получить доступ к резервному копированию файлов с другого ПК, я думаю, вы можете сделать «локальное восстановление», но это не то, что я пробовал.

Базовый пакет программного обеспечения свободен и поддерживает «резервное копирование» в другой компьютер ", но только плановая резервная копия, но есть« про »версия программного обеспечения, которая также стоит и выполняет синхронизацию в реальном времени, а не только запланированные резервные копии. (Облачное хранилище также является дополнительной оплатой за месяц)

3
ответ дан 29 May 2018 в 12:35

Я использую Unison для клиента и rsnapshot (rsync с perl-скриптом) для резервного копирования сервера.

3
ответ дан 29 May 2018 в 12:35

Посмотрите, поможет ли это:

http://fak3r.com/2009/09/14/howto-build-your-own-open-source-dropbox-clone/

2
ответ дан 29 May 2018 в 12:35
  • 1
    -1 Я не думаю, что это лучшее решение и, следовательно, не ответ. – Henrik 1 February 2011 в 00:41
  • 2
    -1 это сервер rsync, а не решение, подобное Dropbox ... – Arman 8 August 2011 в 00:53
  • 3
    Это решение ограничено в полезности, потому что оно просто связано с другой статьей, создавая риск linkrot. Этот ответ нужно отредактировать, чтобы быть более существенным, просто ссылаясь на данную ссылку как на источник. – Christopher Kyle Horton 14 November 2011 в 03:27
  • 4
    Хотя это теоретически может ответить на вопрос , было бы предпочтительно включить здесь основные части ответа и предоставить ссылку для справки. – Tim 21 March 2015 в 19:52

Если вы хотите настроить две (или более) машины с реплицированной папкой, посмотрите на glusterfs.

Легко настроить, если вы следуете руководству пользователя GlusterFS. [!d1 ]

2
ответ дан 29 May 2018 в 12:35
  • 1
    Вы говорите, что в кластере GlusterFS файлы будут синхронизироваться, пока клиенты подключены к другим, но файловая система будет доступна локально для клиента, который отключен от других? Я думаю об использовании этого для синхронизации между моим ноутбуком и сервером. – Ryan Thompson 19 September 2010 в 00:46
  • 2
    Да. Я еще не закончил тестирование, но он работает без проблем. – Richard Holloway 22 September 2010 в 20:11
  • 3
    Это не работает в Windows, так что это не «совместимость с Dropbox». – Henrik 1 February 2011 в 00:42

Ни одна упомянутая биторная синхронизация? Работает на чем угодно - Ubuntu, windows, многие обычные операторы смартфонов, малины pi .... вы называете это, возможно, работает, и как обычный пользователь. Зашифрованные передачи, файлы не хранятся в облаке (хотя я думаю, что bittorrent запускает трекер для него), достаточно быстро, вы можете выборочно обмениваться папками и почти не усложнять, вам просто нужно скопировать и вставить ключ в другой система.

Как только он настроен, он просто работает.

2
ответ дан 29 May 2018 в 12:35

Я смотрю на AeroFS. Похоже, что это может быть служба, подобная Dropbox, где хранение в облаке необязательно. Не знаю, будет ли / когда они будут осуществлять мобильную поддержку, и я предполагаю, что для этого потребуется синхронизировать эти файлы с облаком. Меня интересует довольно безболезненное решение синхронизации между компьютерами Windows, Mac и Linux.

Они находятся в ранней бета-версии, но вы можете AeroFS для приглашения, если хотите. [ ! d2]

1
ответ дан 29 May 2018 в 12:35

Я использую apache с mod_dav (webdav) для веб-сервера apache, я могу установить его как диск и загрузить / загрузить файлы через Интернет. Это довольно просто, но может удовлетворить ваши потребности.

1
ответ дан 29 May 2018 в 12:35

Хотя есть интересные альтернативы, перечисленные здесь уже, и это более старый вопрос, я убежден, что эта тема явно не устарела и, напротив, приобретает все большее значение из-за последних событий, нарушающих конфиденциальность. [ ! d0]

Поэтому я хочу поделиться своим опытом. Мое текущее решение для собственной среды с облачным окружением - Seafile.

Возможности Seafile:

Веб-доступ к облачным ресурсам Клиенты для Linux, Windows, Mac, iOS (не бесплатно), Android-пользователи / group management Организация файлов через разные библиотеки Автоматическая синхронизация файлов с помощью клиентского программного обеспечения Возможность публиковать файлы посредством создания общедоступных ссылок

Возможности Seafile:

Web основанный на облаке Пользовательский интерфейс чистый и функциональный Клиенты для Linux, Windows, Mac, iOS (не бесплатно), Android До сих пор никаких функциональных проблем для меня не было! (используя это через несколько недель) Управление пользователями / группами Нет прямой поддержки прокси (по крайней мере для клиента linux - и веб-интерфейса!). Примечание: webinterface работает, но загрузка файлов через webinterface не работает за прокси - не знаю, возможно ли это как-то

Поскольку мне не нужна поддержка прокси, я действительно доволен Seafile !

1
ответ дан 29 May 2018 в 12:35

Я использую SSHFS для монтирования каталогов на моем сервере в качестве локальных каталогов на моем рабочем столе и ноутбуке. Все изменения файла сохраняются непосредственно на сервере. Однако, в отличие от dropbox, файлы не хранятся локально на ваших клиентских машинах. Я думаю, что это здорово, потому что вам не нужно беспокоиться о синхронизации и управлении версиями, но это не идеально подходит для автономного использования или очень больших файлов.

Это очень просто и просто, и я считаю, что это лучшее решение. Единственное, что я не использую для этого - это большие медиа, такие как картинки и фильмы, потому что все файлы получают доступ через сеть. Я синхронизирую с Rsync.

Ссылка на документацию SSHFS -> http://fuse.sourceforge.net/sshfs.html

0
ответ дан 29 May 2018 в 12:35

Другие вопросы по тегам:

Похожие вопросы: