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