rsyncはAppDataを除外しますが、Firefoxのブックマークを含めますか?

rsyncはAppDataを除外しますが、Firefoxのブックマークを含めますか?

私はcygwinとrsyncを使ってWindowsホームディレクトリをバックアップしたいと思います。

rsync.exe -vrt --delete --exclude=AppData "/cygdrive/C/Users/user1/" "/cygdrive/D/backup/"

ご覧のように除外しました。アプリケーションデータ目次。

私のFirefoxブックマークを次のパスに含めることはできますか?

AppData/Roaming/Mozilla/Firefox/Profiles/*/places.sqlite

アスタリスクはプロファイル名を示します。 Firefoxはそこからランダムな名前を生成するので、わかりません。

--exclude-fromで除外スクリプトを使用できますか?

コピーが可能であることを知っています場所.sqlitePower Shellを使用して別のフォルダにコピーし、そのフォルダをバックアップします。

しかし、rsyncを直接使用することも可能かもしれません。

答え1

ほぼ重複です。rsync:フィルタを使用して最上位ディレクトリを除外しますが、一部のサブディレクトリは含まれています。

フォルダを見つけることができますが、ファイルを除くすべてのアイテムを除外できるAppData検索のためにフォルダツリーを含める必要があります。places.sqlite

rsync --dry-run -av --prune-empty-dirs \
    --include '/AppData/Roaming/Mozilla/Firefox/Profiles/*/places.sqlite' \
    --include '*/' \
    --exclude '/AppData/***' \
    '/cygdrive/C/Users/user1/' '/cygdrive/D/backup/'

--prune-empty-dirs空のディレクトリでターゲットがいっぱいになるのを停止し、コピーしているrsyncファイルを保持するために必要なディレクトリのみが作成されます。 (これがデフォルトの動作ではないことは少し奇妙ですが、そうではありません。)

私のシステムでは代わりplaces.sqliteに下にあるので、それに応じて提案されたコマンドを調整しました。期待どおりに結果が満足であれば削除してください。Profiles/*Profile/*--dry-run

答え2

別の決定は次のとおりです。シンボリックリンクを作成します。 place.sqlite を rsync インクルード範囲 (たとえば c:\places\*\places.sqlite) のどこかに移動します。

mklink c:\places\*\places.sqlite AppData\Roaming\Mozilla\Firefox\Profile\*\places.sqlite

ディレクトリの場合でも構文は次のとおりです。

mklink /d <Link> <Target>

その結果、rsyncは必要なすべてのデータをコピーし、他のデータはスキップします。

答え3

まず、次の内容でinclude.txtファイルを作成します。

+ AppData/Roaming
+ AppData/Roaming/Mozilla
+ AppData/Roaming/Mozilla/Firefox
+ AppData/Roaming/Mozilla/Firefox/Profiles
+ AppData/Roaming/Mozilla/Firefox/Profiles/*/places.sqlite
- AppData/*
- AppData/Roaming/*
- AppData/Roaming/Mozilla/*
- AppData/Roaming/Mozilla/Firefox/*
- AppData/Roaming/Mozilla/Firefox/Profiles/*/*

次に、--include-from = include.txtパラメータを使用してrsyncで使用します。

このソリューションには--prune-empty-dirsは不要であるため、空のディレクトリもバックアップできます。また、リンクを作成する必要もありません。

関連情報