バックアップを作成するための次のコマンドがありますが、rsync
Webサイトからキャッシュフォルダを除外したいと思います。
rsync -aAXv --delete --exclude-from='/usr/local/maxicron/rsync/conf/exclude.txt' /home/admin/domains/server.com/public_html /backup/rsync/local
デモ目的のために内容はexclude.txt
1行です。
/home/admin/domains/server.com/public_html/var/cache/*
このコマンドはpublic_htmlからバックアップを作成することで機能しますが、まだurlを使用してバックアップファイルにキャッシュフォルダが作成されます/backup/rsync/local
。予想される結果は、フォルダキャッシュに何も含めないでください。
exclude-from
コマンドがソースバックアップの絶対パスを使用していることをどこかで読みました。だからこの除外行も変更しました。
/home/admin/domains/server.com/public_html/var/cache/*
これに関して
/var/cache/*
または
var/cache/*
または
./var/cache/*
しかし、それらのどれも動作しません。それでもキャッシュフォルダが作成されています。エラーもありません。どんなアイデアがありますか?
答え1
男性によるとページ/var/cache/**
キャッシュフォルダにサブフォルダが含まれている場合は、2つのアスタリスク()が役に立ちます。
a は
*
すべてのパスコンポーネントと一致しますが、スラッシュで停止します。
スラッシュを含む何でも一致させるために使用されます
**
。
答え2
テキストファイルで宣言された絶対パスがなぜ機能しないのかわかりません。そのため、以下のようにrsyncという別のオプションを追加し、--relative
テキストファイル内で相対パスを維持しました。
仕組みは次のとおりです。
rsync -aAXv --relative --delete --exclude-from='/usr/local/maxicron/rsync/conf/exclude.txt' /home/admin/domains/server.com/public_html /backup/rsync/local