Thanks! I got it going. Here is what I did for anyone who might need it
in the future.

I'm using SQLite. Sorry for not posting that before. I did have a
missing table, not sure why. I did try dbcheck just for the heck of it
but as you said, it didn't work because I did actually have a missing
table.

So since I wasn't too worried about the old database -- more worried
about getting my backups running again (and I'm not sure if I could ever
salvage that database anyway) -- I just renamed the damaged database (mv
/var/lib/bacula/bacula.db) /var/lib/bacula/bacula.db.old) and created a
new one by doing:

cd /usr/share/bacula-director/
./make_sqlite_tables
chown bacula bacula.db

I rewound my tape to start fresh:
/etc/init.d/bacula-sd stop
mt -f /dev/nst0 rewind
mt -f /dev/nst0 weof

I was then off and running back-ups!

>From now on, I'll also back up the database to a different place so I
can go back to it with better ease.

Thanks again for your help!

Mike
                                    

Arno Lehmann wrote:
> Hi,
>
> On 5/10/2007 1:10 AM, Mike Toscano wrote:
>   
>> I got some error messages below and am told the Bacula database may be
>> corrupt. How can I tell for sure?
>>     
>
> Use the mainenance program belonging to your database... unfortunately 
> you don't write which one you use.
>
> dbcheck might also reveal something, thoug, if a table is missing, that 
> won't help you much.
>
>   
>> Can someone tell me what I should do
>> if it is? I'm not as worried about preserving old data as I am about
>> being able to begin running back-ups again as soon as possible, so if I
>> have to do something crazy like delete and rebuild this database, that's
>> OK.
>>     
>
> In that case, simply save the od database and create a new one.
>
> Arno
>
>   
>> Details on my setup with config files are at the bottom of this
>> message. Thanks again for your attention and any assistance!
>>
>> Mike
>>
>> Clip from my previous message to the list:
>>
>> => Thanks, Mark! Your suggestion got rid of the Permission denied bit but
>>
>> Glad that helped.
>>
>> => I still get the below message, which is still preventing me from
>> => backing stuff up.
>> => 
>> => 09-May 14:56 bmm-s1-dir: Client1.2007-05-09_14.56.02 Fatal error:
>> => catreq.c:346 Attribute create error. sql_create.c:685 Create db
>> => Filename record INSERT INTO Filename (Name) VALUES ('') failed. ERR=no
>> => such table: Filename
>>
>> Sounds like the database is corrupt and missing the "Filename" table.
>>
>> => 09-May 14:56 bmm-s1-dir: Client1.2007-05-09_14.56.02 Error: Bacula
>> => 1.36.3 (22Apr05): 09-May-2007 14:56:18
>> => 
>> => Know what I can do to get rid of that?
>>
>> Some suggestions:
>>
>>      report the problem to the bacula mailing list
>>
>>      upgrade to a more current version (1.36.3 is ancient)
>>
>>
>>
>> My System:
>> OS: Ubuntu Linux 6.06
>> Bacula version: 1.36.3
>> Tape changer: Quantum Superloader 3, LTO Ultrium 3
>> Changer passes btape autochanger test.
>>
>>
>> Config files:
>> ************Bacula-dir.conf***************
>>
>> [EMAIL PROTECTED]:/etc/bacula# cat bacula-dir.conf
>> #
>> # 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.36.3 (22 April 2005) -- debian testing/unstable
>> #
>> #  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 {                            # define myself
>>   Name = bmm-s1-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
>>   Password = ""         # Console password
>>   Messages = Daemon
>> }
>>
>> JobDefs {
>>   Name = "DefaultJob"
>>   Type = Backup
>>   Level = Full
>>   Client = bmm-s1-fd
>>   FileSet = "Full Set"
>>   Schedule = "WeeklyCycle"
>>   Storage = LTO-3
>>   Messages = Standard
>>   Pool = Default
>>   Priority = 10
>> }
>>
>>
>> #
>> # Define the main nightly save backup job
>> #   By default, this job will back up to disk in /tmp
>> Job {
>>   Name = "Client1"
>>   JobDefs = "DefaultJob"
>>   Write Bootstrap = "/var/lib/bacula/Client1.bsr"
>> }
>>
>> # Backup the catalog database (after the nightly save)
>> Job {
>>   Name = "BackupCatalog"
>>   JobDefs = "DefaultJob"
>>   Level = Full
>>   FileSet="Catalog"
>>   Schedule = "WeeklyCycleAfterBackup"
>>   # 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
>> }
>>
>> # Standard Restore template, to be changed by Console program
>> Job {
>>   Name = "RestoreFiles"
>>   Type = Restore
>>   Client=bmm-s1-fd
>>   FileSet="Full Set"
>>   Storage = LTO-3
>>   Pool = Default
>>   Messages = Standard
>>   Where = /tmp/bacula-restores
>> }
>>
>>
>> # List of files to be backed up
>> FileSet {
>>   Name = "Full Set"
>>   Include {
>>     File = /home/mike
>>     Options { compression=GZIP
>>       signature = MD5 }
>>     }
>> #
>> #  Put your list of files here, preceded by 'File =', one per line
>> #    or include an external list with:
>> #
>> #    File = <file-name
>> #
>> #  Note: / backs up everything on the root partition.
>> #    if you have other partitons such as /usr or /home
>> #    you will probably want to add them too.
>> #
>> #  By default this is defined to point to the Bacula build
>> #    directory to give a reasonable FileSet to backup to
>> #    disk storage during initial testing.
>> #
>> #    File = /build/buildd/bacula-1.36.3
>> #  }
>>
>> #
>> # If you backup the root directory, the following two excluded
>> #   files can be useful
>> #
>>   Exclude {
>>     File = /proc
>>     File = /tmp
>>     File = /.journal
>>     File = /.fsck
>>   }
>> }
>>
>> #
>> # When to do the backups, full backup on first sunday of the month,
>> #  differential (i.e. incremental since full) every other sunday,
>> #  and incremental backups other days
>> Schedule {
>>   Name = "WeeklyCycle"
>>   Run = Full 1st sun at 1:05
>>   Run = Differential 2nd-5th sun at 1:05
>>   Run = Full mon-sat at 1:05
>> }
>>
>> # This schedule does the catalog. It starts after the WeeklyCycle
>> Schedule {
>>   Name = "WeeklyCycleAfterBackup"
>>   Run = Full sun-sat at 1:10
>> }
>>
>> # This is the backup of the catalog
>> FileSet {
>>   Name = "Catalog"
>>   Include {
>>     Options {
>>       signature = MD5
>>     }
>>     File = /var/lib/bacula/bacula.sql
>>   }
>> }
>>
>> # Client (File Services) to backup
>> Client {
>>   Name = bmm-s1-fd
>>   Address = bmm-s1
>>   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
>> }
>>
>> # Definiton of file storage device
>> Storage {
>>   Name = LTO-3                     # Do not use "localhost" here
>>   Address = bmm-s1.bmmad.internal  # N.B. Use a fully qualified name here
>>   SDPort = 9103
>>   Password = ""
>>   Device = LTO-3
>>   Media Type = LTO-3
>> }
>>
>>
>> # Generic catalog service
>> Catalog {
>>   Name = MyCatalog
>>   dbname = bacula;  password = "@db_pswd@"
>> }
>>
>> # 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/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
>> #
>> # 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/lib/bacula/log" = all, !skipped
>> }
>>
>>
>> #
>> # Message delivery for daemon messages (no job).
>> 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
>> }
>>
>>
>>
>>
>> # Default pool definition
>> 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
>> }
>>
>> #
>> # Restricted console used by tray-monitor to get the status of the
>> director
>> #
>> Console {
>>   Name = bmm-s1-mon
>>   Password = ""
>>   CommandACL = status, .status
>> }
>> ###################### fileserver Client #####################
>>
>> Job {
>>   Name = "lasbmms1w03"
>>   Type = Backup
>>   Level = Full
>>   Client = lasbmms1w03-fd
>>   FileSet = "fileserver"
>>   Schedule = "WeeklyCycle"
>>   Storage = LTO-3
>>   Messages = Standard
>>   Pool = Default
>>   Write Bootstrap = "/var/lib/bacula/lasbmms1w03.bsr"
>> }
>> # Client (File Services) to backup
>> Client {
>>   Name = lasbmms1w03-fd
>>   Address = lasbmms1w03.bmmad.internal
>>   FDPort = 9102
>>   Catalog = MyCatalog
>>   Password = ""                       # password for
>>   File Retention = 30d                # 30 days
>>   Job Retention = 180d                # six months
>>   AutoPrune = yes                     # Prune expired Jobs/Files
>> }
>>
>> # List of files to be backed up
>> FileSet {
>>   Name = "fileserver"
>>   Include {
>>     File = d:/home/departments/bmmna_transfer
>>     Options { compression=GZIP
>>       signature = MD5 }
>>     }
>> }
>>
>> # Standard Restore template, to be changed by Console program
>> Job {
>>   Name = "fileserverrestore"
>>   Type = Restore
>>   Client=lasbmms1w03-fd
>>   FileSet="fileserver"
>>   Storage = LTO-3
>>   Pool = Default
>>   Messages = Standard
>>   Where = /tmp/bacula-restores
>> }
>>
>> ###################### Test Client #####################
>> #Job {
>> #  Name = "bmm-dsalour"
>> #  Type = Backup
>> #  Client = bmm-dsalour-fd
>> #  FileSet = "test1"
>> #  Schedule = "WeeklyCycle"
>> #  Storage = File
>> #  Messages = Standard
>> #  Pool = Default
>> #  Write Bootstrap = "/var/lib/bacula/bmm-dsalour.bsr"
>> #}
>> ## Client (File Services) to backup
>> #Client {
>> #  Name = bmm-dsalour-fd
>> #  Address = 10.0.3.26
>> #  FDPort = 9102
>> #  Catalog = MyCatalog
>> #  Password = ""                       # password for
>> #  File Retention = 30d                # 30 days
>> #  Job Retention = 180d                # six months
>> #  AutoPrune = yes                     # Prune expired Jobs/Files
>> #}
>>
>> ## List of files to be backed up
>> #FileSet {
>> #  Name = "test1"
>> #  Include {
>> #    File = d:/home/departments/bmmna_transfer
>> #    Options { compression=GZIP
>> #      signature = MD5 }
>> #    }
>> #}
>>
>> ***********bacula-sd.conf*********************
>>
>> [EMAIL PROTECTED]:/etc/bacula# cat bacula-sd.conf
>> #
>> # Default Bacula Storage Daemon Configuration file
>> #
>> #  For Bacula release 1.36.3 (22 April 2005) -- debian testing/unstable
>> #
>> # You may need to change the name of your tape drive
>> #   on the "Archive Device" directive in the Device
>> #   resource.  If you change the Name and/or the
>> #   "Media Type" in the Device resource, please ensure
>> #   that dird.conf has corresponding changes.
>> #
>>
>> Storage {                             # definition of myself
>>   Name = bmm-s1-sd
>>   SDPort = 9103                  # Director's port
>>   WorkingDirectory = "/var/lib/bacula"
>>   Pid Directory = "/var/run/bacula"
>>   Maximum Concurrent Jobs = 20
>> }
>>
>> #
>> # List Directors who are permitted to contact Storage daemon
>> #
>> Director {
>>   Name = bmm-s1-dir
>>   Password = ""
>> }
>>
>> #
>> # Restricted Director, used by tray-monitor to get the
>> #   status of the storage daemon
>> #
>> Director {
>>   Name = bmm-s1-mon
>>   Password = ""
>>   Monitor = yes
>> }
>>
>> #
>> # Devices supported by this Storage daemon
>> # To connect, the Director's bacula-dir.conf must have the
>> #  same Name and MediaType.
>> #
>>
>> #Device {
>> #  Name = FileStorage
>> #  Media Type = File
>> #  Archive Device = /tmp
>> #  LabelMedia = yes;                   # lets Bacula label unlabeled media
>> #  Random Access = Yes;
>> #  AutomaticMount = yes;               # when device opened, read it
>> #  RemovableMedia = no;
>> #  AlwaysOpen = no;
>> #}
>>
>> #
>> # A Linux or Solaris tape drive
>> #
>> Device {
>>  Name = LTO-3                        #
>>  Media Type = LTO-3
>>  Archive Device = /dev/nst0
>>  AutomaticMount = yes;               # when device opened, read it
>>  AlwaysOpen = yes;
>>  RemovableMedia = yes;
>>  RandomAccess = no;
>>  Changer Command = "/etc/bacula/scripts/mtx-changer %c %o %S %a %d"
>>  Changer Device = /dev/sg2
>>  AutoChanger = yes
>>  Alert Command = "sh -c 'tapeinfo -f %c |grep TapeAlert|cat'"
>> }
>> #
>> # Send all messages to the Director,
>> # mount messages also are sent to the email address
>> #
>> Messages {
>>   Name = Standard
>>   director = bmm-s1-dir = all
>> }
>>
>> *************bacula-fd.conf*******************
>>
>>  [EMAIL PROTECTED]:/etc/bacula# cat bacula-fd.conf
>> #
>> # Default  Bacula File Daemon Configuration file
>> #
>> #  For Bacula release 1.36.3 (22 April 2005) -- debian testing/unstable
>> #
>> # There is not much to change here except perhaps the
>> # File daemon Name to
>> #
>>
>> #
>> # List Directors who are permitted to contact this File daemon
>> #
>> Director {
>>   Name = bmm-s1-dir
>>   Password = ""
>> }
>>
>> #
>> # Restricted Director, used by tray-monitor to get the
>> #   status of the file daemon
>> #
>> Director {
>>   Name = bmm-s1-mon
>>   Password = ""
>>   Monitor = yes
>> }
>>
>> #
>> # "Global" File daemon configuration specifications
>> FileDaemon {                          # this is me
>>   Name = lasbmms1w03-fd
>>   FDport = 9102                  # where we listen for the director
>>   WorkingDirectory = /var/lib/bacula
>>   Pid Directory = /var/run/bacula
>>   Maximum Concurrent Jobs = 20
>> }
>>
>> # Send all messages except skipped files back to Director
>> Messages {
>>   Name = Standard
>>   director = bmm-s1-dir = all, !skipped
>> }
>>
>>
>> -------------------------------------------------------------------------
>> 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
>>     
>
>   

-------------------------------------------------------------------------
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