[Настройка Linux, Системное администрирование, *nix] Автоматическая очистка корзины Yandex.Disk без участия человека

Автор Сообщение
news_bot ®

Стаж: 6 лет 3 месяца
Сообщений: 27286

Создавать темы news_bot ® написал(а)
19-Янв-2021 04:31

Озаботившись бэкапами на своем скромном сервере я столкнулся с очевидным дальнейшим шагом — а где все это добро хранить?
Выбора особо нет да и у меня есть халявный Яндекс Диск на котором со всеми бонусами у меня аж 63 Гб, грех не воспользоваться.
В принципе задачу я решил но как и многие другие пользователи обнаружил — место не резиновое и надо корзину периодически очищать иначе место быстро заканчивается а времени да и возможности постоянно лазить в веб интерфейс и чистить корзину нет. Непорядок, надо исправлять.
Давайте потратим минут 10-15 и на год забудем о проблеме, поехали.
Вводные данные на чем у меня все работает:
Ubuntu 18.04
Yandex.Disk консольный клиент для одноименного дистрибутива

  • Зайдем под тем логином из по которого работает ваш ЯД по адресу https://oauth.yandex.ru/ и нажмем кнопочку Зарегистрировать новое приложение

  • Заполняем поля как указано на скриншоте

  • В пункте Доступы выберите Яндекс Диск REST API и поставьте галочки как на скриншоте

  • Спускаемся в самый низ страницы и жмем кнопку Создать приложение

  • В полученной странице есть все необходимые нам данные, обязательно сохраните их (PS мои реальные данные я удалил но сохранил вам на скрине для наглядности, у вас они будут другие)

  • Получим токен, зайдем браузером по адресу https://oauth.yandex.ru/authorize?response_type=token&display=popup&client_id=ВАШid где в самом конце укажем ID полученный в шаге 5
  • На этой странице жмем Разрешить

  • На этой странице увидим выданный токен, обязательно сохраните его!

  • Зайдем в консоль вашего сервера под рутом и создадим скрипт
    nano /root/yadisk.sh

    В котором пропишем следующие команды
    #!/bin/sh
    /usr/bin/curl -s -H "Authorization: OAuth ваш_токен" -X "DELETE" https://cloud-api.yandex.net/v1/disk/trash/resources/?path=

    где на месте ваш_токен внесем данные из шага 8
  • Сохраним скрипт и сделаем его исполняемым
    chmod 700 /root/yadisk.sh

  • Дадим команду crontab -e
    в открывшемся окне напишем
    0 3 * * * /root/yadisk.sh > /dev/null 2>&1

    Сохраним файл, сервис крон автоматически примет эти данные и запустит в указанное время. В данном случае это будет происходить каждый день в 3 часа ночи каждый год.

Ну вот и все, я дольше писал статью и делал скриншоты чем вы все это сможете реализовать у себя :)
Маленький совет — я решил очищать корзину ДО того как будет запускаться следующий мой скрипт, который бэкапит базы данных моих сайтов, таким образом я могу быть чуть более спокоен что места на диске хватит для моих данных.
Если хотите убедиться что вы все сделали правильно то можете просто запустить эту команду в консоли
/usr/bin/curl -s -H "Authorization: OAuth ваш_токен" -X "DELETE" https://cloud-api.yandex.net/v1/disk/trash/resources/?path=

(не забудьте в эту строку внести ваш_токен)
и убедиться что корзина вашего аккаунта пуста.
На этом разрешите откланяться.
===========
Источник:
habr.com
===========

Похожие новости: Теги для поиска: #_nastrojka_linux (Настройка Linux), #_sistemnoe_administrirovanie (Системное администрирование), #_*nix, #_avtomatizatsija_rutiny (автоматизация рутины), #_yandex_disk, #_avtomaticheskaja_ochistka_korziny (автоматическая очистка корзины), #_cron, #_linux, #_ubuntu_server, #_howto, #_nastrojka_linux (
Настройка Linux
)
, #_sistemnoe_administrirovanie (
Системное администрирование
)
, #_*nix
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 09-Май 19:39
Часовой пояс: UTC + 5