вторник, 28 марта 2017 г.

Cоединения с Диском Яндекс и Dropbox с помощью rclone

Как упоминалось в публикации про соединение с Google Drive, с помощью rclone можно соединяться с Дисками Яндекс и Dropbox для работы с ними как с файловой системой, т.е. производить операции просмотра содержимого, копирования, перемещения, переименования и удаления файлов и каталогов. Приятным бонусом является то, что возможна работа со многими аккаунтами тех же Дисков Яндекс или Dropbox.

Не буду повторяться как это сделать, так как подробности описывались в публикациях про Google Drive и Microsoft One Drive.

При конфигурировании соединения с Диском Яндекс, несмотря на моё географическое местоположение как русскоговорящего пользователя, запросы были выданы на английском языке:



Для получения токена (что такое токен?) от Yandex.Disk нужно нажать на кнопку "Allow". В остальном ситуация аналогична описанным в предыдущих публикациях (здесь и здесь) процедурам.

Листинг команд и их результатов в теминале:

rclone config

Current remotes:

Name                 Type
====                 ====
Google               drive
Microsoft-1          onedrive

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> n
name> Yandex-1
Type of storage to configure.
Choose a number from below, or type in your own value
 1 / Amazon Drive
   \ "amazon cloud drive"
 2 / Amazon S3 (also Dreamhost, Ceph, Minio)
   \ "s3"
 3 / Backblaze B2
   \ "b2"
 4 / Dropbox
   \ "dropbox"
 5 / Encrypt/Decrypt a remote
   \ "crypt"
 6 / Google Cloud Storage (this is not Google Drive)
   \ "google cloud storage"
 7 / Google Drive
   \ "drive"
 8 / Hubic
   \ "hubic"
 9 / Local Disk
   \ "local"
10 / Microsoft OneDrive
   \ "onedrive"
11 / Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
   \ "swift"
12 / SSH/SFTP Connection
   \ "sftp"
13 / Yandex Disk
   \ "yandex"
Storage> 13
Yandex Client Id - leave blank normally.
client_id>
Yandex Client Secret - leave blank normally.
client_secret>
Remote config
Use auto config?
 * Say Y if not sure
 * Say N if you are working on a remote or headless machine
y) Yes
n) No
y/n> y
If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth
Log in and authorize rclone for access
Waiting for code...
Got code
2017/03/23 20:28:21 ERROR : Failed to save new token in config file: section 'Yandex-1' not found
--------------------
[Yandex-1]
client_id =
client_secret =
token = {"access_token":"AQAAA ... "}
--------------------
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y
Current remotes:

Name                 Type
====                 ====
Google               drive
Microsoft-1          onedrive
Yandex-1             yandex

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> q



Рис. Запись о соединении с Диском Яндекс (Yandex-1)


Рис. Список файлов и папок Диска Яндекс в браузере Rclone


Рис. Диск Яндекс смонтирован как файловая система


Рис. Отображение содержимого Диска Яндекс в файловом менеджере

Можно монтировать не весь Dropbox, а только определённую. Например, на рисунках ниже показано, что если выделить папку Oplata и нажать кнопку "Mount", то в файловом менеджере будет примонтирована только эта папка.



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

Как видно из представленных выше рисунков, это практически идентично соединению с Диском Яндекс по webdav. В файловых менеджерах Nemo (для Cinnamon) и Caja (MATE) есть пункты соединения по webdav. Для менеджера Thunar (xfce) можно воспользоваться двумя способами.

При конфигурировании соединении с Dropbox токен не будет получен автоматически, его необходимо в терминале вводить вручную.

rclone config

Current remotes:

Name                 Type
====                 ====
Google               drive
Microsoft-1          onedrive
Yandex-1             yandex

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> n
name> Dropbox-2
Type of storage to configure.
Choose a number from below, or type in your own value
 1 / Amazon Drive
   \ "amazon cloud drive"
 2 / Amazon S3 (also Dreamhost, Ceph, Minio)
   \ "s3"
 3 / Backblaze B2
   \ "b2"
 4 / Dropbox
   \ "dropbox"
 5 / Encrypt/Decrypt a remote
   \ "crypt"
 6 / Google Cloud Storage (this is not Google Drive)
   \ "google cloud storage"
 7 / Google Drive
   \ "drive"
 8 / Hubic
   \ "hubic"
 9 / Local Disk
   \ "local"
10 / Microsoft OneDrive
   \ "onedrive"
11 / Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
   \ "swift"
12 / SSH/SFTP Connection
   \ "sftp"
13 / Yandex Disk
   \ "yandex"
Storage> 4
Dropbox App Key - leave blank normally.
app_key>
Dropbox App Secret - leave blank normally.
app_secret>
Remote config
Please visit:
https://www.dropbox.com/1/oauth2/authorize?client_id=5jcck7diasz0rqy&response_type=code
Enter the code:


Поэтому в буфер обмена из терминала копируется строка после Please visit: и вставляется в адресную строку браузера.



Как только нажмёте "Можно", то в браузере будет отображён код, который необходимо вставить в строку терминала после Enter the code:


Enter the code: lJf5ra0lYVAAAA...SwW74Ltc
--------------------
[Dropbox-2]
app_key =
app_secret =
token = lJf5ra0lYVAAAAAAAABf0kP9etY-esPeL77SDwaOvZvBJP2mJnjP3oJcBO-UDh4Z
--------------------
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y
Current remotes:

Name                 Type
====                 ====
Dropbox-2            dropbox
Google               drive
Microsoft-1          onedrive
Yandex-1             yandex

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> q


Теперь Dropbox доступен в списке подключений (Dropbox-2).


Далее свой Dropbox можно открыть в Rclone Browser и примонтировать как файловую систему.


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

Можно монтировать не весь Dropbox, а только определённую папку. Например, на рисунке ниже показано, что если выделить папку 1-5 и нажать кнопку "Mount", то в файловом менеджере будет примонтирована только эта папка.


1 комментарий:

  1. У меня rclone-browser не хочет монтировать папки. В логах Jobs видно, что команда вызывается либо с ошибочными ключами, либо с неправильными ключами, либо их слишком много и из-за этого она мне пишет:Command mount needs 2 arguments maximum. При этом если сделать команду монтирования в командной строке, то всё работает. Есть какая-то рассинхронизация между тем что делает консольная версия и что передёт ей browser.
    Было у кого-нибудь такое?

    ОтветитьУдалить