バックアップ用に使いたいと思いクラウドストレージをいくつか設定しています。LinuxのCUI環境でも使える無料クラウドストレージは前回設定したDropbox以外では、WebDAV仕様のクラウドサービスをdavfs2でマウントして使う方法があるようです。そのdavfs2が使えてさらに無料のクラウドサービスのBoxとDriveeを使えるように設定しました。
(2017.04.29追記)Driveeの無料オンラインストレージが、2017年8月31日(木)にサービス終了するようです。→公式ページご案内
現在は、Driveeの代わりにTeraCloudを利用しています。
Debian LinuxでクラウドストレージTeraCloudをWebDAVマウント
このページの目次
BoxとDriveeのアカウント登録
それぞれのクラウドサービスを利用するためにアカウント登録ができている前提で進めます。ここでは例として、
- Boxの登録メールアドレス: mail@ikt-s.com、パスワード:[box_pass]
- Driveeの登録ユーザーID:[drivee_user]、パスワード:[drivee_pass]
としています。
davfs2のインストール
davfs2をインストールします。suでroot権限になってから
aptitude install davfs2
設定ファイル/etc/davfs2/davfs2.conf
davfs2の設定ファイルは /etc/davfs2/davfs2.conf です。今回設定を変えたのは42行目の一箇所だけです。
# if_match_bug 0
if_match_bug 1
デフォルトのままだとDriveeにファイルを作成したりコピーしたりしようとすると「通常ファイル `~’ を作成できません: ファイルが存在します」というエラーが出て失敗します。
37行目のuse_locks 0 を有効にするという情報もありましたが、これだとディレクトリーだけ同期されてファイルが同期されませんでした。
私の環境では42行目だけ変更して上手く行きました。
マウントテスト
マウントディレクトリを作成します。
mkdir /mnt/drivee /mnt/box
マウントします。
mount -t davfs https://dav.box.com/dav /mnt/box mount -t davfs https://[drivee_user].drivee.jp/ /mnt/drivee
ログインIDとパスワードを聞いてくるので入力してマウントされます。
dfコマンドでマウント出来ているか確認します。
# df ファイルシス 1K-ブロック 使用 使用可 使用% マウント位置 https://[drivee_user].drivee.jp/ 26666664 13333332 13333332 50% /mnt/drivee https://dav.box.com/dav 10485756 0 10485756 0% /mnt/box
driveeは最初から50%使用されていますね。なぜでしょうか?
動作確認は、何かファイルを作成したりコピーしてクラウド上で同期されていれば成功です。
ログイン操作を自動化
/etc/davfs2/secrets にログインIDとパスワードを書いておくとマウント時のログイン入力を省略できます。
# nano /etc/davfs2/secrets https://dav.box.com/dav mail@ikt-s.com [box_pass] https://[drivee_user].drivee.jp/ [drivee_user] [drivee_pass]
このファイルは最初からパーミッションが600になっているはずですが、パスワードを平文で書いているので念のため確認しておきます。
# ls -l /etc/davfs2/secrets -rw------- 1 root root 2770 3月 21 03:09 /etc/davfs2/secrets
OS起動時にマウントさせる
/etc/fstab に記入しておけば、Debian起動時にマウントされた状態になります。必要であればですが。
# nano /etc/fstab https://dav.box.com/dav /mnt/box davfs _netdev,rw,user 0 0 https://[drivee_user].drivee.jp/ /mnt/drivee davfs _netdev,rw,user 0 0
(2020/03/16追記)Debian10のcui環境では、上記fstab内容で起動時にエラーがでるようになりました。今はこちらにしています。
https://nanao.teracloud.jp/dav/ /mnt/teracloud davfs x-systemd.automount,_netdev 0 0
最後にひとこと
Boxはファイル名が日本語になっているとエラーで同期ができないようです。さらに無料アカウントでは1ファイル上限250MBという制限まあります。(Driveeは制限なし)
BoxもDriveeもファイルの属性によっては同期できないファイルも多いため、私の目的であるWordPressのバックアップ用ドライブにするためにはtarやzipでファイルを圧縮して利用する必要がありそうです。