25

私はtarサーバーの毎日のバックアップを作成するために使用しており、/proc および /sys システム ディレクトリのバックアップを避けたいと考えていますが、ファイル ツリーの別の場所にある「proc」または「sys」という名前のディレクトリは除外しません。

たとえば、次のディレクトリ ツリーがあるとします (「bla」は通常のファイルです)。

# find
.
./sys
./sys/bla
./foo
./foo/sys
./foo/sys/bla

除外したいのですが、除外したくあり./sysませ ./foo/sys

--excludeそれを行うパターンを見つけることができないようです...

# tar cvf /dev/null * --exclude=sys
foo/

また...

# tar cvf /dev/null * --exclude=/sys
foo/
foo/sys/
foo/sys/bla
sys/
sys/bla

何か案は?(Linux デビアン 6)

4

3 に答える 3

15

除外パターンへの絶対パスを指定できます。この方法では、他のディレクトリsysまたはprocディレクトリがアーカイブされます。

tar --exclude=/sys --exclude=/proc /
于 2012-05-09T07:29:09.363 に答える
7

この場合、次を使用することをお勧めします。

--anchored --exclude=sys/\*

tar に先頭の「/」が表示されない場合は、フィルターに問題があるためです。

于 2013-04-09T18:14:11.527 に答える
6

tar を使用すると、スキップする必要がある任意のディレクトリにタグ ファイルを配置することで、ディレクトリを除外できます。

タグファイルを作成し、

touch /sys/.exclude_from_backup
touch /proc/.exclude_from_backup

それで、

tar -czf backup.tar.gz --exclude-tag-all=.exclude_from_backup *
于 2012-11-08T19:12:58.270 に答える