воскресенье, 17 декабря 2017 г.

Google Диск. Практическая реализация синхронизации и совместной работы в Windows с папками Google Диска на ПК

Рассмотрение данного вопроса связано с выбором наиболее удачной модели совместной работы с синхронизируемыми на ПК папками с точки зрения удобства настройки и потребления системных ресурсов.

Для Google Диск всемирно известная корпорация добра выпускает десктопные клиенты синхронизации только для Windows, Mac, Android и IOS. И так как выпуск десктопного клиента для Linux Google в течение длительного времени упорно игнорирует, то данное облако долгое время оставалось вне области моих интересов.

Так с некоторых пор называют компанию Google Inc, ту самую корпорацию, которая известна по своим знаменитым продуктам – поисковику, почтовому сервису, облачному сервису, картам и многому прочему.
Назвали ее так в противовес "Корпорации зла", Microsoft Corporation, которая навязчиво предлагает лишь свои стандарты и решения. Гугл же потихоньку отбирает рынок у монополиста.
(источник: Большой вопрос.ru)


После произведённого ребрендинга десктопное приложение для персонального использования стало называться "Автозагрузка и синхронизация", а для бизнеса – "Клиент Google Диска". Предметом данной публикации является рассмотрение работы с приложением "Автозагрузка и синхронизация".

Скачанный для установки клиент представляет собой небольшой исполняемый файл installbackupandsync.exe, который впоследствии скачает и установит приложение синхронизации.

Настройка клиента

После своей установки приложение будет автоматически запущено и Вам будет предложено его настроить, т.е. произвести авторизацию в службе и указать объекты для синхронизации.





Вы можете оставить настройки как есть или произвести выборочную настройку. Нажмите ссылку "Изменить" и укажите свои предпочтения.



В расширенных настройках Вы можете исключить синхронизацию некоторых типов файлов по их расширению, например, tmp и bak.

Слева от ссылки "Изменить" имеется кнопка выбора папки для синхронизации с Диском, которая будет расположена за пределами пространства папки Google Диск. Например, я желаю синхронизировать с Google Диском папку Exchange, расположенную в C:\Data



Папка Google Диск расположена в папке профиля пользователя системы.


Google считает, что все имевшиеся на Диске папки (Мой Диск) до установки клиента будут синхронизироваться именно с этой папкой профиля пользователя. А все дополнительные объекты, которые будут указаны для синхронизации, расположены в папке Диска "Компьютеры".


Далее Вам стоит проявить внимательность. Впрочем, если Вы даже и ошибётесь, то это не страшно, так как в последующем настройку объектов для синхронизации Вы всегда можете поменять.




Обратите внимание на предыдущий рисунок. После кнопки OK Вы видите ссылку "Изменить", нажав на которую Вы получите возможность указать не путь, предлагаемый по умолчанию  (C:\Users\папка_профиля_пользователя\Google Диск), а выбранную папку, расположение которой м.б. на другом логическом разделе (диск D, диск E и т.п.) Ниже можно настроить синхронизацию не всех папок облака Google Диск, а только некоторых.


То, что будет указано (см. рисунок выше) будет скачиваться в папку Google Диск папки профиля пользователя системы.

В системном трее (на подставке рабочего стола) работа клиента отображается значком, кликнув по которому можно поинтересоваться его настройками. Кроме того, клик по значку отобразит процесс синхронизации в подробностях. То есть какие файлы синхронизируются и сколько файлов осталось. Для больших объектов процесс синхронизации будет отображаться в процентах выполнения.


Если никакие папки для синхронизации указаны не были, то клиент в папку Google Диск загрузит те файлы, которые находятся отдельно, то есть не в папках, а в корне Диска. На рисунке ниже, например, в корне Диска располагается файл GK.jpg


В спокойном состоянии (отсутствие синхронизации), что отображается значком с направленной вверх стрелочкой синего цвета (см. предыдущий рисунок), клиент потребляет неожиданно много по сравнению с другими клиентами синхронизации с облаком. Эта величина может варьироваться, но в незначительных пределах. Возможно, это обусловлено тем, что имеется 3 процесса. С точки зрения практического применения клиента какой процесс за что отвечает значения не имеет. Просто берём на заметку.



Для сранения, запущенный клиент Диска.Яндекс, судя по диспетчеру задач, в состоянии покоя ведёт себя скромнее (15-19 КБ):


Справедливости ради необходимо отметить, что когда Google совсем "успокоится", то есть в течение некоторого времени будет находиться в состоянии отсутствия активных передач, то и его потребление ресурсов становится вполне приемлемым.


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

В одной из предыдущих публикаций для этой предлагалось использовать программу Startup Delayer. Если в настройках данного ПО обратиться к свойствам объекта GoogleDriveSync, то можно увидеть, что его запуск осуществляется с ключом /autostart.



Попробуем убрать этот ключ, указать задержку запуска и перезагрузить систему.




Можно убедиться в правильности предпринятых для достижения этой цели шагов, контролируя по времени процесс запуска приложения.



 Примечание.  После 2-й или 3-й перезагрузки Вы можете наблюдать, что задержка не сработает. Обратившись в Startup Delayer к списку автозагружаемых приложений Вы можете с удивлением обнаружить, что у Вас имеется 2 записи GoogleDriveSync: настроенная на задержку и запускаемая при старте системы с нулевой задержкой, т.е. восстановленная. Это связано с тем, что такая запись автостарта с ключом /autostart присутствует в реестре. Удалите в Startup Delayer "восстановленную" запись. Изменение будет записано в реестр и больше такой ситуации повторяться не будет.

На рисунке выше видно, что вместо вертикальной стрелки вверх на значке происходит анимация, что свидетельствует о  синхронизации ПК с облаком.

Если подвести к значку курсор, то будет отображена всплывающая подсказка:


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



Также в эти моменты будет показаны синхронизируемые в данный момент времени файлы.


Как видно на рисунке выше, синхронизация происходит в несколько потокоа, то есть одновременно обрабатываются 5 файлов. При этом число "готовых" файлов, помеченных зелёным, будет варьироваться в пределах 1-2, а число скачиваемых (загружаемых), помеченных синим анимационным кружочком, 3-4 Диспетчер задач покажет Вам, что число процессов googledrivesync.exe по сравнению с состоянием покоя также выросло.


Признаком завершения синхронизации данных является изменение состояния значка.


Совместная работа с папками общего доступа

Чтобы предоставить папку в совместное использование необходимо авторизоваться в Google Диске через браузер, выбрать папку, назначить её в совместный доступ, указать пользователя Google и определить для него необходимые права.

Выделите папку и нажмите правую кнопку мыши. В выпадающем меню кликните на "Совместный доступ".


Укажите пользователя и назначьте необходимые права. Выбор, правда, небольшой, поэтому долго думать Вам не придётся.


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


Чтобы включить её в состав своих синхронизируемых клиентом данных необходимо (опять же в браузере) через правый клик мыши скомандовать "Добавить на Мой Диск" или попробовать перетащить а "Мой Диск" мышкой (может зависеть от браузера) и впоследствии даже в "Мое устройство ПК".






Если теперь обратиться к настройкам клиента, то можно убедиться в том, что данная папка доступна для синхронизации на ПК в папке Google Диск.

Щёлкните по значку клиента и далее на 4 вертикальных точки. Дальше всё будет понятно интуитивно.





Эта папка (JoinedEx) будет находиться в папке Google Диск Вашего ПК и помечена как папка с совместным доступом (в рассматриваемом примере на Windows 7 – синий силуэт):


Увы, но в первом эксперименте в папку облака "Мое устройство ПК" переместить её не представилось возможным, хотя в дальнейшем в браузерах Chrome (Chromium) этот шаг осуществить получилось.


Вам необходимо будет иметь в виду, что на системном диске Windows (как правило, это C, но могут быть и варианты) необходимо иметь достаточно свободного дискового пространства для нормальной работы с Google Диском. Но если Вы внимательно читали описанное выше, то в самом начале настройки клиента имеется возможность указания другого расположения папки Google Диск на ПК. Однако эта настройка осуществляется только на начальном этапе. Если вы пожелаете всё переделать, то после деинсталляции клиента Вам придётся удалить сопутствующие ему скрытые папки и хорошо вычистить реестр.

При работе с папкой совместного доступа с правом "Перемещение и изменение" избегайте желания её переименовать, как это Вы могли делать в Диск.Яндекс или Dropbox. Как только Вы её переименуете, то изменения будут реплицированы на пространство папок Вашего респондента или всех респондентов, работающих с этой папкой. На примере ниже на своём ПК переименовываю JoinedEx в JoinedR2. Это изменение приводит к переименованию папки JoinedEx на Google Диске того, кто предоставил эту папку мне в доступ.



При этом душевный настрой работающих с данной папкой может претерпевать серьёзные изменения, переходя из состояния "я слегка сердит(а)" в состояние "я в ярости".

Для проверки совместной работы в папку JoinedEx были помещены несколько файлов:


После завершения процесса синхронизации эти же файлы отображались на Google Диске другого аккаунта:


После всех синхронизаций диспетчер задач отображал мне сначала 5, а потом 4 процесса с различающимися расходами ресурсов. Лично для меня такое непостоянство так и осталось "тайной мадридского двора".



Возвращаясь к настройкам, перейдём к последнему пункту вертикального меню слева. Как видно из рисунков ниже, здесь никаких комментариев не требуется.




Можно отметить, что назначение папок для синхронизации можно произвести через правое контекстное меню Проводника. Например, добавим папку Books fb2.




К тем папкам, которые уже синхронизируются клиентом, также применимы операции при помощи правого контекстного меню мыши:




В качестве своего ряда заключения.

Описанное выше было выполнено на виртуальной машине. На реальном ПК показатели отдельных процессов googledrivesync.exe достигали значений в 280-320 КБ. Такое потребление ресурсов наблюдалось в случае большого числа (более 9 тысяч) файлов в очереди на обработку.

Синхронизирующиеся и синхронизированные папки в Проводнике были помечены синими и зелёными эмблемами соответственно: