元バイオ系

元バイオウェット系がデータサイエンスやらを勉強していくブログ。 基本自分用のまとめ。

UbuntuでOneDriveを使いたい

Ubuntuで直感的にOneDriveを使いたい。

rcloneとかいう便利なソフトがあるらしい。

GUIもあるから設定してみた。

そんなお話。

rcloneってなに

Linux使いならよーくご存じだと思われるrsyncクラウドバージョン。

それがrclone

色々なクラウドストレージに対応しているようだ。

インストール

まずはインストールする

snapとかいうパッケージ管理マネージャ的な何かをaptでインストールしておく

sudo apt install snapd

snapでインストール

sudo snap install rclone --classic

アップデートしたい時

sudo snap refresh rclone --classic

rcloneを設定する

rclone config

interactiveに設定できる。

一問一答形式なので困ることもない。

No remotes found - make a new one
n) New remote
s) Set configuration password
n/s> n
name> remote
Type of storage to configure.
Choose a number from below, or type in your own value
 1 / Amazon Drive
   \ "amazon cloud drive"
 2 / Amazon S3 (also Dreamhost, Ceph)
   \ "s3"
 3 / Backblaze B2
   \ "b2"
 4 / Dropbox
   \ "dropbox"
 5 / Google Cloud Storage (this is not Google Drive)
   \ "google cloud storage"
 6 / Google Drive
   \ "drive"
 7 / Hubic
   \ "hubic"
 8 / Local Disk
   \ "local"
 9 / Microsoft OneDrive
   \ "onedrive"
10 / Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
   \ "swift"
11 / Yandex Disk
   \ "yandex"
Storage> 9
Microsoft App Client Id - leave blank normally.
client_id> 
Microsoft App Client Secret - leave blank normally.
client_secret> 
Remote config
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
If your browser doesn't open automatically go to the following link: http://XXXXXXXXXXX/auth
Log in and authorize rclone for access
Waiting for code...
Got code
--------------------
[remote]
client_id = 
client_secret = 
token = {"access_token":"XXXXXX"}
--------------------
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y

上記のコマンドたちについて少し説明。

ここは空欄で良いです(この後自動設定で、OneDriveのページヘ行き認証を行うため)

Microsoft App Client Id - leave blank normally.
client_id> 
Microsoft App Client Secret - leave blank normally.
client_secret> 

もし、自動でブラウザが立ち上がらない場合、以下の部分に書かれているurlヘ飛ぶ。

If your browser doesn't open automatically go to the following link: http://XXXXXXXXXXX/auth

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を入力して終了。

このままでもCUIでコマンドを叩けば使えるが、rsyncのdeleteオプションが付いている状態でファイルのやり取りがされるらしく…

クラウド上のファイル全削除なんて事故が頻繁に起こるらしい。

ましてやコマンドなんてしばらく使わなければ忘れるもの。

そこで、ファイル全削除なうえ復元不可…なんて惨劇を回避するためにGUIを導入します。

RcloneBrowserの導入

rcloneがインストールされて、設定が終わっていることが前提です。

インストールする

sudo add-apt-repository ppa:mmozeiko/rclone-browser
sudo apt-get update
sudo apt install rclone-browser

これだけでインストールができるらしい…が、私の環境ではなぜかパッケージのダウンロードの段階で404 not found。

メンテナンス中とかだったのだろうか…。

仕方ないのでRcloneBrowaer公式からdebをダウンロードして直接入れた。

ダウンロードしてきたフォルダに移動して以下のようにコマンドを入力。

sudo dpkg -i rclone-browser_1.2_amd64.deb 

準備は整った。

実行する。

rclone-browser

こんなwindowが立ち上がったら成功。

f:id:hotoke-X:20170903014007p:plain

rcloneの設定が終わっていないとポップアップがでてきて、rcloneの設定をさせられる。

出てきたウィンドウに、rclone locationと.rclone.confのpathを入力すれば導入完了。

rcloneの場所がわからなければ

which rclone

で調べられる。

.rclone.confの場所は人によって違うかもしれないが、

/home/yourname/.rclone.conf

あるいは、Ubuntuなら

/home/yourname/.config/rclone/rclone.conf

となっている…と思う。

まとめ

Ubuntuからwebブラウザを経由せずにOneDriveにアクセスできるようになった!

マウント機能もあるらしいがexperimentalなので触らないでおく。

ちゃんと使えるようになったらwindowsmacと遜色なくOneDriveが使えるようになるかも?