Я активно использую как в работе, так и в личных целях, Яндекс.Диск. У него очень низкая стоимость хранения данных. В Linux использую либо API для загрузки данных, либо rclone.
Для Windows использовал либо родной клиент, что не очень удобно, либо монтировал сетевой диск в Linux и там с ним работал. Не знал, что полнофункциональный rclone нормально работает в Windows, причём абсолютно так же, как в Linux. Настройка 1 в 1.
Установить можно как вручную, так и с помощью winget:
Через winget не сразу понял, куда он был установлен. Оказалось, что в директорию C:\Users\User\AppData\Local\Microsoft\WinGet\Packages\Rclone.Rclone_Microsoft.Winget.Source_8wekyb3d8bbwe\rclone-v1.63.1-windows-amd64.
Для настройки работы rclone с Яндекс диском нужно получить токен. Как это сделать, я описывал в заметке по работе с API. Единственное отличие — нужно предоставить побольше прав:
▪ Доступ к папке приложения на Диске
▪ Доступ к информации о Диске
▪ Запись в любом месте на Диске
▪ Доступ к Яндекс.Диску для приложений
А в качестве Redirect URI использовать ссылку: http://127.0.0.1:53682/
После этого запускаете в консоли команду:
Выбираете New remote ⇨ указываете название, например yandex ⇨ номер 48, соответствующий хранилищу Яндекс диск ⇨ client_id и client_secret оставляете пустыми ⇨ выполняете запрос токена ⇨ сохраняете конфиг.
У вас появится файл в C:\Users\User\AppData\Roaming\rclone\rclone.conf примерно следующего содержания:
[yandex]
type = yandex
client_id =
client_secret =
token = {"access_token":"y0_AgAAAABvmXfPAALEtgAAAAKpIA8y2bb-M0IiRFu068gJJKvzSOGoBBs","token_type":"OAuth","refresh_token":"1:p0NRuhts1VI1N7Sq:NWEoGv963fVVGSpE_k8Mftn6Pd8AKsFcte2WGqv77mKgWaoer36TX4irbubWTfCgk9_Gxh5NLBzkWA:b_dCjrHMIEMkKeH-oOFrFQ","expiry":"2024-07-30T20:45:05.4991551+03:00"}
Теперь можно через консоль загружать туда файлы:
Положили в корень диска файл test.txt
Помимо загрузки файлов, rclone умеет монтировать внешние хранилища как локальные или сетевые диски. Для этого ему нужна программа winfsp. Поставить можно тоже через winget:
Монтируем яндекс диск в режиме чтения:
Или в режиме записи:
Яндекс диск смонтирован в виде локального диска X. Подробнее о монтировании в Windows, о правах доступа и прочих нюансах можно прочитать в документации.
Если для вас всё это слишком замороченно и хочется попроще, то вот набор программ, которые реализуют то же самое. Это платные программы, с ограниченными бесплатными версиями. Они удобны и популярны, так что при желании, вы найдёте репаки платных версий, но аккуратнее с ними. Я лично давно уже опасаюсь использовать ломаный софт.
🔹Air Explorer — двухпанельный файловый менеджер, который позволяет работать с облачными сервисами как с локальными директориями. Поддерживает и Яндекс.Диск, и диск от Mail ru.
🔹Air Live Drive — программа от того же производителя, которая позволят монтировать облачные диски как локальные.
🔹RaiDrive — писал об этой программе ранее. Позволяет подключать различные облачные сервисы как локальные диски.
#windows #rclone #backup
Для Windows использовал либо родной клиент, что не очень удобно, либо монтировал сетевой диск в Linux и там с ним работал. Не знал, что полнофункциональный rclone нормально работает в Windows, причём абсолютно так же, как в Linux. Настройка 1 в 1.
Установить можно как вручную, так и с помощью winget:
> winget install rcloneЧерез winget не сразу понял, куда он был установлен. Оказалось, что в директорию C:\Users\User\AppData\Local\Microsoft\WinGet\Packages\Rclone.Rclone_Microsoft.Winget.Source_8wekyb3d8bbwe\rclone-v1.63.1-windows-amd64.
Для настройки работы rclone с Яндекс диском нужно получить токен. Как это сделать, я описывал в заметке по работе с API. Единственное отличие — нужно предоставить побольше прав:
▪ Доступ к папке приложения на Диске
▪ Доступ к информации о Диске
▪ Запись в любом месте на Диске
▪ Доступ к Яндекс.Диску для приложений
А в качестве Redirect URI использовать ссылку: http://127.0.0.1:53682/
После этого запускаете в консоли команду:
> rclone configВыбираете New remote ⇨ указываете название, например yandex ⇨ номер 48, соответствующий хранилищу Яндекс диск ⇨ client_id и client_secret оставляете пустыми ⇨ выполняете запрос токена ⇨ сохраняете конфиг.
У вас появится файл в C:\Users\User\AppData\Roaming\rclone\rclone.conf примерно следующего содержания:
[yandex]
type = yandex
client_id =
client_secret =
token = {"access_token":"y0_AgAAAABvmXfPAALEtgAAAAKpIA8y2bb-M0IiRFu068gJJKvzSOGoBBs","token_type":"OAuth","refresh_token":"1:p0NRuhts1VI1N7Sq:NWEoGv963fVVGSpE_k8Mftn6Pd8AKsFcte2WGqv77mKgWaoer36TX4irbubWTfCgk9_Gxh5NLBzkWA:b_dCjrHMIEMkKeH-oOFrFQ","expiry":"2024-07-30T20:45:05.4991551+03:00"}
Теперь можно через консоль загружать туда файлы:
> rclone copy C:\Users\User\Downloads\test.txt yandex:/Положили в корень диска файл test.txt
Помимо загрузки файлов, rclone умеет монтировать внешние хранилища как локальные или сетевые диски. Для этого ему нужна программа winfsp. Поставить можно тоже через winget:
> winget install winfspМонтируем яндекс диск в режиме чтения:
> rclone mount yandex:/ X:Или в режиме записи:
> rclone mount yandex:/ X: --vfs-cache-mode writesЯндекс диск смонтирован в виде локального диска X. Подробнее о монтировании в Windows, о правах доступа и прочих нюансах можно прочитать в документации.
Если для вас всё это слишком замороченно и хочется попроще, то вот набор программ, которые реализуют то же самое. Это платные программы, с ограниченными бесплатными версиями. Они удобны и популярны, так что при желании, вы найдёте репаки платных версий, но аккуратнее с ними. Я лично давно уже опасаюсь использовать ломаный софт.
🔹Air Explorer — двухпанельный файловый менеджер, который позволяет работать с облачными сервисами как с локальными директориями. Поддерживает и Яндекс.Диск, и диск от Mail ru.
🔹Air Live Drive — программа от того же производителя, которая позволят монтировать облачные диски как локальные.
🔹RaiDrive — писал об этой программе ранее. Позволяет подключать различные облачные сервисы как локальные диски.
#windows #rclone #backup
👍84👎6
Недавно в обсуждениях всплыл вопрос использования Rclone c Яндекс.Диском. У последнего заявлена поддержка этого облака. Я много работал с Яндекс.Диском в разное время. У него очень низкая стоимость хранения. Туда можно очень дёшево положить одну из копий бэкапов, чем я и занимался.
Для работы с облачным диском в Linux в разное время я использовал разные инструменты, так как Яндекс периодически менял условия доступа и ставил палки в колёса для нежелательных методов.
1️⃣ Доступ по протоколу webdav. Он и сейчас заявлен, как доступный протокол, но работать по нему фактически невозможно. Скорость никакая, постоянные разрывы связи.
2️⃣ Консольный клиент для Linux. Большие объёмы данных через него удобно загружать, но есть один нюанс. Через консольный клиент нельзя просто загрузить файлы в облако, без синхронизации локального и удалённого каталога. То есть у вас локально должно быть достаточно свободного места для копии облачных файлов. Для небольших виртуалок, с которых надо просто забрать файл, это не подходит.
3️⃣ Использование API. Рабочий вариант для каких-то ситуаций, но надо заморочиться с настройкой доступа и выпуском токенов. Сейчас может упростили процедуру, но когда я занимался, немного утомился от этой кухни.
4️⃣ Использование Rclone. По ссылке пример использования в Windows 3 года назад. Тогда работало нормально. Можно было даже примонтировать облачный диск к системе с помощью Rclone.
Я решил проверить, как сейчас работает Rclone с Яндекс.Диском в Linux. Сразу скажу, что работает отлично. Настраивается очень просто и быстро. На загрузку утилизировал весь доступный у меня дома канал. Никаких задержек и отвалов.
Показываю, как с ним работать. Устанавливаем rclone:
Настраиваем конфигурацию для Яндекс.Диска:
Дальше будут нюансы. Я действовал по инструкции на сайте rclone. Для аутентификации в сервисе через OAuth понадобится браузер. В результате будет получен токен, который можно использовать где угодно. То есть машина с браузером понадобится один раз для получения токена.
Я использовал свой ноутбук с Windows, а Rclone для получения токена запустил в WSL. Для этого воспользовался приведённой выше инструкцией, а когда в консоли увидел ссылку вида http://127.0.0.1:53682/auth?state=rOjTxRP71Dexbyal-faud, просто скопировал её в браузере и там же залогинился в сервис. Если у вас нет возможности запустить браузер локально вместе с запуском Rclone, а на удалённой машине нет GUI, то можно сделать проброс порта с удалённой машины на локальную через SSH:
Почитать, как это работает, можно в заметке.
На выходе получил конфигурацию в файле
Эту конфигурацию можно перенести на целевой сервер и там работать с Яндекс.Диском. Сама работа выглядит примерно так.
Создаём директорию backup:
Копируем туда файл:
Смотрим содержимое директории:
Удаляем файл:
Очищаем корзину:
Работает всё четко. Я проверял результаты команд через веб интерфейс. Можно использовать в своих костылях из скриптов. Дешевле хранилища для данных не найти.
Отмечу только один нюанс, если будете загружать за раз много больших файлов. После каждой загрузки файла происходит задержка, связанная с тем, что облако что-то делает с файлом. Может проверяет, может хэши считает, неизвестно. Происходит заметная задержка на десятки секунд после загрузки. Если дефолтных таймаутов rclone не будет хватать, увеличьте их через ключ
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
———
ServerAdmin:📱 Telegram | 🌐 Сайт | 📲 MAX
#rclone #backup
Для работы с облачным диском в Linux в разное время я использовал разные инструменты, так как Яндекс периодически менял условия доступа и ставил палки в колёса для нежелательных методов.
Я решил проверить, как сейчас работает Rclone с Яндекс.Диском в Linux. Сразу скажу, что работает отлично. Настраивается очень просто и быстро. На загрузку утилизировал весь доступный у меня дома канал. Никаких задержек и отвалов.
Показываю, как с ним работать. Устанавливаем rclone:
# apt install rcloneНастраиваем конфигурацию для Яндекс.Диска:
# rclone configДальше будут нюансы. Я действовал по инструкции на сайте rclone. Для аутентификации в сервисе через OAuth понадобится браузер. В результате будет получен токен, который можно использовать где угодно. То есть машина с браузером понадобится один раз для получения токена.
Я использовал свой ноутбук с Windows, а Rclone для получения токена запустил в WSL. Для этого воспользовался приведённой выше инструкцией, а когда в консоли увидел ссылку вида http://127.0.0.1:53682/auth?state=rOjTxRP71Dexbyal-faud, просто скопировал её в браузере и там же залогинился в сервис. Если у вас нет возможности запустить браузер локально вместе с запуском Rclone, а на удалённой машине нет GUI, то можно сделать проброс порта с удалённой машины на локальную через SSH:
# ssh -L localhost:53682:localhost:53682 username@remote_serverПочитать, как это работает, можно в заметке.
На выходе получил конфигурацию в файле
~/.config/rclone/rclone.conf вида:[yandex]type = yandextoken = {"access_token":"y0_g8MWLxkkwkw_Cn9EpiGIH_A","token_type":"OAuth","refresh_token":"2:AAAbtrsyM:23rBwLS_kWbXMr6V1Mr7xA","expiry":"2027-02-24T18:49:25.82348698+03:00"}Эту конфигурацию можно перенести на целевой сервер и там работать с Яндекс.Диском. Сама работа выглядит примерно так.
Создаём директорию backup:
# rclone mkdir yandex:backupКопируем туда файл:
# rclone copy ics-13.0.0-2025.12.08-14.40.iso yandex:backupСмотрим содержимое директории:
# rclone ls yandex:backupУдаляем файл:
# rclone delete yandex:backup/ics-13.0.0-2025.12.08-14.40.isoОчищаем корзину:
# rclone cleanup yandex:Работает всё четко. Я проверял результаты команд через веб интерфейс. Можно использовать в своих костылях из скриптов. Дешевле хранилища для данных не найти.
Отмечу только один нюанс, если будете загружать за раз много больших файлов. После каждой загрузки файла происходит задержка, связанная с тем, что облако что-то делает с файлом. Может проверяет, может хэши считает, неизвестно. Происходит заметная задержка на десятки секунд после загрузки. Если дефолтных таймаутов rclone не будет хватать, увеличьте их через ключ
--timeout.❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
———
ServerAdmin:
#rclone #backup
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍165👎2