同期プランの概要#
Obsidian を使って 2 年になりますが、Obsidian のマルチデバイス同期について、最終的に以下の同期とバックアッププランを採用しました。
- 阿里云 OSS による同期
- Windows の定期タスクで Obsidian ディレクトリを別のフォルダに圧縮してバックアップ
理由の説明#
なぜこの方法を採用したのでしょうか?
以前は OneDrive 同期と GitHub リポジトリを使ってバックアップを行っていました。
OneDrive 同期の不足#
しかし、OneDrive は webdav サービスを提供していません(または私が見つけられなかった)。そこで、Koofrツールを使って OneDrive の webdav サービスを生成しましたが、この方法はあまり良くありませんでした。なぜなら、Koofrのサービスは時々不安定で、速度も良くなく、remotely-saveプラグインの同期に失敗することがよくありました(結局、公式サービスではないため)。
GitHub バックアップの不足#
バックアップについては、定期的に Obsidian の全ライブラリファイルを GitHub リポジトリに同期していました。その中には私の Obsidian 設定も含まれています(もちろんプライベートリポジトリです)。しかし最近、バックアップディレクトリがどんどん大きくなっていることに気付きました(1.5GB)。Obsidian ライブラリファイルを確認すると、250MB しかありませんでしたが、.git ファイルを見てみると、なんと 1GB 以上ありました。私はプログラマーではないので、勝手に削除することもできず、現状を維持すると次回のシステム移行時には全ディレクトリをコピーしなければならず、シームレスなバックアップができません。また、最近 Git push が非常に遅くなっていることにも気付きました(ネットワークの問題ではありません)。
バックアップは本当に非常に非常に重要です。ノートのようなものを失うと本当に焦ります。私は一度システムを再インストールしたときにノートのバックアップを忘れてしまい、悲しんでいたときに、ふと思い出しました:あれ、私は GitHub に Obsidian フォルダ全体をバックアップしていたのでは?そのまま pull すれば、何の損失もなく、ノートが戻ってきて、設定も一つも失われませんでした。
プランの実施#
阿里云 OSS 同期#
OneDrive の同期を使わないので、他のクラウドストレージサービスを使うことにしました。以前は坚果云を使っていましたが、同期体験はあまり良くなく、安定性も欠けており、月間データ量は 1GB しかありませんでした。ノートを取るには十分ですが、他の同期サービスもあります。現在の不足を総合的に考慮し、最終的に阿里云(もちろん他のプロバイダーも可能です、例えば七牛云)OSS を採用することに決めました。3 年間 40GB の 27 元のスタンダードリソースパッケージを購入しました(このような頻繁に読み書きが必要なファイルにはスタンダードリソースパッケージを購入するのが良いです)。価格もかなりお得で、40GB はノートを取るには十分で、画像ホスティングにも使えます。
阿里側での設定#
まず、阿里云のオブジェクトストレージ OSS リソースパッケージを購入します。私が購入したのは3 年 27 元 40GB スタンダード版プランで、必要に応じて購入できます。
購入が完了したら、コンソールに入り、左側のBucketリスト
をクリックして、任意の名前で Bucket を作成します。地域は自分に最も近いものを選択し、他は気にしなくて大丈夫です。
作成が完了したら Bucket に入り、データセキュリティ
内のクロスオリジン設定
をクリックし、ルールを作成します。出所
には以下を記入します。
app://obsidian.md
capacitor://localhost
http://localhost
許可するメソッド
はすべてチェックを入れ、許可するヘッダー
には:* と記入し、記入が完了したら確定をクリックします。
次に、Bucket にアクセスして管理するためのユーザーを権限付与する必要があります。阿里云の右上のアイコンをクリックし、AccessKey管理
を選択します。表示されたら、子ユーザーAccessKeyの使用を開始
をクリックします。
次に、アイデンティティ管理のユーザー管理画面に移動します。ユーザーのログイン名と表示名は適当に記入します。ここでは、作成した Bucket 名と一致させて識別しやすくします。アクセス方法はOpenAPI呼び出しアクセス
にチェックを入れ、確定をクリックします。作成が完了すると、AccessKey ID
とAccessKey Secret
が表示されますので、コピーしておいてください。このページは一度しか表示されません。
次に、Bucket ページに戻り、権限管理
内のBucket権限ポリシー
をクリックし、新しい権限を追加します。先ほど作成したユーザーに権限を付与し、権限ユーザー
には子アカウント
をチェックし、作成したユーザーを選択します。権限操作
には完全制御
をチェックし、他は気にしなくて大丈夫です。確定をクリックすれば Bucket ポリシーの権限付与が完了します。
Obsidian 側での設定#
ここでは、remotely-saveプラグインを使用します。未インストールの方は、コミュニティプラグインマーケットで検索してインストールしてください(プロキシツールが必要です)。
remotely-saveのリモートサービスではS3またはS3互換サービス
を選択します。次に、Bucket の管理画面に戻り、Bucket のサービスアドレス(エンドポイント)と地域(リージョン)を見つける必要があります。Bucket の概要
をクリックし、地域ノードに対応する情報をコピーして Obsidian に貼り付けます。次に、先ほど作成したユーザーのAccessKey ID
とAccessKey Secret
を対応する場所に貼り付け、ストレージバケット(Bucket)の名前には作成した Bucket の名前を記入します。
同期中にリージョンのエラーで対応するストレージバケットにアクセスできない場合は、リージョンを ap-east-1 に変更してください。公式の文書によると、これはアジア太平洋地域の香港地域に対応しています。
これで同期部分の設定が完了しました。まずは接続確認をクリックして、接続できるか確認します。接続できれば設定は正しいことが確認でき、remotely-saveで自動同期を設定できます。私は一般的に5分ごとに自動同期
と起動後1秒で自動同期
を設定しています。
Windows 定期タスクバックアップ#
バックアップの問題については、先ほども述べましたが、.git フォルダが大きすぎるため、ネット上では.git フォルダを削除して新しいリポジトリを作成することができると言われていますが、これでは根本的な解決にはならず、面倒です。また、git 自体は国内でのバックアップ速度も遅いため、この方法は廃止しました。しばらく考えた結果、Windows の定期タスクを使用することに決めました。毎日パソコンを開くときに WinRAR を使って Obsidian 全フォルダを圧縮し、D:\Backups というディレクトリにバックアップします(私の Google ドライブはこのディレクトリを同期しています)。具体的な手順は以下の通りです。
win+R を押してtaskschd.msc
と入力し、Enter を押します。右側の基本タスクの作成
をクリックし、名前と説明は適当に記入します。タスクの開始時間は現在のユーザーログイン時
を選択し、タスクの実行操作はプログラムの開始
を選択します。プログラムまたはスクリプトには WinRAR プログラムのパスを記入し、オプションの引数には以下を記入します。
a -r -ep1 -ibck "引数1" "引数2"
7zip ユーザーの場合は、プログラムまたはスクリプトには 7zip プログラムのパスを記入し、オプションの引数には以下を記入します。
a -r -bb1 -bd "引数1" "引数2"
引数 1 にはファイルを圧縮するパスとファイル名を記入します。例えば、ここでは D:\Backups\obsidian と記入すると、D:\Backups\ のパスに obsidian.rar ファイルが圧縮されます。7zip の場合はデフォルトで obsidian.7z ファイルに圧縮されますが、ファイルタイプを指定することもでき、引数 1 を D:\Backups\obsidian.zip に変更すれば、zip ファイルとして圧縮されます。
引数 2 には Obsidian ライブラリのフォルダのアドレスを記入します。
これで大功告成です。私はよく Google ドライブを使ってバックアップを行います。なぜなら、バックアップディレクトリを自由に選べて、速度も良いからです(もちろんプロキシが必要です)。引数 1 を OneDrive のパス(mac の場合は iCloud)に設定すれば、自動的にクラウドにバックアップされます。
最後に#
ここで説明しておきたいのは、阿里云 OSS のリソースパッケージを購入した場合、アップロードとダウンロードのトラフィックに対しても料金が発生することです。オブジェクトストレージ OSS リソースパッケージ(パッケージ月額)価格詳細
したがって、阿里云に少しお金をチャージすることを忘れないでください。ノートに関しては、トラフィックは一般的にそれほど多くは使わないため、1 年で 6 元を超えることはないでしょうが、未払いが長引くと回収される可能性があります(未払いの通知があり、未払い額は一般的に 10 元です)。そのため、安全のために、阿里云アカウントに 5 元チャージするのが良いでしょう。
有料サービスによる体験はもちろん質の向上をもたらします。阿里云 OSS の同期速度は本当に速く、非常にスムーズです。
重要なものは「三重バックアップ」の原則を採用する必要があります。ここでは、ローカルに 1 つ、圧縮されたファイルに 1 つ、クラウドの圧縮ファイルに 1 つ、つまりこの原則を採用しています。いつでも
バックアップを忘れないでください!!バックアップを忘れないでください!!バックアップを忘れないでください!!