bacula 백업 – 설치, 구성, 사용
opensource backup 솔루션인 Bacula 설치와 사용하기.
발췌 : http://blog.boxcorea.com/wp/archives/1138
설치환경
백업서버
IP: 59.29.142.85
Hostname: fox1
OS: Ubuntu 12.04
백업 클라이언트(백업대상 서버)
IP: 59.29.142.120
Hostname: ubuntu-1
OS: ubuntu 12.04
PART I. bacula 서버 설치, 구성
- Bacula의 구성
director : 백업, 리스토어, 아카이브 등의 동작을 담당.
console : director와의 통신을
storage : 물리 매체에 데이타를 저장, 복구하는 프로그램
file : 백업 클라이언트
catalog:
monitor: director, storage, file 데몬을 모니터링.
- Bacult 서버 설치
1 # yun install bacula
- 백업서버 및 클라이언트 설정
백업디렉토리: /backup/archive
리스토어디렉토리: /backup/restore
123 # mkdir -p /backup/archive# mkdir -p /backup/restore# chown -R bacula:bacula /backup
/etc/bacula/bacula-dir.conf 수정
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 Director { # define myselfName = fox1-dirDIRport = 9101 # where we listen for UA connectionsQueryFile = “/etc/bacula/scripts/query.sql”WorkingDirectory = “/var/lib/bacula”PidDirectory = “/var/run/bacula”Maximum Concurrent Jobs = 1Password = “vOchjaYxGgFnKdbE5me5a3Tp5vs763FyoIhXdqUF733A” # Console passwordMessages = Daemon#DirAddress = 127.0.0.1DirAddress = 59.29.142.85}JobDefs {Name = “DefaultJob”Type = BackupLevel = IncrementalClient = fox1-fdFileSet = “Full Set”Schedule = “WeeklyCycle”Storage = FileMessages = StandardPool = FilePriority = 10Write Bootstrap = “/var/lib/bacula/%c.bsr”}Job {Name = “BackupClient1”JobDefs = “DefaultJob”}Job {Name = “RestoreFiles”Type = RestoreClient=fox1-fdFileSet=”Full Set”Storage = FilePool = DefaultMessages = Standard#Where = /nonexistant/path/to/file/archive/dir/bacula-restoresWhere = /backup/restore}FileSet {Name = “Full Set”Include {Options {signature = MD5}# File = /usr/sbinFile = /home}Exclude {File = /var/lib/baculaFile = /backupFile = /procFile = /tmpFile = /.journalFile = /.fsck}}Schedule {Name = “WeeklyCycle”Run = Full 1st sun at 23:05Run = Differential 2nd-5th sun at 23:05Run = Incremental mon-sat at 23:05}# This schedule does the catalog. It starts after the WeeklyCycleSchedule {Name = “WeeklyCycleAfterBackup”Run = Full sun-sat at 23:10}FileSet {Name = “Catalog”Include {Options {signature = MD5}File = “/var/lib/bacula/bacula.sql”}}Client {Name = fox1-fdAddress = 59.29.142.85FDPort = 9102Catalog = MyCatalogPassword = “UfuZihWIUNJpt6DluctDXbueCwsnl3cE9” # password for FileDaemonFile Retention = 30 days # 30 daysJob Retention = 6 months # six monthsAutoPrune = yes # Prune expired Jobs/Files}Storage {Name = File# Do not use “localhost” hereAddress = 59.29.142.85 # N.B. Use a fully qualified name hereSDPort = 9103Password = “hamtKHNE27OB7AwGFy5ZfyLzs5ml8OoY4”Device = FileStorageMedia Type = File}Catalog {Name = MyCatalog# Uncomment the following line if you want the dbi driver# dbdriver = “dbi:sqlite3”; dbaddress = 127.0.0.1; dbport =dbname = “bacula”; DB Address = “localhost”; dbuser = “bacula”; dbpassword = “bacula”}Messages {Name = Standardmailcommand = “/usr/lib/bacula/bsmtp -h localhost -f \”\(Bacula\) \<%r\>\” -s\”Bacula: %t %e of %c %l\” %r”operatorcommand = “/usr/lib/bacula/bsmtp -h localhost -f \”\(Bacula\) \<%r\>\”-s \”Bacula: Intervention needed for %j\” %r”mail = root@localhost = all, !skippedoperator = root@localhost = mountconsole = all, !skipped, !savedappend = “/var/lib/bacula/log” = all, !skippedcatalog = all}Pool {Name = FilePool Type = BackupRecycle = yes # Bacula can automatically recycle VolumesAutoPrune = yes # Prune expired volumesVolume Retention = 365 days # one yearMaximum Volume Bytes = 50G # Limit Volume size to something reasonableMaximum Volumes = 100 # Limit number of Volumes in Pool}Pool {Name = ScratchPool Type = Backup}Console {Name = fox1-monPassword = “8XbAVNy7mm1_YEXmrgavMBAhZXeTsIaTp”CommandACL = status, .status}
/etc/bacula-sd.conf 수정
1234567891011121314151617181920212223242526272829303132 Storage { # definition of myselfName = fox1-sdSDPort = 9103 # Director’s portWorkingDirectory = “/var/lib/bacula”Pid Directory = “/var/run/bacula”Maximum Concurrent Jobs = 20# SDAddress = 127.0.0.1SDAddress = 59.29.142.85}Director {Name = fox1-monPassword = “W0AUWl0nc7FXfuqC8wHP3Gp1u93IRrV33”Monitor = yes}Device {Name = FileStorageMedia Type = File# Archive Device = /nonexistant/path/to/file/archive/dirArchive Device = /backup/archiveLabelMedia = yes; # lets Bacula label unlabeled mediaRandom Access = Yes;AutomaticMount = yes; # when device opened, read itRemovableMedia = no;AlwaysOpen = no;}Messages {Name = Standarddirector = fox1-dir = all}
/etc/bacula/bacula-fd.conf 수정
12345678910111213141516171819202122232425 Director {Name = fox1-dirPassword = “UfuZihWIUNJpt6DluctDXbueCwsnl3cE9”}Director {Name = fox1-monPassword = “iJnxPgnJ6sg5cF1NZoS57RMlSHS_-Raoe”Monitor = yes}FileDaemon { # this is meName = fox1-fdFDport = 9102 # where we listen for the directorWorkingDirectory = /var/lib/baculaPid Directory = /var/run/baculaMaximum Concurrent Jobs = 20# FDAddress = 127.0.0.1FDAddress = 59.29.142.85}Messages {Name = Standarddirector = fox1-dir = all, !skipped, !restored}
/etc/bacula/bconsole.conf
12345678 Director {# Name = localhost-dirName = fox1-dirDIRport = 9101# address = localhostaddress = 59.29.142.85Password = “vOchjaYxGgFnKdbE5me5a3Tp5vs763FyoIhXdqUF733A”}
설정후 각 서비스(디렉터, 스토리지, 클라이언트)를 재 실행한다
123456789 # /etc/init.d/bacula-director restart* Stopping Bacula Director… [ OK ]* Starting Bacula Director… [ OK ]# /etc/init.d/bacula-sd restart* Stopping Bacula Storage daemon… [ OK ]* Starting Bacula Storage daemon… [ OK ]# /etc/init.d/bacula-fd restart* Stopping Bacula File daemon… [ OK ]* Starting Bacula File daemon…
- 백업 실행
설정이 이상없이되었다면, bconsole 실행하면 아래와 같은 화면이 나온다.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 # bconsoleConnecting to Director 59.29.142.85:91011000 OK: fox1-dir Version: 5.2.5 (26 January 2012)Enter a period to cancel a command.**helpCommand Description======= ===========add Add media to a poolautodisplay Autodisplay console messagesautomount Automount after labelcancel Cancel a jobcreate Create DB Pool from resourcedelete Delete volume, pool or jobdisable Disable a jobenable Enable a jobestimate Performs FileSet estimate, listing gives full listingexit Terminate Bconsole sessiongui Non-interactive gui modehelp Print help on specific commandlabel Label a tapelist List objects from catalogllist Full or long list like list commandmessages Display pending messagesmemory Print current memory usagemount Mount storageprune Prune expired records from catalogpurge Purge records from catalogpython Python control commandsquit Terminate Bconsole sessionquery Query catalogrestore Restore filesrelabel Relabel a taperelease Release storagereload Reload conf filerun Run a jobstatus Report statussetdebug Sets debug levelsetip Sets new client address — if authorizedshow Show resource recordssqlquery Use SQL to query catalogtime Print current timetrace Turn on/off trace to fileunmount Unmount storageumount Umount – for old-time Unix guys, see unmountupdate Update volume, pool or statsuse Use catalog xxxvar Does variable expansionversion Print Director versionwait Wait until no jobs are runningWhen at a prompt, entering a period cancels the command.*
볼륨을 생성한다.
1234567891011121314 *addYou probably don’t want to be using this command since itcreates database records without labeling the Volumes.You probably want to use the “label” command.Defined Pools:1: Default2: File3: ScratchSelect the Pool (1-3): 2Automatically selected Storage: FileEnter number of Volumes to create. 0=>fixed name. Max=99: 0Enter Volume name: vol_21 Volumes created in pool File
생성한 볼륨의 레이블링 작업
12345678910111213 *labelAutomatically selected Storage: FileEnter new Volume name: vol_2Defined Pools:1: Default2: File3: ScratchSelect the Pool (1-3): 2Connecting to Storage daemon File at 59.29.142.85:9103 …Sending label command for Volume “vol_2” Slot 0 …3000 OK label. VolBytes=184 DVD=0 Volume=”vol_2″ Device=”FileStorage” (/backup/archive)Requesting to mount FileStorage …3906 File device “”FileStorage” (/backup/archive)” is always mounted.
백업은 정해진 시간에 실행되지만, bconsole에서 실행 할 수 있다.
1234567891011121314151617181920 *runA job name must be specified.The defined Job resources are:1: BackupClient12: BackupCatalog3: RestoreFilesSelect Job resource (1-3): 1Run Backup jobJobName: BackupClient1Level: IncrementalClient: fox1-fdFileSet: Full SetPool: File (From Job resource)Storage: File (From Job resource)When: 2013-06-12 23:25:23Priority: 10OK to run? (yes/mod/no): yesJob queued. JobId=10You have messages.*
실행한 백업의 상태 확인
123456789101112131415161718192021222324 *statusStatus available for:1: Director2: Storage3: Client4: AllSelect daemon type for status (1-4): 1fox1-dir Version: 5.2.5 (26 January 2012) x86_64-pc-linux-gnu ubuntu 12.04Daemon started 12-Jun-13 23:17. Jobs: run=1, running=1 mode=0,0Heap: heap=405,504 smbytes=90,618 max_bytes=91,597 bufs=288 max_bufs=300Scheduled Jobs:Level Type Pri Scheduled Name Volume===================================================================================Incremental Backup 10 13-Jun-13 23:05 BackupClient1 vol_1Full Backup 11 13-Jun-13 23:10 BackupCatalog vol_1====Running Jobs:Console connected at 12-Jun-13 23:17JobId Level Name Status======================================================================10 Full BackupClient1.2013-06-12_23.31.48_05 is running====
백업이 끝나면 아래와 같은 상태가된다.
1234567891011121314151617181920212223242526 *stStatus available for:1: Director2: Storage3: Client4: AllSelect daemon type for status (1-4): 3Automatically selected Client: fox1-fdConnecting to Client fox1-fd at 59.29.142.85:9102fox1-fd Version: 5.2.5 (26 January 2012) x86_64-pc-linux-gnu ubuntu 12.04Daemon started 12-Jun-13 23:30. Jobs: run=1 running=0.Heap: heap=270,336 smbytes=104,496 max_bytes=365,565 bufs=80 max_bufs=190Sizeof: boffset_t=8 size_t=8 debug=0 trace=0Running Jobs:Director connected at: 12-Jun-13 23:50No Jobs running.====Terminated Jobs:JobId Level Files Bytes Status Finished Name======================================================================5 Full 208 23.06 M OK 12-Jun-13 20:47 BackupClient16 Incr 0 0 OK 12-Jun-13 23:05 BackupClient110 Full 28,965 9.570 G OK 12-Jun-13 23:46 BackupClient1====
- 백업 화일의 복구
여기서는 이름을 알고 있는 화일(/home/snowfox/apache-cloudstack-4.0.1-incubating-src.tar.bz2)을 복구해 보도록 한다.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 *restoreFirst you select one or more JobIds that contain filesto be restored. You will be presented several methodsof specifying the JobIds. Then you will be allowed toselect which files from those JobIds are to be restored.To select the JobIds, you have the following choices:1: List last 20 Jobs run2: List Jobs where a given File is saved3: Enter list of comma separated JobIds to select4: Enter SQL list command5: Select the most recent backup for a client6: Select backup for a client before a specified time7: Enter a list of files to restore8: Enter a list of files to restore before a specified time9: Find the JobIds of the most recent backup for a client10: Find the JobIds for a backup for a client before a specified time11: Enter a list of directories to restore for found JobIds12: Select full restore to a specified Job date13: CancelSelect item: (1-13): 7Defined Clients:1: fox1-fd2: ubuntu-1Select the Client (1-2): 1Enter file names with paths, or < to enter a filenamecontaining a list of file names with paths, and terminatethem with a blank line.Enter full filename: /home/snowfox/apache-cloudstack-4.0.1-incubating-src.tar.bz2Enter full filename:Bootstrap records written to /var/lib/bacula/fox1-dir.restore.3.bsrThe job will require the followingVolume(s) Storage(s) SD Device(s)===========================================================================vol_1 File FileStorageVolumes marked with “*” are online.1 file selected to be restored.Run Restore jobJobName: RestoreFilesBootstrap: /var/lib/bacula/fox1-dir.restore.3.bsrWhere: /backup/restoreReplace: alwaysFileSet: Full SetBackup Client: fox1-fdRestore Client: fox1-fdStorage: FileWhen: 2013-06-13 00:05:04Catalog: MyCatalogPriority: 10Plugin Options: *None*OK to run? (yes/mod/no): yesJob queued. JobId=11**stStatus available for:1: Director2: Storage3: Client4: AllSelect daemon type for status (1-4): 1……생략 …..10 Full 28,965 9.570 G OK 12-Jun-13 23:46 BackupClient111 1 9.223 M OK 13-Jun-13 00:05 RestoreFiles====*
/backup/restore 에 복구된 화일이 있는것을 볼 수 있다. (패스 포함)
12345678 # ls -altotal 9016drwxrw-r– 2 snowfox snowfox 4096 Jun 13 00:05 .drwxr-x–x 3 root root 4096 Jun 13 00:05 ..-rw-rw-r– 1 snowfox snowfox 9223743 Jan 29 04:37 apache-cloudstack-4.0.1-incubating-src.tar.bz2# pwd/backup/restore/home/snowfox
PART II. linux 클라이언트 설치, 구성
백업할 클라이언트 환경
OS: ubuntu 12.04
IP: 59.29.142.9
백업 대상: /home
- bacula 클라이언트 설치
1 # apt-get install bacula-client
- bconsole 설정
/etc/bacula/bconsole.conf 를 수정한다. address는 bacula 서버의 ip주소나 hosts 화일에 등록된 hostname을 사용한다. password는 bacula 서버의 bconsole.conf와 동일하게 설정하면된다.
12345678 Director {Name = fox1-dirDIRport = 9101# address = localhostaddress = fox1 # bacula 서버의 호스트네임 또는 ip주소# Password = “cO-Hvjg-l_noGgMkQpKHEwAHDBGeszNuR”Password = “……”}
- bacula-fd 설정
/etc/bacula/bacula-fd.conf 를 수정한다.
1234567891011121314151617181920 Director {Name = fox1-dir # bacula 서버의 디렉터 이름# Password = “j1QSgOsGBf11Ur2T3KXqwAiMwFvsrC4OH”Password = “vOchjaYxGgFnKdbE5me5a3Tp5vs763FyoIhXdqUF733A”}FileDaemon { # this is meName = tech-fdFDport = 9102 # where we listen for the directorWorkingDirectory = /var/lib/baculaPid Directory = /var/run/baculaMaximum Concurrent Jobs = 20# FDAddress = 127.0.0.1FDAddress = 59.29.142.9 #클라이언트 ip 즉, 백업 대상 컴퓨터}Messages {Name = Standarddirector = tech-dir = all, !skipped, !restored}
- bacula 서버(fox1)에서 클라이언트(tech) 등록.
/etc/bacula/bacula-dir.conf 화일에 아래 내용 등록.
1234567891011121314151617181920212223242526272829303132 ### Linux ClientClient {Name = tech-fdAddress = 59.29.142.9FDPort = 9102Catalog = MyCatalogPassword = “vOchjaYxGgFnKdbE5me5a3Tp5vs763FyoIhXdqUF733A”File Retention = 7 daysJob Retention = 1 MonthAutoPrune = yes}Job{Name = “tech-fd”Type = BackupClient = tech-fdFileSet = “LinuxClient”Schedule = “WeeklyCycle”Storage = FileMessages = Standard#Pool = DefaultPool = FileWrite Bootstrap = “/var/lib/bacula/tech.bsr”}FileSet {Name = “LinuxClient”Include {Options {signature = MD5}File = “/home” # 백업할 디렉토리}}
- 백업의 실행
위와 같이 설정하고, bconsole에서 백업을 실행했지만 아래와같은 메시지와 함께 백업이 진행되지 않음.
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 Running Jobs:Console connected at 13-Jun-13 23:26JobId Level Name Status======================================================================14 Full tech-fd.2013-06-13_20.41.07_03 is waiting for an appendable Volume15 Increme BackupClient1.2013-06-13_23.05.00_06 is waiting execution16 Full tech-fd.2013-06-13_23.05.00_07 is waiting execution17 Full BackupCatalog.2013-06-13_23.10.00_08 is waiting execution====stat stor=FileAutomatically selected Storage: FileConnecting to Storage daemon File at 59.29.142.85:9103fox1-sd Version: 5.2.5 (26 January 2012) x86_64-pc-linux-gnu ubuntu 12.04Daemon started 12-Jun-13 23:10. Jobs: run=5, running=0.Heap: heap=270,336 smbytes=232,641 max_bytes=298,701 bufs=105 max_bufs=109Sizes: boffset_t=8 size_t=8 int32_t=4 int64_t=8 mode=0,0Running Jobs:Writing: Full Backup job tech-fd JobId=14 Volume=””pool=”Default” device=”FileStorage” (/backup/archive)spooling=0 despooling=0 despool_wait=0Files=0 Bytes=0 Bytes/sec=0FDReadSeqNo=6 in_msg=6 out_msg=4 fd=5====Jobs waiting to reserve a drive:====…..====Device status:Device “FileStorage” (/backup/archive) is not open.Device is BLOCKED waiting to create a volume for:Pool: DefaultMedia type: File====Used Volume status:========
원인은 Default pool에 속한 볼륨이 없어서 발생. label 커맨드로 vol_3을 Default pool로 만들어고 다시 백업. Pool을 Default 에서 File로 변경.
12345678910111213141516 *labelAutomatically selected Storage: FileEnter new Volume name: vol_3Media record for new Volume “vol_3” already exists.Enter new Volume name: vol_4Defined Pools:1: Default2: File3: ScratchSelect the Pool (1-3): 2Connecting to Storage daemon File at 59.29.142.85:9103 …Sending label command for Volume “vol_4” Slot 0 …3000 OK label. VolBytes=184 DVD=0 Volume=”vol_4″ Device=”FileStorage” (/backup/archive)Catalog record for Volume “vol_4”, Slot 0 successfully created.Requesting to mount FileStorage …3001 OK mount requested. Device=”FileStorage” (/backup/archive)
그래도 잘 안됨.
- Restore
Restore는 별도 설정이 없는한 서버의 standard restore template를 사용한다.
만약, bacula server의 Restore job이 아래와 같다면,
1234567891011 Job {Name = “RestoreFiles”Type = RestoreClient=fox1-fdFileSet=”Full Set”Storage = FilePool = DefaultMessages = Standard#Where = /nonexistant/path/to/file/archive/dir/bacula-restoresWhere = /backup/restore}
Restore 한 화일은 는 클라이언트의 /backup/restore에 저장된다. 따라서 클라이언트에 /backup/restore 디렉토리가 없다면, Restore가 되지 않는다. 그냥 간단히 필요한 디렉토리를 만들어주면 된다.
PART III. Bacula 윈도우즈 클라이언트의 설치와 사용.
윈도우용 클라이언트의 설치 방법은 생략한다.
- 윈도우 클라이언트(XP)의 설정
1 |
시작->모든프로그램->Bacula->Configuration->Edit Client Configuration |
아래는 Bacula 클라이언트를 c:\Bacula 에 설치한 경우 client 설정화일이다.
1234567891011121314151617181920212223242526272829303132 FileDaemon { # this is meName = boxcorea-pcFDport = 9102 # where we listen for the directorWorkingDirectory = “C:\Bacula\working”Pid Directory = “C:\Bacula\working”# Plugin Directory = “C:\Bacula\plugins”Maximum Concurrent Jobs = 10}## List Directors who are permitted to contact this File daemon#Director {Name = fox1-dirPassword = “디렉터의비밀번호와 같게 설정”}## Restricted Director, used by tray-monitor to get the# status of the file daemon#Director {Name = fox1-monPassword = “모니터패스워드”Monitor = yes}# Send all messages except skipped files back to DirectorMessages {Name = Standarddirector = fox1-dir = all, !skipped, !restored}
위와 같이 설정한 후, bacula client 서비스를 실행한다.
그러면 아래와 같은 오류메시지가 나올 것이다.
“로컬 컴퓨터에서 Bacula File Backup Service를 시작하지 못했습니다. 오류 1067: 프로세스가 예기치 않게 종료되었습니다.”
물론 설정이 잘못되어 나오는 문제다. 나는 설정을 아래와 같이 바꾸어서 해결했다. 윈도우의 “\” 를 유닉스 스타일의 “/”로 바꾸어 주어야 한다.
1234567891011121314151617181920212223242526272829303132333435 FileDaemon { # this is meName = boxcorea-pcFDport = 9102 # where we listen for the directorWorkingDirectory = “C:/Bacula/working”Pid Directory = “C:/Bacula/working”# Plugin Directory = “C:/Bacula/plugins”Maximum Concurrent Jobs = 10# FDAddress = 115.86.218.40FDAddress = 192.168.100.20 #사설아이피를 사용한다면(즉, PC가 공유기 뒤에 있다면 실제 PC가 사용하는 IP를 사용해야한다)}## List Directors who are permitted to contact this File daemon#Director {Name = fox1-dirPassword = “디렉터(백업서버)의 비밀번호”}## Restricted Director, used by tray-monitor to get the# status of the file daemon#Director {Name = fox1-monPassword = “모니터의 비밀번호” #설마, 정말로 ‘모니터의비밀번호’라고 넣지는 말자.#Password = “iJnxPgnJ6sg5cF1NZoS57RMlSHS_-Raoe”Monitor = yes}# Send all messages except skipped files back to DirectorMessages {Name = Standarddirector = fox1-dir = all, !skipped, !restored}
이렇게 설정을 바꾸고 다시 클라이언트 서비스를 실행하면, 이상없이 잘 작동할 것이다.
- 백업서버(bacula-dir.conf)설정.
이제, 백업서버에서 위의 클라이언트를 백업하도록 설정한다. 기본적인 백업 설정은 이전의 Part I부분을 참고하면된다.
여기서는 추가되는 부분만 확인할 것이다. /etc/bacula/bacula-dir.conf 에 아래 내용을 추가한다.
1234567891011121314151617181920212223242526272829303132 # Windows Backup over the WANClient {Name = boxcorea-pcAddress = 115.86.218.40 # 공유기를 사용할때 공유기의 WAN IPFDPort = 9102Catalog = MyCatalogPassword = “비밀번호…”File Retention = 7 daysJob Retention = 1 MonthAutoPrune = yes}Job{Name = “boxcorea-pc”Type = BackupClient = boxcorea-pcFileSet = “WindowsClient”Schedule = “WeeklyCycle”Storage = FileMessages = StandardPool = FileWrite Bootstrap = “/var/lib/bacula/tech.bsr”}FileSet {Name = “WindowsClient”Include {Options {signature = MD5}#File = “c:\Backup” # 이렇게 설정하면 오류는 나오지 않는다. 하지만 어떤 화일도 백업되지 않는다!!!File = “c:/Backup” # 이렇게 해야 제대로 백업된다. 윈도우라고 “\”를 쓰지는 말자.}}
bconsole을 통해 백업을 실행해 본다.
12345678 *st client… 생략 …JobId Level Files Bytes Status Finished Name======================================================================49 Full 1 0 OK 18-Jun-13 23:50 boxcorea-pc50 Full 4 91.33 M OK 18-Jun-13 23:52 boxcorea-pc
이것으로 Bacula Backup 관련 글은 Backup용 Tape Library가 생길때 까지 정지 !!!
오류와 해결)
아래는, bacula Catalog 백업이 처음 부터 오류가 난경우.
12345 36 Incr 1 5.453 K OK 17-Jun-13 23:05 BackupClient137 Incr 0 0 OK 17-Jun-13 23:05 tech-fd38 Full 0 0 Error 17-Jun-13 23:10 BackupCatalog39 Full 0 0 Error 18-Jun-13 13:39 BackupCatalog40 Incr 7 21.73 M OK 18-Jun-13 13:40 tech-fd
확인을 해 본 결과 아래와 /etc/bacula/scripts에 관련 화일이 없는 것을 발견했다.
123 # lsdelete_catalog_backup dvd-handler mtx-changer.confdisk-changer mtx-changer
정상적인 경우는 아래와 같다.
12345 # lsbtraceback.gdb make_catalog_backup mtx-changer.confdelete_catalog_backup make_catalog_backup_awk query.sqldisk-changer make_catalog_backup.pldvd-handler mtx-changer
위의 화일들을 다른 서버에 설치해서 복사해 넣으니 카달로그 백업이 잘 수행되었다.