Как стать автором
Обновить

Комментарии 47

Очень мало сервисов для простого человеческого хранения. Я не хочу синхронизировать, я не хочу создавать отдельную папку. У меня терабайт с лишним в OD. Я хочу взять, положить в OD и при необходимости забрать частично обратно на любом из устройств.
Пусть будут костыли, например создать для текущей папки из которой будут заливаться файлы папку синхронизации и после заливки — отключить. Желательно, чтобы не было предварительного копирования «куда-то».
Для положить у нас есть one-way синхронизация (upload или download), при этом не нужно копировать всё содержимое в target папку, достаточно создать симлинк, для этого есть кнопка Link a folder (или Add...) на основной форме. Для частично забрать есть выборочная синхронизация, но это наверное не совсем то что вам нужно.
частичную синхронизацию с OneDrive умеет GoodSync. чем ещё он мне нравится — можно синхронизироваться с разными учётками
Хочу Linux-клиент для не-интел систем. Наиболее интересны arm-based, возможно, не только они.
Лично мне для СкайДрайва недостает только нормального полноценного WebDAV клиента под WinXP.
А несколько аккаунтов планируется?
Да, это есть в наших планах.
Для меня более всего актуально как раз вот это: «Работа под Windows 8.1 с локальным accountом». И буду очень ждать portabale-версию.
А есть ли сложность перевода на Русский язык?
Сложности в переводе на Русский нет, есть необходимость реализации мультиязыковой версии. Когда реализуем мультиязыковую версию — Русский будет один из первых — т.к. перевод для нас прост. Интерфейс довольно прост, и я надеюсь всё максимально понятно.
У меня включена двухфакторная авторизация. Пошел к Microsoft, сгенерировал app password, указываю его в окне логина, но приложение показывает диалог с ошибкой «Unable to connect blah-blah-blah». Что делать?
Да, здесь немного сложнее:
В окне логина нужно нажать «More», и пройти двухфакторную авторизацию, а затем в окне логина ввести app passord.
Так сделано потому что мы используем несколько API для разных задач.
Ок. Но вы бы тогда это всё обозначили на диалоге-то, а то при нынешнем тексте на нем такой алгоритм совершенно не очевиден.
Сделаем, спасибо.
Сделал как вы сказали, все получилось. Программа начала считывать метаданные и вдруг на мобильный посыпались запросы на подтверждение авторизации от Майкрософт. Я уже и программу вашу выгрузил, а запросы идут каждые полминуты. Горшочек, не вари!
Попробуйте настроить соединение заново. Попробуйте остановить windows service «syncDriver Service».
Нет, ребята, я за вас, но этим заниматься не буду. Пока деинсталлировал вашу программу. Подожду следующих билдов. Надеюсь, вы поправите работу при двухфакторной авторизации.
В стандартном клиенте есть возможность через веб-интерфейс скачать любой файл с компьютера (разумеется, если он включен)
Есть ли у вас такая же функция?
Нет, у нас нет этой функции, более того её нет в клиенте под Windows 8.1, и не будет в Windows 10. Для нас это означает что поддерживать эту функцию не перспективно.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
HTML-based решение может быть хорошо для реализации UI, а не файловой синхронизации.
QT — вариант, особенно для реализации UI, но врядле он поможет нам в работе с SSL соединением и файловой системой, можно конечно же взять OpenSSL.
.NET максимально включает в себя разные аспекты нужные для файловой синхронизации (файловая система, работа через SSL), при этом всё просто с точки зрения реализации, а сервисная часть работает под mono на linux практически с коробки.
Реальной альтернативой был python, но мы сделали выбор в пользу .NET — это наверное повод для отдельной статьи.
НЛО прилетело и опубликовало эту надпись здесь
Локальная файловая система мониторит изменения через FileSystemWatcher. Кроме того, происходит полный обход дерева файловой системы с некоторым интервалом, это гарантирует нам подхват изменений, сделанных когда клиент не был запущен.
В mono FileSystemWatcher базируется на Gamin, возможно потрубуется поддержка и Inotify — пока мы не проводили глубокого тестирования на linux.
НЛО прилетело и опубликовало эту надпись здесь
Про шифрование думали, и оно есть в нашем длинном списке, но в таком случае мы теряем web UI от OneDrive. Этот кейс больше подходит для шифрованного бэкапа, или если не доверяем OneDrive. Интересно, как предполагается шифровать и делиться ссылкой?
Сейчас мы делаем акцент на поддержке самого сервиса:
— поддержка расшареных с тобой папок
— шаринг из windows explorer
— несколько аккаунтов
— linux, portable version
НЛО прилетело и опубликовало эту надпись здесь
Спасибо за описание.

> Какая разница, лежит у меня там file.zip, или file.zip.cyphered?
Для .zip нет разницы, имеется ввиду типы файлов которые поддерживаются в OneDrive нативно: .doc, .xls,… или изображения.
НЛО прилетело и опубликовало эту надпись здесь
«Чтобы поддерживать клиент под разные ОС было принято решение использовать .NET. »,- тут что-то не так или я чего-то не понимаю.
В первую очередь речь идет о сервисе, который выполняет саму синхронизацию, а не UI. Сервис работает с файловой системой и веб сервисами OneDrive API.
хочется Portable версию. Для dropbox есть решения, а для OneDrive, особенно после его встраивания в Win8, — ничего не нашел :(
А, вот ещё вспомнил — хочется видеть лог конфликтных файлов и возможность решить, «какая сторона победит».
Поясню. Возможно я такой криворукий, но как-то у меня часто получается, что возникают конфликтные файлы — и по две копии файла (данные как минимум на двух разных машинах, дом/работа + иногда ноутбук разъездной) создаётся. А поскольку папок и файлов много, то обнаруживаешь это обычно случайно и когда уже поздно что-то исправлять :(
Было бы удобно, если бы можно было по итогам синхронизации (или скажем за заданный период) посмотреть — какие файлы были конфликтны.
А если ещё и как в утилитах синхронизации — после сканирования показывает окно с конфликтными файлами и предлагает решить, какой конфликтный файл куда (копировать или удалить) — вообще прелесть.
Правда не знаю, насколько это сложно :-)
Мне показалось что в статье не раскрыто самое главное — _зачем_ нужно было делать собственный альтернативный клиент.
Вполне раскрыто. В Windows 8.1 оригинальный клиент работает только при логине с майкрософтовским эккаунтом, а при использовании локального эккаунта работать отказывается. Уже одного этого достаточно, чтобы сделать клиент, эту проблему решающий. Да и вообще в посте в конце целый подраздел «Зачем» есть.
да, спасибо, технически всё понятно, но для чего это нужно вам?.. :)
Дык, буквально же. :) У меня Windows 8.1, локальный эккаунт и простаивающий без дела 1ТБ на OneDrive. Многогигабайтный архив через браузер не зальешь.
Работает ли вместо Skydrive Pro? Или там что-то другое у него внутри?
Родной синхронизатор совершенно отвратный, периодические ошибки без подробностей, отказ синхронизировать случайные файлы, «Обработка изменений» навечно и всё такое.
Нет, мы не поддерживаем Skydrive Pro, он базируется на совершенно другом API, и является логическим продолжением Sharepoint.
Подскажите, будет ли работать Ваш клиент в следующей конфигурации:

У меня аккаунт Live, я под ним работаю, имею OneDrive.
Хочу в другую локальную папку подключить OneDrive от другого аккаунта с помощью Вашего клиента.
Получится ли так? Иметь один диск стандартным способом, а второй — через Ваш клиент?
Да, так будет работать — никакого конфликта со стандартным клиентом нет.
Это просто супер!
Мне кажется, это дополнительный сценарий, который конкретно интересен некоторым пользователям. Раз уж он работает, мне кажется, логично его добавить в описание преимуществ.

Конкретно мой случай: есть основной аккаунт, где хранятся документы, настройки, всё-всё-всё. Он и на планшете и в телефоне и на нескольких компах. А второй аккаунт — для фоток. Он нужен не на всех устройствах. Похоже, Вы решили мою проблему.
Спасибо!
Как я понял, программа бесплатная. Тогда почему не OpenSource?
Вообще в OneDrive вроде OAuth используется. Как вам удалось обойтись только login+password?
И вам тут уже советовали обратить внимание на шифрование. Но там идея замороченная с ключами и тыды. Есть идея проще — указывать определенным папкам/файлам, которые льются в OneDrive что их нужно архивировать с определенным паролем. То есть локально на компе они лежат несжатые, а сжимаются и запароливаются налету в момент upload. Еще непло бы и имена как то скрывать.
Добрый день!
Проект будет продолжать развиваться? Появился вопрос — поставил софтину, настроил на синхронизацию каталога с 300+ГБ файлов (Файлов: 125 229; папок: 4 768), в первый заход провисел больше 12 часов в статусе «Loading metadata...», сейчас висит еще уже пару часов в том же статусе. В родном клиенте не было таких больших временнЫх задержек перед переходом непосредственно к заливке в облако. Проц i7-760, памяти достаточно, винт Toshiba 2Tb.
Что-то пошло не так или первый запуск самый тяжелый и дальше не будет так грустно?
И второй вопрос — активна ли служба без клиента? Вопрос связан с синхронизацией сетевой шары в ситуации, когда раздающий комп включен, но на нем никто не залогинен.
*i5-760
Тоже сначала засунул папку туда и ждал, потом сделал по другому — в качестве рут каталога указал свою папку OneDrive, и добавил к ней через Link a Folder нужную мне папку для синхронизации, после чего она стала затягиваться в OneDrive.
Ага все-таки не удалось заставить его работать :(
Зарегистрируйтесь на Хабре, чтобы оставить комментарий