On Monday 12 June 2006 13:09, David Rodriguez Demelos wrote: > I'm a new bacula user and I have a little problem with client console. > I have configured the client console restrictions in bacula-dir.conf like > this: > > ... > > Console { > Name = "Client Name" > Password = "" > JobACL = "Job Client Name", RestoreFiles-Linux > ClientACL = client-fd > StorageACL = "My Storage" > ScheduleACL = *all* > PoolACL = *all* > FileSetACL = Linux > CatalogACL = MyCatalog > CommandACL = run, q, quit, restore, status > } > > ... > > With this configuration I want the client console only can use its jobs. > When I execute run jobs from client it work ok, but when I execute a > restore job from client with bconsole program and select the option number > 3 (Enter list of comma separated JobIds to select), I can select a other > client job. Bacula launch a error message (bacula can not use this job), > but the restore process continue and finally it restore this backup in the > first client computer. This is very dangeraous, because any client can get > another client data.
Bacula should not allow the user to use JobIds from another client, so this sounds like a bug. However, you will need to provide me with specific output showing this problem as well as a bit of information about your setup. Please see the "Support Page" of the Bacula web site. In particular without knowing what Bacula version you are using, I cannot even start ... > How I can configure this for to solve this problem? > > Thanks. > -- > View this message in context: > http://www.nabble.com/Client-console-restrictions-t1773302.html#a4826704 > Sent from the Bacula - Users forum at Nabble.com. > > > > _______________________________________________ > Bacula-users mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/bacula-users -- Best regards, Kern ("> /\ V_V Hi, tanks Kern for your attention. My bacula server version is 1.38.9 and it is installed in Red Hat EL4. I have a windows 2003 client (Davidov) and Red Hat EL4 client (brandy2) with version 1.38.9 too. Furthermore I have two Debian clients (Corleone and LIA) with version 1.36.3. I have the problem in all my clients. I have configured my "bacula-dir.conf" file like this: # # Default Bacula Director Configuration file # # The only thing that MUST be changed is to add one or more # file or directory names in the Include directive of the # FileSet resource. # # For Bacula release 1.38.9 (02 May 2006) -- redhat Enterprise 3.0 # # You might also want to change the default email address # from root to your address. See the "mail" and "operator" # directives in the Messages resource. # # ############################ Director ################################## Director { # define myself Name = bacula-dir Description = "Director de Bacula" DIRport = 9101 # where we listen for UA connections QueryFile = "/etc/bacula/query.sql" WorkingDirectory = "/var/bacula" PidDirectory = "/var/run" Maximum Concurrent Jobs = 20 Password = "" # Console password Messages = Standard } ############################ JobDefs ################################## JobDefs { Name = "Default" Type = Backup Level = Full Schedule = "Setmanal" Storage = FDA Messages = Standard Full Backup Pool = Full Pool = Full Priority = 10 Maximum Concurrent Jobs = 20 } ########################### Jobs #################################### ############## # Bacula Job # ############## Job { Name = "Bacula" Client = bacula-fd JobDefs = "Default" FileSet = "Linux" Write Bootstrap = "/var/bacula/Bacula.bsr" } ############### # Brandy2 Job # ############### Job { Name = "Brandy2" Client = brandy2-fd JobDefs = "Default" FileSet = "Linux" Write Bootstrap = "/var/bacula/Brandy2.bsr" } ################ # Corleone Job # ################ Job { Name = "Corleone" Client = corleone-fd JobDefs = "Default" FileSet = "Linux" Write Bootstrap = "/var/bacula/Corleone.bsr" } ########### # LIA Job # ########### Job { Name = "LIA" Client = LIA-fd JobDefs = "Default" FileSet = "Linux" Write Bootstrap = "/var/bacula/LIA.bsr" } ############### # Davidov Job # ############### Job { Name = "Davidov" Client = davidov-fd JobDefs = "Default" FileSet = "Windows" Write Bootstrap = "/var/bacula/Davidov.bsr" } ##################### # BackupCatalog Job # ##################### Job { Name = "BackupCatalog" Type = Backup JobDefs = "Default" Level = Full Client = bacula-fd FileSet="Catalog" Schedule = "Setmanal-Despres-Backup" Storage = FDA Messages = Standard Pool = Full # This creates an ASCII copy of the catalog RunBeforeJob = "/etc/bacula/make_catalog_backup bacula bacula" # This deletes the copy of the catalog RunAfterJob = "/etc/bacula/delete_catalog_backup" Write Bootstrap = "/var/bacula/BackupCatalog.bsr" Priority = 11 # run after main backup Maximum Concurrent Jobs = 20 } ########################## # RestoreFiles-Linux Job # ########################## Job { Name = "RestoreFiles-Linux" Type = Restore Client=bacula-fd FileSet="Linux" Storage = FDA Pool = Full Messages = Standard Where = /tmp/bacula-restores Maximum Concurrent Jobs = 20 } ############################ # RestoreFiles-Windows Job # ############################ Job { Name = "RestoreFiles-Windows" Type = Restore Client=davidov-fd FileSet="Windows" Storage = FDA Pool = Full Messages = Standard Where = "D:/bacula-restores" Maximum Concurrent Jobs = 20 } ######################### FileSets ################################## ################# # Linux FileSet # ################# # List of files to be backed up FileSet { Name = "Linux" Include { Options { signature = MD5; compression = GZIP; onefs = no; } File = / } Exclude { File = /proc File = /tmp File = /home/david.rodriguez-dem/Grups File = /home/david.rodriguez-dem/Documents File = /home/noelia.catala/Grups File = /home/noelia.catala/Documents File = /backupsFDA File = /.journal File = /.fsck } } ################### # Windows FileSet # ################### FileSet { Name = "Windows" Enable VSS = yes Include { Options { signature = MD5; compression=GZIP; } File = "C:/" File = "D:/" } Exclude { File = "*.obj" File = "*.exe" } } ################### # Catalog FileSet # ################### # This is the backup of the catalog FileSet { Name = "Catalog" Include { Options { signature = MD5; compression=GZIP; } File = /var/bacula/bacula.sql } } ######################### Schedules ################################## ##################### # Setmanal Schedule # ##################### Schedule { Name = "Setmanal" Run = Level=Differential Pool=D1 mon at 21:00 Run = Level=Differential Pool=D2 tue at 21:00 Run = Level=Differential Pool=D1 wed at 21:00 Run = Level=Differential Pool=D2 thu at 21:00 Run = Level=Differential Pool=D1 fri at 21:00 Run = Level=Full Pool=Full sat at 21:00 } #################################### # Setmanal-Despres-Backup Schedule # #################################### # This schedule does the catalog. It starts after the WeeklyCycle Schedule { Name = "Setmanal-Despres-Backup" Run = Level=Full sun-sat at 0:10 } ######################### Clients ################################## #################### # Bacula-fd Client # #################### Client { Name = bacula-fd #Address = localhost Address = "bacula client adress" FDPort = 9102 Catalog = MyCatalog Password = "" # password for FileDaemon File Retention = 30 days # 30 days Job Retention = 6 months # six months AutoPrune = yes # Prune expired Jobs/Files Maximum Concurrent Jobs = 20 } ##################### # Brandy2-fd Client # ##################### Client { Name = brandy2-fd #Address = localhost Address = "brandy2 client adress" FDPort = 9102 Catalog = MyCatalog Password = "" # password for FileDaemon File Retention = 30 days # 30 days Job Retention = 6 months # six months AutoPrune = yes # Prune expired Jobs/Files Maximum Concurrent Jobs = 20 } ###################### # Corleone-fd Client # ###################### Client { Name = corleone-fd #Address = localhost Address = "corleone client adress" FDPort = 9102 Catalog = MyCatalog Password = "" # password for FileDaemon File Retention = 30 days # 30 days Job Retention = 6 months # six months AutoPrune = yes # Prune expired Jobs/Files Maximum Concurrent Jobs = 20 } ################# # LIA-fd Client # ################# Client { Name = LIA-fd #Address = localhost Address = "LIA client adress" FDPort = 9102 Catalog = MyCatalog Password = "" # password for FileDaemon File Retention = 30 days # 30 days Job Retention = 6 months # six months AutoPrune = yes # Prune expired Jobs/Files Maximum Concurrent Jobs = 20 } ##################### # Davidov-fd Client # ##################### Client { Name = davidov-fd #Address = localhost Address = "davidov client adress" FDPort = 9102 Catalog = MyCatalog Password = "" # password for FileDaemon 2 File Retention = 30 days # 30 days Job Retention = 6 months # six months AutoPrune = yes # Prune expired Jobs/Files Maximum Concurrent Jobs = 20 } ######################### Storages ################################## ####### # FDA # ####### # Definition of file storage device Storage { Name = FDA # Do not use "localhost" here #Address = localhost Address = "bacula storage adress" # N.B. Use a fully qualified name here SDPort = 9103 Password = "" Device = FDA Media Type = File Maximum Concurrent Jobs = 20 } ######################### Catalog ################################## # Generic catalog service Catalog { Name = MyCatalog dbname = bacula; user = bacula; password = "" } ######################### Messages ################################## #################### # Standard Message # #################### # Reasonable message delivery -- send most everything to email address # and to the console Messages { Name = Standard # # NOTE! If you send to two email or more email addresses, you will need # to replace the %r in the from field (-f part) with a single valid # email address in both the mailcommand and the operatorcommand. # mailcommand = "/usr/sbin/bsmtp -h localhost -f \"\(Bacula\) %r\" -s \"Bacula: %t %e of %c %l\" %r" operatorcommand = "/usr/sbin/bsmtp -h localhost -f \"\(Bacula\) %r\" -s \"Bacula: Intervention needed for %j\" %r" mail = [EMAIL PROTECTED] = all, !skipped operator = [EMAIL PROTECTED] = mount console = all, !skipped, !saved # # WARNING! the following will create a file that you must cycle from # time to time as it will grow indefinitely. However, it will # also keep all your messages if they scroll off the console. # append = "/var/bacula/log" = all, !skipped } ################## # Daemon Message # ################## # # Message delivery for daemon messages (no job). Messages { Name = Daemon mailcommand = "/usr/sbin/bsmtp -h localhost -f \"\(Bacula\) %r\" -s \"Bacula daemon message\" %r" mail = [EMAIL PROTECTED] = all, !skipped console = all, !skipped, !saved append = "/var/bacula/log" = all, !skipped } ########################## Pools ################################### ############# # Full Pool # ############# # Default pool definition Pool { Name = Full Pool Type = Backup LabelFormat = "F-" Recycle = yes # Bacula can automatically recycle Volumes AutoPrune = yes # Prune expired volumes Volume Retention = 15 days Maximum Volume Bytes = 42949672960 # solament ho utilitzarem per backup a disc Accept Any Volume = yes # write on any volume in the pool } ########### # D1 Pool # ########### Pool { Name = D1 Pool Type = Backup LabelFormat = "D1-" Recycle = yes # Bacula can automatically recycle Volumes AutoPrune = yes # Prune expired volumes Volume Retention = 15 days Maximum Volume Bytes = 42949672960 # solament ho utilitzarem per backup a disc Accept Any Volume = yes # write on any volume in the pool } ########### # D2 Pool # ########### Pool { Name = D2 Pool Type = Backup LabelFormat = "D2-" Recycle = yes # Bacula can automatically recycle Volumes AutoPrune = yes # Prune expired volumes Volume Retention = 15 days Maximum Volume Bytes = 42949672960 # solament ho utilitzarem per backup a disc Accept Any Volume = yes # write on any volume in the pool } ########################## Consoles ################################### # # Restricted console used by tray-monitor to get the status of the director # Console { Name = bacula-mon Password = "" CommandACL = status, .status } #################### # Brandy2 Console # #################### Console { Name = Brandy2-con Password = "" JobACL = Brandy2, RestoreFiles-Linux ClientACL = brandy2-fd StorageACL = FDA ScheduleACL = *all* PoolACL = *all* FileSetACL = Linux CatalogACL = MyCatalog CommandACL = run, q, quit, restore, status } #################### # Corleone Console # #################### Console { Name = Corleone-con Password = "" JobACL = Corleone, RestoreFiles-Linux ClientACL = corleone-fd StorageACL = FDA ScheduleACL = *all* PoolACL = *all* FileSetACL = Linux CatalogACL = MyCatalog CommandACL = run, q, quit, restore, status } ############### # Lia Console # ############### Console { Name = LIA-con Password = "" JobACL = LIA, RestoreFiles-Linux ClientACL = LIA-fd StorageACL = FDA ScheduleACL = *all* PoolACL = *all* FileSetACL = Linux CatalogACL = MyCatalog CommandACL = run, q, quit, restore, status } ################### # Davidov Console # ################### Console { Name = Davidov-con Password = "" JobACL = Davidov, RestoreFiles-Windows ClientACL = davidov-fd StorageACL = FDA ScheduleACL = *all* PoolACL = *all* FileSetACL = Windows CatalogACL = MyCatalog CommandACL = run, q, quit, restore, status } And "bconsole.conf" file in client brandy2 like this (the rest of my clients bconsole configuration is like this too): # # Bacula User Agent (or Console) Configuration File # Director { Name = bacula-dir DIRport = 9101 address = "bacula director adress" Password = "" } Console { Name = Brandy2-con Password = "" } And I have executed the following restore job in Brandy2 client (Restore Corleone client "/home/david.rodriguez-dem/Firefox_wallpaper.png" file in Brandy2 client): [EMAIL PROTECTED] bacula]# bconsole Connecting to Director bacula.upc.es:9101 1000 OK: bacula-dir Version: 1.38.9 (02 May 2006) Enter a period to cancel a command. *restore Using default Catalog name=MyCatalog DB=bacula First you select one or more JobIds that contain files to be restored. You will be presented several methods of specifying the JobIds. Then you will be allowed to select which files from those JobIds are to be restored. To select the JobIds, you have the following choices: 1: List last 20 Jobs run 2: List Jobs where a given File is saved 3: Enter list of comma separated JobIds to select 4: Enter SQL list command 5: Select the most recent backup for a client 6: Select backup for a client before a specified time 7: Enter a list of files to restore 8: Enter a list of files to restore before a specified time 9: Find the JobIds of the most recent backup for a client 10: Find the JobIds for a backup for a client before a specified time 11: Enter a list of directories to restore for found JobIds 12: Cancel Select item: (1-12): 1 +-------+-------------+---------------------+----------+----------+---------------+ | JobId | Client | StartTime | JobLevel | JobFiles | JobBytes | +-------+-------------+---------------------+----------+----------+---------------+ | 16 | bacula-fd | 2006-06-13 00:10:11 | F | 1 | 32084438 | | 15 | davidov-fd | 2006-06-12 22:01:14 | F | 10260 | 1583295988 | | 14 | LIA-fd | 2006-06-12 21:41:43 | F | 157499 | 4330753346 | | 13 | corleone-fd | 2006-06-12 21:33:31 | F | 122863 | 1669772971 | | 12 | brandy2-fd | 2006-06-12 21:32:40 | F | 2193 | 470080452 | | 11 | bacula-fd | 2006-06-12 21:21:30 | F | 193444 | 1302286121 | | 10 | davidov-fd | 2006-06-12 21:00:10 | D | 8 | 811386 | | 8 | corleone-fd | 2006-06-12 21:00:07 | D | 4667 | 144728 | | 9 | LIA-fd | 2006-06-12 21:00:07 | D | 4593 | 538280 | | 7 | brandy2-fd | 2006-06-12 21:00:04 | D | 0 | 0 | | 6 | bacula-fd | 2006-06-12 21:00:03 | D | 2085 | 29486069 | | 5 | davidov-fd | 2006-06-12 19:35:43 | F | 10260 | 1444056696 | | 4 | LIA-fd | 2006-06-12 19:35:31 | F | 157499 | 4330754123 | | 3 | corleone-fd | 2006-06-12 19:35:25 | F | 122863 | 1669771575 | | 2 | brandy2-fd | 2006-06-12 19:35:18 | F | 2193 | 470080452 | | 1 | bacula-fd | 2006-06-12 19:35:11 | F | 193438 | 1286726610 | +-------+-------------+---------------------+----------+----------+---------------+ To select the JobIds, you have the following choices: 1: List last 20 Jobs run 2: List Jobs where a given File is saved 3: Enter list of comma separated JobIds to select 4: Enter SQL list command 5: Select the most recent backup for a client 6: Select backup for a client before a specified time 7: Enter a list of files to restore 8: Enter a list of files to restore before a specified time 9: Find the JobIds of the most recent backup for a client 10: Find the JobIds for a backup for a client before a specified time 11: Enter a list of directories to restore for found JobIds 12: Cancel Select item: (1-12): 3 Enter JobId(s), comma separated, to restore: 3 You have selected the following JobId: 3 No authorization. Job "Corleone" not selected. Building directory tree for JobId 3 ... +++++++++++++++++++++++++++++++++++++++++++++++++ 1 Job, 120,685 files inserted into the tree. You are now entering file selection mode where you add (mark) and remove (unmark) files to be restored. No files are initially added, unless you used the "all" keyword on the command line. Enter "done" to leave this mode. cwd is: / $ cd /home/david.rodriguez-dem cwd is: /home/david.rodriguez-dem/ $ mark Firefox_wallpaper.png 1 file marked. $ done Bootstrap records written to /var/bacula/bacula-dir.1.restore.bsr The job will require the following Volumes: F-0001 1 file selected to be restored. Automatically selected Job: RestoreFiles-Linux Automatically selected Client: brandy2-fd Run Restore job JobName: RestoreFiles-Linux Bootstrap: /var/bacula/bacula-dir.1.restore.bsr Where: /tmp/bacula-restores Replace: always FileSet: Linux Client: brandy2-fd Storage: FDA When: 2006-06-13 15:56:06 Catalog: MyCatalog Priority: 10 OK to run? (yes/mod/no): yes Job started. JobId=17 You have messages. *q The job message is the following: 13-Jun 15:56 bacula-dir: Start Restore Job RestoreFiles-Linux.2006-06-13_15.56.23 13-Jun 15:56 bacula-sd: Ready to read from volume "F-0001" on device "FDA" (/backupsFDA). 13-Jun 15:56 bacula-dir: Bacula 1.38.9 (02May06): 13-Jun-2006 15:56:41 JobId: 17 Job: RestoreFiles-Linux.2006-06-13_15.56.23 Client: brandy2-fd Start time: 13-Jun-2006 15:56:25 End time: 13-Jun-2006 15:56:41 Files Expected: 1 Files Restored: 1 Bytes Restored: 1,953,483 Rate: 122.1 KB/s FD Errors: 0 FD termination status: OK SD termination status: OK Termination: Restore OK 13-Jun 15:56 bacula-dir: Begin pruning Jobs. 13-Jun 15:56 bacula-dir: No Jobs found to prune. 13-Jun 15:56 bacula-dir: Begin pruning Files. 13-Jun 15:56 bacula-dir: No Files found to prune. 13-Jun 15:56 bacula-dir: End auto prune. And selected file (Firefox_wallpaper.png) in restore job was restored in Brandy2 client: [EMAIL PROTECTED] bacula]# ls /tmp/bacula-restores/home/david.rodriguez-dem/Firefox_wallpaper.png /tmp/bacula-restores/home/david.rodriguez-dem/Firefox_wallpaper.png -- View this message in context: http://www.nabble.com/Client-console-restrictions-t1773302.html#a4848323 Sent from the Bacula - Users forum at Nabble.com. _______________________________________________ Bacula-users mailing list Bacula-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bacula-users