2 # - update desktop files, think about su-wrappers for console
4 # - fix log file permissions
7 %bcond_without console_wx # wx-console program
8 %bcond_without gnome # gnome-console program
9 %bcond_without sqlite # use sqlite
10 %bcond_without bat # bat Qt4 GUI
11 %bcond_with mysql # use mysql
12 %bcond_with pgsql # use PostgreSQL
15 %bcond_with sqlite3 # use sqlite3 insted sqlite
16 %bcond_with sqlite3_sync_off # makes sqlite3 backend much faster, but less reliable
18 %define _database sqlite
21 %define _database sqlite3
27 %define _database postgresql
29 %undefine with_sqlite3
33 %define _database mysql
35 %undefine with_sqlite3
37 %undefine with_sqlite3_sync_off
40 Summary: Bacula - The Network Backup Solution
41 Summary(pl.UTF-8): Bacula - rozwiązanie do wykonywania kopii zapasowych po sieci
46 License: extended GPL v2
47 Group: Networking/Utilities
48 Source0: http://dl.sourceforge.net/bacula/%{name}-%{version}.tar.gz
49 # Source0-md5: 175a796b96c28fc28cbedb1dc881826f
50 Source1: http://dl.sourceforge.net/bacula/%{name}-docs-%{version}.tar.bz2
51 # Source1-md5: 578e4221afd009d711f1430e392823d6
52 Source2: http://dl.sourceforge.net/bacula/%{name}-rescue-%{version}.tar.gz
53 # Source2-md5: 266e3e814482c2c33e071607cb25d38f
54 Source10: %{name}-dir.init
55 Source11: %{name}-fd.init
56 Source12: %{name}-sd.init
57 Source13: %{name}.logrotate
58 Source14: %{name}-dir.sysconfig
59 Source15: %{name}-fd.sysconfig
60 Source16: %{name}-sd.sysconfig
61 Patch0: %{name}-dvd-handler_path.patch
62 Patch1: %{name}-link.patch
63 Patch2: %{name}-compile.patch
64 Patch3: %{name}-wx28.patch
65 Patch4: %{name}-sqlite3_init_query.patch
66 URL: http://www.bacula.org/
67 BuildRequires: acl-static
68 BuildRequires: automake
70 BuildRequires: fakeroot
72 BuildRequires: glibc-static
74 BuildRequires: libgnome-devel >= 2.0
75 BuildRequires: libgnomeui-devel >= 2.0
77 BuildRequires: libstdc++-static
78 BuildRequires: libwrap-static
80 BuildRequires: ncurses-devel
81 BuildRequires: openssl-devel
82 BuildRequires: openssl-static
83 BuildRequires: pkgconfig
85 BuildRequires: python-static
88 BuildRequires: qt4-qmake
89 BuildRequires: qwt-devel >= 5.0.2-2
90 BuildRequires: QtCore-devel
91 BuildRequires: QtGui-devel
93 BuildRequires: readline-devel
94 BuildRequires: rpmbuild(macros) >= 1.268
95 BuildRequires: sed >= 4.0
96 %{?with_sqlite3:BuildRequires: sqlite3-devel}
97 %{?with_sqlite:BuildRequires: sqlite-devel}
98 %{?with_mysql:BuildRequires: mysql-devel}
99 %{?with_pgsql:BuildRequires: postgresql-devel}
100 %if %{with console_wx}
101 BuildRequires: wxGTK2-unicode-devel >= 2.4.0
103 BuildRequires: zlib-devel
104 BuildRequires: zlib-static
105 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
107 %define _sysconfdir /etc/%{name}
108 %define _localstatedir /var/lib/%{name}
110 # dependency section is broken. ccache usage is instead to makefiles
111 %undefine with_ccache
114 Bacula - It comes by night and sucks the vital essence from your
117 Bacula is a set of computer programs that permit you (or the system
118 administrator) to manage backup, recovery, and verification of
119 computer data across a network of computers of different kinds. In
120 technical terms, it is a network client/server based backup program.
121 Bacula is relatively easy to use and efficient, while offering many
122 advanced storage management features that make it easy to find and
123 recover lost or damaged files.
125 %description -l pl.UTF-8
126 Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
128 Bacula to zbiór programów umożliwiających administratorowi na
129 zarządzanie kopiami zapasowymi, odzyskiwaniem i weryfikacją danych w
130 sieci komputerów różnego rodzaju. W terminologii technicznej jest to
131 program do kopii zapasowych pracujący w architekturze klient-serwer.
132 Bacula jest stosunkowo łatwa w użyciu i wydajna, oferując przy tym
133 wiele zaawansowanych możliwości przy zarządzaniu nośnikami,
134 ułatwiających znalezienie i odzyskanie utraconych lub uszkodzonych
138 Summary: Common files for bacula package
139 Summary(pl.UTF-8): Pliki wspólne dla pakietu bacula
140 Group: Networking/Utilities
141 Requires(post): openssl-tools
142 Requires(post): sed >= 4.0
143 Requires(post,preun): /sbin/chkconfig
144 Requires(postun): /usr/sbin/groupdel
145 Requires(postun): /usr/sbin/userdel
146 Requires(pre): /usr/sbin/groupadd
147 Requires(pre): /usr/sbin/useradd
148 Conflicts: bacula-console < 0:1.34.6
149 Conflicts: bacula-dir < 0:1.34.6
150 Conflicts: bacula-fd < 0:1.34.6
151 Conflicts: bacula-sd < 0:1.34.6
154 Bacula - It comes by night and sucks the vital essence from your
157 Bacula is a set of computer programs that permit you (or the system
158 administrator) to manage backup, recovery, and verification of
159 computer data across a network of computers of different kinds. In
160 technical terms, it is a network client/server based backup program.
161 Bacula is relatively easy to use and efficient, while offering many
162 advanced storage management features that make it easy to find and
163 recover lost or damaged files.
165 %description common -l pl.UTF-8
166 Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
168 Bacula to zbiór programów umożliwiających administratorowi na
169 zarządzanie kopiami zapasowymi, odzyskiwaniem i weryfikacją danych w
170 sieci komputerów różnego rodzaju. W terminologii technicznej jest to
171 program do kopii zapasowych pracujący w architekturze klient-serwer.
172 Bacula jest stosunkowo łatwa w użyciu i wydajna, oferując przy tym
173 wiele zaawansowanych możliwości przy zarządzaniu nośnikami,
174 ułatwiających znalezienie i odzyskanie utraconych lub uszkodzonych
178 Summary: Bacula Director and Catalog services
179 Summary(pl.UTF-8): Usługi Bacula Director i Catalog
180 Group: Networking/Utilities
181 Requires(post): sed >= 4.0
182 Requires: %{name}-common = %{epoch}:%{version}-%{release}
183 Obsoletes: bacula-updatedb
186 Bacula - It comes by night and sucks the vital essence from your
189 Bacula Director is the program that supervises all the backup,
190 restore, verify and archive operations. The system administrator uses
191 the Bacula Director to schedule backups and to recover files. Catalog
192 services are comprised of the software programs responsible for
193 maintaining the file indexes and volume databases for all files backed
194 up. The Catalog services permit the System Administrator or user to
195 quickly locate and restore any desired file, since it maintains a
196 record of all Volumes used, all Jobs run, and all Files saved. This
197 build requires sqlite%{?with_sqlite3:3} to be installed separately as the catalog
200 %description dir -l pl.UTF-8
201 Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
203 Bacula Director to program nadzorujący wszystkie operacje wykonywania
204 kopii zapasowych, odzyskiwania, weryfikacji i archiwizowania.
205 Administrator używa Bacula Directora do szeregowania kopii zapasowych
206 oraz odzyskiwania plików. Usługi katalogowe (Catalog services) są
207 używane przez programy odpowiedzialne za zarządzanie indeksami plików
208 i bazą danych wolumenów dla wszystkich kopiowanych plików. Usługi
209 katalogowe umożliwiają administratorowi lub użytkownikowi szybko
210 zlokalizować i odtworzyć dowolny plik, ponieważ utrzymują rekord ze
211 wszystkimi używanymi wolumenami, uruchomionymi zadaniami i zapisanymi
212 plikami. Pakiet wymaga %{_database} zainstalowanego oddzielnie jako bazy
216 Summary: Bacula Console
217 Summary(pl.UTF-8): Konsola Baculi
218 Group: Networking/Utilities
219 Requires(post): sed >= 4.0
220 Requires: %{name}-common = %{epoch}:%{version}-%{release}
223 Bacula - It comes by night and sucks the vital essence from your
226 Bacula Console is the program that allows the administrator or user to
227 communicate with the Bacula Director. This is the text only console
230 %description console -l pl.UTF-8
231 Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
233 Bacula Console to program umożliwiający administratorowi lub
234 użytkownikowi komunikowanie się z programem Bacula Director. To jest
235 interfejs czysto tekstowy.
238 Summary: Bacula wxWidgets Console
239 Summary(pl.UTF-8): Konsola Baculi oparta na wxWidgets
240 Group: Networking/Utilities
241 Requires(post): sed >= 4.0
242 Requires: %{name}-common = %{epoch}:%{version}-%{release}
244 %description console-wx
245 Bacula - It comes by night and sucks the vital essence from your
248 Bacula Console is the program that allows the administrator or user to
249 communicate with the Bacula Director. This is the wxWidgets GUI
252 %description console-wx -l pl.UTF-8
253 Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
255 Bacula Console to program umożliwiający administratorowi lub
256 użytkownikowi komunikowanie się z programem Bacula Director. To jest
257 interfejs graficzny oparty na wxWidgets.
259 %package console-gnome
260 Summary: Bacula GNOME Console
261 Summary(pl.UTF-8): Konsola Baculi oparta dla GNOME
262 Group: Networking/Utilities
263 Requires(post): sed >= 4.0
264 Requires: %{name}-common = %{epoch}:%{version}-%{release}
266 %description console-gnome
267 Bacula - It comes by night and sucks the vital essence from your
270 Bacula Console is the program that allows the administrator or user to
271 communicate with the Bacula Director. This is the GNOME GUI interface.
273 %description console-gnome -l pl.UTF-8
274 Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
276 Bacula Console to program umożliwiający administratorowi lub
277 użytkownikowi komunikowanie się z programem Bacula Director. To jest
278 interfejs graficzny oparty na GNOME.
281 Summary: Bacula QT4 Console
282 Summary(pl.UTF-8): Konsola Baculi oparta na QT4
283 Group: Networking/Utilities
284 Requires(post): sed >= 4.0
285 Requires: %{name}-common = %{epoch}:%{version}-%{release}
287 %description console-qt4
288 Bacula - It comes by night and sucks the vital essence from your
291 Bacula Console is the program that allows the administrator or user to
292 communicate with the Bacula Director. This is the QT4 GUI interface.
294 %description console-qt4 -l pl.UTF-8
295 Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
297 Bacula Console to program umożliwiający administratorowi lub
298 użytkownikowi komunikowanie się z programem Bacula Director. To jest
299 interfejs graficzny oparty na QT4.
301 %package tray-monitor
302 Summary: Bacula Tray Monitor
303 Group: Networking/Utilities
304 Requires(post): sed >= 4.0
305 Requires: %{name}-common = %{epoch}:%{version}-%{release}
307 %description tray-monitor
308 Bacula - It comes by night and sucks the vital essence from your
311 The Monitor program is typically an icon in the system tray. However,
312 once the icon is expanded into a full window, the administrator or
313 user can obtain status information about the Director or the backup
314 status on the local workstation or any other Bacula daemon that is
318 Summary: Bacula File services (Client)
319 Summary(pl.UTF-8): Usługi Bacula File (klient)
320 Group: Networking/Utilities
321 Requires(post): sed >= 4.0
322 Requires: %{name}-common = %{epoch}:%{version}-%{release}
325 Bacula - It comes by night and sucks the vital essence from your
328 Bacula File services (or Client program) is the software program that
329 is installed on the machine to be backed up. It is specific to the
330 operating system on which it runs and is responsible for providing the
331 file attributes and data when requested by the Director. The File
332 services are also responsible for the file system dependent part of
333 restoring the file attributes and data during a recovery operation.
334 This program runs as a daemon on the machine to be backed up, and in
335 some of the documentation, the File daemon is referred to as the
336 Client (for example in Bacula configuration file).
338 %description fd -l pl.UTF-8
339 Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
341 Usługi Bacula File (inaczej program kliencki) to oprogramowanie, które
342 instaluje się na maszynach, z których mają być wykonywane kopie
343 zapasowe. Są one specyficzne dla systemu operacyjnego, pod którym
344 działa dana maszyna i odpowiadają za dostarczanie atrybutów i danych
345 plików na żądanie Directora. Usługi plikowe są także odpowiedzialne za
346 zależną od systemu plików część odzyskiwania atrybutów i danych plików
347 podczas operacji odzyskiwania danych. Program działa jako demon na
348 maszynie, która ma być backupowana i w części dokumentacji demon ten
349 (File) jest nazywany klientem (na przykład w pliku konfiguracyjnym
353 Summary: Bacula Storage services
354 Summary(pl.UTF-8): Usługi Bacula Storage
355 Group: Networking/Utilities
356 Requires(post): sed >= 4.0
357 Requires: %{name}-common = %{epoch}:%{version}-%{release}
358 Conflicts: dvd+rw-tools <= 5.21.4.10.8-1
361 Bacula - It comes by night and sucks the vital essence from your
364 Bacula Storage services consist of the software programs that perform
365 the storage and recovery of the file attributes and data to the
366 physical backup media or volumes. In other words, the Storage daemon
367 is responsible for reading and writing your tapes (or other storage
368 media, e.g. files). The Storage services runs as a daemon on the
369 machine that has the backup device (usually a tape drive).
371 %description sd -l pl.UTF-8
372 Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
374 Usługi Bacula Storage składają się z programów obsługujących
375 przechowywanie danych oraz odzyskiwanie atrybutów i danych na
376 fizycznych nośnikach lub wolumenach. Innymi słowy, demon Storage jest
377 odpowiedzialny za odczyt i zapis taśm (lub innych nośników do
378 przechowywania danych, np. plików). Usługi Storage działają jako demon
379 na maszynie, która zawiera urządzenie backupowe (zwykle napęd
383 Summary: Bacula - The Network Backup Solution
384 Summary(pl.UTF-8): Bacula - rozwiązanie do wykonywania kopii zapasowych po sieci
385 Group: Networking/Utilities
386 Requires: %{name}-fd = %{epoch}:%{version}-%{release}
391 Bacula - It comes by night and sucks the vital essence from your
394 Bacula is a set of computer programs that permit you (or the system
395 administrator) to manage backup, recovery, and verification of
396 computer data across a network of computers of different kinds. In
397 technical terms, it is a network client/server based backup program.
398 Bacula is relatively easy to use and efficient, while offering many
399 advanced storage management features that make it easy to find and
400 recover lost or damaged files.
402 This package installs scripts for disaster recovery and builds rescue
403 floppy disk for bare metal recovery.
405 To make the bacula rescue disk run "./make_rescue_disk
407 - --copy-etc-files" from the %{_sysconfdir}/rescue directory. To
408 recreate the rescue information for this system run ./getdiskinfo
411 %description rescue -l pl.UTF-8
412 Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
414 Bacula to zbiór programów umożliwiających administratorowi na
415 zarządzanie kopiami zapasowymi, odzyskiwaniem i weryfikacją danych w
416 sieci komputerów różnego rodzaju. W terminologii technicznej jest to
417 program do kopii zapasowych pracujący w architekturze klient-serwer.
418 Bacula jest stosunkowo łatwa w użyciu i wydajna, oferując przy tym
419 wiele zaawansowanych możliwości przy zarządzaniu nośnikami,
420 ułatwiających znalezienie i odzyskanie utraconych lub uszkodzonych
423 Ten pakiet zawiera skrypty do odtwarzania po awarii i tworzy dyskietkę
424 ratunkowe do odtwarzania systemu od zera.
426 Aby stworzyć dyskietkę ratunkową Baculi, należy uruchomić "./make_rescue_disk
427 --copy-static-bacula - --copy-etc-files" z katalogu
428 %{_sysconfdir}/rescue . Aby ponownie utworzyć informacje ratunkowe dla
429 danego systemu, należy ponownie uruchomić ./getdiskinfo .
439 tar -xf %{SOURCE2} && ln -s bacula-rescue-* rescue
440 sed -i -e 's#wx-config#wx-gtk2-unicode-config#g' configure*
441 sed -i -e 's#-lreadline -lhistory -ltermcap#-lreadline -lhistory#g' configure*
442 sed -i -e 's#bindir=.*#bindir=%{_bindir}#g' \
443 src/cats/create_* src/cats/delete_* src/cats/drop_* \
444 src/cats/grant_* src/cats/make_* src/cats/update_*
445 sed -i -e 's/@hostname@/--hostname--/' src/*/*.conf.in
448 cp -f %{_datadir}/automake/config.sub autoconf
449 CPPFLAGS="-I/usr/include/ncurses -I%{_includedir}/readline"
451 --with-scriptdir=%{_libexecdir}/%{name} \
452 --%{!?with_gnome:dis}%{?with_gnome:en}able-gnome \
453 %{?with_bat:--enable-bat} \
455 --enable-smartalloc \
456 %{?with_console_wx:--enable-bwx-console} \
457 --enable-tray-monitor \
458 %{?with_python:--with-python} \
460 --with-tcp-wrappers \
461 --with-working-dir=%{_var}/lib/%{name} \
462 --with-dump-email="root@localhost" \
463 --with-job-email="root@localhost" \
464 --with-smtp-host=localhost \
465 --with-pid-dir=/var/run \
466 --with-subsys-dir=/var/lock/subsys \
467 --with-%{_database} \
468 %{?with_sqlite3_sync_off:--enable-extra-sqlite3-init="pragma synchronous=0;"} \
469 --with-dir-password="#FAKE-dir-password#" \
470 --with-fd-password="#FAKE-fd-password#" \
471 --with-sd-password="#FAKE-sd-password#" \
472 --with-mon-dir-password="#FAKE-mon-dir-password#" \
473 --with-mon-fd-password="#FAKE-mon-fd-password#" \
474 --with-mon-sd-password="#FAKE-mon-sd-password#" \
494 rm -rf $RPM_BUILD_ROOT
496 install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,logrotate.d,pam.d,sysconfig}
497 install -d $RPM_BUILD_ROOT%{_sysconfdir}/rescue
498 install -d $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_mandir},%{_bindir}}
501 DESTDIR=$RPM_BUILD_ROOT
504 #strip -R.comment -R.note src/filed/static-bacula-fd
505 #install src/filed/static-bacula-fd $RPM_BUILD_ROOT%{_sysconfdir}/rescue/bacula-fd
507 install %{SOURCE10} $RPM_BUILD_ROOT/etc/rc.d/init.d/bacula-dir
508 install %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/bacula-fd
509 install %{SOURCE12} $RPM_BUILD_ROOT/etc/rc.d/init.d/bacula-sd
510 install %{SOURCE13} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}-dir
511 install %{SOURCE14} $RPM_BUILD_ROOT/etc/sysconfig/bacula-dir
512 install %{SOURCE15} $RPM_BUILD_ROOT/etc/sysconfig/bacula-fd
513 install %{SOURCE16} $RPM_BUILD_ROOT/etc/sysconfig/bacula-sd
515 %if %{with console_wx}
516 # tray-monitor is for regular users
517 mv $RPM_BUILD_ROOT%{_sbindir}/bacula-tray-monitor $RPM_BUILD_ROOT%{_bindir}
519 install scripts/bacula.png $RPM_BUILD_ROOT%{_pixmapsdir}/bacula.png
520 install src/tray-monitor/generic.xpm $RPM_BUILD_ROOT%{_pixmapsdir}/bacula-tray-monitor.xpm
521 install scripts/bacula.desktop.gnome2 $RPM_BUILD_ROOT%{_desktopdir}/bacula.desktop
522 sed -e 's/gnome-console/wx-console/g;s/Console/Wx Console/g' \
523 scripts/bacula.desktop.gnome2 > $RPM_BUILD_ROOT%{_desktopdir}/bacula-wx.desktop
524 sed -e 's#%{_sbindir}#%{_bindir}#' \
525 scripts/bacula-tray-monitor.desktop > $RPM_BUILD_ROOT%{_desktopdir}/bacula-tray-monitor.desktop
529 install src/qt-console/bat $RPM_BUILD_ROOT%{_sbindir}
530 install scripts/bat.desktop $RPM_BUILD_ROOT%{_desktopdir}
534 # install the rescue stuff, these are the rescue scripts
535 install rescue/linux/floppy/backup.etc.list $RPM_BUILD_ROOT%{_sysconfdir}/rescue
536 install rescue/linux/floppy/*_* $RPM_BUILD_ROOT%{_sysconfdir}/rescue
537 install rescue/linux/floppy/getdiskinfo $RPM_BUILD_ROOT%{_sysconfdir}/rescue
538 install rescue/linux/floppy/sfdisk.bz2 $RPM_BUILD_ROOT%{_sysconfdir}/rescue
541 # install the updatedb scripts
542 install updatedb/update_sqlite* $RPM_BUILD_ROOT%{_libexecdir}/%{name}
544 # place for site passwords
545 touch $RPM_BUILD_ROOT%{_sysconfdir}/{dir-password,fd-password,sd-password}
546 touch $RPM_BUILD_ROOT%{_sysconfdir}/{mon-dir-password,mon-fd-password,mon-sd-password}
549 rm -f $RPM_BUILD_ROOT%{_libexecdir}/%{name}/{gconsole,startmysql,stopmysql,bacula,bconsole,fd}
550 rm -f $RPM_BUILD_ROOT%{_sbindir}/static-bacula-fd
551 %if !%{with console_wx}
552 rm -f $RPM_BUILD_ROOT%{_desktopdir}/bacula-wx.desktop
554 touch $RPM_BUILD_ROOT%{_sysconfdir}/.pw.sed
557 rm -rf $RPM_BUILD_ROOT
560 %groupadd -P %{name}-common -g 136 -r -f bacula
561 %useradd -P %{name}-common -u 136 -r -d /var/lib/bacula -s /bin/false -c "Bacula User" -g bacula bacula
564 echo "Updating bacula passwords and names..."
566 for f in *-password ; do
567 if [ ! -s $f ] ; then
568 openssl rand -base64 33 > $f
571 for cf in *.conf *.conf.rpmnew ; do
572 [ -f $cf ] && sed -i -e"s:#FAKE-$f#:$p:" "$cf" || :
575 for cf in *.conf *.conf.rpmnew ; do
576 [ -f $cf ] && sed -i -e"s:--hostname--:`hostname`:" "$cf" || :
580 if [ "$1" = "0" ]; then
587 [ -s %{_localstatedir}/bacula.db ] && \
588 DB_VER=`echo "select * from Version;" | \
589 %{_bindir}/sqlite%{?with_sqlite3:3} %{_localstatedir}/bacula.db | tail -n 1 2>/dev/null`
590 if [ -z "$DB_VER" ]; then
591 # grant privileges and create tables
592 %{_libexecdir}/%{name}/grant_bacula_privileges > dev/null
593 %{_libexecdir}/%{name}/create_bacula_database > dev/null
594 %{_libexecdir}/%{name}/make_bacula_tables > dev/null
595 elif [ "$DB_VER" -lt "9" ]; then
596 echo "Backing up bacula tables"
597 echo ".dump" | sqlite%{?with_sqlite3:3} %{_localstatedir}/bacula.db | bzip2 > %{_localstatedir}/bacula_backup.sql.bz2
598 echo "Upgrading bacula tables"
601 if [ "$DB_VER" -lt "9" ]; then
602 %{_libexecdir}/%{name}/update_${type}_tables_8_to_9
607 if [ "$DB_VER" -lt "9" ]; then
608 if [ "$DB_VER" -lt "8" ]; then
609 if [ "$DB_VER" -lt "7" ]; then
610 if [ "$DB_VER" -lt "6" ]; then
611 if [ "$DB_VER" -lt "5" ]; then
612 %{_libexecdir}/%{name}/update_${type}_tables_4_to_5
614 %{_libexecdir}/%{name}/update_${type}_tables_5_to_6
616 %{_libexecdir}/%{name}/update_${type}_tables_6_to_7
618 %{_libexecdir}/%{name}/update_${type}_tables_7_to_8
620 %{_libexecdir}/%{name}/update_${type}_tables_8_to_9
623 %{_libexecdir}/%{name}/update_bacula_tables
624 echo "If bacula works correctly you can remove the backup file %{_localstatedir}/bacula_backup.sql.bz2"
626 chown -R bacula:bacula %{_localstatedir}
627 chmod -R u+rX,go-rwx %{_localstatedir}/*
629 echo "Updating Bacula passwords and names..."
631 for f in *-password ; do
633 sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
635 sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
637 /sbin/chkconfig --add bacula-dir
638 %service bacula-dir restart "Bacula Director daemon"
641 if [ "$1" = "0" ]; then
642 %service bacula-dir stop
643 /sbin/chkconfig --del bacula-dir
647 echo "Updating Bacula passwords and names..."
649 for f in *-password ; do
651 sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
653 sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
655 /sbin/chkconfig --add bacula-fd
656 %service bacula-fd restart "Bacula File daemon"
659 if [ "$1" = "0" ]; then
660 %service bacula-fd stop
661 /sbin/chkconfig --del bacula-fd
665 echo "Updating Bacula passwords and names..."
667 for f in *-password ; do
669 sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
671 sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
673 /sbin/chkconfig --add bacula-sd
674 %service bacula-sd restart "Bacula Storage daemon"
677 if [ "$1" = "0" ]; then
678 %service bacula-sd stop
679 /sbin/chkconfig --del bacula-sd
683 if [ -e %{_sysconfdir}/console.conf -a ! -e %{_sysconfdir}/bconsole.conf ]; then
684 mv %{_sysconfdir}/console.conf %{_sysconfdir}/bconsole.conf
688 echo "Updating Bacula passwords and names..."
690 for f in *-password ; do
692 sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
694 sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
697 echo "Updating Bacula passwords and names..."
699 for f in *-password ; do
701 sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
703 sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
706 echo "Updating Bacula passwords and names..."
708 for f in *-password ; do
710 sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
712 sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
715 echo "Updating Bacula passwords and names..."
717 for f in *-password ; do
719 sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
721 sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
724 echo "Updating Bacula passwords and names..."
726 for f in *-password ; do
728 sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
730 sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
733 # link our current installed conf file to the rescue directory
734 ln -sf %{_sysconfdir}/bacula-fd.conf %{_sysconfdir}/rescue/bacula-fd.conf
737 echo "Creating rescue files for this system..."
738 cd %{_sysconfdir}/rescue
742 # remove the files created after the initial rpm installation
743 if [ "$1" = "0" ]; then
744 rm -f %{_sysconfdir}/rescue/bacula-fd.conf
745 rm -f %{_sysconfdir}/rescue/partition.*
746 rm -f %{_sysconfdir}/rescue/format.*
747 rm -f %{_sysconfdir}/rescue/mount_drives
748 rm -f %{_sysconfdir}/rescue/start_network
749 rm -f %{_sysconfdir}/rescue/sfdisk
750 rm -rf %{_sysconfdir}/rescue/diskinfo/*
754 %defattr(644,root,root,755)
757 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*-password
758 %attr(755,root,root) %{_sbindir}/bsmtp
759 %attr(755,root,root) %{_sbindir}/btraceback
760 %{_mandir}/man8/bacula.8*
761 %{_mandir}/man1/bsmtp.1*
762 %{_mandir}/man8/btraceback.8*
763 %dir %{_libexecdir}/%{name}
764 %{_libexecdir}/%{name}/btraceback.dbx
765 %{_libexecdir}/%{name}/btraceback.gdb
766 %attr(770,root,bacula) %dir %{_localstatedir}
769 %defattr(644,root,root,755)
770 %doc ChangeLog CheckList ReleaseNotes kernstodo LICENSE
771 #%doc examples %{name}-docs-%{version}/manual/{*.pdf,bacula}
772 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-dir.conf
773 %ghost %{_sysconfdir}/.pw.sed
774 %attr(640,root,root) %config(noreplace) /etc/logrotate.d/bacula-dir
775 %attr(754,root,root) /etc/rc.d/init.d/bacula-dir
776 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-dir
777 %attr(755,root,root) %{_sbindir}/bacula-dir
778 %attr(755,root,root) %{_sbindir}/bregex
779 %attr(755,root,root) %{_sbindir}/bwild
780 %attr(755,root,root) %{_sbindir}/dbcheck
781 %{_mandir}/man8/bacula-dir.8*
782 %{_mandir}/man8/dbcheck.8*
783 %{_libexecdir}/%{name}/query.sql
785 %attr(755,root,root) %{_libexecdir}/%{name}/create_sqlite3_database
786 %attr(755,root,root) %{_libexecdir}/%{name}/drop_sqlite3_database
787 %attr(755,root,root) %{_libexecdir}/%{name}/drop_sqlite3_tables
788 %attr(755,root,root) %{_libexecdir}/%{name}/grant_sqlite3_privileges
789 %attr(755,root,root) %{_libexecdir}/%{name}/make_sqlite3_tables
790 %attr(755,root,root) %{_libexecdir}/%{name}/update_sqlite3_*
793 %attr(755,root,root) %{_libexecdir}/%{name}/create_sqlite_database
794 %attr(755,root,root) %{_libexecdir}/%{name}/drop_sqlite_database
795 %attr(755,root,root) %{_libexecdir}/%{name}/drop_sqlite_tables
796 %attr(755,root,root) %{_libexecdir}/%{name}/grant_sqlite_privileges
797 %attr(755,root,root) %{_libexecdir}/%{name}/make_sqlite_tables
798 %attr(755,root,root) %{_libexecdir}/%{name}/update_sqlite_*
801 %attr(755,root,root) %{_libexecdir}/%{name}/create_mysql_database
802 %attr(755,root,root) %{_libexecdir}/%{name}/drop_mysql_database
803 %attr(755,root,root) %{_libexecdir}/%{name}/drop_mysql_tables
804 %attr(755,root,root) %{_libexecdir}/%{name}/grant_mysql_privileges
805 %attr(755,root,root) %{_libexecdir}/%{name}/make_mysql_tables
806 %attr(755,root,root) %{_libexecdir}/%{name}/update_mysql_*
809 %attr(755,root,root) %{_libexecdir}/%{name}/create_postgresql_database
810 %attr(755,root,root) %{_libexecdir}/%{name}/drop_postgresql_database
811 %attr(755,root,root) %{_libexecdir}/%{name}/drop_postgresql_tables
812 %attr(755,root,root) %{_libexecdir}/%{name}/grant_postgresql_privileges
813 %attr(755,root,root) %{_libexecdir}/%{name}/make_postgresql_tables
814 %attr(755,root,root) %{_libexecdir}/%{name}/update_postgresql_*
816 %attr(755,root,root) %{_libexecdir}/%{name}/create_bacula_database
817 %attr(755,root,root) %{_libexecdir}/%{name}/drop_bacula_database
818 %attr(755,root,root) %{_libexecdir}/%{name}/drop_bacula_tables
819 %attr(755,root,root) %{_libexecdir}/%{name}/grant_bacula_privileges
820 %attr(755,root,root) %{_libexecdir}/%{name}/make_bacula_tables
821 %attr(755,root,root) %{_libexecdir}/%{name}/update_bacula_tables
822 %attr(755,root,root) %{_libexecdir}/%{name}/make_catalog_backup
823 %attr(755,root,root) %{_libexecdir}/%{name}/delete_catalog_backup
826 %defattr(644,root,root,755)
828 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-fd.conf
829 %attr(754,root,root) /etc/rc.d/init.d/bacula-fd
830 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-fd
831 %attr(755,root,root) %{_sbindir}/bacula-fd
832 %{_mandir}/man8/bacula-fd.8*
835 %defattr(644,root,root,755)
838 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-sd.conf
839 %attr(754,root,root) /etc/rc.d/init.d/bacula-sd
840 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-sd
841 %attr(755,root,root) %{_sbindir}/bacula-sd
842 %attr(755,root,root) %{_sbindir}/bcopy
843 %attr(755,root,root) %{_sbindir}/bextract
844 %attr(755,root,root) %{_sbindir}/bls
845 %attr(755,root,root) %{_sbindir}/bscan
846 %attr(755,root,root) %{_sbindir}/btape
847 %attr(755,root,root) %{_libexecdir}/%{name}/mtx-changer
848 %attr(755,root,root) %{_libexecdir}/%{name}/disk-changer
849 %attr(755,root,root) %{_libexecdir}/%{name}/dvd-handler
850 %{_mandir}/man8/bacula-sd.8*
851 %{_mandir}/man8/bcopy.8*
852 %{_mandir}/man8/bextract.8*
853 %{_mandir}/man8/bls.8*
854 %{_mandir}/man8/bscan.8*
855 %{_mandir}/man8/btape.8*
858 %defattr(644,root,root,755)
860 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bconsole.conf
861 %attr(755,root,root) %{_sbindir}/bconsole
862 %{_mandir}/man8/bconsole.8*
864 %if %{with console_wx}
866 %defattr(644,root,root,755)
868 %{_pixmapsdir}/%{name}.png
869 %{_desktopdir}/bacula-wx.desktop
870 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bwx-console.conf
871 %attr(755,root,root) %{_sbindir}/bwx-console
872 %{_mandir}/man1/bacula-bwxconsole.1*
877 %defattr(644,root,root,755)
879 %{_pixmapsdir}/%{name}.png
880 %{_desktopdir}/bacula.desktop
881 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bgnome-console.conf
882 %attr(755,root,root) %{_sbindir}/bgnome-console
883 %{_mandir}/man1/bacula-bgnome-console.1*
888 %defattr(644,root,root,755)
890 %{_pixmapsdir}/%{name}.png
891 %{_desktopdir}/bat.desktop
892 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bat.conf
893 %attr(755,root,root) %{_sbindir}/bat
894 %{_mandir}/man1/bat.1*
897 %if %{with console_wx}
899 %defattr(644,root,root,755)
901 %{_pixmapsdir}/%{name}-tray-monitor.xpm
902 %{_desktopdir}/%{name}-tray-monitor.desktop
903 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/tray-monitor.conf
904 %attr(755,root,root) %{_bindir}/bacula-tray-monitor
905 %{_mandir}/man1/bacula-tray-monitor.1*
910 %defattr(644,root,root,755)
912 %dir %{_sysconfdir}/rescue
913 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/backup.etc.list
914 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/bacula-fd
915 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/format_floppy
916 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/getdiskinfo
917 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/make_rescue_disk
918 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/restore_bacula
919 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/restore_etc
920 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/run_grub
921 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/run_lilo
922 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/sfdisk.bz2