Bacula Fileset资源翻译文档

原创
2014/05/15 10:01
阅读数 335

Bacula

Fileset资源翻译文档


翻译: 沈小然

版本:1.0

公司:北京方标

日期:20070328

 

   

1     概述说明:

1.1     一个FileSet里可以有多个Include{},每个Include里可以有多个Options{}

1.2     实例

1.2.1     举例1

1.2.2     举例2:备份整个操作系统文件

1.2.3     参考的官方文档:


1.        概述说明:

由于本人英文有限有些翻译不够准确仅结合本人技术知识翻译,可以做参考不正确的地方还是以官方文档为准。

1.1   一个FileSet里可以有多个Include{},每个Include里可以有多个Options{}

FileSet {

Include {

Options {

signature=SHA1添加SHA1签名,据说这个签名比MD5慢而且写的字节更多,但它会更加难以被hack破解,注意只能有MD5SHA1两种签名其中的一个被使用。

signature = MD5对所有备份的文件添加md5签名,作者强烈推荐这个选项,这样做的代价只是在备份每个文件上增添了5%的cpu时间和在catalog数据库里为每个文件多写了大于16字节的md5签名。

keepatime=yes|no 如果值是yes备份前会先备份文件的访问时间,恢复时也将保持文件的原有访问时间不变。默认:no,备份邮件时推荐选择yes

hardlinks=yes|no 默认值:yes。如果yes将按照硬连接轨迹备份文件,如果硬连接过多成百上千的话将消耗大量的cpu资源,使用这个选项最多是备份更多的数据但恢复时不会在原始设备上恢复相同的文件。

mtimeonly=yes|no默认:no,如果yes被选中的文件备份时都以修改时间为准,如果是no则自动按文件的修改时间或访问时间备份,作者推荐no

aclsupport=yes|no默认:no,如果系统把libacl库安装进系统里支持ACLaccess control list)的话bacula会自动将支持acl编译进来,这里选择yes备份和恢复时都会参考acl,注意,如果备份带有aclext3xfs系统的文件或目录,恢复到一个不支持acl的系统例如reiserfsacl将被忽略

fstype=filesystem-type文件类型可以是下面几种ext2, jfs, ntfs, proc, reiserfs, xfs, usbdevfs, sysfs, smbfs, iso9660. For ext3 systems, use ext2.在一个Options资源里允许你同时指定多个文件系统,如果你指定的文件系统与你要备份的分区不匹配将不会执行备份操作,这个指示常用在防止备份非本地的文件系统,按理说当你设置了这个指示后,你也将同时设置onefs=no以便bacula在文件系统中来回移动,这个选项不会在windows里执行。

hfsplussupport=yes|no这个选项控制是否打开支持Mac OSX HFS plus插件

portable=yes|no默认值no,设置yesbacula将按照轻便的格式备份文件,只针对win2k/xp/NT。对于Unixwin95/98/Me就不适用,我们推荐no,因为这样会把更多的文件信息备份下来。

onefs=yes|no默认值yes,这个选项是指定bacula备份分区时如果发现该分区里有不同的文件系统存在是否一起备份,yes不备份,no备份。如果你忘记了备份某个特别的分区(例如/dev,/proc,/net,/sys.....)这个选项会很有用,因为它会提醒你该分区里包含了什么不同分区。

如果你想备份多个文件系统或者要把某个分区连同该分区下挂载的nfssamba数据(前提是没在exclude里定义的)都备份下来的话你可以设置no,但这样做有个弊端可能引起备份回环的问题发生,最好的设置是noefs=no ; fstype=ext2配合。

sparse=yes|no默认值no,这里是设置如果有稀疏的文件(直译)bacula是否将zero字节的部分也备份下来,如果选no不检测sparse  file的话将备份文件空白的部分占用很多的磁带或卷空间,选yes检测的话就不备份空白字节,做到这点的代价是bacula必须在备份前检查每个块备份速度将变慢。

wilddir=string匹配目录,可以使用正则表达式

wildfile=string匹配文件,可以使用正则表达式

exclude=yes|no默认值no,如果选yes则所有加到Option里的条件都做排除处理(不备份),如果排除某个目录则其下子目录都被排除。

}

File = /dev/hd6   备份整个裸设备

File = /root/myfile     备份/root/myfile目录及其子目录

File = /mnt/nfs    备份挂接的nfs文件系统

}

1.2   实例

1.2.1  举例1

FileSet {

  Name = "Full Set"

  Include {

    Options {

      Compression=GZIP

      signature=SHA1

      Sparse = yes

}

 Options {

      wildfile = "*.Z"

      wildfile = "*.gz"

Exclude = yes

     }

 

    @/etc/backup.list

  }

  Include {

     Options {

        wildfile = "*.o"

        wildfile = "*.exe"

        Exclude = yes

     }

     File = /root/myfile

     File = /usr/lib/

  }

}

说明:第一个Include备份所有/etc/backup.list里除了.Z和。gz的文件和目录,并gzip压缩,SHA1签名检测疏文件处理。第二个Include备份/root/myfile目录/usr/lib/下的所有子目录和文件但是*.o,*.exe文件除外。

1.2.2  举例2:备份整个操作系统文件

[kern@rufus k]$ df

Filesystem      1k-blocks      Used Available Use% Mounted on

/dev/hda5         5044156    439232   4348692  10% /

/dev/hda1           62193      4935     54047   9% /boot

/dev/hda9        20161172   5524660  13612372  29% /home

/dev/hda2           62217      6843     52161  12% /rescue

/dev/hda8         5044156     42548   4745376   1% /tmp

/dev/hda6         5044156   2613132   2174792  55% /usr

none               127708         0    127708   0% /dev/shm

//minimatou/c$   14099200   9895424   4203776  71% /mnt/mmatou

lmatou:/          1554264    215884   1258056  15% /mnt/matou

lmatou:/home      2478140   1589952    760072  68% /mnt/matou/home

lmatou:/usr       1981000   1199960    678628  64% /mnt/matou/usr

考虑到/tmp/proc,nfssamba文件系统.journal;.autofsck应该排除,则设置如下

FileSet {

  Name = Include_example

  Include {

    Options {

       wilddir = /proc

       wilddir = /tmp

       wildfile = "/.journal"

       wildfile = "/.autofsck"

       exclude = yes

    }

    File = /

    File = /boot

    File = /home

    File = /rescue

    File = /usr

  }

}

举例3:只备份带有字母a和字母b的子目录

FileSet {

  Name = "Full Set"

  Include {

     Options {

        wilddir = "/home/a*"

        wilddir = "/home/b*"

     }

     File = /home

  }

}

或者使用排除c – z 开头的目录

FileSet {

  Name = "Full Set"

  Include {

     Options {

        RegexDir = "^/home/[c-z]"

        exclude = yes

     }

     File = /home

  }

}

举例4:备份一个裸设备

FileSet {

  Name = "RawPartition"

  Include {

    Options { sparse=yes }

    File = /dev/hda2

  }

}

举例5:备份Windows文件系统,注意"C:/"

FileSet {

  Name = "Windows 2000"

  Include {

    Options {

     signature = MD5

     IgnoreCase = yes

     # Exclude directories full of lots and lots of useless little files

     WildDir = "[A-Z]:/Documents and Settings/*/Cookies"

     WildDir = "[A-Z]:/Documents and Settings/*/Recent"

     Exclude = yes

    }

  File = "C:/"

  File = "D:/"

 }

}

1.2.3  参考的官方文档:

http://www.bacula.org/rel-manual/FileSet_Resource.html

作者注:完全原创文章,严禁剽窃,转载请注明,谢谢!
展开阅读全文
打赏
0
1 收藏
分享
加载中
更多评论
打赏
0 评论
1 收藏
0
分享
返回顶部
顶部