Initial import of bacula
This commit is contained in:
parent
0e76e14432
commit
0745245f26
@ -0,0 +1,2 @@
|
||||
bacula-2.0.3.tar.gz
|
||||
bacula-docs-2.0.3.tar.gz
|
86
2.0.3-ampm.patch
Normal file
86
2.0.3-ampm.patch
Normal file
@ -0,0 +1,86 @@
|
||||
This patch should resolve some problems with handling of am/pm
|
||||
in schedules as reported by bug #808.
|
||||
|
||||
According to the NIST (US National Institute of Standards and Technology),
|
||||
12am and 12pm are ambiguous and can be defined to anything. However,
|
||||
12:01am is the same as 00:01 and 12:01pm is the same as 12:01, so Bacula
|
||||
defines 12am as 00:00 (midnight) and 12pm as 12:00 (noon). You can avoid
|
||||
this abiguity (confusion) by using 24 hour time specifications (i.e. no
|
||||
am/pm). This is the definition in Bacula version 2.0.3 and later.
|
||||
|
||||
Apply it to version 2.0.3 with:
|
||||
|
||||
cd <bacula-source>
|
||||
patch -p0 <2.0.3-ampm.patch
|
||||
make
|
||||
...
|
||||
make install
|
||||
|
||||
Index: src/dird/run_conf.c
|
||||
===================================================================
|
||||
--- src/dird/run_conf.c (revision 4349)
|
||||
+++ src/dird/run_conf.c (working copy)
|
||||
@@ -339,6 +339,7 @@
|
||||
for ( ; token != T_EOL; (token = lex_get_token(lc, T_ALL))) {
|
||||
int len;
|
||||
bool pm = false;
|
||||
+ bool am = false;
|
||||
switch (token) {
|
||||
case T_NUMBER:
|
||||
state = s_mday;
|
||||
@@ -434,6 +435,7 @@
|
||||
if (!have_hour) {
|
||||
clear_bits(0, 23, lrun.hour);
|
||||
}
|
||||
+// Dmsg1(000, "s_time=%s\n", lc->str);
|
||||
p = strchr(lc->str, ':');
|
||||
if (!p) {
|
||||
scan_err0(lc, _("Time logic error.\n"));
|
||||
@@ -441,20 +443,19 @@
|
||||
}
|
||||
*p++ = 0; /* separate two halves */
|
||||
code = atoi(lc->str); /* pick up hour */
|
||||
+ code2 = atoi(p); /* pick up minutes */
|
||||
len = strlen(p);
|
||||
- if (len > 2 && p[len-1] == 'm') {
|
||||
- if (p[len-2] == 'a') {
|
||||
- pm = false;
|
||||
- } else if (p[len-2] == 'p') {
|
||||
- pm = true;
|
||||
- } else {
|
||||
- scan_err0(lc, _("Bad time specification."));
|
||||
- /* NOT REACHED */
|
||||
- }
|
||||
- } else {
|
||||
- pm = false;
|
||||
+ if (len >= 2) {
|
||||
+ p += 2;
|
||||
}
|
||||
- code2 = atoi(p); /* pick up minutes */
|
||||
+ if (strcasecmp(p, "pm") == 0) {
|
||||
+ pm = true;
|
||||
+ } else if (strcasecmp(p, "am") == 0) {
|
||||
+ am = true;
|
||||
+ } else if (len != 2) {
|
||||
+ scan_err0(lc, _("Bad time specification."));
|
||||
+ /* NOT REACHED */
|
||||
+ }
|
||||
/*
|
||||
* Note, according to NIST, 12am and 12pm are ambiguous and
|
||||
* can be defined to anything. However, 12:01am is the same
|
||||
@@ -467,13 +468,14 @@
|
||||
code += 12;
|
||||
}
|
||||
/* am */
|
||||
- } else if (code == 12) {
|
||||
+ } else if (am && code == 12) {
|
||||
code -= 12;
|
||||
}
|
||||
if (code < 0 || code > 23 || code2 < 0 || code2 > 59) {
|
||||
scan_err0(lc, _("Bad time specification."));
|
||||
/* NOT REACHED */
|
||||
}
|
||||
+// Dmsg2(000, "hour=%d min=%d\n", code, code2);
|
||||
set_bit(code, lrun.hour);
|
||||
lrun.minute = code2;
|
||||
have_hour = true;
|
32
2.0.3-maxbyteslist.patch
Normal file
32
2.0.3-maxbyteslist.patch
Normal file
@ -0,0 +1,32 @@
|
||||
|
||||
This patch adds the MaxVolBytes to the output of a "show pools" command.
|
||||
It fixes bug #814. Apply it to Bacula version 2.0.3 with:
|
||||
|
||||
cd <bacula-source>
|
||||
patch -p0 <2.0.3-maxbyteslist.patch
|
||||
make
|
||||
...
|
||||
make install
|
||||
|
||||
|
||||
Index: src/dird/dird_conf.c
|
||||
===================================================================
|
||||
--- src/dird/dird_conf.c (revision 4349)
|
||||
+++ src/dird/dird_conf.c (working copy)
|
||||
@@ -844,10 +844,13 @@
|
||||
NPRT(res->res_pool.label_format));
|
||||
sendit(sock, _(" CleaningPrefix=%s LabelType=%d\n"),
|
||||
NPRT(res->res_pool.cleaning_prefix), res->res_pool.LabelType);
|
||||
- sendit(sock, _(" RecyleOldest=%d PurgeOldest=%d MaxVolJobs=%d MaxVolFiles=%d\n"),
|
||||
+ sendit(sock, _(" RecyleOldest=%d PurgeOldest=%d\n"),
|
||||
res->res_pool.recycle_oldest_volume,
|
||||
- res->res_pool.purge_oldest_volume,
|
||||
- res->res_pool.MaxVolJobs, res->res_pool.MaxVolFiles);
|
||||
+ res->res_pool.purge_oldest_volume);
|
||||
+ sendit(sock, _(" MaxVolJobs=%d MaxVolFiles=%d MaxVolBytes=%s\n"),
|
||||
+ res->res_pool.MaxVolJobs,
|
||||
+ res->res_pool.MaxVolFiles,
|
||||
+ edit_uint64(res->res_pool.MaxVolFiles, ed1));
|
||||
sendit(sock, _(" MigTime=%s MigHiBytes=%s MigLoBytes=%s\n"),
|
||||
edit_utime(res->res_pool.MigrationTime, ed1, sizeof(ed1)),
|
||||
edit_uint64(res->res_pool.MigrationHighBytes, ed2),
|
137
2.0.3-maxwaittime.patch
Normal file
137
2.0.3-maxwaittime.patch
Normal file
@ -0,0 +1,137 @@
|
||||
|
||||
This patch should fix the logic error in checking for the MaxWaitTime of
|
||||
a job in src/dird/job.c. It fixes bug #802.
|
||||
|
||||
Apply it to Bacula version 2.0.3 with:
|
||||
|
||||
cd <bacula-source>
|
||||
patch -p0 <2.0.3-maxwaittime.patch
|
||||
make
|
||||
...
|
||||
make install
|
||||
|
||||
|
||||
|
||||
Index: src/dird/job.c
|
||||
===================================================================
|
||||
--- src/dird/job.c (revision 4349)
|
||||
+++ src/dird/job.c (working copy)
|
||||
@@ -481,7 +481,6 @@
|
||||
static bool job_check_maxwaittime(JCR *control_jcr, JCR *jcr)
|
||||
{
|
||||
bool cancel = false;
|
||||
- bool ok_to_cancel = false;
|
||||
JOB *job = jcr->job;
|
||||
|
||||
if (job_canceled(jcr)) {
|
||||
@@ -493,69 +492,18 @@
|
||||
}
|
||||
if (jcr->JobLevel == L_FULL && job->FullMaxWaitTime != 0 &&
|
||||
(watchdog_time - jcr->start_time) >= job->FullMaxWaitTime) {
|
||||
- ok_to_cancel = true;
|
||||
+ cancel = true;
|
||||
} else if (jcr->JobLevel == L_DIFFERENTIAL && job->DiffMaxWaitTime != 0 &&
|
||||
(watchdog_time - jcr->start_time) >= job->DiffMaxWaitTime) {
|
||||
- ok_to_cancel = true;
|
||||
+ cancel = true;
|
||||
} else if (jcr->JobLevel == L_INCREMENTAL && job->IncMaxWaitTime != 0 &&
|
||||
(watchdog_time - jcr->start_time) >= job->IncMaxWaitTime) {
|
||||
- ok_to_cancel = true;
|
||||
+ cancel = true;
|
||||
} else if (job->MaxWaitTime != 0 &&
|
||||
(watchdog_time - jcr->start_time) >= job->MaxWaitTime) {
|
||||
- ok_to_cancel = true;
|
||||
- }
|
||||
- if (!ok_to_cancel) {
|
||||
- return false;
|
||||
- }
|
||||
-
|
||||
-/*
|
||||
- * I don't see the need for all this -- kes 17Dec06
|
||||
- */
|
||||
-#ifdef xxx
|
||||
- Dmsg3(800, "Job %d (%s): MaxWaitTime of %d seconds exceeded, "
|
||||
- "checking status\n",
|
||||
- jcr->JobId, jcr->Job, job->MaxWaitTime);
|
||||
- switch (jcr->JobStatus) {
|
||||
- case JS_Created:
|
||||
- case JS_Blocked:
|
||||
- case JS_WaitFD:
|
||||
- case JS_WaitSD:
|
||||
- case JS_WaitStoreRes:
|
||||
- case JS_WaitClientRes:
|
||||
- case JS_WaitJobRes:
|
||||
- case JS_WaitPriority:
|
||||
- case JS_WaitMaxJobs:
|
||||
- case JS_WaitStartTime:
|
||||
cancel = true;
|
||||
- Dmsg0(200, "JCR blocked in #1\n");
|
||||
- break;
|
||||
- case JS_Running:
|
||||
- Dmsg0(800, "JCR running, checking SD status\n");
|
||||
- switch (jcr->SDJobStatus) {
|
||||
- case JS_WaitMount:
|
||||
- case JS_WaitMedia:
|
||||
- case JS_WaitFD:
|
||||
- cancel = true;
|
||||
- Dmsg0(800, "JCR blocked in #2\n");
|
||||
- break;
|
||||
- default:
|
||||
- Dmsg0(800, "JCR not blocked in #2\n");
|
||||
- break;
|
||||
- }
|
||||
- break;
|
||||
- case JS_Terminated:
|
||||
- case JS_ErrorTerminated:
|
||||
- case JS_Canceled:
|
||||
- case JS_FatalError:
|
||||
- Dmsg0(800, "JCR already dead in #3\n");
|
||||
- break;
|
||||
- default:
|
||||
- Jmsg1(jcr, M_ERROR, 0, _("Unhandled job status code %d\n"),
|
||||
- jcr->JobStatus);
|
||||
}
|
||||
- Dmsg3(800, "MaxWaitTime result: %scancel JCR %p (%s)\n",
|
||||
- cancel ? "" : "do not ", jcr, jcr->Job);
|
||||
-#endif
|
||||
+
|
||||
return cancel;
|
||||
}
|
||||
|
||||
@@ -574,36 +522,6 @@
|
||||
return false;
|
||||
}
|
||||
|
||||
-#ifdef xxx
|
||||
- switch (jcr->JobStatus) {
|
||||
- case JS_Created:
|
||||
- case JS_Running:
|
||||
- case JS_Blocked:
|
||||
- case JS_WaitFD:
|
||||
- case JS_WaitSD:
|
||||
- case JS_WaitStoreRes:
|
||||
- case JS_WaitClientRes:
|
||||
- case JS_WaitJobRes:
|
||||
- case JS_WaitPriority:
|
||||
- case JS_WaitMaxJobs:
|
||||
- case JS_WaitStartTime:
|
||||
- case JS_Differences:
|
||||
- cancel = true;
|
||||
- break;
|
||||
- case JS_Terminated:
|
||||
- case JS_ErrorTerminated:
|
||||
- case JS_Canceled:
|
||||
- case JS_FatalError:
|
||||
- cancel = false;
|
||||
- break;
|
||||
- default:
|
||||
- Jmsg1(jcr, M_ERROR, 0, _("Unhandled job status code %d\n"),
|
||||
- jcr->JobStatus);
|
||||
- }
|
||||
-
|
||||
- Dmsg3(200, "MaxRunTime result: %scancel JCR %p (%s)\n",
|
||||
- cancel ? "" : "do not ", jcr, jcr->Job);
|
||||
-#endif
|
||||
return true;
|
||||
}
|
||||
|
88
2.0.3-scheduler-next-hour.patch
Normal file
88
2.0.3-scheduler-next-hour.patch
Normal file
@ -0,0 +1,88 @@
|
||||
|
||||
This patch should fix bug #812 where the DST time shift was
|
||||
incorrectly handled. This patch was submitted by Martin Simmons.
|
||||
Apply it to Bacula version 2.0.3 with:
|
||||
|
||||
cd <bacula-source>
|
||||
patch -p0 <2.0.3-scheduler-next-hour.patch
|
||||
make
|
||||
...
|
||||
make install
|
||||
|
||||
Index: src/dird/scheduler.c
|
||||
===================================================================
|
||||
--- src/dird/scheduler.c (revision 4445)
|
||||
+++ src/dird/scheduler.c (working copy)
|
||||
@@ -175,11 +175,11 @@
|
||||
}
|
||||
/* Recheck at least once per minute */
|
||||
bmicrosleep((next_check_secs < twait)?next_check_secs:twait, 0);
|
||||
- /* Attempt to handle clock shift from/to daylight savings time
|
||||
+ /* Attempt to handle clock shift (but not daylight savings time changes)
|
||||
* we allow a skew of 10 seconds before invalidating everything.
|
||||
*/
|
||||
now = time(NULL);
|
||||
- if (now < prev+10 || now > (prev+next_check_secs+10)) {
|
||||
+ if (now < prev-10 || now > (prev+next_check_secs+10)) {
|
||||
schedules_invalidated = true;
|
||||
}
|
||||
}
|
||||
@@ -284,6 +284,9 @@
|
||||
wom = mday / 7;
|
||||
woy = tm_woy(now); /* get week of year */
|
||||
|
||||
+ Dmsg7(dbglvl, "now = %x: h=%d m=%d md=%d wd=%d wom=%d woy=%d\n",
|
||||
+ now, hour, month, mday, wday, wom, woy);
|
||||
+
|
||||
/*
|
||||
* Compute values for next hour from now.
|
||||
* We do this to be sure we don't miss a job while
|
||||
@@ -299,6 +302,9 @@
|
||||
nh_wom = nh_mday / 7;
|
||||
nh_woy = tm_woy(now); /* get week of year */
|
||||
|
||||
+ Dmsg7(dbglvl, "nh = %x: h=%d m=%d md=%d wd=%d wom=%d woy=%d\n",
|
||||
+ next_hour, nh_hour, nh_month, nh_mday, nh_wday, nh_wom, nh_woy);
|
||||
+
|
||||
/* Loop through all jobs */
|
||||
LockRes();
|
||||
foreach_res(job, R_JOB) {
|
||||
@@ -351,24 +357,20 @@
|
||||
|
||||
Dmsg3(dbglvl, "run@%p: run_now=%d run_nh=%d\n", run, run_now, run_nh);
|
||||
|
||||
- /* find time (time_t) job is to be run */
|
||||
- (void)localtime_r(&now, &tm); /* reset tm structure */
|
||||
- tm.tm_min = run->minute; /* set run minute */
|
||||
- tm.tm_sec = 0; /* zero secs */
|
||||
- if (run_now) {
|
||||
- runtime = mktime(&tm);
|
||||
- add_job(job, run, now, runtime);
|
||||
- }
|
||||
- /* If job is to be run in the next hour schedule it */
|
||||
- if (run_nh) {
|
||||
- /* Set correct values */
|
||||
- tm.tm_hour = nh_hour;
|
||||
- tm.tm_mday = nh_mday + 1; /* fixup because we biased for tests above */
|
||||
- tm.tm_mon = nh_month;
|
||||
- tm.tm_year = nh_year;
|
||||
- runtime = mktime(&tm);
|
||||
- add_job(job, run, now, runtime);
|
||||
- }
|
||||
+ if (run_now || run_nh) {
|
||||
+ /* find time (time_t) job is to be run */
|
||||
+ (void)localtime_r(&now, &tm); /* reset tm structure */
|
||||
+ tm.tm_min = run->minute; /* set run minute */
|
||||
+ tm.tm_sec = 0; /* zero secs */
|
||||
+ runtime = mktime(&tm);
|
||||
+ if (run_now) {
|
||||
+ add_job(job, run, now, runtime);
|
||||
+ }
|
||||
+ /* If job is to be run in the next hour schedule it */
|
||||
+ if (run_nh) {
|
||||
+ add_job(job, run, now, runtime + 3600);
|
||||
+ }
|
||||
+ }
|
||||
}
|
||||
}
|
||||
UnlockRes();
|
50
2.0.3-tls-disconnect.patch
Normal file
50
2.0.3-tls-disconnect.patch
Normal file
@ -0,0 +1,50 @@
|
||||
|
||||
This patch should fix the spurious connection drops that fail jobs
|
||||
as reported in bug #888.
|
||||
Apply it to version 2.0.3 (possibly earlier versions of 2.0) with:
|
||||
|
||||
cd <bacula-source>
|
||||
patch -p0 <2.0.3-tls-disconnect.patch
|
||||
make
|
||||
...
|
||||
make install
|
||||
|
||||
Index: src/lib/tls.c
|
||||
===================================================================
|
||||
--- src/lib/tls.c (revision 4668)
|
||||
+++ src/lib/tls.c (working copy)
|
||||
@@ -540,14 +540,6 @@
|
||||
* The first time to initiate the shutdown handshake, and the second to
|
||||
* receive the peer's reply.
|
||||
*
|
||||
- * However, it is valid to close the SSL connection after the initial
|
||||
- * shutdown notification is sent to the peer, without waiting for the
|
||||
- * peer's reply, as long as you do not plan to re-use that particular
|
||||
- * SSL connection object.
|
||||
- *
|
||||
- * Because we do not re-use SSL connection objects, I do not bother
|
||||
- * calling SSL_shutdown a second time.
|
||||
- *
|
||||
* In addition, if the underlying socket is blocking, SSL_shutdown()
|
||||
* will not return until the current stage of the shutdown process has
|
||||
* completed or an error has occured. By setting the socket blocking
|
||||
@@ -560,6 +552,10 @@
|
||||
flags = bnet_set_blocking(bsock);
|
||||
|
||||
err = SSL_shutdown(bsock->tls->openssl);
|
||||
+ if (err == 0) {
|
||||
+ /* Finish up the closing */
|
||||
+ err = SSL_shutdown(bsock->tls->openssl);
|
||||
+ }
|
||||
|
||||
switch (SSL_get_error(bsock->tls->openssl, err)) {
|
||||
case SSL_ERROR_NONE:
|
||||
@@ -574,8 +570,6 @@
|
||||
break;
|
||||
}
|
||||
|
||||
- /* Restore saved flags */
|
||||
- bnet_restore_blocking(bsock, flags);
|
||||
}
|
||||
|
||||
/* Does all the manual labor for tls_bsock_readn() and tls_bsock_writen() */
|
117
2.0.3-verify.patch
Normal file
117
2.0.3-verify.patch
Normal file
@ -0,0 +1,117 @@
|
||||
This patch should fix the problem reported in bug #803 where a Verify
|
||||
job select the JobId to verified at schedule time rather than at runtime.
|
||||
This makes it difficult or impossible to schedule a verify just after
|
||||
a backup.
|
||||
|
||||
Apply this patch to Bacula version 2.0.3 (probably 2.0.2 as well) with:
|
||||
|
||||
cd <bacula-source>
|
||||
patch -p0 <2.0.3-verify.patch
|
||||
make
|
||||
...
|
||||
make install
|
||||
|
||||
Index: src/dird/verify.c
|
||||
===================================================================
|
||||
--- src/dird/verify.c (revision 4353)
|
||||
+++ src/dird/verify.c (working copy)
|
||||
@@ -40,6 +25,21 @@
|
||||
(FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich,
|
||||
Switzerland, email:ftf@fsfeurope.org.
|
||||
*/
|
||||
+/*
|
||||
+ *
|
||||
+ * Bacula Director -- verify.c -- responsible for running file verification
|
||||
+ *
|
||||
+ * Kern Sibbald, October MM
|
||||
+ *
|
||||
+ * Basic tasks done here:
|
||||
+ * Open DB
|
||||
+ * Open connection with File daemon and pass him commands
|
||||
+ * to do the verify.
|
||||
+ * When the File daemon sends the attributes, compare them to
|
||||
+ * what is in the DB.
|
||||
+ *
|
||||
+ * Version $Id$
|
||||
+ */
|
||||
|
||||
|
||||
#include "bacula.h"
|
||||
@@ -66,6 +66,22 @@
|
||||
*/
|
||||
bool do_verify_init(JCR *jcr)
|
||||
{
|
||||
+ return true;
|
||||
+}
|
||||
+
|
||||
+
|
||||
+/*
|
||||
+ * Do a verification of the specified files against the Catlaog
|
||||
+ *
|
||||
+ * Returns: false on failure
|
||||
+ * true on success
|
||||
+ */
|
||||
+bool do_verify(JCR *jcr)
|
||||
+{
|
||||
+ const char *level;
|
||||
+ BSOCK *fd;
|
||||
+ int stat;
|
||||
+ char ed1[100];
|
||||
JOB_DBR jr;
|
||||
JobId_t verify_jobid = 0;
|
||||
const char *Name;
|
||||
@@ -74,12 +90,16 @@
|
||||
|
||||
memset(&jcr->previous_jr, 0, sizeof(jcr->previous_jr));
|
||||
|
||||
- Dmsg1(9, "bdird: created client %s record\n", jcr->client->hdr.name);
|
||||
-
|
||||
/*
|
||||
- * Find JobId of last job that ran. E.g.
|
||||
- * for VERIFY_CATALOG we want the JobId of the last INIT.
|
||||
- * for VERIFY_VOLUME_TO_CATALOG, we want the JobId of the
|
||||
+ * Find JobId of last job that ran. Note, we do this when
|
||||
+ * the job actually starts running, not at schedule time,
|
||||
+ * so that we find the last job that terminated before
|
||||
+ * this job runs rather than before it is scheduled. This
|
||||
+ * permits scheduling a Backup and Verify at the same time,
|
||||
+ * but with the Verify at a lower priority.
|
||||
+ *
|
||||
+ * For VERIFY_CATALOG we want the JobId of the last INIT.
|
||||
+ * For VERIFY_VOLUME_TO_CATALOG, we want the JobId of the
|
||||
* last backup Job.
|
||||
*/
|
||||
if (jcr->JobLevel == L_VERIFY_CATALOG ||
|
||||
@@ -89,7 +109,7 @@
|
||||
if (jcr->verify_job &&
|
||||
(jcr->JobLevel == L_VERIFY_VOLUME_TO_CATALOG ||
|
||||
jcr->JobLevel == L_VERIFY_DISK_TO_CATALOG)) {
|
||||
- Name = jcr->verify_job->hdr.name;
|
||||
+ Name = jcr->verify_job->name();
|
||||
} else {
|
||||
Name = NULL;
|
||||
}
|
||||
@@ -149,23 +169,7 @@
|
||||
jcr->fileset = jcr->verify_job->fileset;
|
||||
}
|
||||
Dmsg2(100, "ClientId=%u JobLevel=%c\n", jcr->previous_jr.ClientId, jcr->JobLevel);
|
||||
- return true;
|
||||
-}
|
||||
|
||||
-
|
||||
-/*
|
||||
- * Do a verification of the specified files against the Catlaog
|
||||
- *
|
||||
- * Returns: false on failure
|
||||
- * true on success
|
||||
- */
|
||||
-bool do_verify(JCR *jcr)
|
||||
-{
|
||||
- const char *level;
|
||||
- BSOCK *fd;
|
||||
- int stat;
|
||||
- char ed1[100];
|
||||
-
|
||||
if (!db_update_job_start_record(jcr, jcr->db, &jcr->jr)) {
|
||||
Jmsg(jcr, M_FATAL, 0, "%s", db_strerror(jcr->db));
|
||||
return false;
|
256
bacula-config.patch
Normal file
256
bacula-config.patch
Normal file
@ -0,0 +1,256 @@
|
||||
--- bacula-2.0.2/src/gnome2-console/gnome-console.conf.in.orig 2007-02-06 13:35:12.000000000 +0100
|
||||
+++ bacula-2.0.2/src/gnome2-console/gnome-console.conf.in 2007-02-06 13:35:25.000000000 +0100
|
||||
@@ -3,9 +3,9 @@
|
||||
#
|
||||
|
||||
Director {
|
||||
- Name = @hostname@-dir
|
||||
+ Name = bacula-dir
|
||||
DIRport = @dir_port@
|
||||
- address = @hostname@
|
||||
+ address = server.example.com
|
||||
Password = "@dir_password@"
|
||||
}
|
||||
|
||||
--- bacula-2.0.2/src/dird/bacula-dir.conf.in.orig 2007-02-06 13:33:19.000000000 +0100
|
||||
+++ bacula-2.0.2/src/dird/bacula-dir.conf.in 2007-02-06 13:34:49.000000000 +0100
|
||||
@@ -13,7 +13,7 @@
|
||||
#
|
||||
|
||||
Director { # define myself
|
||||
- Name = @hostname@-dir
|
||||
+ Name = bacula-dir
|
||||
DIRport = @dir_port@ # where we listen for UA connections
|
||||
QueryFile = "@scriptdir@/query.sql"
|
||||
WorkingDirectory = "@working_dir@"
|
||||
@@ -27,7 +27,7 @@
|
||||
Name = "DefaultJob"
|
||||
Type = Backup
|
||||
Level = Incremental
|
||||
- Client = @hostname@-fd
|
||||
+ Client = bacula-fd
|
||||
FileSet = "Full Set"
|
||||
Schedule = "WeeklyCycle"
|
||||
Storage = File
|
||||
@@ -48,7 +48,7 @@
|
||||
|
||||
#Job {
|
||||
# Name = "Client2"
|
||||
-# Client = @hostname@2-fd
|
||||
+# Client = bacula2-fd
|
||||
# JobDefs = "DefaultJob"
|
||||
# Write Bootstrap = "@working_dir@/Client2.bsr"
|
||||
#}
|
||||
@@ -75,7 +75,7 @@
|
||||
Job {
|
||||
Name = "RestoreFiles"
|
||||
Type = Restore
|
||||
- Client=@hostname@-fd
|
||||
+ Client=bacula-fd
|
||||
FileSet="Full Set"
|
||||
Storage = File
|
||||
Pool = Default
|
||||
@@ -149,8 +149,8 @@
|
||||
|
||||
# Client (File Services) to backup
|
||||
Client {
|
||||
- Name = @hostname@-fd
|
||||
- Address = @hostname@
|
||||
+ Name = bacula-fd
|
||||
+ Address = client.example.com
|
||||
FDPort = @fd_port@
|
||||
Catalog = MyCatalog
|
||||
Password = "@fd_password@" # password for FileDaemon
|
||||
@@ -164,8 +164,8 @@
|
||||
# You should change Name, Address, and Password before using
|
||||
#
|
||||
#Client {
|
||||
-# Name = @hostname@2-fd
|
||||
-# Address = @hostname@2
|
||||
+# Name = bacula2-fd
|
||||
+# Address = client2.example.com
|
||||
# FDPort = @fd_port@
|
||||
# Catalog = MyCatalog
|
||||
# Password = "@fd_password@2" # password for FileDaemon 2
|
||||
@@ -179,7 +179,7 @@
|
||||
Storage {
|
||||
Name = File
|
||||
# Do not use "localhost" here
|
||||
- Address = @hostname@ # N.B. Use a fully qualified name here
|
||||
+ Address = storage.example.com # N.B. Use a fully qualified name here
|
||||
SDPort = @sd_port@
|
||||
Password = "@sd_password@"
|
||||
Device = FileStorage
|
||||
@@ -192,7 +192,7 @@
|
||||
#Storage {
|
||||
# Name = DDS-4
|
||||
# Do not use "localhost" here
|
||||
-# Address = @hostname@ # N.B. Use a fully qualified name here
|
||||
+# Address = storage.example.com # N.B. Use a fully qualified name here
|
||||
# SDPort = @sd_port@
|
||||
# Password = "@sd_password@" # password for Storage daemon
|
||||
# Device = DDS-4 # must be same as Device in Storage daemon
|
||||
@@ -204,7 +204,7 @@
|
||||
#Storage {
|
||||
# Name = "8mmDrive"
|
||||
# Do not use "localhost" here
|
||||
-# Address = @hostname@ # N.B. Use a fully qualified name here
|
||||
+# Address = storage.example.com # N.B. Use a fully qualified name here
|
||||
# SDPort = @sd_port@
|
||||
# Password = "@sd_password@"
|
||||
# Device = "Exabyte 8mm"
|
||||
@@ -215,7 +215,7 @@
|
||||
#Storage {
|
||||
# Name = "DVD"
|
||||
# Do not use "localhost" here
|
||||
-# Address = @hostname@ # N.B. Use a fully qualified name here
|
||||
+# Address = storage.example.com # N.B. Use a fully qualified name here
|
||||
# SDPort = @sd_port@
|
||||
# Password = "@sd_password@"
|
||||
# Device = "DVD Writer"
|
||||
@@ -285,7 +285,7 @@
|
||||
# Restricted console used by tray-monitor to get the status of the director
|
||||
#
|
||||
Console {
|
||||
- Name = @hostname@-mon
|
||||
+ Name = bacula-mon
|
||||
Password = "@mon_dir_password@"
|
||||
CommandACL = status, .status
|
||||
}
|
||||
--- bacula-2.0.2/src/filed/bacula-fd.conf.in.orig 2007-02-06 13:30:59.000000000 +0100
|
||||
+++ bacula-2.0.2/src/filed/bacula-fd.conf.in 2007-02-06 13:31:25.000000000 +0100
|
||||
@@ -11,7 +11,7 @@
|
||||
# List Directors who are permitted to contact this File daemon
|
||||
#
|
||||
Director {
|
||||
- Name = @hostname@-dir
|
||||
+ Name = bacula-dir
|
||||
Password = "@fd_password@"
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
# status of the file daemon
|
||||
#
|
||||
Director {
|
||||
- Name = @hostname@-mon
|
||||
+ Name = bacula-mon
|
||||
Password = "@mon_fd_password@"
|
||||
Monitor = yes
|
||||
}
|
||||
@@ -29,7 +29,7 @@
|
||||
# "Global" File daemon configuration specifications
|
||||
#
|
||||
FileDaemon { # this is me
|
||||
- Name = @hostname@-fd
|
||||
+ Name = bacula-fd
|
||||
FDport = @fd_port@ # where we listen for the director
|
||||
WorkingDirectory = @working_dir@
|
||||
Pid Directory = @piddir@
|
||||
@@ -39,5 +39,5 @@
|
||||
# Send all messages except skipped files back to Director
|
||||
Messages {
|
||||
Name = Standard
|
||||
- director = @hostname@-dir = all, !skipped, !restored
|
||||
+ director = bacula-dir = all, !skipped, !restored
|
||||
}
|
||||
--- bacula-2.0.2/src/console/bconsole.conf.in.orig 2007-02-06 13:32:30.000000000 +0100
|
||||
+++ bacula-2.0.2/src/console/bconsole.conf.in 2007-02-06 13:33:06.000000000 +0100
|
||||
@@ -3,8 +3,8 @@
|
||||
#
|
||||
|
||||
Director {
|
||||
- Name = @hostname@-dir
|
||||
+ Name = bacula-dir
|
||||
DIRport = @dir_port@
|
||||
- address = @hostname@
|
||||
+ address = server.example.com
|
||||
Password = "@dir_password@"
|
||||
}
|
||||
--- bacula-2.0.2/src/stored/bacula-sd.conf.in.orig 2007-02-06 13:31:56.000000000 +0100
|
||||
+++ bacula-2.0.2/src/stored/bacula-sd.conf.in 2007-02-06 13:32:15.000000000 +0100
|
||||
@@ -11,7 +11,7 @@
|
||||
#
|
||||
|
||||
Storage { # definition of myself
|
||||
- Name = @hostname@-sd
|
||||
+ Name = bacula-sd
|
||||
SDPort = @sd_port@ # Director's port
|
||||
WorkingDirectory = "@working_dir@"
|
||||
Pid Directory = "@piddir@"
|
||||
@@ -22,7 +22,7 @@
|
||||
# List Directors who are permitted to contact Storage daemon
|
||||
#
|
||||
Director {
|
||||
- Name = @hostname@-dir
|
||||
+ Name = bacula-dir
|
||||
Password = "@sd_password@"
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
# status of the storage daemon
|
||||
#
|
||||
Director {
|
||||
- Name = @hostname@-mon
|
||||
+ Name = bacula-mon
|
||||
Password = "@mon_sd_password@"
|
||||
Monitor = yes
|
||||
}
|
||||
@@ -204,5 +204,5 @@
|
||||
#
|
||||
Messages {
|
||||
Name = Standard
|
||||
- director = @hostname@-dir = all
|
||||
+ director = bacula-dir = all
|
||||
}
|
||||
--- bacula-2.0.2/src/wx-console/wx-console.conf.in.orig 2007-02-06 13:37:12.000000000 +0100
|
||||
+++ bacula-2.0.2/src/wx-console/wx-console.conf.in 2007-02-06 13:47:02.000000000 +0100
|
||||
@@ -3,8 +3,8 @@
|
||||
#
|
||||
|
||||
Director {
|
||||
- Name = @hostname@-dir
|
||||
+ Name = bacula-dir
|
||||
DIRport = @dir_port@
|
||||
- address = @hostname@
|
||||
+ address = server.example.com
|
||||
Password = "@dir_password@"
|
||||
}
|
||||
--- bacula-2.0.2/src/tray-monitor/tray-monitor.conf.in.orig 2007-02-06 13:47:13.000000000 +0100
|
||||
+++ bacula-2.0.2/src/tray-monitor/tray-monitor.conf.in 2007-02-06 13:47:55.000000000 +0100
|
||||
@@ -3,27 +3,27 @@
|
||||
#
|
||||
|
||||
Monitor {
|
||||
- Name = @hostname@-mon
|
||||
+ Name = bacula-mon
|
||||
Password = "@mon_dir_password@" # password for the Directors
|
||||
RefreshInterval = 5 seconds
|
||||
}
|
||||
|
||||
Client {
|
||||
- Name = @hostname@-fd
|
||||
- Address = @hostname@
|
||||
+ Name = bacula-fd
|
||||
+ Address = client.example.com
|
||||
FDPort = @fd_port@
|
||||
Password = "@mon_fd_password@" # password for FileDaemon
|
||||
}
|
||||
|
||||
Storage {
|
||||
- Name = @hostname@-sd
|
||||
- Address = @hostname@
|
||||
+ Name = bacula-sd
|
||||
+ Address = storage.example.com
|
||||
SDPort = @sd_port@
|
||||
Password = "@mon_sd_password@" # password for StorageDaemon
|
||||
}
|
||||
|
||||
Director {
|
||||
- Name = @hostname@-dir
|
||||
+ Name = bacula-dir
|
||||
DIRport = @dir_port@
|
||||
- address = @hostname@
|
||||
-}
|
||||
\ No newline at end of file
|
||||
+ address = server.example.com
|
||||
+}
|
128
bacula-dir.init
Normal file
128
bacula-dir.init
Normal file
@ -0,0 +1,128 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# bacula-dir This shell script takes care of starting and stopping
|
||||
# the bacula-dir daemon, the backup director controling
|
||||
# the backup jobs.
|
||||
#
|
||||
# chkconfig: - 80 20
|
||||
# description: Bacula-dir is the Backup-server, which is the program \
|
||||
# that schedules backups and controls the bacula-client and \
|
||||
# the bacula-storage daemons.
|
||||
# processname: bacula-dir
|
||||
# config: /etc/bacula/bacula-dir.conf
|
||||
# pidfile: /var/run/bacula-dir.9101.pid
|
||||
|
||||
# Source function library.
|
||||
. /etc/init.d/functions
|
||||
|
||||
# Source configuration.
|
||||
if [ -f /etc/sysconfig/bacula-dir ] ; then
|
||||
. /etc/sysconfig/bacula-dir
|
||||
fi
|
||||
|
||||
RETVAL=0
|
||||
prog="bacula-dir"
|
||||
CONFIG="/etc/bacula/bacula-dir.conf"
|
||||
OPTS="-c $CONFIG"
|
||||
|
||||
checkconf() {
|
||||
# Check if we still have our @@PLACEHOLDERS@@ in the config.
|
||||
# If yes, refuse to start, the user has never touched the config.
|
||||
grep -q '^[^#].*_PASSWORD@@' $CONFIG
|
||||
if [ $? -eq 0 ]; then
|
||||
echo -n "Error: Not been configured"
|
||||
echo_failure
|
||||
echo
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
checkdatabase() {
|
||||
# First, get the currently selected database backend from the
|
||||
# alternatives system.
|
||||
DB=$(LANG=C alternatives --display bacula-dir | grep 'link currently points to' | awk -F. '{ print $2 }')
|
||||
case "$DB" in
|
||||
sqlite)
|
||||
# No check needed to see if the Database is running
|
||||
;;
|
||||
mysql)
|
||||
# Check if mysqld is running
|
||||
service mysqld status > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -n "Error: MySQL not running"
|
||||
echo_failure
|
||||
echo
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
postgresql)
|
||||
# Check if postgresql is running
|
||||
service postgresql status > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -n "Error: PostgreSQL not running"
|
||||
echo_failure
|
||||
echo
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo -n "Error: Unknown database backend"
|
||||
echo_failure
|
||||
echo
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
start() {
|
||||
echo -n "Starting $prog: "
|
||||
checkconf
|
||||
# Removed for now, as the db might not be on localhost
|
||||
# checkdatabase
|
||||
daemon $prog $OPTS
|
||||
RETVAL=$?
|
||||
echo
|
||||
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
|
||||
return $RETVAL
|
||||
}
|
||||
|
||||
stop() {
|
||||
echo -n "Shutting down $prog: "
|
||||
killproc $prog
|
||||
RETVAL=$?
|
||||
echo
|
||||
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog
|
||||
return $RETVAL
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
start
|
||||
;;
|
||||
stop)
|
||||
stop
|
||||
;;
|
||||
status)
|
||||
status $prog
|
||||
;;
|
||||
restart)
|
||||
stop
|
||||
start
|
||||
RETVAL=$?
|
||||
;;
|
||||
reload)
|
||||
;;
|
||||
condrestart)
|
||||
if [ -f /var/lock/subsys/$prog ]; then
|
||||
stop
|
||||
start
|
||||
RETVAL=$?
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $prog {start|stop|status|reload|restart}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
exit $?
|
34
bacula-director-configuration.patch
Normal file
34
bacula-director-configuration.patch
Normal file
@ -0,0 +1,34 @@
|
||||
--- bacula-1.38.11/src/dird/bacula-dir.conf.in.orig 2006-09-03 03:13:26.000000000 +0200
|
||||
+++ bacula-1.38.11/src/dird/bacula-dir.conf.in 2006-09-03 03:14:46.000000000 +0200
|
||||
@@ -15,7 +15,7 @@
|
||||
Director { # define myself
|
||||
Name = @hostname@-dir
|
||||
DIRport = @dir_port@ # where we listen for UA connections
|
||||
- QueryFile = "@scriptdir@/query.sql"
|
||||
+ QueryFile = "/etc/bacula/query.sql"
|
||||
WorkingDirectory = "@working_dir@"
|
||||
PidDirectory = "@piddir@"
|
||||
Maximum Concurrent Jobs = 1
|
||||
@@ -101,11 +101,10 @@
|
||||
# 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.
|
||||
+# This File-directive would backup your whole filesystem.
|
||||
+# It is disabled by default
|
||||
#
|
||||
- File = @BUILD_DIR@
|
||||
+# File = /
|
||||
}
|
||||
|
||||
#
|
||||
@@ -266,7 +266,7 @@
|
||||
mailcommand = "@sbindir@/bsmtp -h @smtp_host@ -f \"\(Bacula\) %r\" -s \"Bacula daemon message\" %r"
|
||||
mail = @job_email@ = all, !skipped
|
||||
console = all, !skipped, !saved
|
||||
- append = "@working_dir@/log" = all, !skipped
|
||||
+ append = "/var/log/bacula.log" = all, !skipped
|
||||
}
|
||||
|
89
bacula-fd.init
Normal file
89
bacula-fd.init
Normal file
@ -0,0 +1,89 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# bacula-fd This shell script takes care of starting and stopping
|
||||
# the bacula-fd daemon, the backup client enabling bacula
|
||||
# to backup the local machine.
|
||||
#
|
||||
# chkconfig: - 80 20
|
||||
# description: Bacula-fd is a Backup-client, which is the program \
|
||||
# that enables the bacula-server to backup the local \
|
||||
# machine.
|
||||
# processname: bacula-fd
|
||||
# config: /etc/bacula/bacula-fd.conf
|
||||
# pidfile: /var/run/bacula-fd.9102.pid
|
||||
|
||||
# Source function library.
|
||||
. /etc/init.d/functions
|
||||
|
||||
# Source configuration.
|
||||
if [ -f /etc/sysconfig/bacula-fd ] ; then
|
||||
. /etc/sysconfig/bacula-fd
|
||||
fi
|
||||
|
||||
RETVAL=0
|
||||
prog="bacula-fd"
|
||||
CONFIG="/etc/bacula/bacula-fd.conf"
|
||||
OPTS="-c $CONFIG"
|
||||
|
||||
checkconf() {
|
||||
# Check if we still have our @@PLACEHOLDERS@@ in the config.
|
||||
# If yes, refuse to start, the user has never touched the config.
|
||||
grep -q '_PASSWORD@@' $CONFIG
|
||||
if [ $? -eq 0 ]; then
|
||||
echo -n "Error: Not been configured"
|
||||
echo_failure
|
||||
echo
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
start() {
|
||||
echo -n "Starting $prog: "
|
||||
checkconf
|
||||
daemon $prog $OPTS
|
||||
RETVAL=$?
|
||||
echo
|
||||
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
|
||||
return $RETVAL
|
||||
}
|
||||
|
||||
stop() {
|
||||
echo -n "Shutting down $prog: "
|
||||
killproc $prog
|
||||
RETVAL=$?
|
||||
echo
|
||||
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog
|
||||
return $RETVAL
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
start
|
||||
;;
|
||||
stop)
|
||||
stop
|
||||
;;
|
||||
status)
|
||||
status $prog
|
||||
;;
|
||||
restart)
|
||||
stop
|
||||
start
|
||||
RETVAL=$?
|
||||
;;
|
||||
reload)
|
||||
;;
|
||||
condrestart)
|
||||
if [ -f /var/lock/subsys/$prog ]; then
|
||||
stop
|
||||
start
|
||||
RETVAL=$?
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $prog {start|stop|status|reload|restart}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
exit $?
|
12
bacula-gconsole.desktop
Normal file
12
bacula-gconsole.desktop
Normal file
@ -0,0 +1,12 @@
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Encoding=UTF-8
|
||||
Name=Bacula Console
|
||||
GenericName=Backup Management Console
|
||||
Comment=Control your Bacula Server
|
||||
Exec=gnome-console -c /etc/bacula/wxconsole.conf
|
||||
Icon=bacula.png
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Categories=System;Application;Utility
|
||||
|
23
bacula-pamd.patch
Normal file
23
bacula-pamd.patch
Normal file
@ -0,0 +1,23 @@
|
||||
--- bacula-2.0.3/scripts/wxconsole.pamd.orig 2007-07-11 18:43:10.000000000 +0200
|
||||
+++ bacula-2.0.3/scripts/wxconsole.pamd 2007-07-11 18:43:23.000000000 +0200
|
||||
@@ -1,7 +1,7 @@
|
||||
#%PAM-1.0
|
||||
auth sufficient pam_rootok.so
|
||||
auth sufficient pam_timestamp.so
|
||||
-auth required pam_stack.so service=system-auth
|
||||
+auth include system-auth
|
||||
session optional pam_xauth.so
|
||||
session optional pam_timestamp.so
|
||||
account required pam_permit.so
|
||||
--- bacula-2.0.3/scripts/gnome-console.pamd.orig 2007-07-11 18:42:33.000000000 +0200
|
||||
+++ bacula-2.0.3/scripts/gnome-console.pamd 2007-07-11 18:42:57.000000000 +0200
|
||||
@@ -1,7 +1,7 @@
|
||||
#%PAM-1.0
|
||||
auth sufficient pam_rootok.so
|
||||
auth sufficient pam_timestamp.so
|
||||
-auth required pam_stack.so service=system-auth
|
||||
+auth include system-auth
|
||||
session optional pam_xauth.so
|
||||
session optional pam_timestamp.so
|
||||
account required pam_permit.so
|
||||
|
127
bacula-sd.init
Normal file
127
bacula-sd.init
Normal file
@ -0,0 +1,127 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# bacula-sd This shell script takes care of starting and stopping
|
||||
# the bacula-sd daemon, the storage daemon responsible
|
||||
# for accessing the backup storage device.
|
||||
#
|
||||
# chkconfig: - 80 20
|
||||
# description: Bacula-sd is the storage-server, which is the program \
|
||||
# that accesses the storage device.
|
||||
# processname: bacula-sd
|
||||
# config: /etc/bacula/bacula-sd.conf
|
||||
# pidfile: /var/run/bacula-dir.9103.pid
|
||||
|
||||
# Source function library.
|
||||
. /etc/init.d/functions
|
||||
|
||||
# Source configuration.
|
||||
if [ -f /etc/sysconfig/bacula-sd ] ; then
|
||||
. /etc/sysconfig/bacula-sd
|
||||
fi
|
||||
|
||||
RETVAL=0
|
||||
prog="bacula-sd"
|
||||
CONFIG="/etc/bacula/bacula-sd.conf"
|
||||
OPTS="-c $CONFIG"
|
||||
|
||||
checkconf() {
|
||||
# Check if we still have our @@PLACEHOLDERS@@ in the config.
|
||||
# If yes, refuse to start, the user has never touched the config.
|
||||
grep -q '^[^#].*_PASSWORD@@' $CONFIG
|
||||
if [ $? -eq 0 ]; then
|
||||
echo -n "Error: Not been configured"
|
||||
echo_failure
|
||||
echo
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
checkdatabase() {
|
||||
# First, get the currently selected database backend from the
|
||||
# alternatives system.
|
||||
DB=$(LANG=C alternatives --display bacula-sd | grep 'link currently points to' | awk -F. '{ print $2 }')
|
||||
case "$DB" in
|
||||
sqlite)
|
||||
# No check needed to see if the Database is running
|
||||
;;
|
||||
mysql)
|
||||
# Check if mysqld is running
|
||||
service mysqld status > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -n "Error: MySQL not running"
|
||||
echo_failure
|
||||
echo
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
postgresql)
|
||||
# Check if postgresql is running
|
||||
service postgresql status > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -n "Error: PostgreSQL not running"
|
||||
echo_failure
|
||||
echo
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo -n "Error: Unknown database backend"
|
||||
echo_failure
|
||||
echo
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
start() {
|
||||
echo -n "Starting $prog: "
|
||||
checkconf
|
||||
# Disabled, the DB does not necessarily run on the same machine
|
||||
# checkdatabase
|
||||
daemon $prog $OPTS
|
||||
RETVAL=$?
|
||||
echo
|
||||
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
|
||||
return $RETVAL
|
||||
}
|
||||
|
||||
stop() {
|
||||
echo -n "Shutting down $prog: "
|
||||
killproc $prog
|
||||
RETVAL=$?
|
||||
echo
|
||||
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog
|
||||
return $RETVAL
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
start
|
||||
;;
|
||||
stop)
|
||||
stop
|
||||
;;
|
||||
status)
|
||||
status $prog
|
||||
;;
|
||||
restart)
|
||||
stop
|
||||
start
|
||||
RETVAL=$?
|
||||
;;
|
||||
reload)
|
||||
;;
|
||||
condrestart)
|
||||
if [ -f /var/lock/subsys/$prog ]; then
|
||||
stop
|
||||
start
|
||||
RETVAL=$?
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $prog {start|stop|status|reload|restart}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
exit $?
|
11
bacula-traymonitor.desktop
Normal file
11
bacula-traymonitor.desktop
Normal file
@ -0,0 +1,11 @@
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Encoding=UTF-8
|
||||
Name=Bacula Monitor
|
||||
GenericName=Bacula Tray Monitor
|
||||
Comment=Monitor your Bacula Backup server
|
||||
Exec=bacula-tray-monitor -c /etc/bacula/tray-monitor.conf
|
||||
Icon=bacula-tray-monitor.xpm
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Categories=System;Application;Utility
|
11
bacula-wxconsole.desktop
Normal file
11
bacula-wxconsole.desktop
Normal file
@ -0,0 +1,11 @@
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Encoding=UTF-8
|
||||
Name=Bacula WX Console
|
||||
GenericName=Backup Management Console
|
||||
Comment=Control your Bacula Server
|
||||
Exec=wxconsole -c /etc/bacula/wxconsole.conf
|
||||
Icon=wxwin16x16.xpm
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Categories=System;Application;Utility
|
10
bacula-wxconsole.patch
Normal file
10
bacula-wxconsole.patch
Normal file
@ -0,0 +1,10 @@
|
||||
--- bacula-2.0.2/src/wx-console/wxbrestorepanel.cpp.orig 2007-02-06 21:32:02.000000000 +0100
|
||||
+++ bacula-2.0.2/src/wx-console/wxbrestorepanel.cpp 2007-02-06 21:32:20.000000000 +0100
|
||||
@@ -80,6 +80,7 @@
|
||||
#include "unmarked.xpm"
|
||||
#include "marked.xpm"
|
||||
#include "partmarked.xpm"
|
||||
+#include <wx/imaglist.h>
|
||||
#include <wx/listimpl.cpp>
|
||||
|
||||
/* A macro named Yield is defined under MinGW */
|
9
bacula.logrotate
Normal file
9
bacula.logrotate
Normal file
@ -0,0 +1,9 @@
|
||||
# Bacula logrotate script
|
||||
|
||||
/var/log/bacula/*.log {
|
||||
monthly
|
||||
rotate 4
|
||||
notifempty
|
||||
missingok
|
||||
}
|
||||
|
968
bacula.spec
Normal file
968
bacula.spec
Normal file
@ -0,0 +1,968 @@
|
||||
%define working_dir /var/spool/bacula
|
||||
%define script_dir /usr/libexec/bacula
|
||||
#%define rescue_version 2.0.0
|
||||
%define docs_version %{version}
|
||||
%define gui_version %{version}
|
||||
%define config_dir %{_sysconfdir}/bacula
|
||||
|
||||
Summary: Cross platform network backup for Linux, Unix, Mac and Windows
|
||||
Name: bacula
|
||||
Version: 2.0.3
|
||||
Release: 8%{?dist}
|
||||
License: GPL
|
||||
Group: System Environment/Daemons
|
||||
Source0: http://download.sourceforge.net/bacula/bacula-%{version}.tar.gz
|
||||
Source1: http://download.sourceforge.net/bacula/bacula-docs-%{docs_version}.tar.gz
|
||||
#Source2: http://download.sourceforge.net/bacula/bacula-rescue-%{rescue_version}.tar.gz
|
||||
Source3: bacula-gconsole.desktop
|
||||
Source4: bacula-wxconsole.desktop
|
||||
Source5: bacula-traymonitor.desktop
|
||||
Source6: bacula.logrotate
|
||||
Source7: bacula-fd.init
|
||||
Source8: bacula-dir.init
|
||||
Source9: bacula-sd.init
|
||||
#Source10: http://download.sourceforge.net/bacula/bacula-gui-%{gui_version}.tar.gz
|
||||
#Source11: bacula-web.apache
|
||||
Patch0: bacula-director-configuration.patch
|
||||
Patch1: bacula-config.patch
|
||||
Patch2: bacula-wxconsole.patch
|
||||
Patch3: bacula-pamd.patch
|
||||
Patch4: 2.0.3-ampm.patch
|
||||
Patch5: 2.0.3-maxbyteslist.patch
|
||||
Patch6: 2.0.3-maxwaittime.patch
|
||||
Patch7: 2.0.3-scheduler-next-hour.patch
|
||||
Patch8: 2.0.3-verify.patch
|
||||
Patch9: 2.0.3-tls-disconnect.patch
|
||||
#Patch10: bacula-web-smarty.patch
|
||||
URL: http://www.bacula.org
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
BuildRequires: openssl-devel, atk-devel, ncurses-devel, pango-devel, perl
|
||||
BuildRequires: libstdc++-devel, libxml2-devel, zlib-devel, pkgconfig
|
||||
BuildRequires: libtermcap-devel, gtk2-devel, libgnomeui-devel, GConf2-devel
|
||||
BuildRequires: glibc-devel, ORBit2-devel, libart_lgpl-devel, freetype-devel
|
||||
BuildRequires: libbonobo-devel, libbonoboui-devel, bonobo-activation-devel
|
||||
BuildRequires: mysql-devel, cdrecord, postgresql-devel, wxGTK-devel
|
||||
BuildRequires: desktop-file-utils, python-devel, sqlite-devel, sed,
|
||||
BuildRequires: libacl-devel, latex2html, tetex-latex, tetex, ghostscript
|
||||
|
||||
%if "%{fedora}" >= "7"
|
||||
BuildRequires: tcp_wrappers-devel
|
||||
%else
|
||||
BuildRequires: tcp_wrappers
|
||||
%endif
|
||||
|
||||
%description
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture and is
|
||||
efficient and relatively easy to use, while offering many advanced
|
||||
storage management features that make it easy to find and recover lost
|
||||
or damaged files.
|
||||
|
||||
|
||||
%package director-mysql
|
||||
Summary: Bacula Director with MySQL database support
|
||||
Group: System Environment/Daemons
|
||||
Provides: bacula-director = %{version}-%{release}
|
||||
Requires: bacula-director-common = %{version}-%{release}
|
||||
Requires: bacula-common = %{version}-%{release}
|
||||
Requires: mysql-server
|
||||
|
||||
%description director-mysql
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture.
|
||||
|
||||
This package contains the bacula director, the server which controls
|
||||
your backup run.
|
||||
This director has support for the MySQL database.
|
||||
|
||||
|
||||
%package director-sqlite
|
||||
Summary: Bacula Director with sqlite database support
|
||||
Group: System Environment/Daemons
|
||||
Provides: bacula-director = %{version}-%{release}
|
||||
Requires: bacula-director-common = %{version}-%{release}
|
||||
Requires: bacula-common = %{version}-%{release}
|
||||
|
||||
%description director-sqlite
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture.
|
||||
|
||||
This package contains the bacula director, the server which controls
|
||||
your backup run.
|
||||
This director has support for the sqlite database.
|
||||
|
||||
|
||||
%package director-postgresql
|
||||
Summary: Bacula Director with PostgresSQL database support
|
||||
Group: System Environment/Daemons
|
||||
Provides: bacula-director = %{version}-%{release}
|
||||
Requires: bacula-director-common = %{version}-%{release}
|
||||
Requires: bacula-common = %{version}-%{release}
|
||||
Requires: postgresql-server
|
||||
|
||||
%description director-postgresql
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture.
|
||||
|
||||
This package contains the bacula director, the server which controls
|
||||
your backup run.
|
||||
This director has support for the PostgresSQL database.
|
||||
|
||||
|
||||
%package director-common
|
||||
Summary: Common Bacula Director files
|
||||
Group: System Environment/Daemons
|
||||
Requires: bacula-director = %{version}-%{release}
|
||||
Requires: bacula-common = %{version}-%{release}
|
||||
Requires(pre): fedora-usermgmt
|
||||
Requires(postun): fedora-usermgmt
|
||||
|
||||
%description director-common
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture.
|
||||
|
||||
This package contains the common director files, which are shared
|
||||
between all database backends. You have to select a possible
|
||||
database backend though, which provides the needed bacula-director
|
||||
dependency. Please choose from bacula-director-mysql,
|
||||
bacula-director-sqlite or bacula-director-postgresql.
|
||||
|
||||
|
||||
%package client
|
||||
Summary: Bacula backup client
|
||||
Group: System Environment/Daemons
|
||||
Requires: bacula-common = %{version}-%{release}
|
||||
Requires(post): /sbin/chkconfig
|
||||
Requires(preun): /sbin/chkconfig
|
||||
Requires(preun): /sbin/service
|
||||
Requires(postun): /sbin/service
|
||||
|
||||
%description client
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture.
|
||||
|
||||
This package contains the bacula client, the daemon running on the
|
||||
system to be backed up.
|
||||
|
||||
|
||||
%package storage-common
|
||||
Summary: Common Bacula storage daemon files
|
||||
Group: System Environment/Daemons
|
||||
Requires: bacula-storage = %{version}-%{release}
|
||||
Requires: bacula-common = %{version}-%{release}
|
||||
|
||||
%description storage-common
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture.
|
||||
|
||||
This package contains the storage daemon, the daemon responsible for
|
||||
writing the data received from the clients onto tape drives or other
|
||||
mass storage devices.
|
||||
|
||||
|
||||
%package storage-mysql
|
||||
Summary: MySQL Bacula storage daemon files
|
||||
Group: System Environment/Daemons
|
||||
Provides: bacula-storage = %{version}-%{release}
|
||||
Requires: bacula-storage-common = %{version}-%{release}
|
||||
Requires: bacula-common = %{version}-%{release}
|
||||
Requires: mysql-server
|
||||
|
||||
%description storage-mysql
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture.
|
||||
|
||||
This package contains the storage daemon, the daemon responsible for
|
||||
writing the data received from the clients onto tape drives or other
|
||||
mass storage devices.
|
||||
|
||||
|
||||
%package storage-sqlite
|
||||
Summary: SQLite Bacula storage daemon files
|
||||
Group: System Environment/Daemons
|
||||
Provides: bacula-storage = %{version}-%{release}
|
||||
Requires: bacula-storage-common = %{version}-%{release}
|
||||
Requires: bacula-common = %{version}-%{release}
|
||||
|
||||
%description storage-sqlite
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture.
|
||||
|
||||
This package contains the storage daemon, the daemon responsible for
|
||||
writing the data received from the clients onto tape drives or other
|
||||
mass storage devices.
|
||||
|
||||
|
||||
%package storage-postgresql
|
||||
Summary: Common Bacula storage daemon files
|
||||
Group: System Environment/Daemons
|
||||
Provides: bacula-storage = %{version}-%{release}
|
||||
Requires: bacula-storage-common = %{version}-%{release}
|
||||
Requires: bacula-common = %{version}-%{release}
|
||||
Requires: postgresql-server
|
||||
|
||||
%description storage-postgresql
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture.
|
||||
|
||||
This package contains the storage daemon, the daemon responsible for
|
||||
writing the data received from the clients onto tape drives or other
|
||||
mass storage devices.
|
||||
|
||||
|
||||
%package common
|
||||
Summary: Common Bacula utilities
|
||||
Group: System Environment/Daemons
|
||||
Requires(pre): fedora-usermgmt
|
||||
Requires(postun): fedora-usermgmt
|
||||
|
||||
%description common
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture.
|
||||
|
||||
|
||||
%package console
|
||||
Summary: Bacula management console
|
||||
Group: System Environment/Daemons
|
||||
|
||||
%description console
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture.
|
||||
|
||||
This package contains the command-line management console for the bacula
|
||||
backup system.
|
||||
|
||||
|
||||
%package console-gnome
|
||||
Summary: Bacula console for the Gnome desktop environment
|
||||
Group: System Environment/Daemons
|
||||
Requires: usermode
|
||||
|
||||
%description console-gnome
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture.
|
||||
|
||||
This package contains the gnome version of the bacula management console
|
||||
|
||||
|
||||
%package console-wxwidgets
|
||||
Summary: Bacula console using the wx widgets toolkit
|
||||
Group: System Environment/Daemons
|
||||
Requires: usermode
|
||||
|
||||
%description console-wxwidgets
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture.
|
||||
|
||||
This package contains the wxWidgets version of the bacula management
|
||||
console.
|
||||
|
||||
|
||||
%package traymonitor
|
||||
Summary: Bacula monitor for the Gnome and KDE system tray
|
||||
Group: System Environment/Daemons
|
||||
|
||||
%description traymonitor
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture.
|
||||
|
||||
This package contains the Gnome- and KDE-compatible tray monitor to
|
||||
monitor your bacula server.
|
||||
|
||||
|
||||
#%package web
|
||||
#Summary: Bacula Web Interface for monitoring the Backup status
|
||||
#Group: System Environment/Daemons
|
||||
#Conflicts: bacula-storage-sqlite
|
||||
#Requires: php, webserver, php-pear-DB, php-gd, php-Smarty
|
||||
|
||||
#%description web
|
||||
#Bacula is a set of programs that allow you to manage the backup,
|
||||
#recovery, and verification of computer data across a network of
|
||||
#different computers. It is based on a client/server architecture.
|
||||
|
||||
#This package contains the bacula-web PHP application, which is
|
||||
#a management level tool for reporting Backup job status.
|
||||
|
||||
|
||||
%package docs
|
||||
Summary: Bacula documentation
|
||||
Group: Documentation
|
||||
|
||||
%description docs
|
||||
Bacula is a set of programs that allow you to manage the backup,
|
||||
recovery, and verification of computer data across a network of
|
||||
different computers. It is based on a client/server architecture.
|
||||
|
||||
This package contains the documentation for most of the bacula-packages.
|
||||
|
||||
|
||||
%prep
|
||||
%setup -q -c -n bacula-%{version}
|
||||
%setup -q -a 1 -D -T
|
||||
#%setup -q -a 2 -D -T
|
||||
#%setup -q -a 10 -D -T
|
||||
|
||||
# Patching and other source preparation
|
||||
pushd bacula-%{version}
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
%patch4 -p0
|
||||
%patch5 -p0
|
||||
%patch6 -p0
|
||||
%patch7 -p0
|
||||
%patch8 -p0
|
||||
%patch9 -p0
|
||||
|
||||
# Remove execution permissions from files we're packaging as docs later on
|
||||
find examples -type f | xargs chmod -x
|
||||
find updatedb -type f | xargs chmod -x
|
||||
popd
|
||||
|
||||
# Remove cvs left-overs
|
||||
find -name '.cvsignore' | xargs rm -f
|
||||
|
||||
# Fix perms of c files to silent rpmlint
|
||||
find -type f -name '*.c' | xargs chmod -x
|
||||
find -type f -name '*.h' | xargs chmod -x
|
||||
|
||||
# GUI Stuff is postponed for later
|
||||
#pushd bacula-gui-%{gui_version}
|
||||
#%patch10 -p0
|
||||
#popd
|
||||
|
||||
# We are building the source several times, each with a different storage backend
|
||||
mkdir bacula-mysql bacula-postgresql bacula-sqlite
|
||||
|
||||
%build
|
||||
# Shell function to configure and build a Bacula tree
|
||||
build() {
|
||||
cp -rl ../bacula-%{version}/* .
|
||||
%configure \
|
||||
--sysconfdir=%{_sysconfdir}/bacula \
|
||||
--with-dir-user=bacula \
|
||||
--with-dir-group=bacula \
|
||||
--with-sd-user=bacula \
|
||||
--with-sd-group=bacula \
|
||||
--with-fd-user=root \
|
||||
--with-fd-group=root \
|
||||
--with-dir-password=@@DIR_PASSWORD@@ \
|
||||
--with-fd-password=@@FD_PASSWORD@@ \
|
||||
--with-sd-password=@@SD_PASSWORD@@ \
|
||||
--with-mon-dir-password=@@MON_DIR_PASSWORD@@ \
|
||||
--with-mon-fd-password=@@MON_FD_PASSWORD@@ \
|
||||
--with-mon-sd-password=@@MON_SD_PASSWORD@@ \
|
||||
--with-working-dir=%{working_dir} \
|
||||
--with-scriptdir=%{script_dir} \
|
||||
--with-smtp-host=localhost \
|
||||
--with-subsys-dir=%{_localstatedir}/lock/subsys \
|
||||
--with-pid-dir=%{_localstatedir}/run \
|
||||
--enable-conio \
|
||||
--enable-largefile \
|
||||
--enable-gnome \
|
||||
--enable-wx-console \
|
||||
--enable-tray-monitor \
|
||||
--enable-build-dird \
|
||||
--enable-build-stored \
|
||||
--with-openssl \
|
||||
--with-tcp-wrappers \
|
||||
--with-python \
|
||||
--enable-smartalloc \
|
||||
--with-x \
|
||||
$*
|
||||
# Scratch this, it is trouble
|
||||
# --with-readline \
|
||||
|
||||
if test $? != 0; then
|
||||
tail -500 config.log
|
||||
: configure failed
|
||||
exit 1
|
||||
fi
|
||||
|
||||
%{__make} %{?_smp_mflags}
|
||||
|
||||
}
|
||||
|
||||
# Build sqlite director
|
||||
pushd bacula-sqlite
|
||||
%if 0%{?fedora}%{?rhel}
|
||||
%if 0%{?fedora}
|
||||
%if "%{fedora}" >= "5"
|
||||
%define sqlite_suffix 3
|
||||
build --with-sqlite3
|
||||
%else
|
||||
build --with-sqlite
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?rhel}
|
||||
%if "%{rhel}" >= "5"
|
||||
%define sqlite_suffix 3
|
||||
build --with-sqlite3
|
||||
%else
|
||||
build --with-sqlite
|
||||
%endif
|
||||
%endif
|
||||
%else
|
||||
echo 'Neither %%{fedora} nor %%{rhel} are defined.'
|
||||
echo 'Please call rpmbuild with at least --define "fedora 7" or --define "rhel 5"'
|
||||
echo 'depending on your release version you are building on.'
|
||||
exit 1
|
||||
%endif
|
||||
popd
|
||||
|
||||
# Build MySQL director
|
||||
pushd bacula-mysql
|
||||
build --with-mysql
|
||||
popd
|
||||
|
||||
# Build PostgreSQL director
|
||||
pushd bacula-postgresql
|
||||
build --with-postgresql
|
||||
popd
|
||||
|
||||
# Build the docs
|
||||
pushd bacula-docs-%{docs_version}
|
||||
%configure --with-bacula=%{_builddir}/bacula-%{version}/bacula-%{version}
|
||||
make
|
||||
popd
|
||||
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
|
||||
pushd bacula-sqlite
|
||||
make install DESTDIR=%{buildroot}
|
||||
mv %{buildroot}%{_sbindir}/bacula-dir %{buildroot}%{_sbindir}/bacula-dir.sqlite
|
||||
mv %{buildroot}%{_sbindir}/dbcheck %{buildroot}%{_sbindir}/dbcheck.sqlite
|
||||
mv %{buildroot}%{_sbindir}/bcopy %{buildroot}%{_sbindir}/bcopy.sqlite
|
||||
mv %{buildroot}%{_sbindir}/bscan %{buildroot}%{_sbindir}/bscan.sqlite
|
||||
|
||||
for script in create_bacula_database drop_bacula_database drop_bacula_tables \
|
||||
grant_bacula_privileges make_bacula_tables make_catalog_backup \
|
||||
update_bacula_tables; do
|
||||
mv %{buildroot}%{_libexecdir}/bacula/${script} %{buildroot}%{_libexecdir}/bacula/${script}.sqlite
|
||||
done
|
||||
popd
|
||||
|
||||
pushd bacula-mysql
|
||||
make install DESTDIR=%{buildroot}
|
||||
mv %{buildroot}%{_sbindir}/bacula-dir %{buildroot}%{_sbindir}/bacula-dir.mysql
|
||||
mv %{buildroot}%{_sbindir}/dbcheck %{buildroot}%{_sbindir}/dbcheck.mysql
|
||||
mv %{buildroot}%{_sbindir}/bcopy %{buildroot}%{_sbindir}/bcopy.mysql
|
||||
mv %{buildroot}%{_sbindir}/bscan %{buildroot}%{_sbindir}/bscan.mysql
|
||||
|
||||
for script in create_bacula_database drop_bacula_database drop_bacula_tables \
|
||||
grant_bacula_privileges make_bacula_tables make_catalog_backup \
|
||||
update_bacula_tables; do
|
||||
mv %{buildroot}%{_libexecdir}/bacula/${script} %{buildroot}%{_libexecdir}/bacula/${script}.mysql
|
||||
done
|
||||
popd
|
||||
|
||||
pushd bacula-postgresql
|
||||
make install DESTDIR=%{buildroot}
|
||||
mv %{buildroot}%{_sbindir}/bacula-dir %{buildroot}%{_sbindir}/bacula-dir.postgresql
|
||||
mv %{buildroot}%{_sbindir}/dbcheck %{buildroot}%{_sbindir}/dbcheck.postgresql
|
||||
mv %{buildroot}%{_sbindir}/bcopy %{buildroot}%{_sbindir}/bcopy.postgresql
|
||||
mv %{buildroot}%{_sbindir}/bscan %{buildroot}%{_sbindir}/bscan.postgresql
|
||||
|
||||
for script in create_bacula_database drop_bacula_database drop_bacula_tables \
|
||||
grant_bacula_privileges make_bacula_tables make_catalog_backup \
|
||||
update_bacula_tables; do
|
||||
mv %{buildroot}%{_libexecdir}/bacula/${script} %{buildroot}%{_libexecdir}/bacula/${script}.postgresql
|
||||
done
|
||||
popd
|
||||
|
||||
pushd bacula-docs-%{docs_version}
|
||||
# No install target anymore, we'll include the stuff directly in the %%files section
|
||||
# make install DESTDIR=%{buildroot}
|
||||
popd
|
||||
|
||||
# GUI is not being packaged yet
|
||||
#pushd bacula-gui-%{gui_version}/bacula-web
|
||||
# mkdir -p %{buildroot}%{_datadir}/bacula-web
|
||||
# cp -r -p * %{buildroot}%{_datadir}/bacula-web
|
||||
# for f in ChangeLog CONTACT COPYING README TODO; do
|
||||
# rm -f %{buildroot}%{_datadir}/bacula-web/$f
|
||||
# done
|
||||
# rm -f %{buildroot}%{_datadir}/bacula-web/tsmarty2c.php
|
||||
# rm -rf %{buildroot}%{_datadir}/bacula-web/external_packages/smarty
|
||||
# mv %{buildroot}%{_datadir}/bacula-web/configs/bacula.conf %{buildroot}%{_sysconfdir}/bacula/bacula-web.conf
|
||||
# ln -sf /etc/bacula/bacula-web.conf %{buildroot}%{_datadir}/bacula-web/configs/bacula.conf
|
||||
# install -D -m 644 %{SOURCE11} %{buildroot}%{_sysconfdir}/httpd/conf.d/bacula-web.conf
|
||||
# mkdir -p %{buildroot}%{_localstatedir}/cache/bacula
|
||||
#popd
|
||||
|
||||
|
||||
# Rename some manpages
|
||||
# Not needed right-now
|
||||
#mv %{buildroot}%{_mandir}/man1/bacula-tray-monitor.1 %{buildroot}%{_mandir}/man1/tray-monitor.1
|
||||
|
||||
|
||||
# Fix some wrapper braindeadness
|
||||
rm -f %{buildroot}%{_libexecdir}/bacula/bconsole
|
||||
rm -f %{buildroot}%{_libexecdir}/bacula/gconsole
|
||||
mv %{buildroot}%{_sbindir}/wx-console %{buildroot}%{_sbindir}/wxconsole
|
||||
mv %{buildroot}%{_sysconfdir}/bacula/wx-console.conf %{buildroot}%{_sysconfdir}/bacula/wxconsole.conf
|
||||
|
||||
|
||||
# Desktop Integration for the console apps and the traymonitor
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
install -m 644 -D bacula-sqlite/scripts/bacula.png %{buildroot}%{_datadir}/pixmaps/bacula.png
|
||||
install -m 644 -D bacula-sqlite/scripts/gnome-console.pamd %{buildroot}%{_sysconfdir}/pam.d/gnome-console
|
||||
install -m 644 -D bacula-sqlite/scripts/gnome-console.console_apps %{buildroot}%{_sysconfdir}/security/console.apps/gnome-console
|
||||
install -m 644 -D bacula-sqlite/src/wx-console/wxwin16x16.xpm %{buildroot}%{_datadir}/pixmaps/wxwin16x16.xpm
|
||||
install -m 644 -D bacula-sqlite/scripts/wxconsole.pamd %{buildroot}%{_sysconfdir}/pam.d/wxconsole
|
||||
install -m 644 -D bacula-sqlite/scripts/wxconsole.desktop.consolehelper %{buildroot}%{_sysconfdir}/security/console.apps/wxconsole
|
||||
install -m 644 -D bacula-sqlite/src/tray-monitor/generic.xpm %{buildroot}%{_datadir}/pixmaps/bacula-tray-monitor.xpm
|
||||
|
||||
ln -sf consolehelper %{buildroot}%{_bindir}/gnome-console
|
||||
ln -sf consolehelper %{buildroot}%{_bindir}/wxconsole
|
||||
|
||||
desktop-file-install --vendor="fedora" --dir=%{buildroot}%{_datadir}/applications %{SOURCE3}
|
||||
desktop-file-install --vendor="fedora" --dir=%{buildroot}%{_datadir}/applications %{SOURCE4}
|
||||
desktop-file-install --vendor="fedora" --dir=%{buildroot}%{_datadir}/applications %{SOURCE5}
|
||||
|
||||
|
||||
# logrotate
|
||||
mkdir -p %{buildroot}%{_localstatedir}/log/bacula
|
||||
install -m 644 -D %{SOURCE6} %{buildroot}%{_sysconfdir}/logrotate.d/bacula
|
||||
|
||||
|
||||
# And logwatch
|
||||
install -m 755 -D bacula-sqlite/scripts/logwatch/bacula %{buildroot}%{_sysconfdir}/logwatch/scripts/services/bacula
|
||||
install -m 644 -D bacula-sqlite/scripts/logwatch/logfile.bacula.conf %{buildroot}%{_sysconfdir}/logwatch/conf/logfiles/bacula.conf
|
||||
install -m 644 -D bacula-sqlite/scripts/logwatch/services.bacula.conf %{buildroot}%{_sysconfdir}/logwatch/conf/services/bacula.conf
|
||||
|
||||
|
||||
# Initscripts
|
||||
install -m 755 -D %{SOURCE7} %{buildroot}%{_initrddir}/bacula-fd
|
||||
install -m 755 -D %{SOURCE8} %{buildroot}%{_initrddir}/bacula-dir
|
||||
install -m 755 -D %{SOURCE9} %{buildroot}%{_initrddir}/bacula-sd
|
||||
|
||||
|
||||
# Wipe backup files from the multiple make install calls
|
||||
rm -vf %{buildroot}%{_sysconfdir}/bacula/*.{new,old}
|
||||
rm -vf %{buildroot}%{_libexecdir}/bacula/*.{new,old}
|
||||
|
||||
|
||||
# Create the spooling
|
||||
mkdir -p %{buildroot}%{_localstatedir}/spool/bacula
|
||||
|
||||
|
||||
# Move some files around
|
||||
mv %{buildroot}%{_libexecdir}/bacula/query.sql %{buildroot}%{_sysconfdir}/bacula/query.sql
|
||||
|
||||
|
||||
# Nuke the scripts we do not need
|
||||
rm -vf %{buildroot}%{_libexecdir}/bacula/{bacula,bacula-ctl-*,startmysql,stopmysql}
|
||||
|
||||
|
||||
# Fix up some perms so rpmlint does not complain too much
|
||||
chmod 755 %{buildroot}%{_sbindir}/*
|
||||
chmod 755 %{buildroot}%{_libexecdir}/bacula/*
|
||||
chmod 644 %{buildroot}%{_libexecdir}/bacula/btraceback.*
|
||||
|
||||
%clean
|
||||
rm -rf %{buildroot}
|
||||
|
||||
|
||||
%post director-mysql
|
||||
/usr/sbin/alternatives --install /usr/sbin/bacula-dir bacula-dir /usr/sbin/bacula-dir.mysql 50 \
|
||||
--slave /usr/sbin/dbcheck bacula-dbcheck /usr/sbin/dbcheck.mysql \
|
||||
--slave /usr/libexec/bacula/create_bacula_database /usr/libexec/bacula/create_bacula_database.mysql \
|
||||
--slave /usr/libexec/bacula/drop_bacula_database /usr/libexec/bacula/drop_bacula_database.mysql \
|
||||
--slave /usr/libexec/bacula/drop_bacula_tables /usr/libexec/bacula/drop_bacula_tables.mysql \
|
||||
--slave /usr/libexec/bacula/grant_bacula_privileges /usr/libexec/bacula/grant_bacula_privileges.mysql \
|
||||
--slave /usr/libexec/bacula/make_bacula_tables /usr/libexec/bacula/make_bacula_tables.mysql \
|
||||
--slave /usr/libexec/bacula/make_catalog_backup /usr/libexec/bacula/make_catalog_backup.mysql \
|
||||
--slave /usr/libexec/bacula/update_bacula_tables /usr/libexec/bacula/update_bacula_tables.mysql
|
||||
|
||||
|
||||
%post director-sqlite
|
||||
/usr/sbin/alternatives --install /usr/sbin/bacula-dir bacula-dir /usr/sbin/bacula-dir.sqlite 40 \
|
||||
--slave /usr/sbin/dbcheck bacula-dbcheck /usr/sbin/dbcheck.sqlite \
|
||||
--slave /usr/libexec/bacula/create_bacula_database /usr/libexec/bacula/create_bacula_database.sqlite \
|
||||
--slave /usr/libexec/bacula/drop_bacula_database /usr/libexec/bacula/drop_bacula_database.sqlite \
|
||||
--slave /usr/libexec/bacula/drop_bacula_tables /usr/libexec/bacula/drop_bacula_tables.sqlite \
|
||||
--slave /usr/libexec/bacula/grant_bacula_privileges /usr/libexec/bacula/grant_bacula_privileges.sqlite \
|
||||
--slave /usr/libexec/bacula/make_bacula_tables /usr/libexec/bacula/make_bacula_tables.sqlite \
|
||||
--slave /usr/libexec/bacula/make_catalog_backup /usr/libexec/bacula/make_catalog_backup.sqlite \
|
||||
--slave /usr/libexec/bacula/update_bacula_tables /usr/libexec/bacula/update_bacula_tables.sqlite
|
||||
|
||||
|
||||
%post director-postgresql
|
||||
/usr/sbin/alternatives --install /usr/sbin/bacula-dir bacula-dir /usr/sbin/bacula-dir.postgresql 60 \
|
||||
--slave /usr/sbin/dbcheck bacula-dbcheck /usr/sbin/dbcheck.postgresql \
|
||||
--slave /usr/libexec/bacula/create_bacula_database /usr/libexec/bacula/create_bacula_database.postgresql \
|
||||
--slave /usr/libexec/bacula/drop_bacula_database /usr/libexec/bacula/drop_bacula_database.postgresql \
|
||||
--slave /usr/libexec/bacula/drop_bacula_tables /usr/libexec/bacula/drop_bacula_tables.postgresql \
|
||||
--slave /usr/libexec/bacula/grant_bacula_privileges /usr/libexec/bacula/grant_bacula_privileges.postgresql \
|
||||
--slave /usr/libexec/bacula/make_bacula_tables /usr/libexec/bacula/make_bacula_tables.postgresql \
|
||||
--slave /usr/libexec/bacula/make_catalog_backup /usr/libexec/bacula/make_catalog_backup.postgresql \
|
||||
--slave /usr/libexec/bacula/update_bacula_tables /usr/libexec/bacula/update_bacula_tables.postgresql
|
||||
|
||||
|
||||
%preun director-mysql
|
||||
/usr/sbin/alternatives --remove bacula-dir /usr/sbin/bacula-dir.mysql
|
||||
|
||||
|
||||
%preun director-sqlite
|
||||
/usr/sbin/alternatives --remove bacula-dir /usr/sbin/bacula-dir.sqlite
|
||||
|
||||
|
||||
%preun director-postgresql
|
||||
/usr/sbin/alternatives --remove bacula-dir /usr/sbin/bacula-dir.postgresql
|
||||
|
||||
|
||||
%pre common
|
||||
/usr/sbin/fedora-groupadd 33 -r bacula &>/dev/null || :
|
||||
/usr/sbin/fedora-useradd 33 -r -s /sbin/nologin -d /var/spool/bacula -M \
|
||||
-c 'Bacula Backup System' -g bacula bacula &>/dev/null || :
|
||||
|
||||
|
||||
%postun common
|
||||
test "$1" != 0 || /usr/sbin/fedora-userdel bacula &>/dev/null || :
|
||||
test "$1" != 0 || /usr/sbin/fedora-groupdel bacula &>/dev/null || :
|
||||
|
||||
|
||||
%post storage-mysql
|
||||
/usr/sbin/alternatives --install /usr/sbin/bcopy bacula-sd /usr/sbin/bcopy.mysql 50 \
|
||||
--slave /usr/sbin/dbcheck bacula-bscan /usr/sbin/bscan.mysql
|
||||
|
||||
|
||||
%post storage-sqlite
|
||||
/usr/sbin/alternatives --install /usr/sbin/bcopy bacula-sd /usr/sbin/bcopy.sqlite 40 \
|
||||
--slave /usr/sbin/dbcheck bacula-bscan /usr/sbin/bscan.sqlite
|
||||
|
||||
|
||||
%post storage-postgresql
|
||||
/usr/sbin/alternatives --install /usr/sbin/bcopy bacula-sd /usr/sbin/bcopy.postgresql 60 \
|
||||
--slave /usr/sbin/dbcheck bacula-bscan /usr/sbin/bscan.postgresql
|
||||
|
||||
|
||||
%preun storage-mysql
|
||||
/usr/sbin/alternatives --remove bacula-sd /usr/sbin/bcopy.mysql
|
||||
|
||||
|
||||
%preun storage-sqlite
|
||||
/usr/sbin/alternatives --remove bacula-sd /usr/sbin/bcopy.sqlite
|
||||
|
||||
|
||||
%preun storage-postgresql
|
||||
/usr/sbin/alternatives --remove bacula-sd /usr/sbin/bcopy.postgresql
|
||||
|
||||
|
||||
%post client
|
||||
/sbin/chkconfig --add bacula-fd
|
||||
|
||||
|
||||
%preun client
|
||||
if [ $1 = 0 ]; then
|
||||
/sbin/service bacula-fd stop >/dev/null 2>&1 || :
|
||||
/sbin/chkconfig --del bacula-fd
|
||||
fi
|
||||
|
||||
|
||||
%postun client
|
||||
if [ "$1" -ge "1" ]; then
|
||||
/sbin/service bacula-fd condrestart >/dev/null 2>&1 || :
|
||||
fi
|
||||
|
||||
|
||||
%post director-common
|
||||
/sbin/chkconfig --add bacula-dir
|
||||
|
||||
|
||||
%preun director-common
|
||||
if [ $1 = 0 ]; then
|
||||
/sbin/service bacula-dir stop >/dev/null 2>&1 || :
|
||||
/sbin/chkconfig --del bacula-dir
|
||||
fi
|
||||
|
||||
|
||||
%postun director-common
|
||||
if [ "$1" -ge "1" ]; then
|
||||
/sbin/service bacula-dir condrestart >/dev/null 2>&1 || :
|
||||
fi
|
||||
|
||||
|
||||
%post storage-common
|
||||
/sbin/chkconfig --add bacula-sd
|
||||
|
||||
|
||||
%preun storage-common
|
||||
if [ $1 = 0 ]; then
|
||||
/sbin/service bacula-sd stop >/dev/null 2>&1 || :
|
||||
/sbin/chkconfig --del bacula-sd
|
||||
fi
|
||||
|
||||
|
||||
%postun storage-common
|
||||
if [ "$1" -ge "1" ]; then
|
||||
/sbin/service bacula-sd condrestart >/dev/null 2>&1 || :
|
||||
fi
|
||||
|
||||
|
||||
%files common
|
||||
%doc bacula-%{version}/AUTHORS bacula-%{version}/ChangeLog bacula-%{version}/COPYING bacula-%{version}/LICENSE
|
||||
%doc bacula-%{version}/README bacula-%{version}/SUPPORT bacula-%{version}/VERIFYING
|
||||
%doc bacula-%{version}/examples/
|
||||
%defattr(-,root,root,-)
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/bacula
|
||||
%dir %{_sysconfdir}/bacula
|
||||
%dir %{_libexecdir}/bacula
|
||||
%{_sbindir}/bsmtp
|
||||
%{_sbindir}/btraceback
|
||||
%{_libexecdir}/bacula/btraceback.dbx
|
||||
%{_libexecdir}/bacula/btraceback.gdb
|
||||
%{_mandir}/man1/bsmtp.1*
|
||||
%{_mandir}/man8/bacula.8*
|
||||
%{_mandir}/man8/btraceback.8*
|
||||
%dir %attr(750, bacula, bacula) %{_localstatedir}/log/bacula
|
||||
%dir %attr(750, bacula, bacula) %{_localstatedir}/spool/bacula
|
||||
|
||||
|
||||
%files client
|
||||
%defattr(-,root,root,-)
|
||||
%{_sbindir}/bacula-fd
|
||||
%{_initrddir}/bacula-fd
|
||||
%config(noreplace) %{_sysconfdir}/bacula/bacula-fd.conf
|
||||
%dir %{_localstatedir}/spool/bacula
|
||||
%{_mandir}/man8/bacula-fd.8*
|
||||
|
||||
|
||||
%files console
|
||||
%defattr(-,root,root,-)
|
||||
%{_sbindir}/bconsole
|
||||
%config(noreplace) %{_sysconfdir}/bacula/bconsole.conf
|
||||
%{_mandir}/man8/bconsole.8*
|
||||
|
||||
|
||||
%files console-gnome
|
||||
%defattr(-,root,root,-)
|
||||
%config %{_sysconfdir}/security/console.apps/gnome-console
|
||||
%config %{_sysconfdir}/pam.d/gnome-console
|
||||
%config(noreplace) %{_sysconfdir}/bacula/gnome-console.conf
|
||||
%{_bindir}/gnome-console
|
||||
%{_sbindir}/gnome-console
|
||||
%{_mandir}/man1/bacula-console-gnome.1*
|
||||
%{_datadir}/applications/fedora-bacula-gconsole.desktop
|
||||
%{_datadir}/pixmaps/bacula.png
|
||||
|
||||
|
||||
%files console-wxwidgets
|
||||
%defattr(-,root,root,-)
|
||||
%config %{_sysconfdir}/security/console.apps/wxconsole
|
||||
%config %{_sysconfdir}/pam.d/wxconsole
|
||||
%config(noreplace) %{_sysconfdir}/bacula/wxconsole.conf
|
||||
%{_bindir}/wxconsole
|
||||
%{_sbindir}/wxconsole
|
||||
%{_mandir}/man1/bacula-wxconsole.1*
|
||||
%{_datadir}/applications/fedora-bacula-wxconsole.desktop
|
||||
%{_datadir}/pixmaps/wxwin16x16.xpm
|
||||
|
||||
|
||||
%files director-common
|
||||
%doc bacula-%{version}/updatedb/
|
||||
%defattr(-,root,root,-)
|
||||
%config(noreplace) %{_sysconfdir}/bacula/bacula-dir.conf
|
||||
%config(noreplace) %{_sysconfdir}/bacula/query.sql
|
||||
%config %{_sysconfdir}/logwatch/conf/logfiles/bacula.conf
|
||||
%config %{_sysconfdir}/logwatch/conf/services/bacula.conf
|
||||
%{_sysconfdir}/logwatch/scripts/services/bacula
|
||||
%{_initrddir}/bacula-dir
|
||||
%{_sbindir}/bregex
|
||||
%{_sbindir}/bwild
|
||||
%{_mandir}/man8/dbcheck.8*
|
||||
%{_mandir}/man8/bacula-dir.8*
|
||||
%{_libexecdir}/bacula/delete_catalog_backup
|
||||
|
||||
|
||||
%files director-mysql
|
||||
%defattr(-,root,root,-)
|
||||
%{_sbindir}/bacula-dir.mysql
|
||||
%{_sbindir}/dbcheck.mysql
|
||||
%{_libexecdir}/bacula/create_mysql_database
|
||||
%{_libexecdir}/bacula/drop_mysql_database
|
||||
%{_libexecdir}/bacula/drop_mysql_tables
|
||||
%{_libexecdir}/bacula/grant_mysql_privileges
|
||||
%{_libexecdir}/bacula/make_mysql_tables
|
||||
%{_libexecdir}/bacula/update_mysql_tables
|
||||
%{_libexecdir}/bacula/create_bacula_database.mysql
|
||||
%{_libexecdir}/bacula/drop_bacula_database.mysql
|
||||
%{_libexecdir}/bacula/drop_bacula_tables.mysql
|
||||
%{_libexecdir}/bacula/grant_bacula_privileges.mysql
|
||||
%{_libexecdir}/bacula/make_bacula_tables.mysql
|
||||
%{_libexecdir}/bacula/make_catalog_backup.mysql
|
||||
%{_libexecdir}/bacula/update_bacula_tables.mysql
|
||||
|
||||
|
||||
|
||||
%files director-sqlite
|
||||
%defattr(-,root,root,-)
|
||||
%{_sbindir}/bacula-dir.sqlite
|
||||
%{_sbindir}/dbcheck.sqlite
|
||||
# DANGER Will Robinson. Bacula has versioned sqlite filenames
|
||||
%{_libexecdir}/bacula/create_sqlite%{?sqlite_suffix}_database
|
||||
%{_libexecdir}/bacula/drop_sqlite%{?sqlite_suffix}_database
|
||||
%{_libexecdir}/bacula/drop_sqlite%{?sqlite_suffix}_tables
|
||||
%{_libexecdir}/bacula/grant_sqlite%{?sqlite_suffix}_privileges
|
||||
%{_libexecdir}/bacula/make_sqlite%{?sqlite_suffix}_tables
|
||||
%{_libexecdir}/bacula/update_sqlite%{?sqlite_suffix}_tables
|
||||
%{_libexecdir}/bacula/create_bacula_database.sqlite
|
||||
%{_libexecdir}/bacula/drop_bacula_database.sqlite
|
||||
%{_libexecdir}/bacula/drop_bacula_tables.sqlite
|
||||
%{_libexecdir}/bacula/grant_bacula_privileges.sqlite
|
||||
%{_libexecdir}/bacula/make_bacula_tables.sqlite
|
||||
%{_libexecdir}/bacula/make_catalog_backup.sqlite
|
||||
%{_libexecdir}/bacula/update_bacula_tables.sqlite
|
||||
|
||||
|
||||
%files director-postgresql
|
||||
%defattr(-,root,root,-)
|
||||
%{_sbindir}/bacula-dir.postgresql
|
||||
%{_sbindir}/dbcheck.postgresql
|
||||
%{_libexecdir}/bacula/create_postgresql_database
|
||||
%{_libexecdir}/bacula/drop_postgresql_database
|
||||
%{_libexecdir}/bacula/drop_postgresql_tables
|
||||
%{_libexecdir}/bacula/grant_postgresql_privileges
|
||||
%{_libexecdir}/bacula/make_postgresql_tables
|
||||
%{_libexecdir}/bacula/update_postgresql_tables
|
||||
%{_libexecdir}/bacula/create_bacula_database.postgresql
|
||||
%{_libexecdir}/bacula/drop_bacula_database.postgresql
|
||||
%{_libexecdir}/bacula/drop_bacula_tables.postgresql
|
||||
%{_libexecdir}/bacula/grant_bacula_privileges.postgresql
|
||||
%{_libexecdir}/bacula/make_bacula_tables.postgresql
|
||||
%{_libexecdir}/bacula/make_catalog_backup.postgresql
|
||||
%{_libexecdir}/bacula/update_bacula_tables.postgresql
|
||||
|
||||
|
||||
%files storage-common
|
||||
%defattr(-,root,root,-)
|
||||
%{_sbindir}/bacula-sd
|
||||
%{_sbindir}/bextract
|
||||
%{_sbindir}/bls
|
||||
%{_sbindir}/btape
|
||||
%config(noreplace) %{_sysconfdir}/bacula/bacula-sd.conf
|
||||
%{_initrddir}/bacula-sd
|
||||
%{_libexecdir}/bacula/disk-changer
|
||||
%{_libexecdir}/bacula/dvd-handler
|
||||
%{_libexecdir}/bacula/mtx-changer
|
||||
%{_mandir}/man8/bcopy.8*
|
||||
%{_mandir}/man8/bextract.8*
|
||||
%{_mandir}/man8/bls.8*
|
||||
%{_mandir}/man8/bscan.8*
|
||||
%{_mandir}/man8/btape.8*
|
||||
%{_mandir}/man8/bacula-sd.8*
|
||||
|
||||
|
||||
%files storage-mysql
|
||||
%defattr(-,root,root,-)
|
||||
%{_sbindir}/bcopy.mysql
|
||||
%{_sbindir}/bscan.mysql
|
||||
|
||||
|
||||
%files storage-sqlite
|
||||
%defattr(-,root,root,-)
|
||||
%{_sbindir}/bcopy.sqlite
|
||||
%{_sbindir}/bscan.sqlite
|
||||
|
||||
|
||||
%files storage-postgresql
|
||||
%defattr(-,root,root,-)
|
||||
%{_sbindir}/bcopy.postgresql
|
||||
%{_sbindir}/bscan.postgresql
|
||||
|
||||
|
||||
%files traymonitor
|
||||
%defattr(-,root,root,-)
|
||||
%{_sbindir}/bacula-tray-monitor
|
||||
%config(noreplace) %{_sysconfdir}/bacula/tray-monitor.conf
|
||||
%{_mandir}/man1/bacula-tray-monitor.1*
|
||||
%{_datadir}/applications/fedora-bacula-traymonitor.desktop
|
||||
%{_datadir}/pixmaps/bacula-tray-monitor.xpm
|
||||
|
||||
|
||||
%files docs
|
||||
%doc bacula-docs-%{docs_version}/bacula-web/bacula-web.pdf
|
||||
%doc bacula-docs-%{docs_version}/bacula-web/bacula-web/
|
||||
%doc bacula-docs-%{docs_version}/developers/developers.pdf
|
||||
%doc bacula-docs-%{docs_version}/developers/developers/
|
||||
%doc bacula-docs-%{docs_version}/manual/bacula.pdf
|
||||
%doc bacula-docs-%{docs_version}/manual/bacula/
|
||||
|
||||
|
||||
#%files web
|
||||
#%defattr(-,root,root,-)
|
||||
#%doc bacula-gui-%{gui_version}/bacula-web/CONTACT bacula-gui-%{gui_version}/bacula-web/COPYING
|
||||
#%doc bacula-gui-%{gui_version}/bacula-web/README bacula-gui-%{gui_version}/bacula-web/TODO
|
||||
#%{_datadir}/bacula-web/
|
||||
#%config(noreplace) %{_sysconfdir}/bacula/bacula-web.conf
|
||||
#%config(noreplace) %{_sysconfdir}/httpd/conf.d/bacula-web.conf
|
||||
#%dir %attr(755, apache, apache) %{_localstatedir}/cache/bacula-web
|
||||
|
||||
|
||||
%changelog
|
||||
* Wed Jul 19 2007 Andreas Thienemann <andreas@bawue.net> 2.0.3-8
|
||||
- Moved some files around in the %%files section and refactored
|
||||
spec parts a bit
|
||||
- Fixed up the catalog-backup scripts by including them in the
|
||||
alternatives system
|
||||
- Applied tls patch fixing some tls disconnection issues.
|
||||
|
||||
* Thu Jul 18 2007 Andreas Thienemann <andreas@bawue.net> 2.0.3-7
|
||||
- Minor specchanges, mostly typos in the comments
|
||||
- Incorporated minor changes from dgilmore's review.
|
||||
|
||||
* Fri Jul 13 2007 Andreas Thienemann <andreas@bawue.net> 2.0.3-6
|
||||
- Fixing %%preun scripts. Thx to Dan for spotting this
|
||||
|
||||
* Fri Jul 13 2007 Andreas Thienemann <andreas@bawue.net> 2.0.3-5
|
||||
- Fixed provides and requires
|
||||
|
||||
* Wed Jul 11 2007 Andreas Thienemann <andreas@bawue.net> 2.0.3-4
|
||||
- Fixed many rpmlint issues
|
||||
|
||||
* Thu Apr 26 2007 Andreas Thienemann <andreas@bawue.net> 2.0.3-3
|
||||
- Final cleanups for fedora
|
||||
- Removed webgui for now. It will be back in a future release
|
||||
- Added LANG=C calls to the initscripts
|
||||
|
||||
* Thu Apr 26 2007 Andreas Thienemann <andreas@bawue.net> 2.0.3-2
|
||||
- Added logdir
|
||||
- Fixed up doc-creation to actually work
|
||||
- Fixed up web interface
|
||||
- Included docs sub-package
|
||||
- Included README et al as docs where appropriate
|
||||
|
||||
* Sat Mar 10 2007 Andreas Thienemann <andreas@bawue.net> 2.0.3-1
|
||||
- Updated to 2.0.3
|
||||
- Reverted the database-check as we're not sure the db is running on the
|
||||
local machine. A later revision might parse the bacula-dir.conf file
|
||||
and just connect to the db to see if it's running.
|
||||
|
||||
* Sat Feb 28 2007 Andreas Thienemann <andreas@bawue.net> 2.0.2-1
|
||||
- Further updates on the spec
|
||||
|
||||
* Sat Feb 18 2007 Andreas Thienemann <andreas@bawue.net> 2.0.2-1
|
||||
- Much work on the spec
|
||||
- Updated to 2.0.2
|
||||
|
||||
* Sat Feb 18 2006 Andreas Thienemann <andreas@bawue.net> 1.38.11-1
|
||||
- Initial spec.
|
Loading…
Reference in New Issue
Block a user