I'm using 2.0.3-4 on etch (I recompiled the lenny sources for etch on
Sparc) and it works fine for DVDs.

I've made a couple of suggestions inline in the message but I documented
the procedure that I went though when finding the bugs in DVD writing.
You may find the instructions  at
http://bridge.oldelvet.org.uk/bacula/BaculaDVDSetup.html
useful.

Richard

On Tue, 2007-07-17 at 14:56 +0200, Olivier wrote:
> Hello list,
> 
> I have spent much time trying to set up DVD-writing with Bacula, and 
> almost made it work... But I come to you for (hopefully) the last step 
> which I can't get working.
> 
> When running a backup job supposed to write on DVD, bacula-sd wait for 
> me to mount a volume: "Please mount Volume "BaculaDVD0001" on Storage 
> Device "DVD-Writer" (/dev/hdd) for Job 
> Full_Set_on_DVD.2007-07-16_14.51.42", it says. How should I do that? The 
> "mount" command from the console does not stop bacula for asking this. 
> Mounting the DVD from command-line is impossible as the DVD is blank 
> (has no FS). Shouldn't the mount happen automatically, as I asked for 
> automatic labelling?
> 
You have to issue a mount command in bconsole to initiate the mount. If
there is blank media in there then it will autolabel.

You could try issuing a label command using BaculaDVD0001 as the volume
name.

> 
> Here below, the config and testing procedure details.
> 
> Thanks a lot for any hint. I am stuck there since a very long time and 
> already tried everything I could find in the mailing lists archive 
> regarding this problem.
> Olivier
> 
> ==Config==
> 
> Bacula 2.0.3, installed using apt-get from Debian distribution "testing" 
> AKA "lenny". Also tried with Bacula 1.38.11 (from "stable"), same 
> behavior encountered (a bit worse, in fact, I can add details if 
> somebody is interrested).
> 
> Olivier:/etc/bacula# bacula-console
> Connecting to Director (address hidden):9101
> 1000 OK: Olivier-dir Version: 2.0.3 (06 March 2007)
> 
> Olivier:/etc/bacula# growisofs --version
> * growisofs by <[EMAIL PROTECTED]>, version 7.0.1,
>   front-ending to mkisofs: mkisofs 2.01.01a03-unofficial-iconv 
> (i686-pc-linux-gnu)
> 
Debian etch certainly has the correct patches for bacula DVD

> [most probably patched version, as it is the debian one]
> 
> Olivier:/etc/bacula# uname -a
> Linux Olivier 2.6.15.6 #1 SMP Tue Mar 14 15:17:05 CET 2006 i686 GNU/Linux
> 
> no automount (as far as I know)
> 
> The three daemons run on the same computer, started from a root ("su") 
> shell.
To be absolutely sure do 
su -
to get a totally clean environment.

> 
> Config files (see after for the tests I made):
> 
> cat bacula-dir.conf | grep -v ^# | grep -v Password
> Director {                            # define myself
>   Name = Olivier-dir
>   DIRport = 9101                # where we listen for UA connections
>   QueryFile = "/etc/bacula/scripts/query.sql"
>   WorkingDirectory = "/var/lib/bacula"
>   PidDirectory = "/var/run/bacula"
>   Maximum Concurrent Jobs = 1
>   Messages = Daemon
>   DirAddress = (hidden)
> }
> 
> JobDefs {
>   Name = "DefaultJob"
>   Type = Backup
>   Level = Incremental
>   Client = Olivier-fd
>   FileSet = "Full Set"
>   Schedule = "WeeklyCycle"
>   Storage = File
>   Messages = Standard
>   Pool = Default
>   Priority = 10
> }
> 
> 
> Job {
>   Name = "Client1"
>   JobDefs = "DefaultJob"
>   Write Bootstrap = "/var/lib/bacula/Client1.bsr"
> }
> 
> Job {
>         Name = "Full Set on DVD"
>         Enabled = no # disables auto run by scheduler
>         Type = Backup
>         Level = Full
>         Client = Olivier-fd
>         FileSet = "Full Set"
>         Storage = "DVD-director-stor"
>         Messages = Standard
>         Pool = "DVDPool"
>         Priority = 10
>         Write Bootstrap = "/var/lib/bacula/bootstrap-MonJob.bsr"
> }
> 
> 
> Job {
>   Name = "BackupCatalog"
>   JobDefs = "DefaultJob"
>   Level = Full
>   FileSet="Catalog"
>   Schedule = "WeeklyCycleAfterBackup"
>   Write Part After Job = yes
>   # This creates an ASCII copy of the catalog
>   RunBeforeJob = "/etc/bacula/scripts/make_catalog_backup -u<user> 
> -p<password>"  # This deletes the copy of the catalog
>   RunAfterJob  = "/etc/bacula/scripts/delete_catalog_backup"
>   Write Bootstrap = "/var/lib/bacula/BackupCatalog.bsr"
>   Priority = 11                   # run after main backup
> }
> 
> Job {
>   Name = "RestoreFiles"
>   Type = Restore
>   Client=Olivier-fd
>   FileSet="Full Set"
>   Storage = File
>   Pool = Default
>   Messages = Standard
>   Where = /tmp/bacula-restores
> }
> 
> 
> FileSet {
>   Name = "Full Set"
>   Include {
>     Options {
>       Compression=GZIP
>       signature = MD5
>     }
>     File = /usr/local/share/cruisecontrol
>   }
> 
>   Exclude {
>     File = /proc
>     File = /tmp
>     File = /.journal
>     File = /.fsck
>   }
> }
> 
> Schedule {
>   Name = "WeeklyCycle"
>   Run = Full 1st sun at 23:05
>   Run = Differential 2nd-5th sun at 23:05
>   Run = Incremental mon-sat at 23:05
> }
> 
> Schedule {
>   Name = "WeeklyCycleAfterBackup"
>   Run = Full sun-sat at 23:10
> }
> 
> FileSet {
>   Name = "Catalog"
>   Include {
>     Options {
>       signature = MD5
>     }
>     File = /var/lib/bacula/bacula.sql
>   }
> }
> 
> Client {
>   Name = Olivier-fd
>   Address = (hidden)
>   FDPort = 9102
>   Catalog = MyCatalog
>   File Retention = 30 days            # 30 days
>   Job Retention = 6 months            # six months
>   AutoPrune = yes                     # Prune expired Jobs/Files
> }
> 
> 
> 
> Storage {
>   Name = File
>   Address = (hidden)              # N.B. Use a fully qualified name here
>   SDPort = 9103
>   Device = FileStorage
>   Media Type = File
> }
> 
> 
> Storage {
>   Name = "DVD-director-stor"
>   Address = (hidden)             # N.B. Use a fully qualified name here
>   SDPort = 9103
>   Device = "DVD-Writer"
>   MediaType = DVD
I presume that you have a Password = "zzz" in the real config.

> }
> 
> 
> Catalog {
>   Name = MyCatalog
>   dbname = bacula;  password = "@db_pswd@"
> }
> 
> Messages {
>   Name = Standard
>   mailcommand = "/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 = [EMAIL PROTECTED] = all, !skipped
>   operator = [EMAIL PROTECTED] = mount
>   console = all, !skipped, !saved
>   append = "/var/lib/bacula/log" = all, !skipped
> }
> 
> 
> Messages {
>   Name = Daemon
>   mailcommand = "/usr/lib/bacula/bsmtp -h localhost -f \"\(Bacula\) %r\" 
> -s \"Bacula daemon message\" %r"
>   mail = [EMAIL PROTECTED] = all, !skipped
>   console = all, !skipped, !saved
>   append = "/var/lib/bacula/log" = all, !skipped
> }
> 
> 
> Pool {
>   Name = Default
>   Pool Type = Backup
>   Recycle = yes                       # Bacula can automatically recycle 
> Volumes  AutoPrune = yes                     # Prune expired volumes
>   Volume Retention = 365 days         # one year
>   Accept Any Volume = yes             # write on any volume in the pool
> }
> 
> Pool {
>   Name = DVDPool
>   LabelFormat = "BaculaDVD"
>   Pool Type = Backup
>   Recycle = no                # Bacula can automatically recycle Volumes
>   AutoPrune = yes             # Prune expired volumes
>   Volume Retention = 365 days # one year
> }
> 
> Console {
>   Name = Olivier-mon
>   CommandACL = status, .status
> }
> 
> cat bacula-sd.conf | grep -v ^# | grep -v Password
> 
> Storage {                             # definition of myself
>   Name = Olivier-sd
>   SDPort = 9103                  # Director's port
>   WorkingDirectory = "/var/lib/bacula"
>   Pid Directory = "/var/run/bacula"
>   Maximum Concurrent Jobs = 20
>   SDAddress = (hidden)
> }
> 
> Director {
>   Name = Olivier-dir
> }
> 
> Director {
>   Name = Olivier-mon
>   Monitor = yes
> }
> 
> 
> Device {
>   Name = FileStorage
>   Media Type = File
>   Archive Device = /tmp
>   LabelMedia = yes;                   # lets Bacula label unlabeled media
>   Random Access = Yes;
>   AutomaticMount = yes;  #255652/888/32..3..2332             # when 
> device opened, read it
>   RemovableMedia = no;
>   AlwaysOpen = no;
> }
> 
> 
> 
> Device {
>   Name = "DVD-Writer"
>   Media Type = DVD
>   Archive Device = /dev/hdd
>   LabelMedia = yes;                   # lets Bacula label unlabeled media
>   Random Access = Yes;
>   AutomaticMount = yes;               # when device opened, read it
>   RemovableMedia = yes;
>   AlwaysOpen = no;
>   MaximumPartSize = 800M;
>   RequiresMount = yes;
>   MountPoint = /mnt/dvd;
>   MountCommand = "/bin/mount -t iso9660 -o ro %a %m";
>   UnmountCommand = "/bin/umount %m";
>   SpoolDirectory = /tmp/backup;
>   WritePartCommand = "/etc/bacula/scripts/dvd-handler %a write %e %v"
>   FreeSpaceCommand = "/etc/bacula/scripts/dvd-handler %a free"
> }
Does /mnt/dvd exist?
Does /tmp/backup exist?

> 
> Messages {
>   Name = Standard
>   director = Olivier-dir = all
> }
> 
> 
> cat bacula-fd.conf | grep -v ^# | grep -v Password
> 
> Director {
>   Name = Olivier-dir
> }
> 
> Director {
>   Name = Olivier-mon
>   Monitor = yes
> }
> 
> FileDaemon {                          # this is me
>   Name = Olivier-fd
>   FDport = 9102                  # where we listen for the director
>   WorkingDirectory = /var/lib/bacula
>   Pid Directory = /var/run/bacula
>   Maximum Concurrent Jobs = 20
>   FDAddress = (hidden)
> }
> 
> Messages {
>   Name = Standard
>   director = Olivier-dir = all, !skipped, !restored
> }
> 
> == Test procedure ==
> 
> Using a DVD+RW disk. I blank the drive, then check that it can't be mounted.
> 
> dd if=/dev/zero bs=1024 count=512 | growisofs -Z /dev/hdd=/dev/fd/0
> Olivier:/etc/bacula# mount /dev/hdd /mnt/dvd
> mount: you must specify the filesystem type
> 
> In the bacula console, after having restarted the three daemons, I check 
> that no jobs are running and I use "update" to disable the current 
> volume's status, if any (to start everything from scratch). Then I run 
> the DVD-backup job:
> 
> *run
> A job name must be specified.
> The defined Job resources are:
>      1: Client1
>      2: Full Set on DVD
>      3: BackupCatalog
>      4: RestoreFiles
> Select Job resource (1-4): 2
> Run Backup job
> JobName:  Full Set on DVD
> Level:    Full
> Client:   Olivier-fd
> FileSet:  Full Set
> Pool:     DVDPool (From Job resource)
> Storage:  DVD-director-stor (From Job resource)
> When:     2007-07-17 14:43:26
> Priority: 10
> OK to run? (yes/mod/no): yes
> Job queued. JobId=39
> *messages
> 17-jui 14:43 Olivier-dir: Start Backup JobId 39, 
> Job=Full_Set_on_DVD.2007-07-17_14.43.30
> 17-jui 14:43 Olivier-dir: Created new Volume "BaculaDVD0003" in catalog.
> 17-jui 14:43 Olivier-sd: Please mount Volume "BaculaDVD0003" on Storage 
> Device "DVD-Writer" (/dev/hdd) for Job Full_Set_on_DVD.2007-07-17_14.43.30
> *mount
> The defined Storage resources are:
>      1: File
>      2: DVD-director-stor
> Select Storage resource (1-2): 2
> 3001 OK mount. Device="DVD-Writer" (/dev/hdd)
> *messages
> 17-jui 14:45 Olivier-sd: Please mount Volume "BaculaDVD0003" on Storage 
> Device "DVD-Writer" (/dev/hdd) for Job Full_Set_on_DVD.2007-07-17_14.43.30
> *status
> Status available for:
>      1: Director
>      2: Storage
>      3: Client
>      4: All
> Select daemon type for status (1-4): 2
> The defined Storage resources are:
>      1: File
>      2: DVD-director-stor
> Select Storage resource (1-2): 2
> Connecting to Storage daemon DVD-director-stor at (hidden):9103
> 
> Olivier-sd Version: 2.0.3 (06 March 2007) i486-pc-linux-gnu debian 4.0
> Daemon started 17-jui-07 14:42, 0 Jobs run since started.
>  Heap: bytes=156,816 max_bytes=222,620 bufs=118 max_bufs=123
> 
> Running Jobs:
> Writing: Full Backup job Full_Set_on_DVD JobId=39 Volume="BaculaDVD0003"
>     pool="DVDPool" device=""DVD-Writer" (/dev/hdd)"
>     spooling=0 despooling=0 despool_wait=0
>     Files=0 Bytes=0 Bytes/sec=0
>     FDReadSeqNo=6 in_msg=6 out_msg=4 fd=5
> ====
> 
> Jobs waiting to reserve a drive:
> ====
> 
> Terminated Jobs:
>  JobId  Level    Files      Bytes   Status   Finished        Name
> ===================================================================
>      6                0         0   OK       13-jui-07 14:19 RestoreFiles
>     15  Incr        112    325.5 K  OK       13-jui-07 19:17 Client1
>     25  Full          0         0   Error    16-jui-07 11:07 Full_Set_on_DVD
>     27  Full          0         0   Cancel   16-jui-07 11:23 Full_Set_on_DVD
>     28  Full          0         0   Cancel   16-jui-07 11:29 Full_Set_on_DVD
>     33  Full          0         0   Cancel   16-jui-07 16:13 Full_Set_on_DVD
>     34  Full          0         0   Cancel   16-jui-07 16:15 Full_Set_on_DVD
>     35  Full          0         0   Cancel   17-jui-07 14:23 Full_Set_on_DVD
>     36  Incr          0         0   Cancel   17-jui-07 14:23 Client1
>     38  Full          0         0   Cancel   17-jui-07 14:40 Full_Set_on_DVD
> ====
> 
> Device status:
> Device "FileStorage" (/tmp) is not open.
> Device "DVD-Writer" (/dev/hdd) is not open.
>     Device is BLOCKED waiting for media.
> ====
> 
> In Use Volume status:
> BaculaDVD0003 on device "DVD-Writer" (/dev/hdd)
> ====
> 
> 
> == What works ==
> 
> (NB: /dev/cdrw is the same as /dev/dvd)
> 
> Writing to DVD using growisofs works:
> growisofs -Z /dev/cdrw -R -J /etc => OK (mount then ls shows the /etc 
> directory contents)
> 
> Creating a "file1" random file, then writing it to DVD using dvd-handler 
> script works:
> ls -l /tmp/file1
> -rw-r--r-- 1 root root 82360320 2007-07-16 14:08 /tmp/file1
> unmount DVD, blank it, then
> /etc/bacula/scripts/dvd-handler /dev/cdrw write 1 /tmp/file1 => OK 
> (mount then ls and md5sum to check "file1" contents OK)
> 
> Doing a simple "file" backup with bacula console works. The backup is 
> indeed created in /tmp.
> 
> Thanks again for any help.
> 
> -------------------------------------------------------------------------
> This SF.net email is sponsored by DB2 Express
> Download DB2 Express C - the FREE version of DB2 express and take
> control of your XML. No limits. Just data. Click to get it now.
> http://sourceforge.net/powerbar/db2/
> _______________________________________________
> Bacula-users mailing list
> Bacula-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/bacula-users
-- 
Richard Mortimer <[EMAIL PROTECTED]>


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Bacula-users mailing list
Bacula-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bacula-users

Reply via email to