Yandex.Disk ашық бастапқы rclone утилитасын пайдалануға тыйым салды

тарихын

Эй Хабр!

Мені осы жазбаны жазуға итермелеген нәрсе кеше түнде 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 туралы

Кішкене көмек:
rclone - өте танымал ашық бұлттық қоймалармен жұмыс істеуге арналған утилита (қайталап рет, два, үш Хабреде айтылған). Автор оны «бұлтты сақтау үшін rsync» деп атайды, бұл өте сыйымды. Бірақ функционалдылық мұнымен шектелмейді: rsync функцияларынан басқа, ол дискілерді орната алады, ncdu функциясын орындай алады (айтпақшы, бұл маған бір кездері Яндекс.Дискіндегі бос орынды дұрыс емес есептеуді анықтауға мүмкіндік берді және сәтті болды. бұл мәселені техникалық қолдау арқылы шешу) және басқа да көптеген нәрселер. Утилита ондаған бұлттық қоймаларды, сондай-ақ дәстүрлі протоколдарды - WebDAV, FTP, rsync және т.б. қолдайды. Yandex.Disk-ке кіру үшін қызметтік бағдарлама пайдаланады ресми жалпы API Диск.

Утилита шынымен бірегей және (менің ойымша) сіз бір рет орнатқан бағдарламалар класын білдіреді және олар үнемі пайда әкеледі.

Не болды?

Google-ге жүгініп, мен жалғыз емес екенімді бірден түсіндім. Тамақ ресми github ішіндегі қате, сонымен қатар талқылау ресми форум.
Түйіндеме: утилитаның клиент_идентификаторы Yandex.Disk арқылы бұғатталған, сондықтан сіз енді жүйеге кіре алмайсыз. Сіз client_id кодын өзгертуге болады, бірақ бұл жаңа идентификатордың тағдыры бірдей болмайды деген факт емес.
Қолдау жауабы сол форумда жарияланған:

Өйткені, Rclone бағдарламасы Yandex.Disk-ті инфрақұрылымдық құрамдас ретінде пайдалануға мүмкіндік береді, ал Yandex.Disk - мұндай мәселелерді шешуге арналмаған жеке қызмет. Сондықтан біз Rclone - Yandex.Disk сілтемесін қолдамаймыз.

«Инфрақұрылымдық құрамдас»? Ал, егер сіз алмасаңыз, онда бұл ережелерде сипатталған шығар, мен ойладым, онда мұндай ештеңе жоқ. дискінің ережелері немесе оның қоғамдық API мен таппадым.

Жарайды, қолдау көрсетуге жазайық.
Бірінші жауап жоғарыда жарияланған жауапқа сәйкес келеді («инфрақұрылымдық құрамдас» туралы). Жарайды, біз мақтанбаймыз.

Қолдау арқылы қосымша хат алмасу

Мен:

Бұл қандай қызмет ережесін бұзатынын айта аласыз ба?
Мен Яндекс дискісін пайдалану шарттарын зерттедім және оны «инфрақұрылымдық құрамдас ретінде» пайдалануға ешқандай тыйымдар жоқ.

Сонымен қатар, мен дискімен жұмыс істеу үшін жеке ноутбуктағы қызметтік бағдарламаны пайдалана алмаймын. Бұл «инфрақұрылымдық құрамдасқа» мүлдем жатпайды. Стандартты диск клиенті қорқынышты, кешіріңіз.

Қолдау:

Сергей, Яндекс.Диск ең алдымен сақтық көшірмелерді автоматты түрде жүктеп алуға арналмаған жеке қызмет болып табылады.
Компьютер мен Yandex.Disk арасында деректерді синхрондауға болады, сонымен қатар файлдарды жүктеп алу және олармен жұмыс істеу үшін Диск веб-интерфейсін пайдалануға болады.

Егер қандай да бір себептермен біздің бағдарламаға көңіліңіз толмаса, оларға дауыс беріңіз. Дәстүрлі түрде біз өнім жаңартуларын шығарған кезде пайдаланушы пікірін тыңдаймыз.

Сіз қызметті пайдалануды реттейтін құжаттармен, атап айтқанда мына мекенжайда жарияланған «Яндекс қызметтеріне арналған пайдаланушы келісімімен» таныса аласыз: https://yandex.ru/legal/rules/, сонымен қатар «Яндекс.Диск қызметін пайдалану шарттары»: https://yandex.ru/legal/disk_termsofuse

Үлкен көлемдегі қуатты қажет ететін мәселелерді шешу үшін Yandex.Cloud пайдалануды ұсынамыз. Бұл бизнес мәселелерін шешу үшін жасалған басқа Яндекс бұлтты қызметі. Yandex.Cloud туралы толығырақ мына жерден біле аласыз: https://cloud.yandex.ru

Мен:

Сіз менің сұрағыма жауап бермедіңіз. Айтыңызшы, қызмет ережелерінің қай пункті rclone пайдалануды бұзады? Мен сіздің сілтемеңіздегі ережелерді мұқият зерттедім (сіз оны жібермес бұрын да).

Жақында сіз Яндекс OpenSource-ті қатты қолдайтыны және OpenSourceсіз Яндекс және қазіргі заманғы Интернет болмайтыны туралы хабарлама жаздыңыз (https://habr.com/ru/post/480090/).

Енді сіз OpenSource утилитасын түсініксіз себеппен бұғаттаудасыз.

Айтпақшы, бағдарлама «сақтық көшірмелерді автоматты түрде жүктеп алмайды», бұл бағдарлама компьютер мен Yandex.Disk арасындағы деректерді синхрондауды қоса алғанда, бұлтты сақтаумен жұмыс істеуге арналған. Және бұл қазір қолжетімсіз болып табылатын менің негізгі қолданбалы бағдарламам.

Қолдау:

3.1 тармағына сәйкес. «Пайдаланушы келісімі» Яндекс барлық Пайдаланушылар үшін немесе Пайдаланушылардың белгілі бір санаттары үшін (Пайдаланушының орналасқан жеріне, қызмет көрсетілетін тілге және т.б. байланысты) қызметтерді пайдалануға шектеу қоюға құқылы, соның ішінде: қызметтің белгілі бір функцияларының болуы/болмауы, Яндекс.Пошта қызметінде пошталық хабарламаларды сақтау мерзімі, кез келген басқа мазмұн, бір тіркелген пайдаланушы жіберуі немесе алуы мүмкін хабарламалардың максималды саны, пошталық хабарламаның максималды өлшемі немесе дискілік кеңістік, белгілі бір уақыт аралығындағы қызметке ең көп қоңыраулар саны, мазмұнды сақтаудың максималды мерзімі, жүктелген мазмұнның арнайы параметрлері және т.б. Яндекс өз қызметтеріне автоматты түрде қол жеткізуге тыйым салуы мүмкін, сонымен қатар автоматты түрде жасалған кез келген ақпаратты (мысалы, спам-пошта) қабылдауды тоқтатуы мүмкін.

Пайдаланушы бұл туралы 4.6-тармақта да ескертілген. «Яндекс.Дискіні пайдалану шарттары».

«Яндекс.Дискіні пайдалану шарттары» сонымен қатар Пайдаланушыға адал әрекет ету және Сервис функцияларын теріс пайдаланбау міндетін белгілейтінін ескеріңіз. Сондай-ақ Пайдаланушы Сервис функцияларын пайдалана отырып, файлдарды жаппай ортақ пайдалануды ұйымдастырудан бас тартуға міндеттенеді.

Яндекс 4.5 тармағының ережелеріне сәйкес жаппай файлдарды ортақ пайдалануды болдырмауға, шектеуге және жолын кесуге бағытталған ережелерді, шектеулерді және шектеулерді қолдануға құқылы. осы «Шарттар».

Соңғы жауап түсінікті болды. Әсіресе 3.1-тармаққа сілтеме жасайтын алғашқы екі абзац. Яндекс «Пайдаланушы келісімі» және 4.6. «Яндекс.Дискіні пайдалану шарттары». 4.6 мәтіні мұнда берілмейді, бірақ мен оны осында беремін:

4.6. Яндекс Сервисті пайдалану бойынша кез келген ережелерді, шектеулерді және шектеулерді (техникалық, құқықтық, ұйымдастырушылық немесе басқа) орнату құқығын өзіне қалдырады және оларды Пайдаланушыға алдын ала ескертусіз өз қалауы бойынша өзгерте алады. Бұған заңмен тыйым салынбаған жағдайларда көрсетілген ережелер, шектеулер және шектеулер Пайдаланушылардың әртүрлі санаттары үшін әртүрлі болуы мүмкін.

Қорытындылар?

Жақында, қымбаттым бобук оның ішінде мұнда Хабреге жариялаңыз Яндекс мынаған сенеді деп жазды:

Біз Яндекс компаниясында ашық бастапқы коды бар мәдениетсіз және уақытын ашық бастапқы бағдарламаларды әзірлеуге жұмсайтын адамдарсыз заманауи Интернет мүмкін емес деп санаймыз.

Бірақ іс жүзінде бұл мүлдем басқаша болып шығады. Қызмет көрсету ережелерімен тыйым салынбаған нәрсе үшін тамаша утилита бұғатталған. Өйткені қызметтік бағдарлама пайдалануға мүмкіндік береді ашық жұртшылық Disk API бағдарламасының мақсаты файлдарды жүктеп алу болып табылады. Олар қызмет ережелерін бұзғаны үшін емес, мүмкін болғандықтан блоктайды.
Екі есе таңқаларлық нәрсе - бұл белгілі бір ереже бұзушылар бұғатталған емес (қайсылары да түсініксіз; ережелер кез келген жерде сақтық көшірме жасау үшін дискіні пайдалануға тыйым салмайды). Сақтық көшірме жасау функциясы көптің біреуі ғана болатын құрал бұғатталған.

Инфрақұрылымдық құрамдас дегеніміз не және оларды дискімен неге пайдалануға болмайтыны да түсініксіз. Тіпті шолғышты «инфрақұрылымдық құрамдас» ретінде пайдалануға болады, браузерде дискіні пайдалануға тыйым салу мүмкін емес пе?

Не істеу?

Әзірге client_id пайдаланыңыз және өміріңізді жалғастырыңыз. Бірақ, техникалық қолдаудың жауабына сүйенсек, біз ведьмаларды іздеудің жалғасуын және басқа client_ids, пайдаланушы-агент rclone блоктауын немесе утилитаны блоктаудың кейбір эвристикалық тәсілдерін күтуге болады.

PS Қарапайым қате немесе түсінбеушілік болды деп шын жүректен үміттенемін. Яндекстің тамаша мамандары бар (мен олардың көпшілігін жеке білемін) және олардың арасында rclone пайдаланушылары бар екеніне сенімдімін.

24.02.2020 жаңарту:
В шығарылым 690 Radio-T подкаст, оның тең жүргізушісі де құрметті Бобук, rclone блоктауын талқылады. Басталуы 1:51:40.

Ақпарат көзі: www.habr.com

пікір қалдыру