У меня есть bacula, настроенная в моей небольшой сети, и для машин с Linux она, похоже, работает нормально. Я только что настроил клиент Windows, и проблема, с которой я столкнулся, заключается в том, что когда задание выполняется для клиента Windows, оно выполняет резервное копирование больше, чем должно быть. Я настроил его на резервное копирование только нескольких каталогов на моих дисках C и D, но на самом деле он выполняет резервное копирование всего диска. Если я сбегу
estimate job=job-name listing level=Full
в консоли список возвращаемых мною файлов верен и ограничен только папками, которые я выбрал.
Вот соответствующие части конфигурации директора:
FileSet {
Name = "Windows Client Defined"
Include {
Options {
signature = MD5
compression = gzip
onefs = no
IgnoreCase = yes
exclude = yes
# Exclude directories full of lots and lots of useless little files for Windows 2008
WildDir = "[A-Z]:/Users/*/Cookies"
WildDir = "[A-Z]:/Users/*/Recent"
WildDir = "[A-Z]:/Users/*/Local Settings/History"
WildDir = "[A-Z]:/Users/*/Local Settings/Temp"
WildDir = "[A-Z]:/Users/*/Local Settings/Temporary Internet Files"
# Temporary directories & files
WildDir = "[A-Z]:/Windows/Temp"
WildDir = "[A-Z]:/Temp"
WildFile = "*.tmp"
WildDir = "[A-Z]:/Tmp"
WildDir = "[A-Z]:/var/tmp"
WildDir = "[A-Z]:/Windows/Internet Logs"
WildDir = "[A-Z]:/Windows/$Nt*Uninstall*"
# Recycle bins
WildDir = "[A-Z]:/RECYCLER"
# Swap files
WildFile = "[A-Z]:/pagefile.sys"
WildFile = "[A-Z]:/hiberfil.sys"
}
File = "\\<C:/bacula_backup_file_list"
}
Exclude {
File = "\\<C:/bacula_backup_exclude_file_list"
}
}
JobDefs {
Name = "DefaultWindowsJob"
Type = Backup
Schedule = "WeeklyCycle"
FileSet = "Windows Client Defined"
Storage = Storage
Messages = Standard
Priority = 10
Pool = Default
Full Backup Pool = Full-Pool
Incremental Backup Pool = Inc-Pool
Differential Backup Pool = Diff-Pool
}
Job {
Name = "win"
JobDefs = "DefaultWindowsJob"
Client = win-fd
Write Bootstrap = "/var/lib/bacula/win.bsr"
}
Вот список bacula_backup_file_list:
C:/Users/user
C:/Documents
D:/Projects
И bacula_backup_exclude_file_list:
C:/Users/user/.m2/repository
C:/Users/user/Downloads
C:/Users/user/.android
C:/Users/user/Music
C:/Users/user/Google Drive
Я предполагаю, что в одной из этих папок есть ярлык или что-то в этом роде, указывающее на диск C, но я не уверен, где он будет, и я ожидал, что команда оценки тогда также последует за этим ярлыком.
Есть идеи, почему так много резервного копирования?
Bacula поддерживает именно то, что вы ему говорите. Вы перечислили все каталоги, которые хотите исключить (на основе ваших комментариев) в вашем включают раздел (на основе конфигурации, которую вы разместили выше).
Поместите список исключаемых каталогов с подстановочными знаками в нужное место, и Bacula сделает то, что вы хотите.
(Да, руководство Bacula не совсем ясно об этом)
Похоже, проблема заключалась в пустой строке в моем файле bacula_backup_file_list. После пустой строки в конце bacula начинает резервное копирование корня диска, а также всего, что я специально добавил; без него он будет копировать только то, что я перечислил.