Dropbox is a popular cloud service for synchronizing files between devices, but not all users are comfortable with the official Dropbox client app. Many feel that it is too bloated, offering unnecessary functionality or limitations in a package that only seems to increase in size.
Maestral is a lightweight open-source Dropbox client for Linux and macOS written in Python. Its main goal is to provide a client with platforms and file systems that are no longer directly supported by Dropbox.
In addition, Maestral provides powerful command line tools, supports gitignore patterns to exclude local files from syncing, and allows syncing multiple Dropbox accounts.
Furthermore, it uses the public Dropbox API, which, unlike the official client, does not support the transfer of only those parts of a file that are modified (“binary diff”).
However, it will avoid uploading or downloading a file if it already exists with the same content locally or in the cloud.
Currently, Maestral does not support Dropbox Paper, the management of Dropbox teams, and the management of shared folder settings. However, you can use the Dropbox website or the official client if you need any of this functionality.
If you insist on privacy, Maestral has good news for you. It does not collect any user data, anonymous or otherwise. It only communicates with Dropbox servers, and the Dropbox privacy policy, of course, applies.
Maestral Features
Maestral comes with all the most used and valuable features you can also find in the official Dropbox client.
- Can run in GUI or command line modes.
- Pause/resume syncing.
- Selective sync.
- Supports syncing multiple Dropbox accounts by running multiple instances in parallel.
- Choose your Dropbox folder location.
- System notifications on file changes.
- Shows used / total Dropbox space.
- Keyring integration.
- Does not count toward the three devices limit for basic Dropbox accounts.
How to Install Maestral on Linux
The Maestral app bundle is currently provided only for macOS.
On Linux, the Maestral instructions recommend installing the app from PyPI using pip. In addition, you must have Python 3.6 or higher installed on your system.
sudo python3 -m pip install --upgrade maestral[gui]
Code language: CSS (css)
Since the GUI is a system tray bar app, it does require a desktop environment with a system tray.
The first time you run Maestral, either with a GUI or from the command line, it will guide you through the process of linking your Dropbox account.
Maestral Command Line
The Maestral command line interface provides access to many features, including some that are unavailable from the GUI.
Autostart on Login
File syncing should happen in the background and require as little user interaction as possible. Therefore, both the GUI and the daemon provide options to start on login.
The settings panel provides a checkbox to start the GUI on login. The CLI includes an equivalent command which will create the appropriate systemd (Linux) or launchd (macOS) entry to start the Maestral daemon with the selected config on login.
maestral autostart --yes
Check Maestral Status
Show the status of the daemon.
maestral status
Account: bobby@linuxiac.com (Basic)
Usage: 0.0% of 5.6 GB used
Status: Up to date
Sync errors: 0
Code language: CSS (css)
Start & Stop the Sync Daemon
Start the sync daemon.
maestral start
Stop the sync daemon.
maestral stop
Pause & Resume the Sync Daemon
Pause syncing.
maestral pause
Resume syncing.
maestral resume
Maestral Log
Get the current log level.
maestral log level
To set the log level, choose one of the four available options: DEBUG, INFO, WARNING, and ERROR. Changes will take effect immediately.
maestral log level DEBUG
Print logs to the console.
maestral log show
Clear the log files.
maestral log clear
Refer to the official documentation for a complete list of available commands. In addition, you can find more information about the Maestral Dropbox client on the project’s website.