Microsoft OneDrive には Linux 用の公式クライアント アプリケーションはありませんが、Rclone と呼ばれるサードパーティ ツールのおかげで、Linux のファイル マネージャーから OneDrive ファイルにアクセスできます。この記事では、Linux で OneDrive を使用する方法について説明します。ルクロン山。
Microsoft OneDrive (以前の SkyDive) は、Office Online スイートの一部であるクラウド ストレージ/ファイル同期サービスです。 5 GB の無料ストレージと、有料サブスクリプションで追加のストレージを利用できます。
RClone は「クラウド ストレージの rsync」です 」。ファイル システムからクラウドに (またはその逆に) ファイルを同期できるだけでなく、あるクラウド ストレージ サービスから別のクラウド ストレージ サービスにファイルを同期することもできます。このツールは、Google Drive から Amazon Drive、S3、ownCloud、Yandex Disk など、さまざまなクラウド ストレージ サービスをサポートしています。
オンデマンドのファイル同期に加えて、Rclone は、サポートされているすべてのクラウド ストレージ システムを FUSE を使用してファイル システムとしてマウントすることをサポートします。この機能はしばらく前から存在していましたが、まだ実験的なものと見なされているため、注意して使用してください。
Microsoft OneDrive をマウントすると、Nautilus (ファイル)、Nemo、Caja などのファイル マネージャーからアクセスできます。この動作は、Google ドライブに関する記事:Mounting Google Drive On Xfce or MATE Desktops (Ubuntu, Linux ミント)。ちなみに、Rclone を使用して Linux に Google ドライブをマウントすることもできます。
Rclone は OneDrive for Business / Office 365 をサポートしています。ただし、組織が管理されていない状態 (ドメイン所有者によって検証されていない) の場合、Rclone と FUSE を使用して OneDrive を展開することはできません。ただし、そのようなアカウントは SharePoint で使用できます。詳細については、このページを参照してください。
OneDrive ファイルを Linux のローカル フォルダーと同期する場合は、OneDrive Free Client Fork を使用できます。これにより、同期後にファイルがハード ドライブに保存され、コンピューターが停止しているときでもファイルにアクセスできるようになります。オフライン Linux での OneDrive のマウント。
OneDrive Rclone を展開する際の制限:
- Rclone で削除されたすべてのファイルはごみ箱に移動されます。これは、Microsoft がファイルを完全に削除したり、ごみ箱を空にしたりするための API を提供していないためです
- OneDrive では大文字と小文字が区別されないため、名前が同じで大文字と小文字が異なる 2 つのファイルを同じフォルダーに含めることはできません (例:
MyFile.txtとmyfile.txt同じフォルダに入れることはできません)。 - OneDrive は、Windows オペレーティング システムのファイル名で許可されていない一部の文字をサポートしていません。 Rclone は、これらの文字を
?などの見た目が同じ Unicode に対応するものにマップします。?まで
また、少なくとも私のシステムでは、フォルダの名前変更が機能していないようです。これが Rclone の問題なのか制限なのかはわかりません。なぜなら、Rclone は一般的にフォルダーの名前を変更するのに役立つと言われているからです。
これらの手順は、任意の Linux ディストリビューション (Ubuntu、Linux Mint または Debian から Arch Linux、Fedora、openSUSE など) だけでなく、FreeBSD および macOS でも機能するはずです。実際には Windows で動作しますが、WinFsp が必要です。
関連:Cryptomator はクラウド ストレージ データを保護します (オープン ソース、クロスプラットフォームのクライアント側暗号化ツール)
Rclone を使用して Linux で OneDrive をファイル システムとしてマウントする
1. Rclone をインストールします。
ここから rclone バイナリをダウンロードできます。 Linux の場合、一般的なバイナリだけでなく、DEB および RPM バイナリも見つけることができます。
fusermount が見つからないため、(Ubuntu を使用している場合でも) Rclone Snap パッケージをインストールすることはお勧めしません。 インストールされていても実行可能 --classic . Snap パッケージを使用している場合、Rclone がサポートするクラウド ストレージ サービスをデプロイしようとすると、次のようなエラー メッセージが表示されます:
failed to mount FUSE fs: fusermount: exec: "fusermount": executable file not found in $PATH これは少し前に修正されたようですが、出力が再び発生するようです。
2.新しい OneDrive リモートを Rclone に追加します。 次の手順は長く感じるかもしれませんが、セットアップには数秒しかかかりません。
OneDrive リモートの Rclone への追加を開始するには、次のコマンドを使用して Rclone 構成モードに入ります。
rclone config
Rclone は New remote から選択できるオプションのリストを表示します 入力によるオプション n Enter を押します キー:
$ rclone config
Current remotes:
Name Type
==== ====
mega mega
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> n
次に、新しいリモコンの名前を入力するよう求められます。使用する名前を入力します (私は onedrive を使用しています) このマニュアルの名前のように):
name> onedrive
Enter を押した後 を押すと、サポートされているクラウド ストレージ サービスのリストが表示されます。適切な番号 (19) を入力して、Microsoft OneDrive オプションを選択する必要があります。 ただし、Rclone に追加されるクラウド ストレージ サービスが増えるにつれて、将来変更される可能性があります):
Type of storage to configure.
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
1 / A stackable unification remote, which can appear to merge the contents of several remotes
"union"
2 / Alias for a existing remote
"alias"
3 / Amazon Drive
"amazon cloud drive"
4 / Amazon S3 Compliant Storage Provider (AWS, Alibaba, Ceph, Digital Ocean, Dreamhost, IBM COS, Minio, etc)
"s3"
5 / Backblaze B2
"b2"
6 / Box
"box"
7 / Cache a remote
"cache"
8 / Dropbox
"dropbox"
9 / Encrypt/Decrypt a remote
"crypt"
10 / FTP Connection
"ftp"
11 / Google Cloud Storage (this is not Google Drive)
"google cloud storage"
12 / Google Drive
"drive"
13 / Hubic
"hubic"
14 / JottaCloud
"jottacloud"
15 / Koofr
"koofr"
16 / Local Disk
"local"
17 / Mega
"mega"
18 / Microsoft Azure Blob Storage
"azureblob"
19 / Microsoft OneDrive
"onedrive"
20 / OpenDrive
"opendrive"
21 / Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
"swift"
22 / Pcloud
"pcloud"
23 / QingCloud Object Storage
"qingstor"
24 / SSH/SFTP Connection
"sftp"
25 / Webdav
"webdav"
26 / Yandex Disk
"yandex"
27 / http Connection
"http"
Storage> 19
次の 2 つの手順については、Enter を押してください Microsoft アプリ クライアント ID またはシークレットの入力は必要ないため、情報を入力する必要はありません:
Microsoft App Client Id
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_id>
Microsoft App Client Secret
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_secret> 次に、高度な構成を編集するかどうか尋ねられます。高度な設定を念頭に置いている場合を除き、「n」を入力してください:
Edit advanced config? (y/n)
y) Yes
n) No
y/n> n
セットアップに応じて、次のステップで自動構成または手動構成を入力する必要があります。ほとんどのユーザー y は諦めます 自動構成を使用するには:
Use auto config?
* Say Y if not sure
* Say N if you are working on a remote or headless machine
y) Yes
n) No
y/n> y 既定の Web ブラウザーで新しいタブが開き、Rclone に OneDrive アカウントへのアクセスを許可するよう求められます。許可すると、タブを閉じることができます。
Rclone は、ローカル コンピューター (ポート 53682) で Web サーバーを実行して、認証トークンを取得します。ファイアウォールを使用している場合は、ブロックを一時的に解除する必要がある場合があります。
次に、アカウントの種類を入力する必要があります。ほとんどの場合、1 と入力します OneDrive の個人用またはビジネス用のアカウントに対応するもの:
Choose a number from below, or type in an existing value
1 / OneDrive Personal or Business
"onedrive"
2 / Root Sharepoint site
"sharepoint"
3 / Type in driveID
"driveid"
4 / Type in SiteID
"siteid"
5 / Search a Sharepoint site
"search"
Your choice> 1 1 つのアカウント (いくつかの特殊なケースでは複数) は次のようにリストされます:
Found 1 drives, please select the one you want to use:
0: (personal) id=f119f51f0a00000
Chose drive to use:> 0
0 を入力してください Enter キーを押します。
この画面が表示されるはずです - y と入力してください 続けてください。
Found drive 'root' of type 'personal', URL: https://onedrive.live.com/?cid=0f119f51f000000
Is that okay?
y) Yes
n) No
y/n> y
ここで、すべてが正しいことを確認し、y と入力して設定を保存する必要があります。 :
[onedrive]
type = onedrive
token = {"access_token":"GoKSt5YMioiuCWX1KOuo8QT0Fwy+Y6ZeX7M","token_type":"bearer","refresh_token":"7OMvoEAO3l*8BbhS2AMxpTbJW0Y6np9cdql!bwEdYAhJ6XBG0tnR0UK","expiry":"2018-07-26T15:15:13.696368366+03:00"}
drive_id = f119f51f0a00000
drive_type = personal
--------------------
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y
最後に、q と入力して rclone 構成を終了します。 :
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 3. Microsoft OneDrive のマウントに使用する新しいフォルダーをシステムに作成します。
というフォルダを提案します。 OneDrive を作成する あなたのホームディレクトリに。以下の手順では、これはマウント ポイント (~/OneDrive) として使用されます。 ).
4. OneDrive (FUSE を使用した Rclone) をファイル システムとしてマウントします。
Microsoft OneDrive を Rclone でマウントするには、次のコマンドを使用します:
rclone --vfs-cache-mode writes mount onedrive: ~/OneDrive
どこで onedrive : が後に続く Rclone リモート コントロールの名前です。 (正確に onedrive を使用しました 上記の手順で、コマンドにそれを使用できるようにします) および ~/OneDrive システムに OneDrive を展開するフォルダーです。
マウント コマンドが使用されます --vfs-cache-mode writes Rclone のドキュメントによると、「多くのアプリケーションは Rclone マウント上のファイルで動作しません」 「それまたは --vfs-cache-mode full なしで .これについては、rklon ファイルのキャッシュ セクションで詳しく説明しています。
Ctrl + C を押すと、停止してフックを外すことができます Rclone を閉じます。
5. (オプション) システム起動時に OneDrive をマウント
起動時に OneDrive を利用できるようにするには、スタートアップ アプリケーションを開きます。これは、使用しているデスクトップ環境によって異なります。そのため、いくつかを以下にリストし、スタートアップ アプリケーションにアクセスして新しいエントリを追加する方法を示します。
- Gnome / Unity:
Startup Applicationsを検索 Dash / Applications で、Startup Applications でAddをクリックします - Xfce:
Session and Startupを開始 メニューからApplication Autostartに移動します Tab キーを押しながらAddをクリックします - MATE:
Startup Applicationsを開始 メニューからAddをクリックします
Add をクリックした後 、次を使用します:
- 名前:Rclone OneDrive マウント
- コマンド:
sh -c "rclone --vfs-cache-mode writes mount onedrive: ~/OneDrive"
次のように、OneDrive を自動的にマウントする方法は他にもあります。 B. /etc/fstab に行を追加する ファイル、systemd の使用など。Rclone でも機能するはずなので、出発点として、google-drive-ocamlfuse の例を使用できます。