How to Use OneDrive for Linux

It’s 2020 and both OneDrive and Linux are more popular than ever, but Microsoft provides no official client to connect to OneDrive or Sharepoint on Linux.

ExpanDrive is a powerful OneDrive for Linux client that supports Ubuntu, Linux Mint, CentOS, Fedora, Redhat and most popular distributions. It supports two-way sync via a mounted drive to OneDrive, OneDrive for Business and Sharepoint by securely connecting to the Microsoft Graph API.

Unlike other clients, ExpanDrive doesn’t pre-sync your data to a hot folder taking up time, disk space, and bandwidth downloading data you don’ need. It accesses OneDrive, OneDrive for Business, and Sharepoint on-demand by only downloading the data you or your app asks for.

Download ExpanDrive vMAJOR.MINOR.PATCH

ExpanDrive 7 runs on Ubuntu, Red Hat, Linux Mint, CentOS, Debian and most other popular distributions. We provide Deb and RPM based installers and have an integrated auto-updater to help you stay up to date. ExpanDrive connects to OneDrive, Sharepoint and OneDrive for Business as a fast network drive.

Watch this video on YouTube.
Connecting to OneDrive on Linux with ExpanDrive 7
OneDrive mounted directly within the filesystem

OneDrive client options on Linux

Most of the major cloud storage providers don’t provide any first-party client for Linux. Microsoft does not seem to have any plans to provide a Linux client for OneDrive/Sharepoint, despite the huge base of Office 365 customers who run on Linux. With an increasing number of users running Linux as their primary operating system having a solution to connect to cloud storage is more important than ever.

There are a few open-source options that provide a sync style client, such as skilion’s command-line OneDrive client. However, unless you’re a power user this option can be pretty intimidating. It also is a sync client, which means you’re going to be syncing down a lot of extra data you might not need.

Installing ExpanDrive

Download ExpanDrive for Linux vMAJOR.MINOR.PATCH

Desktop based installations

ExpanDrive ships primarily as a desktop app with a user interface for advanced configuration and management. We also have a server edition that runs headless for Windows and Linux Servers.

Debian and Ubuntu based desktop distributions

For Debian and Ubuntu based distributions the easiest way to get started is to download and install the latest .deb package (64 bit), either through the graphical installer or via the command-line with the following command.

sudo apt install ./ExpanDrive_MAJOR.MINOR.PATCH_amd64.deb

Installing the .deb will also automatically install the apt repository and code signing key to enable easy update using the system package manager.

You can install the repository and key manually with the following script

curl | gpg --dearmor > packages.expandrive.gpg
sudo install -o root -g root -m 644 packages.expandrive.gpg /usr/share/keyrings/
sudo sh -c 'echo "deb [arch=amd64 signed-by=/usr/share/keyrings/packages.expandrive.gpg] stable main" > /etc/apt/sources.list.d/expandrive.list'

Then you update the package cache and install ExpanDrive using:

sudo apt-get install apt-transport-https
sudo apt-get update
sudo apt-get install expandrive

RHEL, Fedora, and CentOS based desktop distributions

Download our latest .rpm package (64-bit) and use yum to install ExpanDrive and the required dependencies.

sudo yum localinstall ./ExpanDrive-MAJOR.MINOR.PATCH.x86_64.rpm

Installing the .rpm will also automatically configure the yum repository and code signing key to enable easy update using the system package manager.

You can install the yum repo manually using the following script:

sudo rpm --import
sudo sh -c 'echo -e "[expandrive]\nname=expandrive\nbaseurl=\nenabled=1\ngpgcheck=1\ngpgkey=" > /etc/yum.repos.d/expandrive.repo'

Then update your package cache and install Expandrive using dnf (Fedora 22 and above):

sudo dnf check-update
sudo dnf install expandrive

or using yum

yum check-update
sudo yum install expandrive

Server/Headless Edition

Head over to our ExpanDrive Server Edition page for instructions and packages for Windows and Linux servers. ExpanDrive Server edition is designed to run unattended, at boot [versus login], and provides drives that can even be re-shared on the network.

We are currently in public beta testing for this server edition designed to run without any user interaction. If you’re interested in joining the beta, please send an email to letting us know which distro you’re running and what your rough use-case is.

Mounting a OneDrive Network Drive on Linux

ExpanDrive is a OneDrive client that lets you connect your files using a fast network drive. Like Microsoft’s built-in client on Windows 10, everything is accessed on demand. You can browse and open any file from within your file manager or from the command-line. ExpanDrive builds native access to OneDrive into Linux.

ExpanDrive includes a powerful cloud storage browser

Amazing Reviews


“ExpanDrive lets you mount remote sftp drives and it actually works! I.e. no long delays or dropped connection in the middle of a save.”

Allan Odgaard, TextMate


“My first impression after reading ExpanDrive’s promotional description last week was that it sounded too good to be true. One week later, I’m pretty sure it actually is that good.”

John Gruber, Daring Fireball

Hello, Linux

ExpanDrive is currently shipping for Linux Desktop environments, with a server version coming soon.

  • Ubuntu
  • Linux Mint
  • Fedora
  • Centos
  • Redhat
  • Arch Linux
  • OpenSUSE
  • Debian

OneDrive Network Drive

ExpanDrive for Linux has a full featured file explorer as well as a fast network drive client. This builds support for OneDrive into every application in your environment, including terminal apps and the file explorer.