Предистория
Здравей, Хабр!
Написването на този пост беше предизвикано от доста странна грешка, която получих снощи на лаптоп с Linux (да, аз съм един от тези странни хора, които използват GNU/Linux на лаптопа си):
$ ls -l /mnt/yadisk
ls: reading directory '.': Input/output error
total 0Първата ми мисъл: мрежата е паднала, няма нищо страшно. Но при опит за повторно монтиране на директорията се появи нова грешка:
$ sudo umount /mnt/yadisk && rclone mount --timeout 30m ya:/ /mnt/yadisk
2020/02/21 20:54:26 ERROR : /: Dir.Stat error: [401 - UnauthorizedError] Unauthorized (Не е авторизиран.)Това вече беше странно. Токенът изтече? Няма проблем, ще се авторизирам отново!
$ rclone config
... (пропускам целия изход от терминала) ..След като преминах на уеб и опитах да се авторизирам там, получих по-конкретно съобщение:
Тази апликация е блокирана за злонамерени действия, поради което достъпът не е разрешен (unauthorized_client).
Първата ми мисъл: каквоо?
О rclone
Няколко факта:
е доста известен инструмент за работа с облачни хранилища (многократно , , беше споменаван в Хабра). Авторът я нарича "rsync за облачно хранилище", което е доста точно. Но функционалността не свършва дотук: освен функциите на rsync, тя може също да монтира дискове, да изпълнява функцията ncdu (което, между другото, веднъж ми позволи да открия неправилен подсчет на свободното място на Яндекс.Диск и успешно да разреша този проблем чрез техническата поддръжка), и още много. Инструментът поддържа както десетки облачни хранилища, така и по-традиционни протоколи — WebDAV, FTP, rsync и други. За достъп до Яндекс.Диск инструментът използва на Диска.
Инструментът наистина е уникален и (по мое мнение) представлява онзи клас програми, които се инсталират веднъж, но носят полза постоянно.
Какво се е случило?
Когато се обърнах към Google, веднага разбрах, че не съм сам. Има , както и обсъждане на .
Краткото резюме: client_id на инструмента е блокиран от Яндекс.Диск, поради което вече не е възможно да се авторизираш. Може да се опиташ да смениш client_id, но не е сигурно, че същата участ няма да сполети и новия id.
Отговор от поддръжката :
Става въпрос за това, че програмата Rclone позволява използването на Yandex.Disk като инфраструктурен компонент, а Yandex.Disk е личен сервис, който не е проектиран за решаване на такива задачи. Затова не подкрепяме работата с комбинацията Rclone — Yandex.Disk.
"Инфраструктурен компонент"? Е, ако не е позволено, вероятно е описано в правилата, помислих си, и не намерих нищо такова в или неговото не намерих.
Добре, ще напишем на поддръжката.
Първият отговор идва 1 в 1 с този, който е публикуван по-горе (за "инфраструктурен компонент"). Окей, не сме горди.
По-нататъшната кореспонденция с поддръжката
Аз:
Моля, кажете ми, кое правило на сървиса нарушава това?
Изучих условията за ползване на Yandex.Disk и нямам забрани за използване "като инфраструктурен компонент" там.Още повече, не мога да използвам утилитата от личния си лаптоп за работа с диска. Това вече изобщо не попада под "инфраструктурен компонент". Стандартният клиент на диска е ужасен, моля за извинение.
Поддръжка:
Сергей, става въпрос за това, че Yandex.Disk е преди всичко личен сервис, който не е проектиран за автоматично зареждане на резервни копия.
Можете да синхронизирате данните между вашия компютър и Yandex.Disk, а също така да използвате уеб интерфейса на диска за качване на файлове и работа с тях.Ако по какви-то причини не сте доволни от програмата ни, моля, споделете ги. Традиционно сме отворени за мнението на потребителите при пускането на обновления на продукта.
Можете да се запознаете с документи, регулиращи използването на услугата, по-специално с "Потребителското споразумение на услугите на Yandex", публикувано на адрес: , а също така с "Условията за използване на услугата "Yandex.Disk"":
За решения на задачи, които изискват големи ресурси, препоръчваме да използвате Yandex.Cloud. Това е друг облачен сервис на Yandex, създаден за решаване на бизнес задачи. Можете да научите повече за Yandex.Cloud тук:
Аз:
Не отговорихте на въпроса ми. Моля, кажете ми, кой пункт от правилата на сървиса нарушава използването на rclone? Внимателно проучих правилата по вашата връзка (още преди да ги изпратите).
Съвсем наскоро изразихте мнение, че Яндекс активно подкрепя OpenSource и че без OpenSource Яндекс и съвременният интернет нямаше да съществуват ().
Но сега блокирате OpenSource утилита по абсурдна причина.
Между другото, програмата не осъществява "автоматично зареждане на резервни копия", тя е предназначена за работа с облачни хранилища, включително за синхронизиране на данни между компютъра и Яндекс.Диск. И това е основният ми use-case на утилитата, който сега не е достъпен.
Поддръжка:
Съгласно т. 3.1. от «Потребителското споразумение», Яндекс има право да налага ограничения в използването на услугите както за всички Потребители, така и за отделни категории Потребители (в зависимост от местоположението на потребителя, езика, на който се предоставя услугата и т.н.), включително: наличие/липса на отделни функции на услугата, срок на съхранение на имейли в Яндекс.Поща, всяко друго съдържание, максимален брой съобщения, които могат да бъдат изпратени или получени от един регистриран потребител, максимален размер на имейл съобщение или дисково пространство, максимален брой запитвания към услугата за определен период, максимален срок на съхранение на съдържание, специални параметри на качено съдържание и т.н. Яндекс може да забрани автоматичния достъп до своите услуги и да прекрати приемането на всяка информация, генерирана автоматично (например, спам).
Потребителят също така е предупреждаван за това в т. 4.6. от «Условията за ползване на Яндекс.Диск».
Обърнете внимание, че «Условията за ползване на Яндекс.Диск» също така налагат на Потребителя задължението да действа добросъвестно и да се въздържа от злоупотреба с функциите на Услугата. Потребителят поема задължението да се въздържа от организиране на масов файлов обмен, използвайки функциите на Услугата.
Яндекс има право да прилага правила, лимити и ограничения, насочени към предотвратяване, ограничаване и прекратяване на масовия файлов обмен по правилата на т. 4.5. от настоящите «Условия».
Последният отговор донесе яснота. Особено първите два абзаца, които се отнасят до чл. 3.1. от „Потребителското споразумение“ на Яндекс и чл. 4.6. от „Условията за ползване на Яндекс.Диск“. Текстът на 4.6 тук не е включен, ще го посоча:
4.6. Яндекс си запазва правото да установява всякакви правила, лимити и ограничения (технически, юридически, организационни или други) за ползване на Услугата и може да ги променя по собствено усмотрение, без предварително уведомление на Потребителя. В случаите, в които това не е забранено от закона, посочените правила, лимити и ограничения могат да варират за различни категории Потребители.
Какви изводи можем да направим?
Съвсем наскоро уважаваният в своя пише, че Яндекс смята, че:
Ние в Яндекс смятаме, че съвременният интернет е невъзможен без културата на open source и хората, които инвестират времето си в разработка на софтуер с отворен код.
А на практика се оказва съвсем друго. Отлична утилита бива блокирана за нещо, което не е забранено от правилата на услугата. За това, че утилитата позволява да се ползва отвореният публичен API на Диска за предназначението му — да качва файлове. Блокират не за нарушение на правилата на услугата, а защото могат.
Двойно странно е, че блокираните не са конкретни нарушители на правилата (също не е ясно какви, в правилата ползването на диска за резервни копия никъде не е забранено). Блокирана е утилита, функцията на която за извършване на резервно копие е само една от многото.
Какво представлява инфраструктурен компонент и защо не може да се използва с диска, също не е ясно. Дори браузърът може да се използва като "инфраструктурен компонент", не бива ли да се забрани ползването на диска в браузъра?
Какво да правим?
Засега използвам своя client_id и продължавам напред. Но, съдейки по отговора на техническата поддръжка, може да се очаква продължение на лов на вещици и блокиране на други client_id, user-agent на rclone или дори конкретни херистични методи за блокиране на утилитата.
P.S. Искрено се надявам, че е било просто несъответствие или недоразумение. В Яндекс работят отлични специалисти (мнозина от които познавам лично) и сред тях, съм убеден, има и потребители на rclone.
Актуализация 24.02.2020:
В на подкаста Радио-Т, водещ на който също е уважаваният Бобук, беше обсъждана блокировката на rclone. .
Източник: habr.com
