OneDrive Client for Linuxは、OneDrive Personal、OneDrive for Business、OneDrive for Office365、およびSharePointをサポートするクライアントです。

メジャーなLinuxディストリビューションの他にFreeBSD、またはDockerコンテナでも実行可能です。

この記事では、Dockerを使用した構成方法を紹介します。

環境
  • OneDrive Personal

  • Ubuntu 22.04.3 LTS (x86-64)

  • Docker version 25.0.3

概要

実行結果について簡単に説明します。

  • OneDriveで同期するフォルダは、$HOME/OneDrive に作成します。

  • onedrive_conf ボリュームが作成され、構成ファイルが保存されます。

  • コンテナはPC再起動後も自動的に再開します。

構成手順

手順に関する詳細が知りたい場合は、リポジトリにあるマニュアルを参照してください。

  1. 以下のシェルスクリプトを作成後、実行してください。

  2. 表示されたURLを開き、Microsoftアカウントにログインします。

  3. アプリにOneDriveへのアクセスを許可します。

  4. ページ遷移後のURLをコピーして、貼り付けます。

setup.sh
#!/bin/bash
export ONEDRIVE_UID=`id -u`
export ONEDRIVE_GID=`id -g`

docker run -it --name onedrive --restart always \
    -v "onedrive_conf:/onedrive/conf" \
    -v "$HOME/OneDrive:/onedrive/data" \
    -e "ONEDRIVE_UID=${ONEDRIVE_UID}" \
    -e "ONEDRIVE_GID=${ONEDRIVE_GID}" \
    driveone/onedrive:edge
FrdKaB9
Figure 1. 実行結果

同期が自動的に開始されるため、コンテナからデタッチしても大丈夫です。 また、コンテナはPC再起動後も自動的に再開します。

OneDriveアクセス許可の削除

OneDrive Client for Linux を利用しなくなった場合は、OneDriveへのアクセス許可を削除することをおすすめします。

Microsoftアカウントのプライバシーページの下部にあるアクセスが許可されているアプリとサービスのページから管理できます。

uC53t3g
oU3gmjx