]> git.pld-linux.org Git - packages/bacula.git/blob - bacula.spec
- fixes dvd-handler path in the default configuration file
[packages/bacula.git] / bacula.spec
1 #
2 # TODO:
3 #       - update desktop files, think about su-wrappers for console
4 #       - package web admin
5 #
6 # Conditional build:
7 %bcond_without  console_wx      # wx-console program
8 %bcond_without  gnome           # gnome-console program
9 %bcond_with     python
10 %bcond_with     rescue
11 #
12 Summary:        Bacula - The Network Backup Solution
13 Summary(pl):    Bacula - rozwi±zanie do wykonywania kopii zapasowych po sieci
14 Name:           bacula
15 Version:        1.38.2
16 Release:        0.1
17 Epoch:          0
18 Group:          Networking/Utilities
19 License:        extended GPL v2
20 Source0:        http://dl.sourceforge.net/bacula/%{name}-%{version}.tar.gz
21 # Source0-md5:  898a9ce05dc6b3e3312de4fa62aacb06
22 Source1:        %{name}-manpages.tar.bz2
23 # Source1-md5:  e4dae86d6574b360e831efd3913e7f4c
24 Source2:        http://dl.sourceforge.net/bacula/%{name}-docs-%{version}.tar.gz
25 ## Source2-md5: 6b4b6fba135e554687103340f07a31b2
26 #Source3:       http://dl.sourceforge.net/bacula/%{name}-gui-%{version}.tar.gz
27 # Source3-md5:  5fb575ceed9dee0cdf8bc7f81ef60f54
28 Source4:        http://dl.sourceforge.net/bacula/%{name}-rescue-1.8.1.tar.gz
29 # Source4-md5:  a5833354917125127b4a1f5e68521834
30 Source10:       %{name}-dir.init
31 Source11:       %{name}-fd.init
32 Source12:       %{name}-sd.init
33 Source13:       %{name}.logrotate
34 Source14:       %{name}-dir.sysconfig
35 Source15:       %{name}-fd.sysconfig
36 Source16:       %{name}-sd.sysconfig
37 Patch0:         %{name}-dvd-handler_path.patch
38 URL:            http://www.bacula.org/
39 BuildRequires:  acl-static
40 BuildRequires:  automake
41 %{?with_rescue:BuildRequires:   fakeroot}
42 BuildRequires:  glibc-static
43 %if %{with gnome}
44 BuildRequires:  libgnome-devel >= 2.0
45 BuildRequires:  libgnomeui-devel >= 2.0
46 %endif
47 BuildRequires:  libstdc++-static
48 BuildRequires:  libwrap-static
49 BuildRequires:  mtx
50 BuildRequires:  ncurses-devel
51 BuildRequires:  openssl-devel
52 BuildRequires:  openssl-static
53 BuildRequires:  pkgconfig
54 %{?with_python:BuildRequires:   python-static}
55 BuildRequires:  readline-devel
56 BuildRequires:  rpmbuild(macros) >= 1.202
57 BuildRequires:  sed >= 4.0
58 BuildRequires:  sqlite-devel
59 %if %{with console_wx}
60 BuildRequires:  wxGTK2-devel >= 2.4.0
61 %endif
62 BuildRequires:  zlib-devel
63 BuildRequires:  zlib-static
64 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
65
66 %define         _sysconfdir     /etc/%{name}
67 %define         _localstatedir  /var/lib/%{name}
68
69 %description
70 Bacula - It comes by night and sucks the vital essence from your
71 computers.
72
73 Bacula is a set of computer programs that permit you (or the system
74 administrator) to manage backup, recovery, and verification of
75 computer data across a network of computers of different kinds. In
76 technical terms, it is a network client/server based backup program.
77 Bacula is relatively easy to use and efficient, while offering many
78 advanced storage management features that make it easy to find and
79 recover lost or damaged files.
80
81 %description -l pl
82 Bacula - przychodzi noc± i wysysa ¿ywotny ekstrakt z komputerów.
83
84 Bacula to zbiór programów umo¿liwiaj±cych administratorowi na
85 zarz±dzanie kopiami zapasowymi, odzyskiwaniem i weryfikacj± danych
86 w sieci komputerów ró¿nego rodzaju. W terminologii technicznej jest to
87 program do kopii zapasowych pracuj±cy w architekturze klient-serwer.
88 Bacula jest stosunkowo ³atwa w u¿yciu i wydajna, oferuj±c przy tym
89 wiele zaawansowanych mo¿liwo¶ci przy zarz±dzaniu no¶nikami,
90 u³atwiaj±cych znalezienie i odzyskanie utraconych lub uszkodzonych
91 plików.
92
93 %package common
94 Summary:        Common files for bacula package
95 Summary(pl):    Pliki wspólne dla pakietu bacula
96 Group:          Networking/Utilities
97 Conflicts:      bacula-dir < 0:1.34.6
98 Conflicts:      bacula-fd < 0:1.34.6
99 Conflicts:      bacula-sd < 0:1.34.6
100 Conflicts:      bacula-console < 0:1.34.6
101 Requires(post): openssl-tools
102 Requires(post): sed >= 4.0
103 Requires(pre):  /usr/sbin/groupadd
104 Requires(pre):  /usr/sbin/useradd
105 Requires(post,preun):   /sbin/chkconfig
106
107 %description common
108 Bacula - It comes by night and sucks the vital essence from your
109 computers.
110
111 Bacula is a set of computer programs that permit you (or the system
112 administrator) to manage backup, recovery, and verification of
113 computer data across a network of computers of different kinds. In
114 technical terms, it is a network client/server based backup program.
115 Bacula is relatively easy to use and efficient, while offering many
116 advanced storage management features that make it easy to find and
117 recover lost or damaged files.
118
119 %description common -l pl
120 Bacula - przychodzi noc± i wysysa ¿ywotny ekstrakt z komputerów.
121
122 Bacula to zbiór programów umo¿liwiaj±cych administratorowi na
123 zarz±dzanie kopiami zapasowymi, odzyskiwaniem i weryfikacj± danych
124 w sieci komputerów ró¿nego rodzaju. W terminologii technicznej jest to
125 program do kopii zapasowych pracuj±cy w architekturze klient-serwer.
126 Bacula jest stosunkowo ³atwa w u¿yciu i wydajna, oferuj±c przy tym
127 wiele zaawansowanych mo¿liwo¶ci przy zarz±dzaniu no¶nikami,
128 u³atwiaj±cych znalezienie i odzyskanie utraconych lub uszkodzonych
129 plików.
130
131 %package dir
132 Summary:        Bacula Director and Catalog services
133 Summary(pl):    Us³ugi Bacula Director i Catalog
134 Group:          Networking/Utilities
135 Obsoletes:      %{name}-updatedb
136 PreReq:         bacula-common = %{epoch}:%{version}-%{release}
137 Requires(post): sed >= 4.0
138
139 %description dir
140 Bacula - It comes by night and sucks the vital essence from your
141 computers.
142
143 Bacula Director is the program that supervises all the backup,
144 restore, verify and archive operations. The system administrator uses
145 the Bacula Director to schedule backups and to recover files. Catalog
146 services are comprised of the software programs responsible for
147 maintaining the file indexes and volume databases for all files backed
148 up. The Catalog services permit the System Administrator or user to
149 quickly locate and restore any desired file, since it maintains a
150 record of all Volumes used, all Jobs run, and all Files saved. This
151 build requires sqlite to be installed separately as the catalog
152 database.
153
154 %description dir -l pl
155 Bacula - przychodzi noc± i wysysa ¿ywotny ekstrakt z komputerów.
156
157 Bacula Director to program nadzoruj±cy wszystkie operacje wykonywania
158 kopii zapasowych, odzyskiwania, weryfikacji i archiwizowania.
159 Administrator u¿ywa Bacula Directora do szeregowania kopii zapasowych
160 oraz odzyskiwania plików. Us³ugi katalogowe (Catalog services) s±
161 u¿ywane przez programy odpowiedzialne za zarz±dzanie indeksami plików
162 i baz± danych wolumenów dla wszystkich kopiowanych plików. Us³ugi
163 katalogowe umo¿liwiaj± administratorowi lub u¿ytkownikowi szybko
164 zlokalizowaæ i odtworzyæ dowolny plik, poniewa¿ utrzymuj± rekord ze
165 wszystkimi u¿ywanymi wolumenami, uruchomionymi zadaniami i zapisanymi
166 plikami. Pakiet wymaga sqlite zainstalowanego oddzielnie jako bazy
167 danych dla katalogu.
168
169 %package console
170 Summary:        Bacula Console
171 Summary(pl):    Konsola Baculi
172 Group:          Networking/Utilities
173 PreReq:         bacula-common = %{epoch}:%{version}-%{release}
174 Requires(post): sed >= 4.0
175
176 %description console
177 Bacula - It comes by night and sucks the vital essence from your
178 computers.
179
180 Bacula Console is the program that allows the administrator or user to
181 communicate with the Bacula Director. This is the text only console
182 interface.
183
184 %description console -l pl
185 Bacula - przychodzi noc± i wysysa ¿ywotny ekstrakt z komputerów.
186
187 Bacula Console to program umo¿liwiaj±cy administratorowi lub
188 u¿ytkownikowi komunikowanie siê z programem Bacula Director. To jest
189 interfejs czysto tekstowy.
190
191 %package console-wx
192 Summary:        Bacula wxWidgets Console
193 Summary(pl):    Konsola Baculi oparta na wxWidgets
194 Group:          Networking/Utilities
195 PreReq:         bacula-common = %{epoch}:%{version}-%{release}
196 Requires(post): sed >= 4.0
197
198 %description console-wx
199 Bacula - It comes by night and sucks the vital essence from your
200 computers.
201
202 Bacula Console is the program that allows the administrator or user to
203 communicate with the Bacula Director. This is the wxWidgets GUI
204 interface.
205
206 %description console-wx -l pl
207 Bacula - przychodzi noc± i wysysa ¿ywotny ekstrakt z komputerów.
208
209 Bacula Console to program umo¿liwiaj±cy administratorowi lub
210 u¿ytkownikowi komunikowanie siê z programem Bacula Director. To jest
211 interfejs graficzny oparty na wxWidgets.
212
213 %package console-gnome
214 Summary:        Bacula GNOME Console
215 Summary(pl):    Konsola Baculi oparta dla GNOME
216 Group:          Networking/Utilities
217 PreReq:         bacula-common = %{epoch}:%{version}-%{release}
218 Requires(post): sed >= 4.0
219
220 %description console-gnome
221 Bacula - It comes by night and sucks the vital essence from your
222 computers.
223
224 Bacula Console is the program that allows the administrator or user to
225 communicate with the Bacula Director. This is the GNOME GUI
226 interface.
227
228 %description console-gnome -l pl
229 Bacula - przychodzi noc± i wysysa ¿ywotny ekstrakt z komputerów.
230
231 Bacula Console to program umo¿liwiaj±cy administratorowi lub
232 u¿ytkownikowi komunikowanie siê z programem Bacula Director. To jest
233 interfejs graficzny oparty na GNOME.
234
235 %package tray-monitor
236 Summary:        Bacula Tray Monitor
237 Group:          Networking/Utilities
238 PreReq:         bacula-common = %{epoch}:%{version}-%{release}
239 Requires(post): sed >= 4.0
240
241 %description tray-monitor
242 Bacula - It comes by night and sucks the vital essence from your
243 computers.
244
245 The Monitor program is typically an icon in the system tray. However,
246 once the icon is expanded into a full window, the administrator or
247 user can obtain status information about the Director or the backup
248 status on the local workstation or any other Bacula daemon that is
249 configured.
250
251 %package fd
252 Summary:        Bacula File services (Client)
253 Summary(pl):    Us³ugi Bacula File (klient)
254 Group:          Networking/Utilities
255 PreReq:         bacula-common = %{epoch}:%{version}-%{release}
256 Requires(post): sed >= 4.0
257
258 %description fd
259 Bacula - It comes by night and sucks the vital essence from your
260 computers.
261
262 Bacula File services (or Client program) is the software program that
263 is installed on the machine to be backed up. It is specific to the
264 operating system on which it runs and is responsible for providing the
265 file attributes and data when requested by the Director. The File
266 services are also responsible for the file system dependent part of
267 restoring the file attributes and data during a recovery operation.
268 This program runs as a daemon on the machine to be backed up, and in
269 some of the documentation, the File daemon is referred to as the
270 Client (for example in Bacula configuration file).
271
272 %description fd -l pl
273 Bacula - przychodzi noc± i wysysa ¿ywotny ekstrakt z komputerów.
274
275 Us³ugi Bacula File (inaczej program kliencki) to oprogramowanie, które
276 instaluje siê na maszynach, z których maj± byæ wykonywane kopie
277 zapasowe. S± one specyficzne dla systemu operacyjnego, pod którym
278 dzia³a dana maszyna i odpowiadaj± za dostarczanie atrybutów i danych
279 plików na ¿±danie Directora. Us³ugi plikowe s± tak¿e odpowiedzialne za
280 zale¿n± od systemu plików czê¶æ odzyskiwania atrybutów i danych plików
281 podczas operacji odzyskiwania danych. Program dzia³a jako demon na
282 maszynie, która ma byæ backupowana i w czê¶ci dokumentacji demon ten
283 (File) jest nazywany klientem (na przyk³ad w pliku konfiguracyjnym
284 Baculi).
285
286 %package sd
287 Summary:        Bacula Storage services
288 Summary(pl):    Us³ugi Bacula Storage
289 Group:          Networking/Utilities
290 PreReq:         bacula-common = %{epoch}:%{version}-%{release}
291 Requires(post): sed >= 4.0
292 Conflicts:      dvd+rw-tools <= 5.21.4.10.8-1
293
294 %description sd
295 Bacula - It comes by night and sucks the vital essence from your
296 computers.
297
298 Bacula Storage services consist of the software programs that perform
299 the storage and recovery of the file attributes and data to the
300 physical backup media or volumes. In other words, the Storage daemon
301 is responsible for reading and writing your tapes (or other storage
302 media, e.g. files). The Storage services runs as a daemon on the
303 machine that has the backup device (usually a tape drive).
304
305 %description sd -l pl
306 Bacula - przychodzi noc± i wysysa ¿ywotny ekstrakt z komputerów.
307
308 Us³ugi Bacula Storage sk³adaj± siê z programów obs³uguj±cych
309 przechowywanie danych oraz odzyskiwanie atrybutów i danych na
310 fizycznych no¶nikach lub wolumenach. Innymi s³owy, demon Storage jest
311 odpowiedzialny za odczyt i zapis ta¶m (lub innych no¶ników do
312 przechowywania danych, np. plików). Us³ugi Storage dzia³aj± jako demon
313 na maszynie, która zawiera urz±dzenie backupowe (zwykle napêd
314 ta¶mowy).
315
316 %package rescue
317 Summary:        Bacula - The Network Backup Solution
318 Summary(pl):    Bacula - rozwi±zanie do wykonywania kopii zapasowych po sieci
319 Group:          Networking/Utilities
320 Requires:       %{name}-fd = %{epoch}:%{version}-%{release}
321 Requires:       coreutils
322 Requires:       util-linux
323
324 %description rescue
325 Bacula - It comes by night and sucks the vital essence from your
326 computers.
327
328 Bacula is a set of computer programs that permit you (or the system
329 administrator) to manage backup, recovery, and verification of
330 computer data across a network of computers of different kinds. In
331 technical terms, it is a network client/server based backup program.
332 Bacula is relatively easy to use and efficient, while offering many
333 advanced storage management features that make it easy to find and
334 recover lost or damaged files.
335
336 This package installs scripts for disaster recovery and builds rescue
337 floppy disk for bare metal recovery.
338
339 To make the bacula rescue disk run "./make_rescue_disk --copy-static-bacula
340 - --copy-etc-files" from the %{_sysconfdir}/rescue directory. To recreate the
341 rescue information for this system run ./getdiskinfo again.
342
343 %description rescue -l pl
344 Bacula - przychodzi noc± i wysysa ¿ywotny ekstrakt z komputerów.
345
346 Bacula to zbiór programów umo¿liwiaj±cych administratorowi na
347 zarz±dzanie kopiami zapasowymi, odzyskiwaniem i weryfikacj± danych
348 w sieci komputerów ró¿nego rodzaju. W terminologii technicznej jest to
349 program do kopii zapasowych pracuj±cy w architekturze klient-serwer.
350 Bacula jest stosunkowo ³atwa w u¿yciu i wydajna, oferuj±c przy tym
351 wiele zaawansowanych mo¿liwo¶ci przy zarz±dzaniu no¶nikami,
352 u³atwiaj±cych znalezienie i odzyskanie utraconych lub uszkodzonych
353 plików.
354
355 Ten pakiet zawiera skrypty do odtwarzania po awarii i tworzy dyskietkê
356 ratunkowe do odtwarzania systemu od zera.
357
358 Aby stworzyæ dyskietkê ratunkow± Baculi, nale¿y uruchomiæ "./make_rescue_disk
359 --copy-static-bacula - --copy-etc-files" z katalogu
360 %{_sysconfdir}/rescue . Aby ponownie utworzyæ informacje ratunkowe dla
361 danego systemu, nale¿y ponownie uruchomiæ ./getdiskinfo .
362
363 %prep
364 %setup -q -a 1 -a 2
365 %patch0 -p1
366 #tar -xf %{SOURCE3}
367 tar -xf %{SOURCE4} && ln -s bacula-rescue-* rescue
368 sed -i -e 's#wx-config#wx-gtk2-ansi-config#g' configure*
369 sed -i -e 's#-lreadline -lhistory -ltermcap#-lreadline -lhistory#g' configure*
370 sed -i -e 's#bindir=.*#bindir=%{_bindir}#g' \
371         src/cats/create_* src/cats/delete_* src/cats/drop_* \
372         src/cats/grant_* src/cats/make_* src/cats/update_*
373 sed -i -e 's/@hostname@/--hostname--/' src/*/*.conf.in
374
375 %build
376 cp -f %{_datadir}/automake/config.sub autoconf
377 CPPFLAGS="-I%{_includedir}/ncurses -I%{_includedir}/readline"
378 %configure \
379         --with-scriptdir=%{_libexecdir}/%{name} \
380         --%{!?with_gnome:dis}%{?with_gnome:en}able-gnome \
381         --disable-conio \
382         --enable-smartalloc \
383         %{?with_console_wx:--enable-wx-console} \
384         --enable-tray-monitor \
385         --with-readline \
386         --with-tcp-wrappers \
387         --with-working-dir=%{_var}/lib/%{name} \
388         --with-dump-email="root@localhost" \
389         --with-job-email="root@localhost" \
390         --with-smtp-host=localhost \
391         --with-pid-dir=/var/run \
392         --with-subsys-dir=/var/lock/subsys \
393         --with-sqlite \
394         --with-dir-password="#FAKE-dir-password#" \
395         --with-fd-password="#FAKE-fd-password#" \
396         --with-sd-password="#FAKE-sd-password#" \
397         --with-mon-dir-password="#FAKE-mon-dir-password#" \
398         --with-mon-fd-password="#FAKE-mon-fd-password#" \
399         --with-mon-sd-password="#FAKE-mon-sd-password#" \
400         --enable-static-fd \
401         --with-openssl
402
403 %{__make}
404
405 %if %{with rescue}
406 cd rescue
407 %configure \
408         --with-bacula=../
409 cd linux/cdrom
410 fakeroot %{__make}
411 %endif
412
413 %install
414 rm -rf $RPM_BUILD_ROOT
415
416 install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,logrotate.d,pam.d,sysconfig}
417 install -d $RPM_BUILD_ROOT%{_sysconfdir}/rescue
418 install -d $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_mandir},%{_bindir}}
419
420 %{__make} install \
421         DESTDIR=$RPM_BUILD_ROOT
422
423 # static daemon
424 strip -R.comment -R.note src/filed/static-bacula-fd
425 install src/filed/static-bacula-fd $RPM_BUILD_ROOT%{_sysconfdir}/rescue/bacula-fd
426
427 # tray-monitor is for regular users
428 mv $RPM_BUILD_ROOT%{_sbindir}/bacula-tray-monitor $RPM_BUILD_ROOT%{_bindir}
429
430 install %{SOURCE10} $RPM_BUILD_ROOT/etc/rc.d/init.d/bacula-dir
431 install %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/bacula-fd
432 install %{SOURCE12} $RPM_BUILD_ROOT/etc/rc.d/init.d/bacula-sd
433 install %{SOURCE13} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}-dir
434 install %{SOURCE14} $RPM_BUILD_ROOT/etc/sysconfig/bacula-dir
435 install %{SOURCE15} $RPM_BUILD_ROOT/etc/sysconfig/bacula-fd
436 install %{SOURCE16} $RPM_BUILD_ROOT/etc/sysconfig/bacula-sd
437
438 install scripts/bacula.png $RPM_BUILD_ROOT%{_pixmapsdir}/bacula.png
439 install src/tray-monitor/generic.xpm $RPM_BUILD_ROOT%{_pixmapsdir}/bacula-tray-monitor.xpm
440 install scripts/bacula.desktop.gnome2 $RPM_BUILD_ROOT%{_desktopdir}/bacula.desktop
441 sed -e 's/gnome-console/wx-console/g;s/Console/Wx Console/g' \
442         scripts/bacula.desktop.gnome2 > $RPM_BUILD_ROOT%{_desktopdir}/bacula-wx.desktop
443 sed -e 's#%{_sbindir}#%{_bindir}#' \
444         scripts/bacula-tray-monitor.desktop > $RPM_BUILD_ROOT%{_desktopdir}/bacula-tray-monitor.desktop
445
446 %if %{with rescue}
447 # install the rescue stuff, these are the rescue scripts
448 install rescue/linux/floppy/backup.etc.list $RPM_BUILD_ROOT%{_sysconfdir}/rescue
449 install rescue/linux/floppy/*_* $RPM_BUILD_ROOT%{_sysconfdir}/rescue
450 install rescue/linux/floppy/getdiskinfo $RPM_BUILD_ROOT%{_sysconfdir}/rescue
451 install rescue/linux/floppy/sfdisk.bz2 $RPM_BUILD_ROOT%{_sysconfdir}/rescue
452 %endif
453
454 # install the updatedb scripts
455 install updatedb/update_sqlite* $RPM_BUILD_ROOT%{_libexecdir}/%{name}
456
457 # manual
458 cp -a man1 man8 $RPM_BUILD_ROOT%{_mandir}
459
460 # place for site passwords
461 touch $RPM_BUILD_ROOT%{_sysconfdir}/{dir-password,fd-password,sd-password}
462 touch $RPM_BUILD_ROOT%{_sysconfdir}/{mon-dir-password,mon-fd-password,mon-sd-password}
463
464 # some file changes
465 rm -f $RPM_BUILD_ROOT%{_libexecdir}/%{name}/{gconsole,startmysql,stopmysql,bacula,bconsole,fd}
466 rm -f $RPM_BUILD_ROOT%{_sbindir}/static-bacula-fd
467 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/gnome*
468 %if %{without console_wx}
469 rm -f $RPM_BUILD_ROOT%{_desktopdir}/bacula-wx.desktop
470 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/wx-console*
471 %endif
472 touch $RPM_BUILD_ROOT%{_sysconfdir}/.pw.sed
473
474 %clean
475 rm -rf $RPM_BUILD_ROOT
476
477 %pre common
478 %groupadd -P %{name}-common -g 136 -r -f bacula
479 %useradd -P %{name}-common -u 136 -r -d /var/lib/bacula -s /bin/false -c "Bacula User" -g bacula bacula
480
481 %post common
482 echo "Updating bacula passwords and names..."
483 cd /etc/bacula
484 for f in *-password ; do
485         if [ ! -s $f ] ; then
486                 openssl rand -base64 33 > $f
487         fi
488         p=`cat $f`
489         for cf in *.conf *.conf.rpmnew ; do
490                 [ -f $cf ] && sed -i -e"s:#FAKE-$f#:$p:" "$cf" || :
491         done
492 done
493 for cf in *.conf *.conf.rpmnew ; do
494         [ -f $cf ] && sed -i -e"s:--hostname--:`hostname`:" "$cf" || :
495 done
496
497 %postun common
498 if [ "$1" = "0" ]; then
499         %userremove bacula
500         %groupremove bacula
501 fi
502
503 %post dir
504 umask 077
505 [ -s %{_localstatedir}/bacula.db ] && \
506         DB_VER=`echo "select * from Version;" | \
507         %{_bindir}/sqlite %{_localstatedir}/bacula.db | tail -n 1 2>/dev/null`
508 if [ -z "$DB_VER" ]; then
509 # grant privileges and create tables
510         %{_libexecdir}/%{name}/grant_bacula_privileges > dev/null
511         %{_libexecdir}/%{name}/create_bacula_database > dev/null
512         %{_libexecdir}/%{name}/make_bacula_tables > dev/null
513 elif [ "$DB_VER" -lt "8" ]; then
514         echo "Backing up bacula tables"
515         echo ".dump" | sqlite %{_localstatedir}/bacula.db | bzip2 > %{_localstatedir}/bacula_backup.sql.bz2
516         type=sqlite
517         echo "Upgrading bacula tables"
518         if [ "$DB_VER" -lt "8" ]; then
519                 if [ "$DB_VER" -lt "7" ]; then
520                         if [ "$DB_VER" -lt "6" ]; then
521                                 if [ "$DB_VER" -lt "5" ]; then
522                                         %{_libexecdir}/%{name}/update_${type}_tables_4_to_5
523                                 fi
524                                 %{_libexecdir}/%{name}/update_${type}_tables_5_to_6
525                         fi
526                         %{_libexecdir}/%{name}/update_${type}_tables_6_to_7
527                 fi
528                 %{_libexecdir}/%{name}/update_${type}_tables_7_to_8
529         fi
530         %{_libexecdir}/%{name}/update_bacula_tables
531         echo "If bacula works correctly you can remove the backup file %{_localstatedir}/bacula_backup.sql.bz2"
532 fi
533 chown -R bacula:bacula %{_localstatedir}
534 chmod -R u+rX,go-rwx %{_localstatedir}/*
535
536 echo "Updating Bacula passwords and names..."
537 cd /etc/bacula
538 for f in *-password ; do
539         p=`cat $f`
540         sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
541 done
542 sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
543
544 /sbin/chkconfig --add bacula-dir
545 if [ -f /var/lock/subsys/bacula-dir ]; then
546         /etc/rc.d/init.d/bacula-dir restart 1>&2
547 else
548         echo "Run \"/etc/rc.d/init.d/bacula-dir start\" to start Bacula Director daemon."
549 fi
550
551 %preun dir
552 if [ "$1" = "0" ]; then
553         if [ -f /var/lock/subsys/bacula-dir ]; then
554                 /etc/rc.d/init.d/bacula-dir stop 1>&2
555         fi
556         /sbin/chkconfig --del bacula-dir
557 fi
558
559 %post fd
560 echo "Updating Bacula passwords and names..."
561 cd /etc/bacula
562 for f in *-password ; do
563         p=`cat $f`
564         sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
565 done
566 sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
567
568 /sbin/chkconfig --add bacula-fd
569 if [ -f /var/lock/subsys/bacula-fd ]; then
570         /etc/rc.d/init.d/bacula-fd restart 1>&2
571 else
572         echo "Run \"/etc/rc.d/init.d/bacula-fd start\" to start Bacula File daemon."
573 fi
574
575 %preun fd
576 if [ "$1" = "0" ]; then
577         if [ -f /var/lock/subsys/bacula-fd ]; then
578                 /etc/rc.d/init.d/bacula-fd stop 1>&2
579         fi
580         /sbin/chkconfig --del bacula-fd
581 fi
582
583 %post sd
584 echo "Updating Bacula passwords and names..."
585 cd /etc/bacula
586 for f in *-password ; do
587         p=`cat $f`
588         sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
589 done
590 sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
591
592 /sbin/chkconfig --add bacula-sd
593 if [ -f /var/lock/subsys/bacula-sd ]; then
594         /etc/rc.d/init.d/bacula-sd restart 1>&2
595 else
596         echo "Run \"/etc/rc.d/init.d/bacula-sd start\" to start Bacula Storage daemon."
597 fi
598
599 %preun sd
600 if [ "$1" = "0" ]; then
601         if [ -f /var/lock/subsys/bacula-sd ]; then
602                 /etc/rc.d/init.d/bacula-sd stop 1>&2
603         fi
604         /sbin/chkconfig --del bacula-sd
605 fi
606
607 %pre console
608 if [ -e %{_sysconfdir}/console.conf -a ! -e %{_sysconfdir}/bconsole.conf ]; then
609         mv %{_sysconfdir}/console.conf %{_sysconfdir}/bconsole.conf
610 fi
611
612 %post console
613 echo "Updating Bacula passwords and names..."
614 cd /etc/bacula
615 for f in *-password ; do
616         p=`cat $f`
617         sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
618 done
619 sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
620
621 %post console-wx
622 echo "Updating Bacula passwords and names..."
623 cd /etc/bacula
624 for f in *-password ; do
625         p=`cat $f`
626         sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
627 done
628 sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
629
630 %post console-gnome
631 echo "Updating Bacula passwords and names..."
632 cd /etc/bacula
633 for f in *-password ; do
634         p=`cat $f`
635         sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
636 done
637 sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
638
639 %post tray-monitor
640 echo "Updating Bacula passwords and names..."
641 cd /etc/bacula
642 for f in *-password ; do
643         p=`cat $f`
644         sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
645 done
646 sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
647
648 %post rescue
649 # link our current installed conf file to the rescue directory
650 ln -sf %{_sysconfdir}/bacula-fd.conf %{_sysconfdir}/rescue/bacula-fd.conf
651
652 # run getdiskinfo
653 echo "Creating rescue files for this system..."
654 cd %{_sysconfdir}/rescue
655 ./getdiskinfo
656
657 %preun rescue
658 # remove the files created after the initial rpm installation
659 if [ "$1" = "0" ]; then
660         rm -f %{_sysconfdir}/rescue/bacula-fd.conf
661         rm -f %{_sysconfdir}/rescue/partition.*
662         rm -f %{_sysconfdir}/rescue/format.*
663         rm -f %{_sysconfdir}/rescue/mount_drives
664         rm -f %{_sysconfdir}/rescue/start_network
665         rm -f %{_sysconfdir}/rescue/sfdisk
666         rm -rf %{_sysconfdir}/rescue/diskinfo/*
667 fi
668
669 %files common
670 %defattr(644,root,root,755)
671 %doc LICENSE
672 %dir %{_sysconfdir}
673 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*-password
674 %attr(755,root,root) %{_sbindir}/btraceback
675 %attr(755,root,root) %{_sbindir}/bsmtp
676 %{_mandir}/man8/bacula.8*
677 %dir %{_libexecdir}/%{name}
678 %{_libexecdir}/%{name}/btraceback.dbx
679 %{_libexecdir}/%{name}/btraceback.gdb
680 %attr(770,root,bacula) %dir %{_localstatedir}
681
682 %files dir
683 %defattr(644,root,root,755)
684 %doc ChangeLog CheckList ReleaseNotes kernstodo LICENSE
685 %doc examples %{name}-docs-%{version}/manual/{*.pdf,bacula}
686 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-dir.conf
687 %ghost %{_sysconfdir}/.pw.sed
688 %attr(640,root,root) %config(noreplace) /etc/logrotate.d/bacula-dir
689 %attr(754,root,root) /etc/rc.d/init.d/bacula-dir
690 %attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-dir
691 %attr(755,root,root) %{_sbindir}/bacula-dir
692 %attr(755,root,root) %{_sbindir}/dbcheck
693 %{_mandir}/man8/bacula-dir.8*
694 %{_mandir}/man1/dbcheck.1*
695 %{_libexecdir}/%{name}/query.sql
696 %attr(755,root,root) %{_libexecdir}/%{name}/create_sqlite_database
697 %attr(755,root,root) %{_libexecdir}/%{name}/drop_sqlite_database
698 %attr(755,root,root) %{_libexecdir}/%{name}/drop_sqlite_tables
699 %attr(755,root,root) %{_libexecdir}/%{name}/grant_sqlite_privileges
700 %attr(755,root,root) %{_libexecdir}/%{name}/make_sqlite_tables
701 %attr(755,root,root) %{_libexecdir}/%{name}/update_sqlite*
702 %attr(755,root,root) %{_libexecdir}/%{name}/create_bacula_database
703 %attr(755,root,root) %{_libexecdir}/%{name}/drop_bacula_database
704 %attr(755,root,root) %{_libexecdir}/%{name}/drop_bacula_tables
705 %attr(755,root,root) %{_libexecdir}/%{name}/grant_bacula_privileges
706 %attr(755,root,root) %{_libexecdir}/%{name}/make_bacula_tables
707 %attr(755,root,root) %{_libexecdir}/%{name}/update_bacula_tables
708 %attr(755,root,root) %{_libexecdir}/%{name}/make_catalog_backup
709 %attr(755,root,root) %{_libexecdir}/%{name}/delete_catalog_backup
710
711 %files fd
712 %defattr(644,root,root,755)
713 %doc LICENSE
714 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-fd.conf
715 %attr(754,root,root) /etc/rc.d/init.d/bacula-fd
716 %attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-fd
717 %attr(755,root,root) %{_sbindir}/bacula-fd
718 %{_mandir}/man8/bacula-fd.8*
719
720 %files sd
721 %defattr(644,root,root,755)
722 %doc LICENSE
723 %dir %{_sysconfdir}
724 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-sd.conf
725 %attr(754,root,root) /etc/rc.d/init.d/bacula-sd
726 %attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-sd
727 %attr(755,root,root) %{_sbindir}/bacula-sd
728 %attr(755,root,root) %{_sbindir}/bcopy
729 %attr(755,root,root) %{_sbindir}/bextract
730 %attr(755,root,root) %{_sbindir}/bls
731 %attr(755,root,root) %{_sbindir}/bscan
732 %attr(755,root,root) %{_sbindir}/btape
733 %attr(755,root,root) %{_libexecdir}/%{name}/mtx-changer
734 %attr(755,root,root) %{_libexecdir}/%{name}/dvd-handler
735 %{_mandir}/man8/bacula-sd.8*
736 %{_mandir}/man1/bcopy.1*
737 %{_mandir}/man1/bextract.1*
738 %{_mandir}/man1/bls.1*
739 %{_mandir}/man1/bscan.1*
740 %{_mandir}/man1/btape.1*
741
742 %files console
743 %defattr(644,root,root,755)
744 %doc LICENSE
745 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bconsole.conf
746 %attr(755,root,root) %{_sbindir}/bconsole
747 %{_mandir}/man1/bconsole.1*
748
749 %if %{with console_wx}
750 %files console-wx
751 %defattr(644,root,root,755)
752 %doc LICENSE
753 %{_pixmapsdir}/%{name}.png
754 %{_desktopdir}/bacula-wx.desktop
755 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/wx-console.conf
756 %attr(755,root,root) %{_sbindir}/wx-console
757 %{_mandir}/man1/wx-console.1*
758 %endif
759
760 %if %{with gnome}
761 %files console-gnome
762 %defattr(644,root,root,755)
763 %doc LICENSE
764 %{_pixmapsdir}/%{name}.png
765 %{_desktopdir}/bacula.desktop
766 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gnome-console.conf
767 %attr(755,root,root) %{_sbindir}/gnome-console
768 #%{_mandir}/man1/gnome-console.1*
769 %endif
770
771 %files tray-monitor
772 %defattr(644,root,root,755)
773 %doc LICENSE
774 %{_pixmapsdir}/%{name}-tray-monitor.xpm
775 %{_desktopdir}/%{name}-tray-monitor.desktop
776 %attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/tray-monitor.conf
777 %attr(755,root,root) %{_bindir}/bacula-tray-monitor
778 #%{_mandir}/man1/bacula-tray-monitor.1*
779
780 %if %{with rescue}
781 %files rescue
782 %defattr(644,root,root,755)
783 %doc LICENSE
784 %dir %{_sysconfdir}/rescue
785 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/backup.etc.list
786 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/bacula-fd
787 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/format_floppy
788 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/getdiskinfo
789 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/make_rescue_disk
790 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/restore_bacula
791 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/restore_etc
792 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/run_grub
793 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/run_lilo
794 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/sfdisk.bz2
795 %endif
This page took 0.074369 seconds and 4 git commands to generate.