]>
Commit | Line | Data |
---|---|---|
9478b6bb | 1 | |
70dd92c5 | 2 | # - now path in browser is http://localhost/cgi/BackupPC/BackupPC_Admin |
e8b484a8 | 3 | # TODO: |
ec0b6580 | 4 | # - trigers |
087f2434 | 5 | # - polish translation in SOURCE/backuppc-pl.pm |
70dd92c5 | 6 | # - patch at user and gid/uid user - http://sourceforge.net/mailarchive/forum.php?thread_id=6201024&forum_id=17540 |
70dd92c5 | 7 | # - change or/and add Requires for --bin-path sendmail=%{_sbindir}/sendmail |
29785c59 | 8 | # - correct config file |
70dd92c5 | 9 | |
ec0b6580 | 10 | %define oldname backuppc |
b4718529 | 11 | %define BPCuser http |
70dd92c5 | 12 | %define BPCgroup http |
e53e588a | 13 | %include /usr/lib/rpm/macros.perl |
9478b6bb | 14 | |
bfdb5e2e | 15 | Summary: A high-performance, enterprise-grade system for backing up |
b387d795 | 16 | Summary(pl.UTF-8): Wysoko wydajny, profesjonalnej klasy system do kopii zapasowych |
ec0b6580 | 17 | Name: BackupPC |
163d283c | 18 | Version: 3.2.0 |
19 | Release: 0.1 | |
e53e588a AM |
20 | License: GPL |
21 | Group: Networking/Utilities | |
ec0b6580 | 22 | Source0: http://dl.sourceforge.net/backuppc/%{name}-%{version}.tar.gz |
163d283c | 23 | # Source0-md5: 4b77610d8d1130daf0892fc7134be985 |
ec0b6580 MWP |
24 | Source1: %{oldname}_apache.conf |
25 | Source2: %{oldname}-pl.pm | |
e53e588a | 26 | URL: http://backuppc.sourceforge.net/ |
ed441291 | 27 | BuildRequires: perl-Digest-MD5 |
e1f29e27 | 28 | BuildRequires: perl-devel >= 1:5.6.0 |
7759c7a4 | 29 | BuildRequires: rpm-perlprov |
15c89417 | 30 | BuildRequires: rpmbuild(macros) >= 1.268 |
a6c35446 | 31 | BuildRequires: sed >= 4.0 |
9b5058aa | 32 | Requires(post,preun): /sbin/chkconfig |
c871e746 | 33 | Requires: apache(mod_auth) |
15c89417 | 34 | Requires: apache(mod_perl) |
c871e746 | 35 | Requires: par2cmdline |
36ac5999 MWP |
36 | Requires: perl-Archive-Zip |
37 | Requires: perl-Compress-Bzip2 | |
c871e746 | 38 | Requires: perl-Compress-Zlib |
163d283c | 39 | Requires: perl-File-RsyncP >= 0.70 |
9b5058aa | 40 | Requires: rc-scripts |
36ac5999 | 41 | Requires: rsync |
fd06574e | 42 | Requires: samba-client |
716c2a0b | 43 | Requires: sperl |
8f3ae6d3 | 44 | Requires: tar > 1.13 |
15c89417 | 45 | Requires: webapps |
dbb0a940 | 46 | Provides: group(%{BPCgroup}) |
47 | Provides: user(%{BPCuser}) | |
e53e588a | 48 | Obsoletes: BackupPC |
ec0b6580 | 49 | Obsoletes: backuppc |
ed441291 | 50 | BuildArch: noarch |
e53e588a AM |
51 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
52 | ||
15c89417 ER |
53 | %define _webapps /etc/webapps |
54 | %define _webapp %{name} | |
ba74a3a0 | 55 | %define _libdir /usr/lib |
15c89417 | 56 | |
e53e588a AM |
57 | %description |
58 | BackupPC is disk based and not tape based. This particularity allows | |
59 | features not found in any other backup solution: | |
4077336d SP |
60 | - Clever pooling scheme minimizes disk storage and disk I/O. Identical |
61 | files across multiple backups of the same or different PC are stored | |
f1be31de ER |
62 | only once (using hard links), resulting in substantial savings in disk |
63 | storage and disk writes. | |
4077336d SP |
64 | - Optional compression provides additional reductions in storage. CPU |
65 | impact of compression is low since only new files (those not already | |
66 | in the pool) need to be compressed. | |
67 | - A powerful http/cgi user interface allows administrators to view log | |
f1be31de ER |
68 | files, configuration, current status and allows users to initiate and |
69 | cancel backups and browse and restore files from backups very quickly. | |
2d60d17e | 70 | - No client-side software is needed. On WinXX the SMB protocol is |
ec285897 | 71 | used. On Linux or Unix clients, rsync or tar (over ssh/rsh/NFS) can be |
f1be31de | 72 | used. |
2d60d17e | 73 | - Flexible restore options. Single files can be downloaded from any |
74 | backup directly from the CGI interface. Zip or Tar archives for | |
75 | selected files or directories can also be downloaded from the CGI | |
76 | interface. | |
77 | - BackupPC supports mobile environments where laptops are only | |
f1be31de ER |
78 | intermittently connected to the network and have dynamic IP addresses |
79 | (DHCP). | |
2d60d17e | 80 | - Flexible configuration parameters allow multiple backups to be |
81 | performed in parallel. | |
82 | - and more to discover in the manual... | |
e53e588a | 83 | |
04a75958 JR |
84 | %description -l pl.UTF-8 |
85 | BackupPC jest oparty na dyskach, a nie taśmach. Ta osobliwość daje | |
86 | możliwości, których nie mają inne rozwiązania problemu kopii | |
ed441291 | 87 | zapasowych: |
04a75958 JR |
88 | - Inteligentny schemat ściągania minimalizuje zajmowane miejsce i |
89 | ilość operacji wejścia/wyjścia na dysku. Takie same pliki są | |
90 | przechowywane tylko raz (przy użyciu twardych dowiązań), co daje | |
91 | znaczącą oszczędność w miejscu na dysku i czasie zapisu. | |
2d60d17e | 92 | - Opcjonalna kompresja pozwala na dalsze ograniczenie rozmiaru. |
04a75958 | 93 | Obciążenie procesora jest małe, ponieważ tylko nowe pliki muszą być |
4077336d | 94 | kompresowane. |
04a75958 JR |
95 | - Potężny interfejs użytkownika HTTP/CGI pozwala administratorom |
96 | przeglądać pliki logów, konfigurację i aktualny stan oraz użytkownikom | |
97 | rozpoczynać lub przerywać tworzenie kopii oraz szybko przeglądać i | |
98 | odtwarzać pliki z kopii zapasowych. | |
2d60d17e | 99 | - Nie jest wymagane oprogramowanie po stronie klienta. Na WinXX |
04a75958 JR |
100 | używany jest protokół SMB lub rsync (specjalnie przygotowana wersja |
101 | pod cygwinem). Na klientach linuksowych lub uniksowych można używać | |
32915a9f | 102 | rsynca lub tara (po ssh/rsh/NFS). |
04a75958 JR |
103 | - Dostępne są elastyczne opcje odzyskiwania. Można ściągać pojedyncze |
104 | pliki z kopii bezpośrednio z interfejsu CGI. Także archiwa zip lub tar | |
105 | z wybranymi plikami lub katalogami mogą być ściągane z poziomu | |
2d60d17e | 106 | interfejsu CGI. |
04a75958 JR |
107 | - BackupPC obsługuje środowiska przenośne, gdzie laptopy są podłączane |
108 | do sieci tylko z przerwami i mają dynamiczne adresy IP (z DHCP). | |
109 | - Elastyczna konfiguracja parametrów pozwala na wykonywanie wielu | |
110 | kopii równolegle. | |
111 | - Istnieje możliwość nagrywania backupu na inne nośniki (tasmy, | |
bfdb5e2e | 112 | DVD-R/RW, CD-R/RW i inne) |
04a75958 | 113 | - Wiele więcej można odkryć w manualu... |
ed441291 | 114 | |
e53e588a | 115 | %prep |
ec0b6580 | 116 | %setup -q |
e53e588a | 117 | |
8f3ae6d3 PG |
118 | sed -i -e 's#!/bin/perl#!%{__perl}#' configure.pl |
119 | sed -i -e 's#!/bin/perl#!%{__perl}#' {bin,cgi-bin,doc}/* | |
120 | sed -i -e 's#!/bin/perl#!%{__perl}#' */src/* | |
121 | sed -i -e 's#!/bin/perl#!%{__perl}#' */*/*/*.pm | |
122 | ||
123 | pod2man --section=8 --center="BackupPC manual" doc/BackupPC.pod backuppc.8 | |
a6c35446 | 124 | %{__perl} -e "s/.IX Title.*/.SH NAME\nbackuppc \\- BackupPC manual/g" -p -i.tmp backuppc.8 |
8f3ae6d3 | 125 | |
e53e588a AM |
126 | %install |
127 | rm -rf $RPM_BUILD_ROOT | |
85f11ed8 | 128 | install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,httpd/httpd.conf} \ |
0bec8bf5 | 129 | $RPM_BUILD_ROOT%{_mandir}/man8 \ |
ec0b6580 MWP |
130 | $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html/doc \ |
131 | $RPM_BUILD_ROOT%{_var}/{lib/%{name}/{pc/localhost,log},log} \ | |
716c2a0b | 132 | $RPM_BUILD_ROOT%{_datadir}/%{name}/conf \ |
ef6a73f9 | 133 | $RPM_BUILD_ROOT%{_sysconfdir}/%{name} |
e53e588a | 134 | |
528c20b1 PG |
135 | %{__perl} configure.pl \ |
136 | --batch \ | |
137 | --bin-path perl=%{__perl} \ | |
138 | --bin-path tar=/bin/tar \ | |
7670e654 SP |
139 | --bin-path smbclient=%{_bindir}/smbclient \ |
140 | --bin-path nmblookup=%{_bindir}/nmblookup \ | |
141 | --bin-path rsync=%{_bindir}/rsync \ | |
70dd92c5 | 142 | --bin-path ping=/bin/echo \ |
528c20b1 | 143 | --bin-path df=/bin/df \ |
7670e654 SP |
144 | --bin-path ssh=%{_bindir}/ssh \ |
145 | --bin-path sendmail=%{_sbindir}/sendmail \ | |
dbca77df | 146 | --bin-path par2=%{_bindir}/par \ |
528c20b1 | 147 | --bin-path hostname=/bin/hostname \ |
7670e654 | 148 | --bin-path split=%{_bindir}/split \ |
528c20b1 PG |
149 | --bin-path cat=/bin/cat \ |
150 | --bin-path gzip=/bin/gzip \ | |
7670e654 | 151 | --bin-path bzip2=%{_bindir}/bzip2 \ |
a6c35446 | 152 | --cgi-dir %{_datadir}/%{name}/www/cgi-bin \ |
91ca4cc8 | 153 | --data-dir %{_var}/lib/%{name} \ |
528c20b1 PG |
154 | --dest-dir $RPM_BUILD_ROOT \ |
155 | --hostname localhost \ | |
a6c35446 | 156 | --html-dir %{_datadir}/%{name}/www/html \ |
716c2a0b | 157 | --html-dir-url /BackupPC \ |
15f2d638 | 158 | --install-dir %{_usr} \ |
ec0b6580 MWP |
159 | --uid-ignore \ |
160 | --no-set-perms \ | |
161 | --fhs \ | |
162 | --dest-dir $RPM_BUILD_ROOT \ | |
163 | --compress-level=3 \ | |
164 | --backuppc-user=%{BPCuser} | |
165 | # --config-path=%{_sysconfdir}/%{name}/config.pl | |
9478b6bb | 166 | |
70dd92c5 MWP |
167 | #change user in init script |
168 | sed -i -e 's#--user backuppc#--user %{BPCuser}#' init.d/linux-backuppc | |
169 | #change user in config file | |
ec0b6580 MWP |
170 | #sed -i -e "s#'backuppc';#'%{BPCuser}';#" $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/config.pl |
171 | #sed -i -e 's/$Conf{SendmailPath} =/#$Conf{SendmailPath} =/' $RPM_BUILD_ROOTT%{_sysconfdir}/%{name}/config.pl | |
70dd92c5 | 172 | |
a6c35446 | 173 | install init.d/linux-backuppc $RPM_BUILD_ROOT/etc/rc.d/init.d/backuppc |
ef6a73f9 | 174 | install backuppc.8 $RPM_BUILD_ROOT%{_mandir}/man8 |
15c89417 | 175 | install %{SOURCE2} $RPM_BUILD_ROOT%{_libdir}/BackupPC/Lang/pl.pm |
ef6a73f9 | 176 | install doc/* $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html/doc |
8f3ae6d3 | 177 | # Cleanups: |
91ca4cc8 | 178 | rm -f $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html/CVS |
f62775bb | 179 | rm -rdf $RPM_BUILD_ROOT%{_prefix}/doc |
7ca1bf72 | 180 | |
c7cf1aea | 181 | # symlinks |
ef6a73f9 MWP |
182 | cd $RPM_BUILD_ROOT%{_var}/lib/%{name} |
183 | ln -sf %{_sysconfdir}/%{name} $RPM_BUILD_ROOT%{_var}/lib/%{name}/conf | |
c7cf1aea MWP |
184 | |
185 | cd $RPM_BUILD_ROOT%{_var}/log | |
32915a9f | 186 | ln -sf %{_var}/lib/%{name}/log %{name} |
c7cf1aea | 187 | |
a6c35446 | 188 | cd $RPM_BUILD_ROOT%{_datadir}/%{name}/www/cgi-bin |
67934a81 | 189 | ln -sf BackupPC_Admin index.cgi |
32915a9f | 190 | |
ec0b6580 | 191 | mv $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html/*.css \ |
b7dc9a92 | 192 | $RPM_BUILD_ROOT%{_sysconfdir}/%{name} |
ef6a73f9 MWP |
193 | |
194 | cd $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html | |
195 | ln -sf %{_sysconfdir}/%{name}/BackupPC_stnd.css BackupPC_stnd.css | |
ec0b6580 | 196 | ln -sf %{_sysconfdir}/%{name}/BackupPC_stnd.css BackupPC.css |
ef6a73f9 | 197 | |
15c89417 ER |
198 | install -d $RPM_BUILD_ROOT%{_webapps}/%{_webapp} |
199 | install %{SOURCE1} $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/apache.conf | |
200 | install %{SOURCE1} $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/httpd.conf | |
201 | touch $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/htpasswd | |
70dd92c5 | 202 | |
e326eb5b | 203 | %if 0 |
9478b6bb | 204 | %pre |
ec9606b7 | 205 | # Add the "backuppc" user and "http" group |
e326eb5b | 206 | %groupadd -g 150 %{BPCgroup} |
ec9606b7 | 207 | %useradd -c "system user for %{name}" -u 150 -d /var/lib/backuppc -s /bin/false -g %{BPCgroup} %{BPCuser} |
e326eb5b ER |
208 | %endif |
209 | ||
91ca4cc8 | 210 | %post |
f62775bb | 211 | %service backuppc restart "BackupPC" |
6e436f98 | 212 | |
f62775bb ER |
213 | %preun |
214 | if [ "$1" = "0" ]; then | |
215 | %service backuppc stop | |
216 | /sbin/chkconfig --del backuppc | |
ef6a73f9 | 217 | fi |
91ca4cc8 | 218 | |
dbb0a940 | 219 | %postun |
220 | if [ "$1" = "0" ]; then | |
221 | %userremove %{BPCuser} | |
222 | %groupremove %{BPCgroup} | |
223 | fi | |
224 | ||
e53e588a AM |
225 | %clean |
226 | rm -rf $RPM_BUILD_ROOT | |
227 | ||
228 | %files | |
229 | %defattr(644,root,root,755) | |
91ca4cc8 | 230 | %attr(755,root,root) %{_bindir}/* |
a6c35446 | 231 | %attr(755,root,root) %{_datadir}/%{name}/www/cgi-bin/BackupPC_Admin |
70e0f3dd | 232 | %attr(755,root,root) %{_datadir}/%{name}/www/cgi-bin/index.cgi |
51256ae1 | 233 | %dir %{_datadir}/%{name} |
ef6a73f9 MWP |
234 | %dir %{_datadir}/%{name}/www/html/doc |
235 | %{_datadir}/%{name}/www/html/doc/* | |
51256ae1 | 236 | %dir %{_datadir}/%{name}/www |
a6c35446 | 237 | %dir %{_datadir}/%{name}/www/html |
51256ae1 | 238 | %dir %{_datadir}/%{name}/www/cgi-bin |
ec0b6580 | 239 | %{_datadir}/%{name}/www/html/*.png |
a6c35446 | 240 | %{_datadir}/%{name}/www/html/*.gif |
70e0f3dd | 241 | %{_datadir}/%{name}/www/html/sorttable.js |
ec0b6580 | 242 | %config(noreplace) %verify(not md5 mtime size) %{_datadir}/%{name}/www/html/*.css |
163d283c | 243 | %dir %{_libdir}/Net/FTP |
244 | %{_libdir}/Net/FTP/AutoReconnect.pm | |
245 | %{_libdir}/Net/FTP/RetrHandle.pm | |
ec0b6580 | 246 | %dir %{_libdir}/%{name} |
23367753 SS |
247 | %{_libdir}/%{name}/Attrib.pm |
248 | %dir %{_libdir}/%{name}/CGI | |
ec0b6580 | 249 | %{_libdir}/%{name}/CGI/* |
23367753 | 250 | %{_libdir}/%{name}/Config.pm |
c821092f | 251 | %dir %{_libdir}/%{name}/Config |
ec0b6580 | 252 | %{_libdir}/%{name}/Config/* |
ec0b6580 MWP |
253 | %{_libdir}/%{name}/FileZIO.pm |
254 | %{_libdir}/%{name}/Lib.pm | |
255 | %{_libdir}/%{name}/PoolWrite.pm | |
256 | %{_libdir}/%{name}/Storage.pm | |
23367753 SS |
257 | %dir %{_libdir}/%{name}/Storage |
258 | %{_libdir}/%{name}/Storage/* | |
ec0b6580 | 259 | %{_libdir}/%{name}/View.pm |
163d283c | 260 | %{_libdir}/%{name}/Xfer.pm |
23367753 SS |
261 | %dir %{_libdir}/%{name}/Xfer |
262 | %{_libdir}/%{name}/Xfer/* | |
263 | %dir %{_libdir}/%{name}/Zip | |
264 | %{_libdir}/%{name}/Zip/* | |
ef6a73f9 | 265 | %dir %attr(755,%{BPCuser},%{BPCgroup}) %{_libdir}/BackupPC/Lang |
163d283c | 266 | %lang(cz) %{_libdir}/BackupPC/Lang/cz.pm |
c7cf1aea | 267 | %lang(de) %{_libdir}/BackupPC/Lang/de.pm |
163d283c | 268 | %lang(en) %{_libdir}/BackupPC/Lang/en.pm |
c7cf1aea | 269 | %lang(es) %{_libdir}/BackupPC/Lang/es.pm |
58629966 | 270 | %lang(fr) %{_libdir}/BackupPC/Lang/fr.pm |
c7cf1aea MWP |
271 | %lang(it) %{_libdir}/BackupPC/Lang/it.pm |
272 | %lang(nl) %{_libdir}/BackupPC/Lang/nl.pm | |
ce281259 | 273 | %lang(pl) %{_libdir}/BackupPC/Lang/pl.pm |
58629966 | 274 | %lang(pt_BR) %{_libdir}/BackupPC/Lang/pt_br.pm |
70e0f3dd | 275 | %lang(zh_CN) %{_libdir}/BackupPC/Lang/zh_CN.pm |
ef6a73f9 | 276 | %dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name} |
15f2d638 | 277 | %dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/cpool |
278 | %dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/log | |
279 | %dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/pc | |
280 | %dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/pool | |
281 | %dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/trash | |
5e8a66d7 | 282 | %dir %attr(755,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/conf |
ef6a73f9 | 283 | %dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/log/%{name} |
f1be31de | 284 | %attr(754,root,root) /etc/rc.d/init.d/backuppc |
c7cf1aea | 285 | %dir %{_sysconfdir}/%{name} |
0bec8bf5 | 286 | %{_mandir}/man8/backuppc* |
15c89417 ER |
287 | %config(noreplace) %verify(not md5 mtime size) %attr(644,%{BPCuser},%{BPCgroup}) %{_sysconfdir}/%{name}/* |
288 | %dir %attr(750,root,http) %{_webapps}/%{_webapp} | |
289 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/apache.conf | |
290 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/httpd.conf | |
291 | %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/htpasswd |