Монтирование облачного диска (DropBox, Яндекс.Диск, Box.com, GoogleDrive)
Друзья,
призываю вас проголосовать за клиент Dropbox для архитектуры ARM:
https://www.dropbox.com/votebox/358/linux-arm-support
Штука крайне полезная. )
Закачка файлов из роутера в облако DropBox
Коллеги, есть ли среди вас хотя бы начинающие python-программисты? Моих знаний хватило только на адаптацию существующего скрипта, с помощью которого можно закачивать файлы из роутера в DropBox. В официальном API есть всё необходимое для любых манипуляций с файлами в облаке, но моих знаний на всё не хватает.
Ниже приведена пошаговая инструкция для реализации загрузки файлов в DropBox.
0. Установите API для DropBox из моего репозитория:
Code:
$ opkg install python-dropbox
1. Скачайте и распакуйте приложенный к этому посту python-скрипт uploadDropboxScript.py:
Code:
$ wget -O /opt/tmp/uploadDropboxScript.gz http://www.wl500g.info/attachment.php?attachmentid=8661&d=1330173668
$ gzip -cd /opt/tmp/uploadDropboxScript.gz > /opt/bin/uploadDropboxScript.py
$ chmod +x /opt/bin/uploadDropboxScript.py
$ rm /opt/tmp/uploadDropboxScript.gz
2. Создайте ключ аутентификации приложения и пропишите его в скрипт.
Вы должны зайти на сайт dropbox.com со своими учётными данными, пройти по этой ссылке и создать новое приложение. В ответ на это вы получите пару APP_KEY, APP_SECRET, которую нужно вписать в соответствующие переменные скрипта /opt/bin/uploadDropboxScript.py.
3. Разрешите скрипту доступ к вашему аккаунту.
Аутентификация между сервером DropBox и вашим скриптом проводится по ставшему достаточно популярным механизму OAuth. Примером могу служит сайты, предлагающие "Войти, используя аккаунт Google" или "Войти, используя аккаунт ВКонтакте". Запустите скрипт с ключом "-s":
Code:
$ uploadDropboxScript.py -s
В ответ скрипт выдаст URL, который необходимо скопировать в адресную строку браузера и пройти по нему. Когда увидите в браузере сообщение об успешной аутентификации, то возвращайтесь к терминалу роутера и нажимайте <Enter>. Скрипт завершит свою работу, записав полученный токен, который в будущем будет использоваться для авторизации.
Настройка скрипта завершена.
4. Используйте скрипт для загрузки файлов в облако!
Например, можно отослать системный лог роутера:
Code:
$ uploadDropboxScript.py -f /tmp/syslog.log
Последнюю строчку можно вносить в любые скрипты автоматизации, никаких интерактивных взаимодействий скрипту больше не надо. Прошу учесть существования лимита в 5000 обращений к API DropBox в сутки для каждого токена.
Использование DropBox для автоматизации скачивания торрентов
На хабре где-то пробегала статья о совместном использовании DropBox и торрент-клиента для автоматизации закачек:
Quote:
Originally Posted by
dfayruzov
Именно.
С ее помощью, например, можно реализовать полностью автоматическую торрент-качалку. Я у себя сделал так: торрент-клиент настроен автоматически забирать файлы из папки Dropbox/Torrents, выкладывать скачавшиеся торренты на сетевую шару.
Но нигде не пробегала информация об использовании этой связки на headless non-X86 машинах. Гугление показывает, что желающих осуществить эту связку достаточно, но готовых решений не найти. Так что не исключено, что мы с вами в этом деле будем первые.
В этом посте помещён скрипт, который может забирать torrent-файлы из определённой папки вашего Dropbox аккаунта и добавлять их в список закачек Transmission.
Скрипт устанавливается и настраивается аналогично предыдущему (п.п.0,1,2.3). Перед использованием скрипта проверьте строчки с константами REMOTE_DIR, LOCAL_DIR, которые должны указывать на выбранную папку аккаунта Dropbox и на watchdir-папку transmission на роутере соответственно.
Я поместил этот скрипт в crontab для периодического исполнения и разрешил фичу watchdir в transmission:
Code:
$ grep -E "watch|trash" /opt/etc/transmission/settings.json
"trash-original-torrent-files": true,
"watch-dir": "/opt/etc/transmission/watchdir",
"watch-dir-enabled": true
При работе скрипт проверяет наличие файлов в выбранной вами DropBox папке и если они там появляются, то закачивает их из облака, подкладывает в watchdir-папку transmission и удаляет оригиналы.
Transmission, в свою очередь, обнаружив новые torrent-файлы в watchdir-папке добавляет их в список закачек и очищает watchdir-папку.
Скрипт позволит вам добавлять задания торрент-клиенту в том числе тогда, когда роутер находится за NAT'ом провайдера и не имеет белого IP.
Признаком того, что всё работает как надо будет исчезновение исходных torrent-файлов из DropBox-папки. Это означает то, что роутер их "забрал" и принял в работу.