Перейти к содержанию

Google Drive

Note

Здесь описан опробованный способ организации доступа к Google Drive с любой linux-машины, позволяющий наживую работать с файлами в Google Drive, как с сетевым хранилищем

Используется rclone => 1.52.3. Версия - не ниже, не поддерживается необходимый функционал.

Сначала конфигурируется шара - rclone config, там выбирается Google Drive, затем всё по принципу "тыкаем далее".


В /usr/bin/script.d/gdrive.sh пихается скрипт следующего содержания, назначаются права на исполнение:

#!/bin/bash

rclone mount GDrive:/ ~/GDrive/ --vfs-cache-mode=full
  • mount маунтит весь gdrive как фаловую систему

  • GDrive:/ название созданной шары и путь в ней (в данном случае корень)

  • ~/GDrive/ папка в файловой системе линуксовой машины, являющаяся mountpoint для gdrive

  • --vfs-cache-mode=full rclone в данном режиме все файлы, с которыми происходит чтение/запись/исполнение буферизирует на диск локальной машины. Без этого режима скорость работы диска значительно ниже, поскольку все операции происходят напрямую с облаком + нет возможности перезаписать существующий файл (только удалить-создать). Именно этот функицонал отсутствует в версиях ниже нужной.


Затем необходимо создать и добавить в автозагрузку сервис, который будет сам маунтить эту шару при включении компьютера.

В /etc/systemd/system/ создаём файл gdrive.service, в него пихаем:

[Unit]
Description=GDrive mounter
After=network.target syslog.target
StartLimitIntervalSec=0

[Service]
User=rea7
ExecStart=/usr/bin/script.d/gdrive.sh

[Install]
WantedBy=multi-user.target
  • Description - описание сервиса

  • After - после запуска каких сервисов должен запускаться этот сервис

  • User - из под какого пользователя запускать сервис

  • ExecStart - что запускать при старте сервиса

Затем sudo systemctl enable gdrive и перезагрузка. После перезагрузки диск магически появится в директории ~/GDrive/.