03-Apr-2023

Set up OneDrive on Linux

There is no official OneDrive client for Linux computers. The functionality of drive syncing can be achieved by using the third party software RClone. RClone requires a Linux computer with a GUI interface (it will not work on command line only installs).

RClone is a third party software not supported by Microsoft.

  1. Open a terminal window and install RClone using the following command. On Ubuntu, press Ctrl + Alt + T to open a terminal session.
    curl https://rclone.org/install.sh | sudo bash
  2. Start configuring OneDrive in RClone by running the config command.
    rclone config
  3. You will be prompted with configuration options. Choose n to create a new remote.
    >>>No remotes found, make a new one? n) New remote s) Set configuration password q) Quit config n/s/q> n
  4. Enter “OneDrive” as the name for the remote.
  5. For storage type enter “onedrive”.
  6. Leave client_id and client_secret empty. Press enter to leave the fields blank.
    >>>Option client_id. OAuth Client Id. Leave blank normally. Enter a value. Press Enter to leave empty. client_id> >>>Option client_secret. OAuth Client Secret. Leave blank normally. Enter a value. Press Enter to leave empty. client_secret>
  7. Enter 1 for the region.
  8. Press n to skip advanced configuration.
    >>>Edit advanced config? y) Yes n) No (default) y/n> n
  9. Press y to use autoconfiguration.
    >>>Use auto config? * Say Y if not sure * Say N if you are working on a remote or headless machine y) Yes (default) n) No y/n> y
  10. A browser window will open to a Microsoft login screen.
    Login using your OneDrive email address and password.
  11. After logging in, close the browser window and go back to the terminal that is running RClone.
  12. When prompted for config_type enter “onedrive”.
  13. You’ll be prompted to connect to the root of your OneDrive. If your OneDrive account is a "personal" one, this will be reflected with the root type shown below. Press y to continue.
    >>>Drive OK? Found drive "root" of type "business" URL: https://uconn-my.sharepoint.com/personal/timothy_bogues_uconn_edu/Documents y) Yes (default) n) No y/n> y
  14. Press y to confirm that the remote is ok.
    >>>y) Yes this is OK (default) e) Edit this remote d) Delete this remote y/e/d> y
  15. Press q to close the remote configuration procedure.
    Current remotes: Name Type ==== ==== OneDrive onedrive e) Edit existing remote n) New remote d) Delete remote r) Rename remote c) Copy remote s) Set configuration password q) Quit config e/n/d/r/c/s/q> q
  16. Create a “OneDrive” directory in your home folder to mount the remote that you just created.
    mkdir ~/OneDrive
  17. Mount the remote by using the command:
    rclone --vfs-cache-mode writes mount OneDrive: ~/OneDrive &
  18. Close the terminal window. You should now have OneDrive mounted in your file system.

If you reboot the computer, you will need to remount the remote using the command in step 17. Set up CRON to run the above command at reboot. See below for more details.

From https://kb.uconn.edu/space/IKB/26050527301/Setting+up+OneDrive+on+Linux, viewed 6-Apr-2023.

Reconnecting OneDrive at reboot

Commands can be scheduled to run at various times using Linux's crontab tool.

First, run the crontab command:

crontab -e

Edit the crontab file, adding the following line to the end of the file.

@reboot rclone --vfs-cache-mode writes mount OneDrive: ~/OneDrive &

From https://www.cyberciti.biz/faq/linux-execute-cron-job-after-system-reboot/, viewed 6-Apr-2023.

Leave a Reply

linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram