Белогривые лошадки... И эти "лошадки" тащут груз бесценной исключительно для нас информации. И, да, речь далее пойдёт только об облачных хранилищах информации. Темы про вычисления в "облаке" и всякие облачные хостинги затрагивать не будем, поскольку они, как правило, обычного пользователя на ПК не очень интересуют.
В первой части мы рассмотрели ПО для работы в интернете в Linux. Теперь осталось обозреть ситуацию с "облаками", причём сначала разберём ситуацию с импортным ПО, а потом с отечественным.
Сначала надо определиться с понятиями, о которых далее будет вестись речь, поэтому введём такое определение облачных хранилищ - это некое место ("облако"), в котором хранится и обрабатывается информация и доступ к ней предоставляется посредством некоего сервиса. "Под капотом" для пользователя остаётся то, каким образом происходит хранение и обработка информации, в том числе надежность хранения и защищённость от утечки данных. Подразумевается, что обычному пользователю достаточно гарантий владельца сервиса, особенно если это крупные сетевые корпорации, типа Google, Microsoft, Яндекс и Mail.ru.
Понятно, что определение весьма расплывчатое и реальные облачные сервисы по хранению данных могут отличаться друг от друга как своими параметрами для пользователя (доступным местом, стоимостью дополнительного места, скоростью доступа), так и протоколами и ПО для работы с данными. И в последнем для обычных пользователей Linux засада - зачастую используемые протоколы являются закрытыми (проприетарными), по открытым протоколам (WebDAV) доступ зачастую не предоставляется или предоставляется на платной основе, а клиенты для Linux'а либо вообще отсутствуют, либо представляют из себя консольные утилиты, либо какие-то неофициальные и, возможно, недоработанные версии.
Поэтому дальше я хочу разобрать работу с наиболее популярными сервисами облачного хранения данных в РФ: Dropbox, Google Диск, Microsoft OneDrive, Яндекс.Диск и Облако Mail.ru и ещё затронем парочку интересных сервисов (MEGA, pCloud) с клиентами под Linux. Безусловно есть ещё много разных ресурсов, но они гораздо менее распространены в России и сейчас они останутся за кадром.
Dropbox
Известный с 2007 года и когда-то очень популярный сервис. Он и сейчас довольно популярен, но, к сожалению, сейчас заметно уступает другим конкурентам по объёму в 2 Гб, предоставляемого для бесплатного использования (плюс ещё 250 Мб за выполнение нескольких заданий и 500 Мб за каждого привлечённого пользователя). Тем, кто в своё время успел получить дополнительное место ещё ничего, но вот новым пользователям может быть тесно в таком размерчике - фактически только документы и их сканы влезут в такой объём, даже про фотографии уже можно не заикаться, не говоря уже про видео.
Но начал я с него не только по причине большого стажа сервиса, а потому что Dropbox можно поставить жирный плюс за поддержку Linux'а: есть официальный клиент, который позволяет синхронизировать локальную папку с облаком и при этом все настройки осуществляются в графическом режиме максимально просто для пользователя. Это отличный пример облачного хранилища, который официально предоставляет все возможности в Linux, но вот размер для бесплатного использования ограничивает применимость данного "облака" для полноценного домашнего использования.
Google Диск
Известнейший сервис, есть практически у любого, кто хотя бы имеет учетную запись Google, т.е. практически у каждого, кто владеет телефоном под управлением ОС Android. Плюс, что Google предоставляет сразу 15 Гб для бесплатного использования, и, если включить хранение фото со сжатием, то и хранение фото станет безлимитным (не всем это подходит, однако). И сразу минус: Google не предоставляет для Linux полноценный клиент с возможностью синхронизации локальной папки на ПК с облаком (а для Windows есть!). Есть ровно один удобный способ наладить взаимодействие с облаком - это доступ через собственный протокол типа WebDAV. Например, в том же Linux Mint это неплохо настроено: достаточно один раз привязать аккаунт Google к ПК и пользователь сможет обращаться к данным в Диске от Google:
После этого в "Файлах" в подразделе "Сеть" можно будет открывать сетевой диск по адресу типа: google-drive://название_ящика@gmail.com/
И тут пользователь должен понимать, что работать он будет с документами в сети и для этого ему потребуется постоянное наличие интернета, а в противном случае Google Диск превращается для пользователя в тыкву. Скорее всего, это является неким следствием позиции из развития своей же операционной системы Google Chrome OS, которая без интернета тоже практически бесполезна.
Microsoft OneDrive
В облаке для обычных пользователей Microsoft сейчас предлагает по умолчанию всего 5 Гб. Также за время моего использования данного сервиса были разные акции, по которым предоставлялись дополнительные гигабайты. Однако, среди других крупных корпораций, именно Microsoft отличилась "отрезанием" тех гигабайт, которые сначала предоставлялись как бы без ограничения использования. Например, мне как-то было добавлено 10 Гб на закачку фотографий с Nokia Lumia якобы на постоянной основе, но через некоторое время (как серия Lumia приказала долго жить) оказалось, что Microsoft хозяин своего слова и гигабайт: захотел привлечь пользователей - дал дополнительное место, надобность пропала - забрал место.
Несмотря, на то что своё облако максимально привязано к своим же Windows и Office, в последнее время Microsoft делает вполне осознанные шаги навстречу пользователям платформ, отличных от Windows, с целью привязать их к своим сервисам (платформа неважна, важна подписка на сервисы), а не к ОС. Однако, то ли ещё руки не дошли, то ли пользователи Linux не настолько интересны в финансовом плане для данной корпорации, но официального клиента для OneDrive для Linux нет. И вообще никакого официального способа загружать и получать данные через данный сервис, кроме как через браузер, не существует.
До 1 ноября 2018 года был вариант с запуском неофициального демона (службы) onedrive-d (это чисто консольная история - и установка и настройка ПО проходит с помощью терминала), но и он перестал работать, поскольку поменялся API. Причём данный клиент был ещё и не дописан - он не позволял исключать из синхронизации каталоги, а выкачивать все данные ради синхронизации одного-двух нужных каталогов - это перебор.
Зато вместо него появился также неофициальный клиент OneDrive Free Client, он позволяет синхронизировать облачные данные пользователей с папкой на локальном диске, причём в нём-то можно исключить из синхронизации определённые каталоги. И он работает и можно его установить и использовать, но надо сразу бы предупредить пользователей, что это чисто UNIX-way: потребуется скачать исходный код и собрать его. Кратко распишу установку для Linux Mint:
- сначала надо установить пакеты git, build-essential, libcurl4-openssl-dev, libsqlite3-dev, libnotify-dev, pkg-config, curl (либо с помощью команды sudo apt install, либо с помощью графического интерфейса Synaptic)
- потом надо скачать и установить компилятор DMD с помощью терминала: curl -fsS https://dlang.org/install.sh | bash -s dmd
- потом в терминале же надо переключиться на этот компилятор: source ~/dlang/dmd-2.090.1/activate, где 2.090.1 - это версия скачанного компилятора, т.е. потребуется указать новое значение, в случае обновления версии. После установки можно его отключить командой deactivate
- получить исходный код: git clone https://github.com/abraunegg/onedrive.git
- зайти в терминале в скачанный каталог onedrive (cd onedrive), и запустить одну за другой команды для сборки:
./configure
make clean; make;
sudo make install
Надо только учесть, что для этого потребуется минимум 1 гигабайт свободной оперативной памяти, иначе команда make может вылететь с ошибкой.
После установки надо скопировать конфигурационный файл config из той же папки onedrive в папку /home/текущий пользователь/.config/onedrive и отредактировать его под свои требования. Для этого нужно будет раскомментировать (убрать |) нужные строки с параметрами:
- sync_dir - тут можно указать папку, в которую будет проводится синхронизация. По умолчанию, используется папка OneDrive в каталоге пользователя.
- monitor_interval - интервал (в секундах) проверки демоном обновлений на сервере и в локальной папке.
- skip_dir - очень важная опция, которая позволяет исключить из процесса синхронизации ненужные каталоги. Каталоги нужно указывать с такими же названиями как на сервере через знак вертикальной черты "|".
Там есть и другие параметры, но эти самые важные. Установленные параметры можно посмотреть с помощью команды onedrive --display-config, чтобы убедиться, что всё корректно. После этого проводится запуск команды onedrive без параметров. Она предложит вам скопировать специальную ссылку в браузер и потом, после подтверждения доступа приложения к вашим данным, скопировать из адресной строки браузера полученную ссылку обратно в окно терминала.
Затем производится запуск синхронизации командой onedrive --synchronize, причём сначала можно для проверки запустить её с параметрами --verbose --dry-run, которые не изменят никакие файлы, но покажут, что программа видит и что будет делать. После успешной проверки, убедившись, что файлы обновляются корректно останется только добавить команду запуска демона синхронизации onedrive --monitor в автозагрузку:
В итоге мы получим работоспособный вариант синхронизации данных для Microsoft OneDrive, но его установка для обычных пользователей будет ох как непроста, да и редактирование конфигурационного файла в текстовом редакторе удобной не назовёшь, особенно из-за того, что параметры не подписаны и за форматом их заполнения нужно лезть в мануал.
Продолжение следует...
P.S. Эта статья из цикла "Linux обычного пользователя" и, если она вас заинтересовала, то вы можете прочитать и другие статьи по этой теме. Если понравилось - ставьте палец вверх, ну а не понравилось - ставьте палец вниз и пишите в комментарии, что именно. Если возникнут вопросы - тоже пишите в комментарии, обязательно постараюсь ответить. Ну и подписывайтесь, если эта тема вам интересна.