- Dropbox
- Содержание
- Dropbox на сервере с systemd
- Установка
- Автозапуск
- Возможные проблемы
- Мой однострочный клиент Dropbox под Linux
- Контекст
- Зачем мне Dropbox
- Неудачные попытки
- rclone
- Однострочный скрипт
- Запускаем демон
- Вывод
- Dropbox
- Установка Dropbox в Ubuntu
- Как использовать Dropbox в Linux
- Предостережение
- Установка Dropbox
- Использование Dropbox
- Упрощенная облачная синхронизация
- Dropbox on Linux: installing from source, commands, and repositories
- How to build the Dropbox installer for Linux from source
- How to add Dropbox to your Linux repository
- How to remove Dropbox from your Linux repository
- What Linux commands are available on Dropbox?
Dropbox
Содержание
Dropbox на сервере с systemd
Установка
Для использования Dropbox на серверах без GUI необходимо установить его с помощью официальной инструкции. Далее для управления работой демона нужно разместить Python-скрипт в директории с исполняемым файлом dropboxd.
Автозапуск
Автозапуск с правами пользователя обеспечивается через systemd.
Пусть исполняемый файл dropboxd лежит по пути /home/username/.dropbox-dist
Создаем симлинк на dropboxd в /usr/bin:
По пути /lib/systemd/system/ создаем файл dropbox@username.service со следующим содержимым (старт демона при автозапуске будет производиться после монтирования локальных ФС и запуска сети):
После этого останется выполнить
(обновление списка демонов, старт нужного нам и добавление его в автозапуск). Управление демоном вы сможете производить как с помощью скрипта dropbox.py, так и с помощью systemctl.
Возможные проблемы
Периодически может возникать проблема с циклическими попытками перезапустить dropbox. По словам пользователей, это происходит из-за автообновления бинарного файла dropboxd в пользовательском каталоге /home/username/.dropbox-dist. Проблему позволяет решить смена владельца указанного каталога на root и рекурсивная замена прав для его содержимого на только чтение и исполнение (нуждается в дополнительной проверке).
Источник
Мой однострочный клиент Dropbox под Linux
Хочу рассказать о своей попытке создать простой однострочный клиент Dropbox под Linux, используя только бесплатные компоненты с открытым исходным кодом, в том числе rclone, entr и systemd.
Контекст
Недавно проприетарный клиент Dropbox под Linux отказался от поддержки всех файловых систем Linux, кроме незашифрованной ext4. А мой домашний каталог, «к сожалению», зашифрован.
В начале декабря проприетарный клиент перестал работать. Он вышел из системы и предложил выбрать другую папку синхронизации в «поддерживаемой файловой системе».
Кстати, я запускаю Ubuntu Bionic на двухлетнем Thinkpad t460s.
Зачем мне Dropbox
Я активно использую Org mode: делаю заметки обычным текстом, а Dropbox непрерывно создаёт резервные копии заметок во время набора.
Если вы тоже работаете в области инфраструктуры хранения данных, мой вариант использования очень похож на «асинхронную репликацию single-master», то есть с одним мастером. Все записи проходят через мой Thinkpad, это и есть мастер. Удалённая папка Dropbox — просто реплика только для чтения, которой я иногда «выдаю запросы только для чтения» или использую в качестве резервной копии для создания нового мастера, когда текущий терпит неудачу или украден.
Тем не менее, такая настройка репликации несколько раз спасала мне жизнь. У меня до сих пор перед глазами, как Thinkpad отказался загружаться во время сессии на втором курсе. Поскольку я постоянно реплицировал все заметки в Dropbox, то не потерял никаких данных и смог просмотреть последние заметки на Macbook моей мамы. Спасибо, мам!
Неудачные попытки
Когда клиент Dropbox перестал работать, я сосредоточился на поиске другого аналогичного многофункционального удалённого клиента под Linux. В принципе, я не против перейти и на другой сервис, такой как Google Drive или AWS S3. Некоторые из возможных вариантов — overGrive и insync.
Однако я пришёл к выводу, что эти решения излишне функциональны и не очень подходят для моего случая.
Например, клиенты пытаются подключить удалённую файловую систему к вашему ПК. Они очень стараются абстрагировать удалённые файловые системы, делая их похожими на локальные. Как правило, они реализуют двустороннюю синхронизацию, автоматическое сопоставление удалённых типов файлов с типами файлов Linux и т. д.
Мне не нужен такой уровень абстракции. Требуется что-то простое, позволяющее постоянно создавать резервные копии заметок в облаке, пока я набираю текст. Кроме того, абстракции затрудняют настройку и отладку. Не говоря уже о том, что большинство этих многофункциональных клиентов проприетарные.
rclone
Мне попалась утилита rclone , и я сразу понял: это именно то, что я искал. Простая, но мощная программа. Очень похожа на инструмент rsync , только для облачного хранилища.
Например, rclone заботится об отказоустойчивости (проверка целостности), имеет эффективные алгоритмы синхронизации и так далее, при этом предоставляет простой CRUD-интерфейс для взаимодействия с популярными сервисами облачного хранения, включая Amazon S3, Google Drive и Dropbox.
Следующая команда синхронизирует удалённый каталог org с локальным каталогом /home/lpan/org .
Утилита для выполнения команд entr использует API inotify. По сути, она запускает команды при изменении файлов без опроса файловой системы.
Один из распространённых способов использования — пересборка проекта, если изменился какой-то из исходных файлов.
entr берёт список абсолютных путей из stdin , а затем выполняет команду, переданную в качестве аргумента, если изменился любой из наблюдаемых файлов.
Однострочный скрипт
Теперь у нас есть rclone и entr . Итоговый скрипт получился очень простым. Напомню, что мой вариант использования Dropbox очень простой: требуется лишь постоянно реплицировать локальные файлы Org при их изменении. Поэтому можно использовать entr для мониторинга файлов и rclone для «синхронизации» с удалённым хранилищем.
Итоговый скрипт ( /home/lpan/sync_dropbox.sh ) выглядит следующим образом:
Запускаем демон
Демон — это просто компьютерная программа, которая работает в фоновом режиме. Сделаем наш скрипт фоновым процессом, чтобы он постоянно синхронизировал с удалённой файловой системой локальные изменения файлов в фоновом режиме.
systemd обеспечивает интерфейс для управления процессами демона.
Я создал Dropbox Service в
Затем можно управлять демоном с помощью следующих команд:
Вывод
В этой статье мы обсудили, как применить философию UNIX и использовать набор бесплатных инструментов с открытым исходным кодом для замены проприетарного и устаревшего клиента Dropbox. Мы применили rclone и entr . Я также показал, как сделать этот процесс демоном и управлять им с помощью systemd .
Хочу напомнить, что ключевая идея — простота. Мы хотим простые решения для простых задач. Мой вариант использования Dropbox очень простой. И вот почему однострочный скрипт лучше, чем использование излишне функционального и проприетарного облачного клиента.
Большое спасибо за чтение! Очень надеюсь, что вам понравится этот пост. Если знаете лучший способ сделать то же самое или расширить скрипт для другого варианта использования — дайте знать в комментариях!
Источник
Dropbox
Dropbox — программа для Linux, с помощью которой можно с легкостью синхронизировать файлы между компьютерами. Dropbox представляет собой папку на вашем компьютере, которая является «облачной», все данные в ней синхронизируются в реальном времени.
Программа создает на вашем компьютере специальную папку. Все файлы, которые вы поместите в нее, автоматически закачиваются на сервер Dropbox.
Как только вы делаете изменения в каких-либо файлах, измененные файлы моментально закачиваются на сервер. Затем, вы с другого компьютера можете запустить Dropbox, на нем также создается папка для ваших файлов, и происходит автоматическая синхронизация файлов с сервером. Т.е. изменения, сделанные на одном компьютере, отобразятся на другом. Более того, все ваши файлы вы можете посмотреть через веб-интерфейс.
Программа доступна для Linux, Windows и MacOS X.
Установка Dropbox в Ubuntu
Обновлено:
На официальном сайте программы доступны для скачивания готовые DEB и RPM пакеты для 32-х и 64-х битных систем.
Устарело:
В Ubuntu Dropbox можно установить из официальных репозиториев. Для установки Dropbox в Ubuntu выполните команду:
При этом устанавливается плагин, который интегрирует Dropbox в файловый менеджер Nautilus.
После установки может появится сообщение: Nautilus Restart Required Dropbox requires Nautilus to be restarted to function properly. и вам нужно нажать на кнопку Restart Nautilus.
Источник
Как использовать Dropbox в Linux
Dropbox — это один из самых популярных доступных вариантов облачной синхронизации. Даже с бесплатной учетной записью вы можете синхронизировать до 2 ГБ файлов и папок с рабочего стола в облако. Но не думайте, что этот сервис доступен только для пользователей MacOS и Windows. Правильно: Linux уже давно пользуется поддержкой Dropbox. Более того, установка и использование Dropbox в Linux достаточно проста, так что почти каждый (независимо от навыков) может его настроить.
Давайте пройдемся по процессу установки и настройки Dropbox в Linux.
Эти инструкции применимы к Ubuntu Desktop 19.04, но Dropbox можно установить в большинстве современных дистрибутивов Linux.
Предостережение
Есть одна оговорка о поддержке Dropbox Linux. Начиная с 2018 года Dropbox поддерживает только незашифрованные файловые системы EXT4 в Linux. Большинство базовых установок Linux будут иметь незашифрованный тип EXT4, так что скорее всего вам не о чем беспокоиться.
Если вы не уверены, откройте окно терминала и введите команду df -Th . В выходных данных команды вы увидите, какой тип файловой системы работает в вашей операционной системе. Посмотрите на столбец Тип, чтобы убедиться, что ваш основной диск (обычно / dev / sda ) имеет тип EXT4.
Установка Dropbox
Предположим, вы уже прошли процесс создания учетной записи Dropbox . Начните с входа в эту учетную запись.
После успешной установки выполните следующие действия:
Выберите фотографию профиля в правом верхнем углу.
Выберите Установить .
Выберите 64-битную версию, связанную с Ubuntu.
При появлении запроса выберите Открыть с помощью и выберите Установка программного обеспечения .
Нажмите OK .
В появившемся окне нажмите Install .
При появлении запроса введите пароль пользователя и нажмите Аутентификация .
Позвольте установке завершить и закрыть установщик.
Когда будет предложено, нажмите Start Dropbox .
При появлении запроса нажмите OK, чтобы загрузить и установить демон Dropbox.
Разрешить загрузку и установку для завершения.
После завершения установки демона откроется окно браузера, в котором вам необходимо подключить учетную запись Dropbox к компьютеру. Чтобы согласиться , нажмите « Подключиться», и вы готовы продолжить. Теперь вы должны увидеть значок Dropbox на верхней панели GNOME. Установка Dropbox завершена, и вы готовы начать синхронизацию.
Использование Dropbox
После завершения установки откройте файловый менеджер Nautilus, и вы увидите каталог Dropbox. Любой файл или папка в этом каталоге будет автоматически синхронизироваться с вашей учетной записью Dropbox, а любой файл / папка, сохраненная в вашей учетной записи Dropbox, будет автоматически синхронизироваться с этим каталогом. Вы можете скопировать / вставить файлы / папки в каталог Dropbox или щелкнуть правой кнопкой мыши любой файл / папку и выбрать Dropbox > Переместить в Dropbox .
Обратите внимание, это действие переместит файл или каталог в Dropbox, а не скопирует его. Однако, если это файл, с которым вы часто работаете, вы все равно захотите его в этом каталоге.
Упрощенная облачная синхронизация
И это суть установки и использования Dropbox в Linux. Хотя существуют службы / приложения для синхронизации с настольными компьютерами, более гибкие, чем Dropbox, вам будет сложно найти более широкое применение. А благодаря поддержке Linux это беспроигрышный вариант для упрощенной облачной синхронизации на рабочем столе Linux.
Источник
Dropbox on Linux: installing from source, commands, and repositories
The Dropbox desktop app is available on supported Linux operating systems. If you use Dropbox on a Linux machine, we recommend that you download and install the appropriate Linux package of the Dropbox desktop app.
Note: If you use single sign-on (SSO), you’ll need to sign in to dropbox.com before installing the Dropbox desktop app.
Sections in this article:
How to build the Dropbox installer for Linux from source
The Dropbox installation package source has been released to the public via a GPL license. This means that even if we don’t have installation packages for your Linux or Unix distribution of choice, you can still compile a version yourself.
Install Dropbox from source
For specific distributions or to configure your installation, see the INSTALL file included with the source package.
Want to contribute?
As mentioned above, nautilus-dropbox is released on a GPL license. However, due to legal requirements, we can only accept patches into our release if you release your patch into the public domain. Don’t worry, we’ll still credit you in the CONTRIBUTORS file included with every package. To submit your patches, contact us. If you want to develop on the Dropbox platform, visit our developers site and check out our API.
How to add Dropbox to your Linux repository
To add Dropbox to an Ubuntu repository:
- Add the following line to /etc/apt/sources.list, and replace xenial with your build’s name below.
To add Dropbox to a Fedora repository:
- Add the following to /etc/yum.conf.
How to remove Dropbox from your Linux repository
- Remove the lines that you added when first adding Dropbox to your repository:
- Ubuntu: Remove the following line from /etc/apt/sources.list. Replace xenial with your build’s name:
- Fedora: Remove the following from /etc/yum.conf:
What Linux commands are available on Dropbox?
The Dropbox desktop app can be controlled with the Linux Command Line Interface (CLI). Depending on your Linux distribution and the package you used to perform installation, you may need to download a Python script to control Dropbox from the command line. However, we recommend you first try without downloading the script.
Before running commands, ensure that you’re running the available commands while your prompt is located at the root (top level) of the Dropbox folder.
By default, the Dropbox folder is located in
/Dropbox (Your team name), if you have a Dropbox Business account). If you moved the Dropbox folder to a different location, be sure you navigate to the root of your actual Dropbox folder before running the commands below.
Источник