現在の設定ファイルとアプリデータ全体を区別する
Clash Verge Rev の設定場所として、すべての環境に共通する固定パスを示すことはできません。通常インストール、ポータブル動作、OS、開発ビルドで決定方法が異なります。公式のディレクトリ実装では、通常版は OS のデータディレクトリにアプリ識別子を加え、ポータブル版は実行ファイルの近くにある .config 以下を使います。現在動作中のクライアント自身に場所を開かせるのが最も確実です。
アプリデータは1つのサブスクリプション YAML ではありません。現在の実装は config.yaml、verge.yaml、profiles.yaml を定義し、profiles、アイコン、ログ、バックアップ用の場所も分けています。実行用の合成設定、アプリ設定、プロファイルのインデックス、実ファイルは役割が違います。現在の YAML だけではオーバーライド設定や一覧を失い、インデックスだけでは参照先を失う可能性があります。
名称は変わり得ます:リンク先は現在の設計を説明する根拠で、将来も同じパスである保証ではありません。必ず自分のバージョンが開く場所と、そのバージョンのバックアップ機能を優先します。
プログラムのインストール先とユーザーデータの場所も別です。前者は再インストールできる本体、後者は自分の状態です。本体フォルダだけをコピーしても設定が移るとは限らず、再インストールしてもデータが消えるとは限りません。
クライアントから実際の場所を開き、バージョンと動作形態を記録する
設定、Profiles、ヘルプ付近で「設定ディレクトリを開く」「アプリデータ」またはフォルダの操作を探します。文言はバージョンによって違いますが、クライアントがシステムのファイル管理を開く操作が対象です。入口がない場合は、最初に通常版かポータブル版かを確認します。ポータブル版では実行ファイル付近にあるポータブル動作を示すファイルと .config、通常版では OS データ領域のアプリ識別子を手掛かりにします。同名の古いフォルダへすぐ上書きしないでください。
- Clash Verge Rev とコアの完全なバージョンを記録する。
- 通常版かポータブル版か、実行ファイルの位置を確認する。
- アプリ内操作でデータ場所を開き、パスは非公開で記録する。
- 主要設定、profiles のインデックス、profiles フォルダ、ログを確認する。
- 機密でない表示設定を1つ変え、更新時刻が変わる場所を見て元へ戻す。
更新時刻の確認は、旧版やテスト版の残骸を除外するためです。サブスクリプション更新を試験には使いません。リモートデータとノード一覧まで変わり、問題を増やします。
コピー前に、選択中のプロファイル、モード、重要なオーバーライド設定名を記録します。画像を残す場合はトークンを隠します。復元後にはこれらを照合し、単に起動しただけで完了としません。
内蔵エクスポートと停止中スナップショットを組み合わせる
公式のバックアップ設定文言には、ローカル、WebDAV、エクスポート、インポート、復元、履歴、自動実行が含まれます。自分の版にこれらが表示されるなら、まずローカルバックアップを作り、アプリデータ以外へエクスポートします。元ディレクトリ内だけのバックアップは、誤削除時に一緒に失われます。
| 対象 | 扱い | 目的 |
|---|---|---|
| 内蔵エクスポート | 保存 | クライアントの復元処理で認識 |
| アプリデータ全体 | 保存 | インデックス、profiles、オーバーライド設定と状態を保持 |
| 現在の YAML 1つ | 補助 | 読める参照だが全データではない |
| ログ | 必要時 | 診断に使えるが機密を含み得る |
| インストーラー | 任意 | 同じバージョンの再構築用で設定ではない |
全体コピーでは、アプリを終了して書き込みが止まったことを確認します。実際のデータフォルダを、バージョン・OS・日付を付けた新しい場所へコピーし、移動はしません。項目数、0 バイトでないこと、機密を含まない YAML が読めること、クラウドのプレースホルダーでないことを確認します。
2種類を保存:クライアント生成の復元パッケージと、停止中に作った全体スナップショットを残し、少なくとも1つは元ディスク外の管理された場所へ置きます。
唯一の作業データを置き換える前に復元を試す
対象環境へ互換性のあるバージョンを入れ、一度起動して新しいディレクトリを作らせてから終了します。アプリの実行中には上書きしません。内蔵バックアップは先にインポートし、履歴へ表示されることを確認してから復元します。公式文言では成功後にアプリが再起動するため、その再起動は予定された動作です。全体コピーなら、新規の空データも別途保存します。
- 対象端末の時計、アプリのバージョン、空き容量を確認する。
- 新規状態もバックアップして復元ポイントにする。
- 完全終了後、1つのバックアップだけを取り込む。
- サブスクリプション更新前に名称、オーバーライド設定、グループを照合する。
- 固定ノードと rule モードで最小限の動作確認をし、ログで読み込み元を確認する。
一覧が空になったら、バージョン、ファイルの完全性、現在の読み込み元を確認します。複数日付のフォルダを混ぜたり、復元ボタンを連打したりしません。1回に1つの明確なスナップショットを使います。
起動できない場合は対象側の空データへ戻し、アプリ本体が正常か確認してから、サブスクリプションとオーバーライド設定を段階的に戻します。共有するログからサブスクリプション URL、サーバー、ユーザー名、ローカルパスを除きます。
トークン、WebDAV認証、作業用コピーを保護する
設定バックアップは機密情報の集合です。サブスクリプション URL の固有トークン、ノードのパスワードや UUID、サーバー、ログ内のドメインが含まれ得ます。知らない相手へ圧縮ファイルを渡さず、バージョン、エラー本文、機密を除いたディレクトリ概要だけを共有します。
WebDAV は自分が管理し HTTPS を使うサービスを選び、専用アカウントまたはアプリパスワードを1つのフォルダに制限します。テスト用バックアップを手動でアップロードし、別の場所から読めることを確認してから自動化します。サーバー側の世代保持と削除規則も確認します。
- 保存:暗号化ボリュームまたは暗号化アーカイブを使う。
- 世代:検証済みの旧版を1つ以上残す。
- 整理:移行後、デスクトップ、展開用一時フォルダ、ゴミ箱を整理する。
- 漏えい:公開した可能性があればサブスクリプション URL と関連認証を更新する。
同期成功は復元成功ではありません:独立した場所でインポート、再起動、状態照合を終えるまで、元データを削除しないでください。
公式情報源とバージョン範囲
- github.com/clash-verge-rev/clash-verge-rev/blob/dev/src-tauri/src/utils/dirs.rs
- github.com/clash-verge-rev/clash-verge-rev/blob/dev/src/locales/en/settings.json
バージョン番号、ファイル名、画面表示は更新で変わる場合があります。作業前にリンク先の公式資料を確認してください。