Hi,

I have made some more tests... see below.

On Sun, 2005-11-06 at 21:57 +0100, Arno Lehmann wrote:
Hello,
> 
> On 04.11.2005 10:39, Ove Risberg wrote:
> 
> > Hi all,
> > 
> > In netbackup you can select ALL_LOCAL_DRIVES instead of specifying all
> > the filesystems on your server and in bacula you can set onefs=no and
> > tell it to backup / and the result is almost the same if you do not use
> > concurrent jobs.
> > 
> > When using ALL_LOCAL_DRIVES and concurrent jobs in netbackup multiple
> > filesystems are backupped at the same time.
> > 
> > To do the same in bacula I have to define a FileSet and a Job for each
> > filesystem and when doing a restore in wx-console I do no have the
> > possibility browse all the filesystems at the same time when doing a
> > restore (I have to select a FileSet).
> > 
> > If I could use character substitution in FileSet the same ways it is
> > used in RunBeforeJob I could make jobs with the names client_/,
> > client_/var and client_/home and they could use the same FileSet.
> > 
> > FileSet {
> >   Name = "MyCharacterSubstitutionTest"
> >   Include {
> >     Options { signature = SHA1 }
> >     File = "|sh -c 'echo %j | sed \"s/^[^_]*_//\"'"
> >   }
> > }
> > 
> > But how does bacula and wx-console handle this when doing a restore?
> 
> No idea... although the concept is definitely interesting.
> 
> > Do I see all jobs using the same FileSet or only the last job?
> > Does Incremental backups work when using the same FileSet for multiple
> > filesystems on the same client?
> > If this works I still have to create a job for each filesystem on the
> > server and make sure I do not forget to update bacula when adding new
> > filesystems.
> > 
> > Please tell me that I have missed a configuration option somewhere and
> > it is easy to make backups of multiple filesystems at the same time on
> > one client with bacula.
> 
> Unfortunately, you didn't miss anything I know about.
> 
> In fact, what you describe (or want) is something that Bacula can't do. 
> First, Baculas jobs are what you handle for restores. So, since I back 
> up one of my servers in four jobs (system, home directories, databases, 
> mail) I have to run four restores in case of a desaster. No way around 
> that, as far as I know. Especially in case of a restore, being able to 
> just order something like "restore client=xxx-fd current everything" 
> would be something very helpful, as well as seeing all the file sets for 
> one client, and not only for each job.
> Second, allowing multiple filesets per job would be an improvement, too, 
>   to simplify setup of larger installations where you can prepare common 
> building blocks for many servers.
> 
> > Thanks for a great backup solution
> 
> Indeed, and when you have more ideas how to implement what you suggested 
> I'm quite sure that a more detailed discussion might result in a further 
> improvement :-)
> 
> Arno
> 

I made a FileSet with a file-list item preceded by a less-than sign (<)
so the include list is read from a file called my-files.
Then I made 2 full and 4 incremental backups:
 Job name=test_root Level=Full FileSet=test my-files=/
 Job name=test_var  Level=Full FileSet=test my-files=/var
 Job name=test_root Level=Inc  FileSet=test my-files=/
 Job name=test_var  Level=Inc  FileSet=test my-files=/var
 Job name=test_root Level=Inc  FileSet=test my-files=/var
 Job name=test_var  Level=Inc  FileSet=test my-files=/
The Jobs and FileSet is included at the end of this mail.

Here are a listing of the backups:
#.backups client="test-fd" fileset="test"
| 1 | test-fd | F | 2005-11-09 18:49:26 | 81643 | 1703766379 | test-Full-0001 |
| 2 | test-fd | F | 2005-11-09 19:02:25 | 7770 | 167151188 | test-Full-0002 |
| 3 | test-fd | I | 2005-11-09 19:10:32 | 81 | 0 | test-Inc-0001 |
| 4 | test-fd | I | 2005-11-09 19:11:31 | 3 | 32165 | test-Inc-0001 |
| 5 | test-fd | I | 2005-11-10 10:45:19 | 17 | 76848 | test-Inc-0001 |
| 6 | test-fd | I | 2005-11-10 10:46:05 | 82 | 0 | test-Inc-0001 |

When using the restore tab in wx-console only the newes full backup is
used (see restore example 1 below).

When I try to specify the jobid on the commandline the result is the
same (see restore example 2 below).

But when I run restore without options and select "3: Enter list of
comma separated JobIds to select" I can select all the jobs I want and I
can browse all files :-) (see restore example 3 below).

If we can patch the restore command to select all full backups started
at the same time when making a restore this could be the the start of a
solution to the multiple jobs on one server problem.

One problem is not to mix up "clones" and backups made this way.

This not the complete solution for this problem but if anyone else wants
to solve this we could probably find a solution together.

/Ove

Restore example 1:
======================================================================
#restore client="test-fd" fileset="test" storage="File_storage" 
before="2005-11-10 10:46:06" select
+-------+-------+----------+-------------+---------------------+----------------+-----------+
| JobId | Level | JobFiles | JobBytes    | StartTime           | VolumeName     
| StartFile |
+-------+-------+----------+-------------+---------------------+----------------+-----------+
|     2 | F     |    7,770 | 167,151,188 | 2005-11-09 19:02:25 | test-Full-0002 
|         0 |
|     3 | I     |       81 |           0 | 2005-11-09 19:10:32 | test-Inc-0001  
|         0 |
|     4 | I     |        3 |      32,165 | 2005-11-09 19:11:31 | test-Inc-0001  
|         0 |
|     5 | I     |       17 |      76,848 | 2005-11-10 10:45:19 | test-Inc-0001  
|         0 |
|     6 | I     |       82 |           0 | 2005-11-10 10:46:05 | test-Inc-0001  
|         0 |
+-------+-------+----------+-------------+---------------------+----------------+-----------+
You have selected the following JobIds: 2,3,4,5,6

Building directory tree for JobId 2 ...  ++++++++++++++++++++++++++++++++++
Building directory tree for JobId 3 ...  
Building directory tree for JobId 4 ...  
Building directory tree for JobId 5 ...  
Building directory tree for JobId 6 ...  
5 Jobs, 5,440 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: /
$ .
No files selected to be restored.

Restore example 2:
======================================================================
#restore client="test-fd" fileset="test" storage="File_storage" 
jobid=1,2,3,4,5,6 select
+-------+-------+----------+-------------+---------------------+----------------+-----------+
| JobId | Level | JobFiles | JobBytes    | StartTime           | VolumeName     
| StartFile |
+-------+-------+----------+-------------+---------------------+----------------+-----------+
|     2 | F     |    7,770 | 167,151,188 | 2005-11-09 19:02:25 | test-Full-0002 
|         0 |
|     3 | I     |       81 |           0 | 2005-11-09 19:10:32 | test-Inc-0001  
|         0 |
|     4 | I     |        3 |      32,165 | 2005-11-09 19:11:31 | test-Inc-0001  
|         0 |
|     5 | I     |       17 |      76,848 | 2005-11-10 10:45:19 | test-Inc-0001  
|         0 |
|     6 | I     |       82 |           0 | 2005-11-10 10:46:05 | test-Inc-0001  
|         0 |
+-------+-------+----------+-------------+---------------------+----------------+-----------+
You have selected the following JobIds: 2,3,4,5,6

Building directory tree for JobId 2 ...  ++++++++++++++++++++++++++++++++++
Building directory tree for JobId 3 ...  
Building directory tree for JobId 4 ...  
Building directory tree for JobId 5 ...  
Building directory tree for JobId 6 ...  
5 Jobs, 5,440 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: /
$ .
No files selected to be restored.


Restore example 3:
======================================================================
#restore

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): Unexpected question has been received.
3
Enter JobId(s), comma separated, to restore: Unexpected question has been 
received.
1,2,3,4,5,6
You have selected the following JobIds: 1,2,3,4,5,6

Building directory tree for JobId 1 ...  
++++++++++++++++++++++++++++++++++++++++++++++
Building directory tree for JobId 2 ...  +++
Building directory tree for JobId 3 ...  
Building directory tree for JobId 4 ...  
Building directory tree for JobId 5 ...  
Building directory tree for JobId 6 ...  
6 Jobs, 80,858 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: /
$ .
No files selected to be restored.


Here is another job listing:
======================================================================
#list jobs
+-------+-----------+---------------------+------+-------+----------+---------------+-----------+
| JobId | Name      | StartTime           | Type | Level | JobFiles | JobBytes  
    | JobStatus |
+-------+-----------+---------------------+------+-------+----------+---------------+-----------+
|     1 | test root | 2005-11-09 18:49:26 | B    | F     |   81,643 | 
1,703,766,379 | T         |
|     2 | test var  | 2005-11-09 19:02:25 | B    | F     |    7,770 |   
167,151,188 | T         |
|     3 | test root | 2005-11-09 19:10:32 | B    | I     |       81 |           
  0 | T         |
|     4 | test var  | 2005-11-09 19:11:31 | B    | I     |        3 |        
32,165 | T         |
|     5 | test root | 2005-11-10 10:45:19 | B    | I     |       17 |        
76,848 | T         |
|     6 | test var  | 2005-11-10 10:46:05 | B    | I     |       82 |           
  0 | T         |
+-------+-----------+---------------------+------+-------+----------+---------------+-----------+

Job and FileSet configuration:
======================================================================
Job {
  Name = "test root"
  JobDefs = "DefaultJob"
  Schedule = "Never"
  FileSet = "test"
  Client = test-fd 
  Write Bootstrap = "/data/bacula/bootstrap/test.bsr"
  Full Backup Pool = test-Full-Pool
  Incremental Backup Pool = test-Inc-Pool
  Differential Backup Pool = test-Diff-Pool
}

Job {
  Name = "test var"
  JobDefs = "DefaultJob"
  Schedule = "Never"
  FileSet = "test"
  Client = test-fd 
  Write Bootstrap = "/data/bacula/bootstrap/test.bsr"
  Full Backup Pool = test-Full-Pool
  Incremental Backup Pool = test-Inc-Pool
  Differential Backup Pool = test-Diff-Pool
}

FileSet {
  Name = "test"
  Include {
    Options {
      signature = SHA1
      onefs=Yes                  # Stay on one filesystem
    }
    File = "</env/bacula/my-files"
  }
  Exclude { }
}


-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.  Get Certified Today
Register for a JBoss Training Course.  Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_id=7628&alloc_id=16845&op=click
_______________________________________________
Bacula-users mailing list
Bacula-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bacula-users

Reply via email to