2 # Copyright (C) 2005 Zmanda Incorporated.
5 # This program is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU General Public License version 2 as published
7 # by the Free Software Foundation.
9 # This program is distributed in the hope that it will be useful, but
10 # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
11 # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 # You should have received a copy of the GNU General Public License along
15 # with this program; if not, write to the Free Software Foundation, Inc.,
16 # 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 # Contact information: Zmanda Inc, 505 N Mathlida Ave, Suite 120
19 # Sunnyvale, CA 94085, USA, or: http://www.zmanda.com
24 %{?srpm_only: %define build_srpm 1}
26 # Pkg-config sometimes needs its own path set, and we need to allow users to
27 # override our guess during detection. This macro takes care of that.
28 # If no --define PKG_CONFIG_PATH was passed and env var $PKG_CONFIG_PATH is
29 # set then use the env var.
30 %{!?PKG_CONFIG_PATH: %{expand:%(echo ${PKG_CONFIG_PATH:+"%%define PKG_CONFIG_PATH $PKG_CONFIG_PATH"})}}
32 %{?PKG_CONFIG_PATH:%{echo:PKG_CONFIG_PATH = %{PKG_CONFIG_PATH}}}
34 # Define which Distribution we are building:
35 # Try to detect the distribution we are building:
36 %if %{_vendor} == redhat
37 # Fedora symlinks /etc/fedora-release to /etc/redhat-release for at least
38 # fc3-8. So RHEL and Fedora look at the same file. Different versions have
39 # different numbers of spaces; hence the use if $3 vs. $4..
40 %if %(awk '$1 == "Fedora" && $4 ~ /3.*/ { exit 1; }' /etc/redhat-release; echo $?)
45 %if %(awk '$1 == "Fedora" && $4 ~ /4.*/ { exit 1; }' /etc/redhat-release; echo $?)
50 %if %(awk '$1 == "Fedora" && $4 ~ /5.*/ { exit 1; }' /etc/redhat-release; echo $?)
55 %if %(awk '$1 == "Fedora" && $4 ~ /6.*/ { exit 1; }' /etc/redhat-release; echo $?)
60 %if %(awk '$1 == "Fedora" && $3 ~ /7.*/ { exit 1; }' /etc/redhat-release; echo $?)
65 %if %(awk '$1 == "Fedora" && $3 ~ /8.*/ { exit 1; }' /etc/redhat-release; echo $?)
69 # TODO: generalize this so that any platform can cross compile
70 %if %{_host_cpu} == x86_64 && %{_target_cpu} == i686
71 # Do nothing if PKG_CONFIG_PATH was set by the user above.
72 %{!?PKG_CONFIG_PATH: %define PKG_CONFIG_PATH /usr/lib/pkgconfig}
75 %if %(awk '$1 == "Red" && $7 ~ /3.*/ { exit 1; }' /etc/redhat-release; echo $?)
81 %if %(awk '$1 == "Red" && $7 ~ /4.*/ { exit 1; }' /etc/redhat-release; echo $?)
87 %if %(awk '$1 == "Red" && $7 ~ /5.*/ { exit 1; }' /etc/redhat-release; echo $?)
93 # Detect Suse variants. Suse gives us some nice macros in their rpms
94 %if %{_vendor} == "suse"
95 %if %{suse_version} == 910
100 %if %{suse_version} == 1010
105 %if %{suse_version} == 1000
112 # Set options per distribution
113 %if %{dist} == redhat || %{dist} == fedora
114 %define rpm_group Applications/Archiving
115 %define xinetd_reload restart
118 %define rpm_group Productivity/Archiving/Backup
119 %define xinetd_reload restart
122 # Set minimum tar version if it wasn't set in the per-distro section
123 %{!?tarver: %define tarver 1.15}
125 %define packer %(%{__id_u} -n)
127 # --- Definitions ---
129 # Define amanda_version if it is not already defined.
130 %{!?amanda_version: %define amanda_version 2.6.0p2}
131 %{!?amanda_release: %define amanda_release 1}
132 %define amanda_version_info "Amanda Community Edition - version %{amanda_version}"
133 %define amanda_user amandabackup
134 %define amanda_group disk
135 %define udpportrange "700,740"
136 %define tcpportrange "11000,11040"
137 %define low_tcpportrange "700,710"
139 Summary: The Amanda Backup and Archiving System
141 Version: %{amanda_version}
142 %define rpm_release %{amanda_release}.%{disttag}%{distver}
144 %define rpm_release %{amanda_release}
146 Release: %{rpm_release}
147 Source: %{name}-%{version}.tar.gz
148 License: http://wiki.zmanda.com/index.php/Amanda_Copyright
150 Packager: www.zmanda.com
151 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-%{packer}-buildroot
153 # TODO - Need required versions for these:
154 BuildRequires: autoconf
155 BuildRequires: automake
156 BuildRequires: binutils
160 BuildRequires: glibc >= 2.2.0
161 BuildRequires: readline
162 BuildRequires: curl >= 7.10.0
165 Requires: /usr/bin/id
166 Requires: /sbin/ldconfig
168 Requires: /usr/sbin/useradd
169 Requires: /usr/sbin/usermod
175 Requires: libnsl.so.1
176 Requires: curl >= 7.10.0
178 Requires: perl >= 5.6.0
179 Requires: tar >= %{tarver}
180 %if %{dist} == redhat || %{dist}== fedora
181 Requires: libtermcap.so.2
182 Requires: initscripts
184 Provides: amanda-backup_client = %{amanda_version}, amanda-backup_server = %{amanda_version}
186 %package backup_client
187 Summary: The Amanda Backup and Archiving Client
192 %if %{dist} == redhat || %{dist}== fedora
193 Requires: libtermcap.so.2
194 Requires: initscripts
199 Requires: libnsl.so.1
200 Requires: perl >= 5.6.0
201 Requires: tar >= 1.15
202 Provides: amanda-backup_client = %{amanda_version}
203 Provides: libamclient-%{version}.so = %{amanda_version}
204 Provides: libamanda-%{version}.so = %{amanda_version}
205 Conflicts: amanda-backup_server
207 %package backup_server
208 Summary: The Amanda Backup and Archiving Server
215 Requires: libnsl.so.1
216 %if %{dist} == redhat || %{dist}== fedora
217 Requires: libtermcap.so.2
218 Requires: initscripts
221 Requires: perl >= 5.6.0
222 Requires: tar >= 1.15
223 Provides: amanda-backup_server = %{amanda_version}
224 Provides: libamclient-%{version}.so = %{amanda_version}
225 Provides: libamanda-%{version}.so = %{amanda_version}
226 Provides: libamserver-%{version}.so = %{amanda_version}
227 Provides: librestore-%{version}.so = %{amanda_version}
228 Provides: libamtape-%{version}.so = %{amanda_version}
229 Provides: libamdevice-%{version}.so = %{amanda_version}
231 # --- Package descriptions ---
234 Amanda is the leading Open-Source Backup and Archiving software.
236 The amanda-backup_server package should be installed on the Amanda server, i.e.
237 the machine attached to backup media (such as a tape drive or disk
238 drives) where backups will be written. The amanda-backup_server package
239 includes Amanda client. The amanda-backup_client package needs
240 to be installed on every system that is being backed up.
242 Amanda Forums is located at: http://forums.zmanda.com/
243 Amanda Documentation is available at: http://wiki.zmanda.com/
247 %description backup_server
248 Amanda is the leading Open-Source Backup and Archiving software.
250 This package contains the Amanda server. The amanda-backup_server package
251 should be installed on the Amanda server, i.e. the machine attached
252 to backup media (such as a tape drive or disk drives) where backups
253 will be written. The amanda-backup_server package includes Amanda client.
255 Amanda Forums is located at: http://forums.zmanda.com/
256 Amanda Documentation is available at: http://wiki.zmanda.com/
260 %description backup_client
261 Amanda is the leading Open-Source Backup and Archiving software.
263 This package contains the Amanda client. The amanda-backup_client package
264 needs to be installed on every system that is being backed up.
266 Amanda Forums is located at: http://forums.zmanda.com/
267 Amanda Documentation is available at: http://wiki.zmanda.com/
269 # --- Directory setup ---
271 # Configure directories:
273 %define EPREFIX %{PREFIX}
274 %define BINDIR %{EPREFIX}/bin
275 %define SBINDIR %{EPREFIX}/sbin
276 %define LIBEXECDIR %{EPREFIX}/libexec
277 %define AMLIBEXECDIR %{LIBEXECDIR}/amanda
278 %define DATADIR %{PREFIX}/share
279 %define SYSCONFDIR /etc
280 %define LOCALSTATEDIR /var
281 %define AMANDAHOMEDIR %{LOCALSTATEDIR}/lib/amanda
283 %define LIBDIR %{EPREFIX}/lib64
285 %define LIBDIR %{EPREFIX}/lib
287 %define AMLIBDIR %{LIBDIR}/amanda
288 %define INCLUDEDIR %{PREFIX}/include
289 %define MANDIR %{DATADIR}/man
290 %define LOGDIR /var/log/amanda
291 %define PERLSITELIB %(eval "`perl -V:installsitelib`"; echo $installsitelib)
293 # Installation directories:
294 %define ROOT_SBINDIR %{buildroot}/%{SBINDIR}
295 %define ROOT_LIBEXECDIR %{buildroot}/%{LIBEXECDIR}
296 %define ROOT_DATADIR %{buildroot}/%{DATADIR}
297 %define ROOT_LOCALSTATEDIR %{buildroot}/%{LOCALSTATEDIR}
298 %define ROOT_SYSCONFDIR %{buildroot}/%{SYSCONFDIR}
299 %define ROOT_AMANDAHOMEDIR %{buildroot}/%{AMANDAHOMEDIR}
300 %define ROOT_LIBDIR %{buildroot}/%{LIBDIR}
301 %define ROOT_MANDIR %{buildroot}/%{MANDIR}
302 %define ROOT_LOGDIR %{buildroot}/%{LOGDIR}
308 # --- Configure and compile ---
311 %define config_user %{amanda_user}
312 %define config_group %{amanda_group}
314 %if %{disttag} == rhel && %{distver} == 3
316 CFLAGS="%{optflags} -g" CXXFLAGS="%{optflags}" \
319 --sysconfdir=%{SYSCONFDIR} \
320 --sharedstatedir=%{LOCALSTATEDIR} \
321 --localstatedir=%{LOCALSTATEDIR} \
323 --includedir=%{INCLUDEDIR} \
324 --with-gnuplot=/usr/bin/gnuplot \
325 --with-gnutar=/bin/tar \
326 --with-gnutar-listdir=%{AMANDAHOMEDIR}/gnutar-lists \
327 --with-index-server=localhost \
328 --with-tape-server=localhost \
329 --with-user=%{config_user} \
330 --with-group=%{config_group} \
331 --with-owner=%{packer} \
333 --with-bsd-security \
334 --with-bsdtcp-security \
335 --with-bsdudp-security \
336 --with-ssh-security \
337 --with-udpportrange=%{udpportrange} \
338 --with-tcpportrange=%{tcpportrange} \
339 --with-low-tcpportrange=%{low_tcpportrange} \
340 --with-debugging=%{LOGDIR} \
342 --disable-installperms \
345 # This confusing macro results in PKG_CONFIG_PATH=some/path if some/path
346 # was set on the command line, or by the platform detection bits.
348 %{?PKG_CONFIG_PATH: PKG_CONFIG_PATH=%PKG_CONFIG_PATH} \
349 CFLAGS="%{optflags} -g" CXXFLAGS="%{optflags}" \
352 --sysconfdir=%{SYSCONFDIR} \
353 --sharedstatedir=%{LOCALSTATEDIR} \
354 --localstatedir=%{LOCALSTATEDIR} \
356 --includedir=%{INCLUDEDIR} \
357 --with-star=/usr/bin/star \
358 --with-gnuplot=/usr/bin/gnuplot \
359 --with-gnutar=/bin/tar \
360 --with-gnutar-listdir=%{AMANDAHOMEDIR}/gnutar-lists \
361 --with-index-server=localhost \
362 --with-tape-server=localhost \
363 --with-user=%{config_user} \
364 --with-group=%{config_group} \
365 --with-owner=%{packer} \
367 --with-bsd-security \
368 --with-bsdtcp-security \
369 --with-bsdudp-security \
370 --with-ssh-security \
371 --with-udpportrange=%{udpportrange} \
372 --with-tcpportrange=%{tcpportrange} \
373 --with-low-tcpportrange=%{low_tcpportrange} \
374 --with-debugging=%{LOGDIR} \
376 --disable-installperms
381 # --- Install to buildroot ---
384 if [ "%{buildroot}" != "/" ]; then
385 if [ -d "%{buildroot}" ] ; then
389 echo "BuildRoot was somehow set to / !"
393 make -j1 DESTDIR=%{buildroot} install
395 rm -rf %{ROOT_DATADIR}/amanda
396 rm -f %{ROOT_AMANDAHOMEDIR}/example/inetd.conf.amandaclient
397 mkdir %{buildroot}/{etc,var/log}
398 mkdir %{ROOT_LOCALSTATEDIR}/amanda
399 mkdir %{ROOT_SYSCONFDIR}/amanda
400 mkdir %{ROOT_AMANDAHOMEDIR}/gnutar-lists
403 echo "%{amanda_version_info}" >%{ROOT_AMANDAHOMEDIR}/amanda-release
405 # --- Clean up buildroot ---
408 if [ "%{buildroot}" != "/" ]; then
409 if [ -d "%{buildroot}" ] ; then
413 echo "BuildRoot was somehow set to / !"
417 # --- Pre/post (un)installation scripts ---
420 TMPFILE=`mktemp /tmp/rpm-amanda.XXXXXXXXXXX`
421 if [ $? -ne 0 ]; then
422 echo "Unable to mktemp!" 1>&2
426 INSTALL_LOG="${LOGDIR}/install.log"
427 INSTALL_ERR="${LOGDIR}/install.err"
429 echo "`date +'%b %e %Y %T'`: Preparing to install: %{amanda_version_info}" >${TMPFILE}
431 # Check for the 'amanda' user
432 echo "`date +'%b %e %Y %T'`: Checking for '%{amanda_user}' user..." >>${TMPFILE}
433 if [ "`id -u %{amanda_user} > /dev/null 2>&1 && echo 0 || echo 1`" != "0" ] ; then
434 useradd -c "Amanda" -M -g %{amanda_group} -d %{AMANDAHOMEDIR} -s /bin/sh %{amanda_user}
435 if [ %{dist} = "SuSE" ]; then
438 # Lock the amanda account until admin sets password
439 passwd -l %{amanda_user} >>/dev/null
442 if [ ${PASSWD_EXIT} -eq 0 ] ; then
443 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
444 echo "`date +'%b %e %Y %T'`: The '%{amanda_user}; user account has been successfully created." >>${TMPFILE}
445 echo "`date +'%b %e %Y %T'`: Furthermore, the account has been automatically locked for you" >>${TMPFILE}
446 echo "`date +'%b %e %Y %T'`: for security purposes. Once a password for the '%{amanda_user}'" >>${TMPFILE}
447 echo "`date +'%b %e %Y %T'`: account has been set, the user can be unlocked by issuing" >>${TMPFILE}
448 echo "`date +'%b %e %Y %T'`: the following command as root.:" >>${TMPFILE}
449 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
450 echo "`date +'%b %e %Y %T'`: # passwd -u %{amanda_user}" >>${TMPFILE}
451 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
452 echo "`date +'%b %e %Y %T'`: If this is not a new installation of Amanda and you have" >>${TMPFILE}
453 echo "`date +'%b %e %Y %T'`: pre-existing Amanda configurations in %{SYSCONFDIR}/amanda" >>${TMPFILE}
454 echo "`date +'%b %e %Y %T'`: you should ensure that 'dumpuser' is set to '%{amanda_user}'" >>${TMPFILE}
455 echo "`date +'%b %e %Y %T'`: in those configurations. Additionally, you should ensure" >>${TMPFILE}
456 echo "`date +'%b %e %Y %T'`: that %{AMANDAHOMEDIR}/.amandahosts on your client systems" >>${TMPFILE}
457 echo "`date +'%b %e %Y %T'`: is properly configured to allow connections for the user" >>${TMPFILE}
458 echo "`date +'%b %e %Y %T'`: '%{amanda_user}'." >>${TMPFILE}
459 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
462 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
463 echo "`date +'%b %e %Y %T'`: !!! !!!" >>${TMPFILE}
464 echo "`date +'%b %e %Y %T'`: !!! The '%{amanda_user}' user account for this system has been !!!" >>${TMPFILE}
465 echo "`date +'%b %e %Y %T'`: !!! created, however the user has no password set. For !!!" >>${TMPFILE}
466 echo "`date +'%b %e %Y %T'`: !!! security purposes this account is normally locked !!!" >>${TMPFILE}
467 echo "`date +'%b %e %Y %T'`: !!! after creation. Unfortunately, when locking this !!!" >>${TMPFILE}
468 echo "`date +'%b %e %Y %T'`: !!! account an error occurred. To ensure the security !!!" >>${TMPFILE}
469 echo "`date +'%b %e %Y %T'`: !!! of your system you should set a password for the !!!" >>${TMPFILE}
470 echo "`date +'%b %e %Y %T'`: !!! user account '%{amanda_user}' immediately! To set such a !!!" >>${TMPFILE}
471 echo "`date +'%b %e %Y %T'`: !!! password, please issue the following command.: !!!" >>${TMPFILE}
472 echo "`date +'%b %e %Y %T'`: !!! !!!" >>${TMPFILE}
473 echo "`date +'%b %e %Y %T'`: !!! # passwd %{amanda_user} !!!" >>${TMPFILE}
474 echo "`date +'%b %e %Y %T'`: !!! !!!" >>${TMPFILE}
475 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
479 # log information about 'amanda' user parameters
480 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
481 echo "`date +'%b %e %Y %T'`: The Amanda backup software is configured to operate as the" >>${TMPFILE}
482 echo "`date +'%b %e %Y %T'`: user '%{amanda_user}'. This user exists on your system and has not" >>${TMPFILE}
483 echo "`date +'%b %e %Y %T'`: been modified. To ensure that Amanda functions properly," >>${TMPFILE}
484 echo "`date +'%b %e %Y %T'`: please see that the following parameters are set for that" >>${TMPFILE}
485 echo "`date +'%b %e %Y %T'`: user.:" >>${TMPFILE}
486 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
487 echo "`date +'%b %e %Y %T'`: SHELL: /bin/sh" >>${TMPFILE}
488 echo "`date +'%b %e %Y %T'`: HOME: %{AMANDAHOMEDIR}" >>${TMPFILE}
489 echo "`date +'%b %e %Y %T'`: Default group: %{amanda_group}" >>${TMPFILE}
490 echo "`date +'%b %e %Y %T'`: Verifying %{amanda_user} parameters :" >>${TMPFILE}
492 if [ "`id -gn %{amanda_user}`" != "disk" ] ; then
493 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
494 echo "`date +'%b %e %Y %T'`: !!! user 'amandabackup' is not part of the disk group,Pl !!!" >>${TMPFILE}
495 echo "`date +'%b %e %Y %T'`: !!! make sure it is corrected before start using amanda !!!" >>${TMPFILE}
496 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
498 echo "`date +'%b %e %Y %T'`: Verified group name of user 'amandabackup'" >>${TMPFILE}
501 if [ "`grep ^%{amanda_user} /etc/passwd|cut -d: -f7`" != "/bin/sh" ] ; then
502 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
503 echo "`date +'%b %e %Y %T'`: !!! user 'amandabackup' default shell should be set to !!!" >>${TMPFILE}
504 echo "`date +'%b %e %Y %T'`: !!! /bin/sh, pl correct before start using Amanda !!!" >>${TMPFILE}
505 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
507 echo "`date +'%b %e %Y %T'`: Verified Default shell for user 'amandabackup'" >>${TMPFILE}
510 if [ "`grep ^%{amanda_user} /etc/passwd|cut -d: -f6`" != "%{AMANDAHOMEDIR}" ] ; then
511 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
512 echo "`date +'%b %e %Y %T'`: !!! user 'amandabackup' home directory should be set to !!!" >>${TMPFILE}
513 echo "`date +'%b %e %Y %T'`: !!! %{AMANDAHOMEDIR} Pl correct before using Amanda !!!" >>${TMPFILE}
514 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
516 echo "`date +'%b %e %Y %T'`: Verified Default home directory for user amandabackup" >>${TMPFILE}
518 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
521 if [ -d %{AMANDAHOMEDIR} ] ; then
522 echo -n "`date +'%b %e %Y %T'`: Checking ownership of '%{AMANDAHOMEDIR}'... " >>${TMPFILE}
523 if [ "`ls -dl %{AMANDAHOMEDIR} | awk '//{split($_,x); print x[3]}'`" = "%{amanda_user}" ] && \
524 [ "`ls -dl %{AMANDAHOMEDIR} | awk '//{split($_,x); print x[4]}'`" = "%{amanda_group}" ] ; then
525 echo "correct." >>${TMPFILE}
528 echo "incorrect!" >>${TMPFILE}
529 echo "`date +'%b %e %Y %T'`: Please ensure that the directory '%{AMANDAHOMEDIR}' is owned by" >>${TMPFILE}
530 echo "`date +'%b %e %Y %T'`: the user '%{amanda_user}' and group '%{amanda_group}'." >>${TMPFILE}
536 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
537 if [ ! -e ${LOGDIR} ] ; then
538 # create log directory
539 mkdir -m 0750 ${LOGDIR} >>${TMPFILE} 2>&1
540 chown %{amanda_user}:%{amanda_group} ${LOGDIR} >>${TMPFILE} 2>&1
541 elif [ ! -d ${LOGDIR} ] ; then
542 mv ${LOGDIR} ${LOGDIR}.rpmsave >>${TMPFILE} 2>&1
543 mkdir -m 0750 ${LOGDIR} >>${TMPFILE} 2>&1
544 chown %{amanda_user}:%{amanda_group} ${LOGDIR} >>${TMPFILE} 2>&1
545 mv ${LOGDIR}.rpmsave ${LOGDIR}/ >>${TMPFILE} 2>&1
548 if [ ${PASSWD_OK} -eq 1 ] || [ ${VARLIB_OK} -eq 1 ] ; then
550 cat ${TMPFILE} >>${INSTALL_ERR}
551 echo "Please review '${INSTALL_ERR}' to correct errors which have prevented the Amanda installaton." >&2
552 echo "Amanda installation log can be found in '${INSTALL_LOG}' and errors (if any) in '${INSTALL_ERR}'."
556 cat ${TMPFILE} >>${INSTALL_LOG}
559 echo "`date +'%b %e %Y %T'`: === Amanda installation started. ===" >${TMPFILE}
562 cat ${TMPFILE} >>${INSTALL_LOG}
563 if [ -f "${TMPFILE}" ]; then
568 TMPFILE=`mktemp /tmp/rpm-amanda.XXXXXXXXXXX
569 if [ $? -ne 0 ]; then
570 echo "Unable to mktemp!" 1>&2
574 INSTALL_LOG="${LOGDIR}/install.log"
575 INSTALL_ERR="${LOGDIR}/install.err"
577 echo -n "`date +'%b %e %Y %T'`: Updating library cache..." >${TMPFILE}
578 /sbin/ldconfig >>${TMPFILE} 2>&1
579 echo "done." >>${TMPFILE}
581 cat ${TMPFILE} >>${INSTALL_LOG}
583 if [ -e /etc/xinetd.d ] && [ -d /etc/xinetd.d ] ; then
584 if [ ! -f /etc/xinetd.d/amandaserver ] ; then
585 cp %{AMANDAHOMEDIR}/example/xinetd.amandaserver /etc/xinetd.d/amandaserver
586 chmod 0644 /etc/xinetd.d/amandaserver >>${TMPFILE} 2>&1
587 if [ -f /etc/xinetd.d/amandaclient ] ; then
588 rm /etc/xinetd.d/amandaclient
590 echo -n "`date +'%b %e %Y %T'`: Reloading xinetd configuration..." >${TMPFILE}
591 if [ "%{xinetd_reload}" == "reload" ] ; then
592 /etc/init.d/xinetd %{xinetd_reload} >>${TMPFILE} 2>&1
594 if [ ${ret_val} -ne 0 ] ; then
595 echo -n "reload failed. Attempting restart..." >>${TMPFILE}
596 /etc/init.d/xinetd restart >>${TMPFILE} 2>&1
600 /etc/init.d/xinetd %{xinetd_reload} >>${TMPFILE} 2>&1
603 if [ ${ret_val} -eq 0 ] ; then
604 echo "success." >>${TMPFILE}
606 cat ${TMPFILE} >>${INSTALL_LOG}
608 echo "failed. Please check your system logs." >>${TMPFILE}
610 cat ${TMPFILE} >>${INSTALL_ERR}
615 echo "`date +'%b %e %Y %T'`: Installing '%{LOCALSTATEDIR}/amanda/amandates'." >${TMPFILE}
617 if [ ! -f %{LOCALSTATEDIR}/amanda/amandates ] ; then
618 touch %{LOCALSTATEDIR}/amanda/amandates >>${TMPFILE} 2>&1
620 if [ ${ret_val} -eq 0 ]; then
621 echo "`date +'%b %e %Y %T'`: The file '%{LOCALSTATEDIR}/amanda/amandates' has been created." >>${TMPFILE}
624 if [ ${ret_val} -eq 0 ]; then
625 echo "`date +'%b %e %Y %T'`: Ensuring correct permissions for '%{LOCALSTATEDIR}/amanda/amandates'." >>${TMPFILE}
626 chown %{amanda_user}:%{amanda_group} %{LOCALSTATEDIR}/amanda/amandates >>${TMPFILE} 2>&1
627 chmod 0640 %{LOCALSTATEDIR}/amanda/amandates >>${TMPFILE} 2>&1
628 if [ -x /sbin/restorecon ] ; then
629 /sbin/restorecon %{LOCALSTATEDIR}/amanda/amandates >>${TMPFILE} 2>&1
632 if [ ${ret_val} -eq 0 ]; then
633 echo "`date +'%b %e %Y %T'`: '%{LOCALSTATEDIR}/amanda/amandates' Installation successful." >>${TMPFILE}
635 cat ${TMPFILE} >>${INSTALL_LOG}
637 echo "`date +'%b %e %Y %T'`: '%{LOCALSTATEDIR}/amanda/amandates' Installation failed." >>${TMPFILE}
639 cat ${TMPFILE} >>${INSTALL_ERR}
643 # Install .gnupg directory
644 echo "`date +'%b %e %Y %T'`: Installing '%{AMANDAHOMEDIR}/.gnupg'." >${TMPFILE}
646 if [ ! -d %{AMANDAHOMEDIR}/.gnupg ] ; then
647 echo "`date +'%b %e %Y %T'`: '%{AMANDAHOMEDIR}/.gnupg' will be created." >>${TMPFILE}
648 mkdir %{AMANDAHOMEDIR}/.gnupg >>${TMPFILE} 2>&1
650 if [ ${ret_val} -eq 0 ]; then
651 echo "`date +'%b %e %Y %T'`: The directory '%{AMANDAHOMEDIR}/.gnupg' created successfully." >>${TMPFILE}
653 echo "`date +'%b %e %Y %T'`: The directory '%{AMANDAHOMEDIR}/.gnupg' creation failed." >>${TMPFILE}
656 if [ ${ret_val} -eq 0 ]; then
657 echo "`date +'%b %e %Y %T'`: Ensuring correct permissions for '%{AMANDAHOMEDIR}/.gnupg'." >>${TMPFILE}
658 chown %{amanda_user}:%{amanda_group} %{AMANDAHOMEDIR}/.gnupg >>${TMPFILE} 2>&1
660 if [ ${ret_val} -eq 0 ]; then
661 chmod 700 %{AMANDAHOMEDIR}/.gnupg >>${TMPFILE} 2>&1
665 if [ ${ret_val} -eq 0 ]; then
666 echo "`date +'%b %e %Y %T'`: '%{AMANDAHOMEDIR}/.gnupg' Installation successful." >>${TMPFILE}
668 cat ${TMPFILE} >>${INSTALL_LOG}
670 echo "`date +'%b %e %Y %T'`: '%{AMANDAHOMEDIR}/.gnupg' Installation failed." >>${TMPFILE}
672 cat ${TMPFILE} >>${INSTALL_ERR}
675 # Install .amandahosts
676 echo "`date +'%b %e %Y %T'`: Checking '%{AMANDAHOMEDIR}/.amandahosts' file." >${TMPFILE}
677 if [ ! -f %{AMANDAHOMEDIR}/.amandahosts ] ; then
678 touch %{AMANDAHOMEDIR}/.amandahosts >>${TMPFILE} 2>&1
680 for host in localhost localhost.localdomain ; do
681 if [ -z "`grep \"^${host}[[:blank:]]\+root[[:blank:]]\+amindexd[[:blank:]]\+amidxtaped\" %{AMANDAHOMEDIR}/.amandahosts`" ] ; then
682 echo "${host} root amindexd amidxtaped" >>%{AMANDAHOMEDIR}/.amandahosts
684 if [ -z "`grep \"^${host}[[:blank:]]\+%{amanda_user}[[:blank:]]\+amdump\" %{AMANDAHOMEDIR}/.amandahosts`" ] ; then
685 echo "${host} %{amanda_user} amdump" >>%{AMANDAHOMEDIR}/.amandahosts
688 chown %{amanda_user}:%{amanda_group} %{AMANDAHOMEDIR}/.amandahosts >>${TMPFILE} 2>&1
689 chmod 0600 %{AMANDAHOMEDIR}/.amandahosts >>${TMPFILE} 2>&1
691 cat ${TMPFILE} >>${INSTALL_LOG}
693 # SSH RSA key generation for amdump
694 KEYDIR="%{AMANDAHOMEDIR}/.ssh"
695 KEYFILE="id_rsa_amdump"
696 COMMENT="%{amanda_user}@server"
697 if [ ! -d ${KEYDIR} ] ; then
698 if [ -f ${KEYDIR} ] ; then
699 echo "`date +'%b %e %Y %T'`: Directory '${KEYDIR}' exists as a file. Renaming to '${KEYDIR}.rpmsave'." >${TMPFILE}
700 mv ${KEYDIR} ${KEYDIR}.rpmsave
702 cat ${TMPFILE} >>${INSTALL_LOG}
704 echo "`date +'%b %e %Y %T'`: Creating directory '${KEYDIR}'." >${TMPFILE}
705 mkdir ${KEYDIR} >>${TMPFILE} 2>&1
707 cat ${TMPFILE} >>${INSTALL_LOG}
709 if [ ! -f ${KEYDIR}/${KEYFILE} ] ; then
710 echo "`date +'%b %e %Y %T'`: Creating ssh RSA key in '${KEYDIR}/${KEYFILE}'" >${TMPFILE}
712 cat ${TMPFILE} >>${INSTALL_LOG}
713 ssh-keygen -q -C $COMMENT -t rsa -f ${KEYDIR}/${KEYFILE} -N '' >>${TMPFILE} 2>&1
715 cat ${TMPFILE} >>${INSTALL_LOG}
717 echo "`date +'%b %e %Y %T'`: Setting ownership and permissions for '${KEYDIR}' and '${KEYDIR}/${KEYFILE}*'" >${TMPFILE}
718 chown %{amanda_user}:%{amanda_group} ${KEYDIR} ${KEYDIR}/${KEYFILE}* >>${TMPFILE} 2>&1
719 chmod 0750 ${KEYDIR} >>${TMPFILE} 2>&1
720 chmod 0600 ${KEYDIR}/${KEYFILE}* >>${TMPFILE} 2>&1
722 cat ${TMPFILE} >>${INSTALL_LOG}
724 # SSH RSA key generation on client for amrecover
725 KEYDIR="%{AMANDAHOMEDIR}/.ssh"
726 KEYFILE="id_rsa_amrecover"
727 COMMENT="root@client"
728 if [ ! -d ${KEYDIR} ] ; then
729 if [ -f ${KEYDIR} ] ; then
730 echo "`date +'%b %e %Y %T'`: Directory '${KEYDIR}' exists as a file. Renaming to '${KEYDIR}.rpmsave'." >${TMPFILE}
731 mv ${KEYDIR} ${KEYDIR}.rpmsave >>${TMPFILE} 2>&1
733 cat ${TMPFILE} >>${INSTALL_LOG}
735 echo "`date +'%b %e %Y %T'`: Creating directory '${KEYDIR}'." >${TMPFILE}
736 mkdir ${KEYDIR} >>${TMPFILE} 2>&1
738 cat ${TMPFILE} >>${INSTALL_LOG}
740 if [ ! -f ${KEYDIR}/${KEYFILE} ] ; then
741 echo "`date +'%b %e %Y %T'`: Creating ssh RSA key in '${KEYDIR}/${KEYFILE}'" >${TMPFILE}
742 ssh-keygen -q -C $COMMENT -t rsa -f ${KEYDIR}/${KEYFILE} -N '' >>${TMPFILE} 2>&1
744 cat ${TMPFILE} >>${INSTALL_LOG}
746 echo "`date +'%b %e %Y %T'`: Setting permissions for '${KEYDIR}'" >${TMPFILE}
747 chown %{amanda_user}:%{amanda_group} ${KEYDIR} >>${TMPFILE} 2>&1
748 chmod 0750 ${KEYDIR} >>${TMPFILE} 2>&1
749 chmod 0600 ${KEYDIR}/${KEYFILE}* >>${TMPFILE} 2>&1
751 cat ${TMPFILE} >>${INSTALL_LOG}
753 # environment variables (~amandabackup/.profile)
754 echo "`date +'%b %e %Y %T'`: Checking for '%{AMANDAHOMEDIR}/.profile' and ensuring correct environment." >${TMPFILE}
755 if [ ! -f %{AMANDAHOMEDIR}/.profile ] ; then
756 touch %{AMANDAHOMEDIR}/.profile >>${TMPFILE} 2>&1
758 if [ -z "`grep PATH %{AMANDAHOMEDIR}/.profile | grep '%{SBINDIR}'`" ] ; then
759 echo "export PATH=\"\$PATH:%{SBINDIR}\"" >>%{AMANDAHOMEDIR}/.profile 2>>${TMPFILE}
761 echo "`date +'%b %e %Y %T'`: Setting ownership and permissions for '%{AMANDAHOMEDIR}/.profile'" >>${TMPFILE}
762 chown %{amanda_user}:%{amanda_group} %{AMANDAHOMEDIR}/.profile >>${TMPFILE} 2>&1
763 chmod 0640 %{AMANDAHOMEDIR}/.profile >>${TMPFILE} 2>&1
765 cat ${TMPFILE} >>${INSTALL_LOG}
767 echo "`date +'%b %e %Y %T'`: Sending anonymous distribution and version information to Zmanda" >> ${INSTALL_LOG}
768 if [ -x /usr/bin/wget ]; then
769 /usr/bin/wget -q -o /dev/null -O - --timeout=5 http://www.zmanda.com/amanda-tips.php\?version=%{amanda_version}\&os=%{disttag}%{distver}\&type=server
772 echo "`date +'%b %e %Y %T'`: === Amanda installation complete. ===" >${TMPFILE}
775 cat ${TMPFILE} >>${INSTALL_LOG}
776 if [ -f "${TMPFILE}" ]; then
780 echo "Amanda installation log can be found in '${INSTALL_LOG}' and errors (if any) in '${INSTALL_ERR}'."
784 TMPFILE=`mktemp /tmp/rpm-amanda.XXXXXXXXXXX`
785 if [ $? -ne 0 ]; then
786 echo "Unable to mktemp!" 1>&2
791 INSTALL_LOG="${LOGDIR}/install.log"
792 INSTALL_ERR="${LOGDIR}/install.err"
794 echo "`date +'%b %e %Y %T'`: Preparing to install: %{amanda_version_info}" >${TMPFILE}
796 # Check for the 'amanda' user
797 echo "`date +'%b %e %Y %T'`: Checking for '%{amanda_user}' user..." >>${TMPFILE}
798 if [ "`id -u %{amanda_user} > /dev/null 2>&1 && echo 0 || echo 1`" != "0" ] ; then
799 useradd -c "Amanda" -M -g %{amanda_group} -d %{AMANDAHOMEDIR} -s /bin/sh %{amanda_user}
800 if [ %{dist} = "SuSE" ]; then
803 # Lock the amanda account until admin sets password
804 passwd -l %{amanda_user} >>/dev/null
807 if [ ${PASSWD_EXIT} -eq 0 ] ; then
808 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
809 echo "`date +'%b %e %Y %T'`: The '%{amanda_user}; user account has been successfully created." >>${TMPFILE}
810 echo "`date +'%b %e %Y %T'`: Furthermore, the account has been automatically locked for you" >>${TMPFILE}
811 echo "`date +'%b %e %Y %T'`: for security purposes. Once a password for the '%{amanda_user}'" >>${TMPFILE}
812 echo "`date +'%b %e %Y %T'`: account has been set, the user can be unlocked by issuing" >>${TMPFILE}
813 echo "`date +'%b %e %Y %T'`: the following command as root.:" >>${TMPFILE}
814 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
815 echo "`date +'%b %e %Y %T'`: # passwd -u %{amanda_user}" >>${TMPFILE}
816 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
817 echo "`date +'%b %e %Y %T'`: If this is not a new installation of Amanda and you have" >>${TMPFILE}
818 echo "`date +'%b %e %Y %T'`: pre-existing Amanda configurations in %{SYSCONFDIR}/amanda" >>${TMPFILE}
819 echo "`date +'%b %e %Y %T'`: you should ensure that 'dumpuser' is set to '%{amanda_user}'" >>${TMPFILE}
820 echo "`date +'%b %e %Y %T'`: in those configurations. Additionally, you should ensure" >>${TMPFILE}
821 echo "`date +'%b %e %Y %T'`: that %{AMANDAHOMEDIR}/.amandahosts on your client systems" >>${TMPFILE}
822 echo "`date +'%b %e %Y %T'`: is properly configured to allow connections for the user" >>${TMPFILE}
823 echo "`date +'%b %e %Y %T'`: '%{amanda_user}'." >>${TMPFILE}
824 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
827 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
828 echo "`date +'%b %e %Y %T'`: !!! !!!" >>${TMPFILE}
829 echo "`date +'%b %e %Y %T'`: !!! The '%{amanda_user}' user account for this system has been !!!" >>${TMPFILE}
830 echo "`date +'%b %e %Y %T'`: !!! created, however the user has no password set. For !!!" >>${TMPFILE}
831 echo "`date +'%b %e %Y %T'`: !!! security purposes this account is normally locked !!!" >>${TMPFILE}
832 echo "`date +'%b %e %Y %T'`: !!! after creation. Unfortunately, when locking this !!!" >>${TMPFILE}
833 echo "`date +'%b %e %Y %T'`: !!! account an error occurred. To ensure the security !!!" >>${TMPFILE}
834 echo "`date +'%b %e %Y %T'`: !!! of your system you should set a password for the !!!" >>${TMPFILE}
835 echo "`date +'%b %e %Y %T'`: !!! user account '%{amanda_user}' immediately! To set such a !!!" >>${TMPFILE}
836 echo "`date +'%b %e %Y %T'`: !!! password, please issue the following command.: !!!" >>${TMPFILE}
837 echo "`date +'%b %e %Y %T'`: !!! !!!" >>${TMPFILE}
838 echo "`date +'%b %e %Y %T'`: !!! # passwd %{amanda_user} !!!" >>${TMPFILE}
839 echo "`date +'%b %e %Y %T'`: !!! !!!" >>${TMPFILE}
840 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
844 # log information about 'amanda' user parameters
845 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
846 echo "`date +'%b %e %Y %T'`: The Amanda backup software is configured to operate as the" >>${TMPFILE}
847 echo "`date +'%b %e %Y %T'`: user '%{amanda_user}'. This user exists on your system and has not" >>${TMPFILE}
848 echo "`date +'%b %e %Y %T'`: been modified. To ensure that Amanda functions properly," >>${TMPFILE}
849 echo "`date +'%b %e %Y %T'`: please see that the following parameters are set for that" >>${TMPFILE}
850 echo "`date +'%b %e %Y %T'`: user.:" >>${TMPFILE}
851 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
852 echo "`date +'%b %e %Y %T'`: SHELL: /bin/sh" >>${TMPFILE}
853 echo "`date +'%b %e %Y %T'`: HOME: %{AMANDAHOMEDIR}" >>${TMPFILE}
854 echo "`date +'%b %e %Y %T'`: Default group: %{amanda_group}" >>${TMPFILE}
855 echo "`date +'%b %e %Y %T'`: Verifying %{amanda_user} parameters :" >>${TMPFILE}
857 if [ "`id -gn %{amanda_user}`" != "disk" ] ; then
858 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
859 echo "`date +'%b %e %Y %T'`: !!! user 'amandabackup' is not part of the disk group,Pl !!!" >>${TMPFILE}
860 echo "`date +'%b %e %Y %T'`: !!! make sure it is corrected before start using Amanda !!!" >>${TMPFILE}
861 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
863 echo "`date +'%b %e %Y %T'`: Verified group name of user 'amandabackup'" >>${TMPFILE}
866 if [ "`grep ^%{amanda_user} /etc/passwd|cut -d: -f7`" != "/bin/sh" ] ; then
867 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
868 echo "`date +'%b %e %Y %T'`: !!! user 'amandabackup' default shell should be set to !!!" >>${TMPFILE}
869 echo "`date +'%b %e %Y %T'`: !!! /bin/sh, pl correct before start using Amanda !!!" >>${TMPFILE}
870 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
872 echo "`date +'%b %e %Y %T'`: Verified Default shell for user 'amandabackup'" >>${TMPFILE}
875 if [ "`grep ^%{amanda_user} /etc/passwd|cut -d: -f6`" != "%{AMANDAHOMEDIR}" ] ; then
876 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
877 echo "`date +'%b %e %Y %T'`: !!! user 'amandabackup' home directory should be set to !!!" >>${TMPFILE}
878 echo "`date +'%b %e %Y %T'`: !!! %{AMANDAHOMEDIR} Pl correct before using Amanda !!!" >>${TMPFILE}
879 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
881 echo "`date +'%b %e %Y %T'`: Verified Default home directory for user amandabackup" >>${TMPFILE}
883 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
886 if [ -d %{AMANDAHOMEDIR} ] ; then
887 echo -n "`date +'%b %e %Y %T'`: Checking ownership of '%{AMANDAHOMEDIR}'... " >>${TMPFILE}
888 if [ "`ls -dl %{AMANDAHOMEDIR} | awk '//{split($_,x); print x[3]}'`" = "%{amanda_user}" ] && \
889 [ "`ls -dl %{AMANDAHOMEDIR} | awk '//{split($_,x); print x[4]}'`" = "%{amanda_group}" ] ; then
890 echo "correct." >>${TMPFILE}
893 echo "incorrect!" >>${TMPFILE}
894 echo "`date +'%b %e %Y %T'`: Please ensure that the directory '%{AMANDAHOMEDIR}' is owned by" >>${TMPFILE}
895 echo "`date +'%b %e %Y %T'`: the user '%{amanda_user}' and group '%{amanda_group}'." >>${TMPFILE}
901 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
903 if [ ! -e ${LOGDIR} ] ; then
904 # create log directory
905 mkdir -m 0750 ${LOGDIR} >>${TMPFILE} 2>&1
906 chown %{amanda_user}:%{amanda_group} ${LOGDIR} >>${TMPFILE} 2>&1
907 elif [ ! -d ${LOGDIR} ] ; then
908 mv ${LOGDIR} ${LOGDIR}.rpmsave >>${TMPFILE} 2>&1
909 mkdir -m 0750 ${LOGDIR} >>${TMPFILE} 2>&1
910 chown %{amanda_user}:%{amanda_group} ${LOGDIR} >>${TMPFILE} 2>&1
911 mv ${LOGDIR}.rpmsave ${LOGDIR}/ >>${TMPFILE} 2>&1
913 if [ ${PASSWD_OK} -eq 1 ] || [ ${VARLIB_OK} -eq 1 ] ; then
915 cat ${TMPFILE} >>${INSTALL_ERR}
916 echo "Please review '${INSTALL_ERR}' to correct errors which have prevented the Amanda installaton." >&2
917 echo "Amanda installation log can be found in '${INSTALL_LOG}' and errors (if any) in '${INSTALL_ERR}'."
921 cat ${TMPFILE} >>${INSTALL_LOG}
924 echo "`date +'%b %e %Y %T'`: === Amanda backup server installation started. ===" >${TMPFILE}
927 cat ${TMPFILE} >>${INSTALL_LOG}
928 if [ -f "${TMPFILE}" ]; then
932 TMPFILE=`mktemp /tmp/rpm-amanda.XXXXXXXXXXX`
933 if [ $? -ne 0 ]; then
934 echo "Unable to mktemp!" 1>&2
938 INSTALL_LOG="${LOGDIR}/install.log"
939 INSTALL_ERR="${LOGDIR}/install.err"
941 echo -n "`date +'%b %e %Y %T'`: Updating system library cache..." >${TMPFILE}
943 echo "done." >>${TMPFILE}
945 cat ${TMPFILE} >>${INSTALL_LOG}
947 if [ -e /etc/xinetd.d ] && [ -d /etc/xinetd.d ] ; then
948 if [ ! -f /etc/xinetd.d/amandaserver ] ; then
949 cp %{AMANDAHOMEDIR}/example/xinetd.amandaserver /etc/xinetd.d/amandaserver
950 chmod 0644 /etc/xinetd.d/amandaserver >>${TMPFILE} 2>&1
951 if [ -f /etc/xinetd.d/amandaclient ] ; then
952 rm /etc/xinetd.d/amandaclient
955 echo -n "`date +'%b %e %Y %T'`: Reloading xinetd configuration..." >${TMPFILE}
956 if [ "%{xinetd_reload}" == "reload" ] ; then
957 /etc/init.d/xinetd %{xinetd_reload} >>${TMPFILE} 2>&1
959 if [ ${ret_val} -ne 0 ] ; then
960 echo -n "reload failed. Attempting restart..." >>${TMPFILE}
961 /etc/init.d/xinetd restart >>${TMPFILE} 2>&1
965 /etc/init.d/xinetd %{xinetd_reload} >>${TMPFILE} 2>&1
968 if [ ${ret_val} -eq 0 ] ; then
969 echo "success." >>${TMPFILE}
971 cat ${TMPFILE} >>${INSTALL_LOG}
973 echo "failed. Please check your system logs." >>${TMPFILE}
975 cat ${TMPFILE} >>${INSTALL_ERR}
980 echo "`date +'%b %e %Y %T'`: Installing '%{LOCALSTATEDIR}/amanda/amandates'." >${TMPFILE}
982 if [ ! -f %{LOCALSTATEDIR}/amanda/amandates ] ; then
983 touch %{LOCALSTATEDIR}/amanda/amandates >>${TMPFILE} 2>&1
985 if [ ${ret_val} -eq 0 ]; then
986 echo "`date +'%b %e %Y %T'`: The file '%{LOCALSTATEDIR}/amanda/amandates' has been created." >>${TMPFILE}
989 if [ ${ret_val} -eq 0 ]; then
990 echo "`date +'%b %e %Y %T'`: Ensuring correct permissions for '%{LOCALSTATEDIR}/amanda/amandates'." >>${TMPFILE}
991 chown %{amanda_user}:%{amanda_group} %{LOCALSTATEDIR}/amanda/amandates >>${TMPFILE} 2>&1
992 chmod 0640 %{LOCALSTATEDIR}/amanda/amandates >>${TMPFILE} 2>&1
994 if [ ${ret_val} -eq 0 ]; then
995 echo "`date +'%b %e %Y %T'`: '%{LOCALSTATEDIR}/amanda/amandates' Installation successful." >>${TMPFILE}
997 cat ${TMPFILE} >>${INSTALL_LOG}
999 echo "`date +'%b %e %Y %T'`: '%{LOCALSTATEDIR}/amanda/amandates' Installation failed." >>${TMPFILE}
1001 cat ${TMPFILE} >>${INSTALL_ERR}
1004 # Install .amandahosts to server
1005 echo "`date +'%b %e %Y %T'`: Checking '%{AMANDAHOMEDIR}/.amandahosts' file." >${TMPFILE}
1006 if [ ! -f %{AMANDAHOMEDIR}/.amandahosts ] ; then
1007 touch %{AMANDAHOMEDIR}/.amandahosts >>${TMPFILE} 2>&1
1009 for host in localhost localhost.localdomain ; do
1010 if [ -z "`grep \"^${host}[[:blank:]]\+root[[:blank:]]\+amindexd[[:blank:]]\+amidxtaped\" %{AMANDAHOMEDIR}/.amandahosts`" ] ; then
1011 echo "${host} root amindexd amidxtaped" >>%{AMANDAHOMEDIR}/.amandahosts
1013 if [ -z "`grep \"^${host}[[:blank:]]\+%{amanda_user}[[:blank:]]\+amdump\" %{AMANDAHOMEDIR}/.amandahosts`" ] ; then
1014 echo "${host} %{amanda_user} amdump" >>%{AMANDAHOMEDIR}/.amandahosts
1017 chown %{amanda_user}:%{amanda_group} %{AMANDAHOMEDIR}/.amandahosts >>${TMPFILE} 2>&1
1018 chmod 0600 %{AMANDAHOMEDIR}/.amandahosts >>${TMPFILE} 2>&1
1020 cat ${TMPFILE} >>${INSTALL_LOG}
1022 # Install amanda client configuration file
1023 echo "`date +'%b %e %Y %T'`: Checking '%{SYSCONFDIR}/amanda/amanda-client.conf' file." >${TMPFILE}
1024 if [ ! -f %{SYSCONFDIR}/amanda/amanda-client.conf ] ; then
1025 cp %{AMANDAHOMEDIR}/example/amanda-client.conf %{SYSCONFDIR}/amanda/amanda-client.conf >>${TMPFILE} 2>&1
1027 chown %{amanda_user}:%{amanda_group} %{SYSCONFDIR}/amanda/amanda-client.conf >>${TMPFILE} 2>&1
1028 chmod 0600 %{SYSCONFDIR}/amanda/amanda-client.conf >>${TMPFILE} 2>&1
1030 cat ${TMPFILE} >>${INSTALL_LOG}
1032 # install am_passphrase file to server
1033 echo "`date +'%b %e %Y %T'`: Checking '%{AMANDAHOMEDIR}/.am_passphrase' file." >${TMPFILE}
1034 if [ ! -f %{AMANDAHOMEDIR}/.am_passphrase ] ; then
1035 echo "`date +'%b %e %Y %T'`: Create '%{AMANDAHOMEDIR}/.am_passphrase' file." >${TMPFILE}
1036 touch %{AMANDAHOMEDIR}/.am_passphrase >>${TMPFILE} 2>&1
1037 phrase=`echo "amandabackup" | md5sum | awk '{print $1}'`
1038 echo ${phrase} >>%{AMANDAHOMEDIR}/.am_passphrase
1040 chown %{amanda_user}:%{amanda_group} %{AMANDAHOMEDIR}/.am_passphrase >>${TMPFILE} 2>&1
1041 chmod 0700 %{AMANDAHOMEDIR}/.am_passphrase >>${TMPFILE} 2>&1
1044 cat ${TMPFILE} >>${INSTALL_LOG}
1046 # Install .gnupg directory
1047 echo "`date +'%b %e %Y %T'`: Installing '%{AMANDAHOMEDIR}/.gnupg'." >${TMPFILE}
1049 if [ ! -d %{AMANDAHOMEDIR}/.gnupg ] ; then
1050 echo "`date +'%b %e %Y %T'`: '%{AMANDAHOMEDIR}/.gnupg' will be created." >>${TMPFILE}
1051 mkdir %{AMANDAHOMEDIR}/.gnupg >>${TMPFILE} 2>&1
1053 if [ ${ret_val} -eq 0 ]; then
1054 echo "`date +'%b %e %Y %T'`: The directory '%{AMANDAHOMEDIR}/.gnupg' created successfully." >>${TMPFILE}
1056 echo "`date +'%b %e %Y %T'`: The directory '%{AMANDAHOMEDIR}/.gnupg' creation failed." >>${TMPFILE}
1059 if [ ${ret_val} -eq 0 ]; then
1060 echo "`date +'%b %e %Y %T'`: Ensuring correct permissions for '%{AMANDAHOMEDIR}/.gnupg'." >>${TMPFILE}
1061 chown %{amanda_user}:%{amanda_group} %{AMANDAHOMEDIR}/.gnupg >>${TMPFILE} 2>&1
1063 if [ ${ret_val} -eq 0 ]; then
1064 chmod 700 %{AMANDAHOMEDIR}/.gnupg >>${TMPFILE} 2>&1
1068 if [ ${ret_val} -eq 0 ]; then
1069 echo "`date +'%b %e %Y %T'`: '%{AMANDAHOMEDIR}/.gnupg' Installation successful." >>${TMPFILE}
1071 cat ${TMPFILE} >>${INSTALL_LOG}
1073 echo "`date +'%b %e %Y %T'`: '%{AMANDAHOMEDIR}/.gnupg' Installation failed." >>${TMPFILE}
1075 cat ${TMPFILE} >>${INSTALL_ERR}
1078 # SSH RSA key generation on server for amdump
1079 KEYDIR="%{AMANDAHOMEDIR}/.ssh"
1080 KEYFILE="id_rsa_amdump"
1081 COMMENT="%{amanda_user}@server"
1082 if [ ! -d ${KEYDIR} ] ; then
1083 if [ -f ${KEYDIR} ] ; then
1084 echo "`date +'%b %e %Y %T'`: Directory '${KEYDIR}' exists as a file. Renaming to '${KEYDIR}.rpmsave'." >${TMPFILE}
1085 mv ${KEYDIR} ${KEYDIR}.rpmsave >>${TMPFILE} 2>&1
1087 cat ${TMPFILE} >>${INSTALL_LOG}
1089 echo "`date +'%b %e %Y %T'`: Creating directory '${KEYDIR}'." >${TMPFILE}
1090 mkdir ${KEYDIR} >>${TMPFILE} 2>&1
1092 cat ${TMPFILE} >>${INSTALL_LOG}
1094 if [ ! -f ${KEYDIR}/${KEYFILE} ] ; then
1095 echo "`date +'%b %e %Y %T'`: Creating ssh RSA key in '${KEYDIR}/${KEYFILE}'" >${TMPFILE}
1096 ssh-keygen -q -C $COMMENT -t rsa -f ${KEYDIR}/${KEYFILE} -N '' >>${TMPFILE} 2>&1
1098 cat ${TMPFILE} >>${INSTALL_LOG}
1100 echo "`date +'%b %e %Y %T'`: Setting ownership and permissions for '${KEYDIR}' and '${KEYDIR}/${KEYFILE}*'" >${TMPFILE}
1101 chown %{amanda_user}:%{amanda_group} ${KEYDIR} ${KEYDIR}/${KEYFILE}* >>${TMPFILE} 2>&1
1102 chmod 0750 ${KEYDIR} >>${TMPFILE} 2>&1
1103 chmod 0600 ${KEYDIR}/${KEYFILE}* >>${TMPFILE} 2>&1
1105 cat ${TMPFILE} >>${INSTALL_LOG}
1107 # SSH RSA key generation on client for amrecover
1108 KEYDIR="%{AMANDAHOMEDIR}/.ssh"
1109 KEYFILE="id_rsa_amrecover"
1110 COMMENT="root@client"
1111 if [ ! -d ${KEYDIR} ] ; then
1112 if [ -f ${KEYDIR} ] ; then
1113 echo "`date +'%b %e %Y %T'`: Directory '${KEYDIR}' exists as a file. Renaming to '${KEYDIR}.rpmsave'." >${TMPFILE}
1114 mv ${KEYDIR} ${KEYDIR}.rpmsave >>${TMPFILE} 2>&1
1116 cat ${TMPFILE} >>${INSTALL_LOG}
1118 echo "`date +'%b %e %Y %T'`: Creating directory '${KEYDIR}'." >${TMPFILE}
1119 mkdir ${KEYDIR} >>${TMPFILE} 2>&1
1121 cat ${TMPFILE} >>${INSTALL_LOG}
1123 if [ ! -f ${KEYDIR}/${KEYFILE} ] ; then
1124 echo "`date +'%b %e %Y %T'`: Creating ssh RSA key in '${KEYDIR}/${KEYFILE}'" >${TMPFILE}
1125 ssh-keygen -q -C $COMMENT -t rsa -f ${KEYDIR}/${KEYFILE} -N '' >>${TMPFILE} 2>&1
1127 cat ${TMPFILE} >>${INSTALL_LOG}
1129 echo "`date +'%b %e %Y %T'`: Setting ownership and permissions for '${KEYDIR}'" >${TMPFILE}
1130 chown %{amanda_user}:%{amanda_group} ${KEYDIR} >>${TMPFILE} 2>&1
1131 chmod 0750 ${KEYDIR} >>${TMPFILE} 2>&1
1132 chmod 0600 ${KEYDIR}/${KEYFILE}* >>${TMPFILE} 2>&1
1134 cat ${TMPFILE} >>${INSTALL_LOG}
1136 # environment variables (~amandabackup/.profile)
1137 echo "`date +'%b %e %Y %T'`: Checking for '%{AMANDAHOMEDIR}/.profile' and ensuring correct environment." >${TMPFILE}
1138 if [ ! -f %{AMANDAHOMEDIR}/.profile ] ; then
1139 touch %{AMANDAHOMEDIR}/.profile >>${TMPFILE} 2>&1
1141 if [ -z "`grep PATH %{AMANDAHOMEDIR}/.profile | grep '%{SBINDIR}'`" ] ; then
1142 echo "export PATH=\"\$PATH:%{SBINDIR}\"" >>%{AMANDAHOMEDIR}/.profile 2>>${TMPFILE}
1145 cat ${TMPFILE} >>${INSTALL_LOG}
1147 echo "`date +'%b %e %Y %T'`: Setting ownership and permissions for '%{AMANDAHOMEDIR}/.profile'" >${TMPFILE}
1148 chown %{amanda_user}:%{amanda_group} %{AMANDAHOMEDIR}/.profile >>${TMPFILE} 2>&1
1149 chmod 0640 %{AMANDAHOMEDIR}/.profile >>${TMPFILE} 2>&1
1151 cat ${TMPFILE} >>${INSTALL_LOG}
1153 echo "`date +'%b %e %Y %T'`: Sending anonymous distribution and version information to Zmanda" >> ${INSTALL_LOG}
1154 if [ -x /usr/bin/wget ]; then
1155 /usr/bin/wget -q -o /dev/null -O - --timeout=5 http://www.zmanda.com/amanda-tips.php\?version=%{amanda_version}\&os=%{disttag}%{distver}\&type=server
1158 echo "`date +'%b %e %Y %T'`: === Amanda backup server installation complete. ===" >${TMPFILE}
1161 cat ${TMPFILE} >>${INSTALL_LOG}
1163 if [ -f "${TMPFILE}" ]; then
1164 rm -f "${TMPFILE}" >>${TMPFILE} 2>&1
1167 echo "Amanda installation log can be found in '${INSTALL_LOG}' and errors (if any) in '${INSTALL_ERR}'."
1168 %postun backup_server
1171 TMPFILE=`mktemp /tmp/rpm-amanda.XXXXXXXXXXX`
1172 if [ $? -ne 0 ]; then
1173 echo "Unable to mktemp!" 1>&2
1177 INSTALL_LOG="${LOGDIR}/install.log"
1178 INSTALL_ERR="${LOGDIR}/install.err"
1180 echo "`date +'%b %e %Y %T'`: Preparing to install: %{amanda_version_info}" >${TMPFILE}
1182 # Check for the 'amanda' user
1183 echo "`date +'%b %e %Y %T'`: Checking for '%{amanda_user}' user..." >>${TMPFILE}
1184 if [ "`id -u %{amanda_user} > /dev/null 2>&1 && echo 0 || echo 1`" != "0" ] ; then
1185 useradd -c "Amanda" -M -g %{amanda_group} -d %{AMANDAHOMEDIR} -s /bin/sh %{amanda_user} >>${TMPFILE} 2>&1
1186 if [ %{dist} = "SuSE" ]; then
1189 # Lock the amanda account until admin sets password
1190 passwd -l %{amanda_user} >>/dev/null
1193 if [ ${PASSWD_EXIT} -eq 0 ] ; then
1194 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
1195 echo "`date +'%b %e %Y %T'`: The '%{amanda_user}; user account has been successfully created." >>${TMPFILE}
1196 echo "`date +'%b %e %Y %T'`: Furthermore, the account has been automatically locked for you" >>${TMPFILE}
1197 echo "`date +'%b %e %Y %T'`: for security purposes. Once a password for the '%{amanda_user}'" >>${TMPFILE}
1198 echo "`date +'%b %e %Y %T'`: account has been set, the user can be unlocked by issuing" >>${TMPFILE}
1199 echo "`date +'%b %e %Y %T'`: the following command as root.:" >>${TMPFILE}
1200 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
1201 echo "`date +'%b %e %Y %T'`: # passwd -u %{amanda_user}" >>${TMPFILE}
1202 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
1203 echo "`date +'%b %e %Y %T'`: If this is not a new installation of Amanda and you have" >>${TMPFILE}
1204 echo "`date +'%b %e %Y %T'`: pre-existing Amanda configurations in %{SYSCONFDIR}/amanda" >>${TMPFILE}
1205 echo "`date +'%b %e %Y %T'`: you should ensure that 'dumpuser' is set to '%{amanda_user}'" >>${TMPFILE}
1206 echo "`date +'%b %e %Y %T'`: in those configurations. Additionally, you should ensure" >>${TMPFILE}
1207 echo "`date +'%b %e %Y %T'`: that %{AMANDAHOMEDIR}/.amandahosts on your client systems" >>${TMPFILE}
1208 echo "`date +'%b %e %Y %T'`: is properly configured to allow connections for the user" >>${TMPFILE}
1209 echo "`date +'%b %e %Y %T'`: '%{amanda_user}'." >>${TMPFILE}
1210 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
1213 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
1214 echo "`date +'%b %e %Y %T'`: !!! !!!" >>${TMPFILE}
1215 echo "`date +'%b %e %Y %T'`: !!! The '%{amanda_user}' user account for this system has been !!!" >>${TMPFILE}
1216 echo "`date +'%b %e %Y %T'`: !!! created, however the user has no password set. For !!!" >>${TMPFILE}
1217 echo "`date +'%b %e %Y %T'`: !!! security purposes this account is normally locked !!!" >>${TMPFILE}
1218 echo "`date +'%b %e %Y %T'`: !!! after creation. Unfortunately, when locking this !!!" >>${TMPFILE}
1219 echo "`date +'%b %e %Y %T'`: !!! account an error occurred. To ensure the security !!!" >>${TMPFILE}
1220 echo "`date +'%b %e %Y %T'`: !!! of your system you should set a password for the !!!" >>${TMPFILE}
1221 echo "`date +'%b %e %Y %T'`: !!! user account '%{amanda_user}' immediately! To set such a !!!" >>${TMPFILE}
1222 echo "`date +'%b %e %Y %T'`: !!! password, please issue the following command.: !!!" >>${TMPFILE}
1223 echo "`date +'%b %e %Y %T'`: !!! !!!" >>${TMPFILE}
1224 echo "`date +'%b %e %Y %T'`: !!! # passwd %{amanda_user} !!!" >>${TMPFILE}
1225 echo "`date +'%b %e %Y %T'`: !!! !!!" >>${TMPFILE}
1226 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
1230 # log information about 'amanda' user parameters
1231 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
1232 echo "`date +'%b %e %Y %T'`: The Amanda backup software is configured to operate as the" >>${TMPFILE}
1233 echo "`date +'%b %e %Y %T'`: user '%{amanda_user}'. This user exists on your system and has not" >>${TMPFILE}
1234 echo "`date +'%b %e %Y %T'`: been modified. To ensure that Amanda functions properly," >>${TMPFILE}
1235 echo "`date +'%b %e %Y %T'`: please see that the following parameters are set for that" >>${TMPFILE}
1236 echo "`date +'%b %e %Y %T'`: user.:" >>${TMPFILE}
1237 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
1238 echo "`date +'%b %e %Y %T'`: SHELL: /bin/sh" >>${TMPFILE}
1239 echo "`date +'%b %e %Y %T'`: HOME: %{AMANDAHOMEDIR}" >>${TMPFILE}
1240 echo "`date +'%b %e %Y %T'`: Default group: %{amanda_group}" >>${TMPFILE}
1241 echo "`date +'%b %e %Y %T'`: Verifying %{amanda_user} parameters :" >>${TMPFILE}
1243 if [ "`id -gn %{amanda_user}`" != "disk" ] ; then
1244 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
1245 echo "`date +'%b %e %Y %T'`: !!! user 'amandabackup' is not part of the disk group,Pl !!!" >>${TMPFILE}
1246 echo "`date +'%b %e %Y %T'`: !!! make sure it is corrected before start using Amanda !!!" >>${TMPFILE}
1247 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
1249 echo "`date +'%b %e %Y %T'`: Verified group name of user 'amandabackup'" >>${TMPFILE}
1252 if [ "`grep ^%{amanda_user} /etc/passwd|cut -d: -f7`" != "/bin/sh" ] ; then
1253 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
1254 echo "`date +'%b %e %Y %T'`: !!! user 'amandabackup' default shell should be set to !!!" >>${TMPFILE}
1255 echo "`date +'%b %e %Y %T'`: !!! /bin/sh, pl correct before start using Amanda !!!" >>${TMPFILE}
1256 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
1258 echo "`date +'%b %e %Y %T'`: Verified Default shell for user 'amandabackup'" >>${TMPFILE}
1261 if [ "`grep ^%{amanda_user} /etc/passwd|cut -d: -f6`" != "%{AMANDAHOMEDIR}" ] ; then
1262 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
1263 echo "`date +'%b %e %Y %T'`: !!! user 'amandabackup' home directory should be set to !!!" >>${TMPFILE}
1264 echo "`date +'%b %e %Y %T'`: !!! %{AMANDAHOMEDIR} Pl correct before using Amanda !!!" >>${TMPFILE}
1265 echo "`date +'%b %e %Y %T'`: !!! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! !!!" >>${TMPFILE}
1267 echo "`date +'%b %e %Y %T'`: Verified Default home directory for user amandabackup" >>${TMPFILE}
1269 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
1272 if [ -d %{AMANDAHOMEDIR} ] ; then
1273 echo -n "`date +'%b %e %Y %T'`: Checking ownership of '%{AMANDAHOMEDIR}'... " >>${TMPFILE}
1274 if [ "`ls -dl %{AMANDAHOMEDIR} | awk '//{split($_,x); print x[3]}'`" = "%{amanda_user}" ] && \
1275 [ "`ls -dl %{AMANDAHOMEDIR} | awk '//{split($_,x); print x[4]}'`" = "%{amanda_group}" ] ; then
1276 echo "correct." >>${TMPFILE}
1279 echo "incorrect!" >>${TMPFILE}
1280 echo "`date +'%b %e %Y %T'`: Please ensure that the directory '%{AMANDAHOMEDIR}' is owned by" >>${TMPFILE}
1281 echo "`date +'%b %e %Y %T'`: the user '%{amanda_user}' and group '%{amanda_group}'." >>${TMPFILE}
1287 echo "`date +'%b %e %Y %T'`:" >>${TMPFILE}
1289 if [ ! -e ${LOGDIR} ] ; then
1290 # create log directory
1291 mkdir -m 0750 ${LOGDIR} >>${TMPFILE} 2>&1
1292 chown %{amanda_user}:%{amanda_group} ${LOGDIR} >>${TMPFILE} 2>&1
1293 elif [ ! -d ${LOGDIR} ] ; then
1294 mv ${LOGDIR} ${LOGDIR}.rpmsave >>${TMPFILE} 2>&1
1295 mkdir -m 0750 ${LOGDIR} >>${TMPFILE} 2>&1
1296 chown %{amanda_user}:%{amanda_group} ${LOGDIR} >>${TMPFILE} 2>&1
1297 mv ${LOGDIR}.rpmsave ${LOGDIR}/ >>${TMPFILE} 2>&1
1299 if [ ${PASSWD_OK} -eq 1 ] || [ ${VARLIB_OK} -eq 1 ] ; then
1301 cat ${TMPFILE} >>${INSTALL_ERR}
1302 echo "Please review '${INSTALL_ERR}' to correct errors which have prevented the Amanda installaton." >&2
1303 echo "Amanda installation log can be found in '${INSTALL_LOG}' and errors (if any) in '${INSTALL_ERR}'."
1307 cat ${TMPFILE} >>${INSTALL_LOG}
1310 echo "`date +'%b %e %Y %T'`: === Amanda backup client installation started. ===" >${TMPFILE}
1313 cat ${TMPFILE} >>${INSTALL_LOG}
1315 if [ -f "${TMPFILE}" ]; then
1320 TMPFILE=`mktemp /tmp/rpm-amanda.XXXXXXXXXXX`
1321 if [ $? -ne 0 ]; then
1322 echo "Unable to mktemp!" 1>&2
1326 INSTALL_LOG="${LOGDIR}/install.log"
1327 INSTALL_ERR="${LOGDIR}/install.err"
1329 echo -n "`date +'%b %e %Y %T'`: Updating system library cache..." >${TMPFILE}
1331 echo "done." >>${TMPFILE}
1333 cat ${TMPFILE} >>${INSTALL_LOG}
1335 if [ -e /etc/xinetd.d ] && [ -d /etc/xinetd.d ] ; then
1336 if [ ! -f /etc/xinetd.d/amandaclient ] ; then
1337 cp %{AMANDAHOMEDIR}/example/xinetd.amandaclient /etc/xinetd.d/amandaclient
1339 echo -n "`date +'%b %e %Y %T'`: Reloading xinetd configuration..." >${TMPFILE}
1340 if [ "%{xinetd_reload}" == "reload" ] ; then
1341 /etc/init.d/xinetd %{xinetd_reload} >>${TMPFILE} 2>&1
1343 if [ ${ret_val} -ne 0 ] ; then
1344 echo -n "reload failed. Attempting restart..." >>${TMPFILE}
1345 /etc/init.d/xinetd restart >>${TMPFILE} 2>&1
1349 /etc/init.d/xinetd %{xinetd_reload} >>${TMPFILE} 2>&1
1352 if [ ${ret_val} -eq 0 ] ; then
1353 echo "success." >>${TMPFILE}
1355 cat ${TMPFILE} >>${INSTALL_LOG}
1357 echo "failed. Please check your system logs." >>${TMPFILE}
1359 cat ${TMPFILE} >>${INSTALL_LOG}
1364 echo "`date +'%b %e %Y %T'`: Installing '%{LOCALSTATEDIR}/amanda/amandates'." >${TMPFILE}
1366 if [ ! -f %{LOCALSTATEDIR}/amanda/amandates ] ; then
1367 touch %{LOCALSTATEDIR}/amanda/amandates >>${TMPFILE} 2>&1
1369 if [ ${ret_val} -eq 0 ]; then
1370 echo "`date +'%b %e %Y %T'`: The file '%{LOCALSTATEDIR}/amanda/amandates' has been created." >>${TMPFILE}
1373 if [ ${ret_val} -eq 0 ]; then
1374 echo "`date +'%b %e %Y %T'`: Ensuring correct permissions for '%{LOCALSTATEDIR}/amanda/amandates'." >>${TMPFILE}
1375 chown %{amanda_user}:%{amanda_group} %{LOCALSTATEDIR}/amanda/amandates >>${TMPFILE} 2>&1
1376 chmod 0640 %{LOCALSTATEDIR}/amanda/amandates >>${TMPFILE} 2>&1
1378 if [ ${ret_val} -eq 0 ]; then
1379 echo "`date +'%b %e %Y %T'`: '%{LOCALSTATEDIR}/amanda/amandates' Installation successful." >>${TMPFILE}
1381 cat ${TMPFILE} >>${INSTALL_LOG}
1383 echo "`date +'%b %e %Y %T'`: '%{LOCALSTATEDIR}/amanda/amandates' Installation failed." >>${TMPFILE}
1385 cat ${TMPFILE} >>${INSTALL_ERR}
1388 # Install .amandahosts to client
1389 echo "`date +'%b %e %Y %T'`: Checking '%{AMANDAHOMEDIR}/.amandahosts' file." >${TMPFILE}
1390 if [ ! -f %{AMANDAHOMEDIR}/.amandahosts ] ; then
1391 touch %{AMANDAHOMEDIR}/.amandahosts >>${TMPFILE} 2>&1
1393 for host in localhost localhost.localdomain ; do
1394 if [ -z "`grep \"^${host}[[:blank:]]\+\" %{AMANDAHOMEDIR}/.amandahosts | grep \"[[:blank:]]\+%{amanda_user}[[:blank:]]\+amdump\"`" ] ; then
1395 echo "${host} %{amanda_user} amdump" >>%{AMANDAHOMEDIR}/.amandahosts
1398 chown %{amanda_user}:%{amanda_group} %{AMANDAHOMEDIR}/.amandahosts >>${TMPFILE} 2>&1
1399 chmod 0600 %{AMANDAHOMEDIR}/.amandahosts >>${TMPFILE} 2>&1
1401 cat ${TMPFILE} >>${INSTALL_LOG}
1403 # Install amanda client configuration file
1404 echo "`date +'%b %e %Y %T'`: Checking '%{SYSCONFDIR}/amanda/amanda-client.conf' file." >${TMPFILE}
1405 if [ ! -f %{SYSCONFDIR}/amanda/amanda-client.conf ] ; then
1406 cp %{AMANDAHOMEDIR}/example/amanda-client.conf %{SYSCONFDIR}/amanda/amanda-client.conf >>${TMPFILE} 2>&1
1408 chown %{amanda_user}:%{amanda_group} %{SYSCONFDIR}/amanda/amanda-client.conf >>${TMPFILE} 2>&1
1409 chmod 0600 %{SYSCONFDIR}/amanda/amanda-client.conf >>${TMPFILE} 2>&1
1411 cat ${TMPFILE} >>${INSTALL_LOG}
1413 # Install .gnupg directory
1414 echo "`date +'%b %e %Y %T'`: Installing '%{AMANDAHOMEDIR}/.gnupg'." >${TMPFILE}
1416 if [ ! -d %{AMANDAHOMEDIR}/.gnupg ] ; then
1417 echo "`date +'%b %e %Y %T'`: '%{AMANDAHOMEDIR}/.gnupg' will be created." >>${TMPFILE}
1418 mkdir %{AMANDAHOMEDIR}/.gnupg >>${TMPFILE} 2>&1
1420 if [ ${ret_val} -eq 0 ]; then
1421 echo "`date +'%b %e %Y %T'`: The directory '%{AMANDAHOMEDIR}/.gnupg' created successfully." >>${TMPFILE}
1423 echo "`date +'%b %e %Y %T'`: The directory '%{AMANDAHOMEDIR}/.gnupg' creation failed." >>${TMPFILE}
1426 if [ ${ret_val} -eq 0 ]; then
1427 echo "`date +'%b %e %Y %T'`: Ensuring correct permissions for '%{AMANDAHOMEDIR}/.gnupg'." >>${TMPFILE}
1428 chown %{amanda_user}:%{amanda_group} %{AMANDAHOMEDIR}/.gnupg >>${TMPFILE} 2>&1
1430 if [ ${ret_val} -eq 0 ]; then
1431 chmod 700 %{AMANDAHOMEDIR}/.gnupg >>${TMPFILE} 2>&1
1435 if [ ${ret_val} -eq 0 ]; then
1436 echo "`date +'%b %e %Y %T'`: '%{AMANDAHOMEDIR}/.gnupg' Installation successful." >>${TMPFILE}
1438 cat ${TMPFILE} >>${INSTALL_LOG}
1440 echo "`date +'%b %e %Y %T'`: '%{AMANDAHOMEDIR}/.gnupg' Installation failed." >>${TMPFILE}
1442 cat ${TMPFILE} >>${INSTALL_ERR}
1445 # SSH RSA key generation on client for amrecover
1446 KEYDIR="%{AMANDAHOMEDIR}/.ssh"
1447 KEYFILE="id_rsa_amrecover"
1448 COMMENT="root@client"
1449 if [ ! -d ${KEYDIR} ] ; then
1450 if [ -f ${KEYDIR} ] ; then
1451 echo "`date +'%b %e %Y %T'`: Directory '${KEYDIR}' exists as a file. Renaming to '${KEYDIR}.rpmsave'." >${TMPFILE}
1452 mv ${KEYDIR} ${KEYDIR}.rpmsave >>${TMPFILE} 2>&1
1454 cat ${TMPFILE} >>${INSTALL_LOG}
1456 echo "`date +'%b %e %Y %T'`: Creating directory '${KEYDIR}'." >${TMPFILE}
1457 mkdir ${KEYDIR} >>${TMPFILE} 2>&1
1459 cat ${TMPFILE} >>${INSTALL_LOG}
1461 if [ ! -f ${KEYDIR}/${KEYFILE} ] ; then
1462 echo "`date +'%b %e %Y %T'`: Creating ssh RSA key in '${KEYDIR}/${KEYFILE}'" >${TMPFILE}
1463 ssh-keygen -q -C $COMMENT -t rsa -f ${KEYDIR}/${KEYFILE} -N '' >>${TMPFILE} 2>&1
1465 cat ${TMPFILE} >>${INSTALL_LOG}
1467 echo "`date +'%b %e %Y %T'`: Setting permissions for '${KEYDIR}' and '${KEYDIR}/${KEYFILE}*'" >${TMPFILE}
1468 chown %{amanda_user}:%{amanda_group} ${KEYDIR} >>${TMPFILE} 2>&1
1469 chmod 0750 ${KEYDIR} >>${TMPFILE} 2>&1
1470 chmod 0600 ${KEYDIR}/${KEYFILE}* >>${TMPFILE} 2>&1
1472 cat ${TMPFILE} >>${INSTALL_LOG}
1474 # environment variables (~amandabackup/.profile)
1475 echo "`date +'%b %e %Y %T'`: Checking for '%{AMANDAHOMEDIR}/.profile' and ensuring correct environment." >${TMPFILE}
1476 if [ ! -f %{AMANDAHOMEDIR}/.profile ] ; then
1477 touch %{AMANDAHOMEDIR}/.profile >>${TMPFILE} 2>&1
1479 if [ -z "`grep PATH %{AMANDAHOMEDIR}/.profile | grep '%{SBINDIR}'`" ] ; then
1480 echo "export PATH=\"\$PATH:%{SBINDIR}\"" >>%{AMANDAHOMEDIR}/.profile 2>>${TMPFILE}
1483 cat ${TMPFILE} >>${INSTALL_LOG}
1484 echo "`date +'%b %e %Y %T'`: Setting ownership and permissions for '%{AMANDAHOMEDIR}/.profile'" >${TMPFILE}
1485 chown %{amanda_user}:%{amanda_group} %{AMANDAHOMEDIR}/.profile >>${TMPFILE} 2>&1
1486 chmod 0640 %{AMANDAHOMEDIR}/.profile >>${TMPFILE} 2>&1
1488 cat ${TMPFILE} >>${INSTALL_LOG}
1490 echo "`date +'%b %e %Y %T'`: Sending anonymous distribution and version information to Zmanda" >> ${INSTALL_LOG}
1491 if [ -x /usr/bin/wget ]; then
1492 /usr/bin/wget -q -o /dev/null -O - --timeout=5 http://www.zmanda.com/amanda-tips.php\?version=%{amanda_version}\&os=%{disttag}%{distver}\&type=client
1495 echo "`date +'%b %e %Y %T'`: === Amanda backup client installation complete. ===" >>${TMPFILE}
1497 cat ${TMPFILE} >>${INSTALL_LOG}
1499 if [ -f "${TMPFILE}" ]; then
1503 echo "Amanda installation log can be found in '${INSTALL_LOG}' and errors (if any) in '${INSTALL_ERR}'."
1504 %postun backup_client
1507 # --- Files to install ---
1508 # Notes: Do not use wildcards on directories not wholly owned by amanda. An
1509 # uninstall of the software will attempt to delete whatever matches here.
1510 %files backup_client
1511 %defattr(0755,%{amanda_user},%{amanda_group})
1512 %{SYSCONFDIR}/amanda
1516 %{AMLIBEXECDIR}/amanda-sh-lib.sh
1517 %{LOCALSTATEDIR}/amanda
1518 %defattr(4750,root,disk)
1519 %{AMLIBEXECDIR}/calcsize
1520 %{AMLIBEXECDIR}/killpgrp
1521 %{AMLIBEXECDIR}/rundump
1522 %{AMLIBEXECDIR}/runtar
1523 %defattr(0750,%{amanda_user},%{amanda_group})
1525 %{SBINDIR}/amaespipe
1527 %{SBINDIR}/amgpgcrypt
1528 %{SBINDIR}/amoldrecover
1529 %{SBINDIR}/amrecover
1530 %defattr(0644,%{amanda_user},%{amanda_group})
1532 %{MANDIR}/man5/amanda.conf.5.gz
1533 %{MANDIR}/man5/amanda-client.conf.5.gz
1534 %{MANDIR}/man8/amanda.8.gz
1535 %{MANDIR}/man8/amcheckdump.8.gz
1536 %{MANDIR}/man8/amrecover.8.gz
1537 %{AMLIBEXECDIR}/amcat.awk
1538 %{AMANDAHOMEDIR}/amanda-release
1539 %{AMANDAHOMEDIR}/example/xinetd.amandaclient
1540 %{AMANDAHOMEDIR}/example/amanda-client.conf
1542 %files backup_server
1543 %defattr(0755,%{amanda_user},%{amanda_group})
1544 %{SYSCONFDIR}/amanda
1547 %{PERLSITELIB}/Amanda
1548 %{PERLSITELIB}/auto/Amanda
1550 %{LOCALSTATEDIR}/amanda
1551 %{SBINDIR}/amaddclient
1553 %{SBINDIR}/amcheckdb
1554 %{SBINDIR}/amcheckdump
1555 %{SBINDIR}/amcleanup
1557 %{SBINDIR}/amdevcheck
1559 %{SBINDIR}/amfetchdump
1561 %{SBINDIR}/amgetconf
1564 %{SBINDIR}/amoverview
1567 %{SBINDIR}/amrestore
1569 %{SBINDIR}/amserverconfig
1572 %{SBINDIR}/amtapetype
1575 %{SBINDIR}/amverifyrun
1576 %{AMLIBEXECDIR}/amanda-sh-lib.sh
1577 %defattr(4750,root,disk)
1578 %{AMLIBEXECDIR}/calcsize
1579 %{AMLIBEXECDIR}/killpgrp
1580 %{AMLIBEXECDIR}/rundump
1581 %{AMLIBEXECDIR}/runtar
1582 %{AMLIBEXECDIR}/dumper
1583 %{AMLIBEXECDIR}/planner
1585 %defattr(0750,%{amanda_user},%{amanda_group})
1587 %{SBINDIR}/amaespipe
1589 %{SBINDIR}/amcrypt-ossl
1590 %{SBINDIR}/amcrypt-ossl-asym
1591 %{SBINDIR}/amcryptsimple
1592 %{SBINDIR}/amgpgcrypt
1593 %{SBINDIR}/amoldrecover
1594 %{SBINDIR}/amrecover
1595 %defattr(0644,%{amanda_user},%{amanda_group})
1596 %{AMLIBEXECDIR}/amcat.awk
1597 %{AMLIBEXECDIR}/amplot.awk
1598 %{AMLIBEXECDIR}/amplot.g
1599 %{AMLIBEXECDIR}/amplot.gp
1601 %{MANDIR}/man5/amanda.conf.5.gz
1602 %{MANDIR}/man5/amanda-client.conf.5.gz
1603 %{MANDIR}/man8/amaddclient.8.gz
1604 %{MANDIR}/man8/amadmin.8.gz
1605 %{MANDIR}/man8/amanda.8.gz
1606 %{MANDIR}/man8/amcheck.8.gz
1607 %{MANDIR}/man8/amcheckdb.8.gz
1608 %{MANDIR}/man8/amcheckdump.8.gz
1609 %{MANDIR}/man8/amcleanup.8.gz
1610 %{MANDIR}/man8/amdd.8.gz
1611 %{MANDIR}/man8/amdump.8.gz
1612 %{MANDIR}/man8/amfetchdump.8.gz
1613 %{MANDIR}/man8/amflush.8.gz
1614 %{MANDIR}/man8/amgetconf.8.gz
1615 %{MANDIR}/man8/amlabel.8.gz
1616 %{MANDIR}/man8/ammt.8.gz
1617 %{MANDIR}/man8/amoverview.8.gz
1618 %{MANDIR}/man8/amplot.8.gz
1619 %{MANDIR}/man8/amrecover.8.gz
1620 %{MANDIR}/man8/amreport.8.gz
1621 %{MANDIR}/man8/amrestore.8.gz
1622 %{MANDIR}/man8/amrmtape.8.gz
1623 %{MANDIR}/man8/amserverconfig.8.gz
1624 %{MANDIR}/man8/amstatus.8.gz
1625 %{MANDIR}/man8/amtape.8.gz
1626 %{MANDIR}/man8/amtapetype.8.gz
1627 %{MANDIR}/man8/amtoc.8.gz
1628 %{MANDIR}/man8/amverify.8.gz
1629 %{MANDIR}/man8/amverifyrun.8.gz
1630 %{MANDIR}/man8/amcrypt.8.gz
1631 %{MANDIR}/man8/amcrypt-ossl.8.gz
1632 %{MANDIR}/man8/amcrypt-ossl-asym.8.gz
1633 %{MANDIR}/man8/amcryptsimple.8.gz
1634 %{MANDIR}/man8/amgpgcrypt.8.gz
1635 %{MANDIR}/man8/amaespipe.8.gz
1636 %{MANDIR}/man8/amdevcheck.8.gz
1637 %{AMANDAHOMEDIR}/amanda-release
1638 %{AMANDAHOMEDIR}/example/amanda-client.conf
1639 %{AMANDAHOMEDIR}/example/xinetd.amandaserver
1644 * Fri May 02 2008 Dan Locks <dwlocks at zmanda dot com>
1645 - Changed instances of ${ to %%{ where applicable
1646 * Tue Mar 11 2008 Dan Locks <dwlocks at zmanda dot com>
1647 - fixed many rpmlint complaints
1648 - added --quiet to configure statements
1649 - moved PERLSITELIB to definitions section
1650 * Wed Feb 13 2008 Dan Locks <dwlocks at zmanda dot com>
1651 - added an environment check for PKG_CONFIG_PATH
1652 - added PKG_CONFIG_PATH conditional to handle cross comp on FC8 (environment
1653 var is used if provided)
1654 * Fri Feb 01 2008 Dan Locks <dwlocks at zmanda dot com>
1655 - Removed amplot executable and manpages from client installation
1656 - Added amcheckdump.8 manpage
1657 - Fixed %%{LOCALSTATEDIR}/amanda dir creation.
1658 * Wed Jan 23 2008 Dan Locks <dwlocks at zmanda dot com>
1659 - Change %%{SYSCONFDIR}/amanda/amandates to %%{LOCALSTATEDIR}/amanda/amandates,
1660 and added %%{LOCALSTATEDIR}/amanda to the files lists.
1661 * Mon Jan 14 2008 Dan Locks <dwlocks at zmanda dot com>
1662 - Updates for perlified amanda, file location moves, gpg setup.
1663 * Tue Nov 13 2007 Paddy Sreenivasan <paddy at zmanda dot com>
1664 - Added SYSCONFDIR to client rpm
1665 - Set xinetd and amanda-client.conf configuration files as part of postinstall
1666 * Thu Nov 8 2007 Dan Locks <dwlocks at zmanda dot com>
1667 - Added Linux distribution detection
1668 * Wed Nov 7 2007 Paddy Sreenivasan <paddy at zmanda dot com>
1669 - Added amserverconfig, amaddclient, amgpgcrypt, amcryptsimple and libamdevice.
1670 - Added amanda configuration template files
1671 * Fri Sep 21 2007 Paddy Sreenivasan <paddy at zmanda dot com>
1672 - Remove libamserver, libamtape from client rpm
1673 * Wed Sep 19 2007 Paddy Sreenivasan <paddy at zmanda dot com>
1675 * Tue Jun 26 2007 Kevin Till <ktill at zmanda dot com>
1676 - set debug log to /var/log/amanda
1677 * Fri Jan 12 2007 Paddy Sreenivasan <paddy at zmanda dot com>
1678 - Added label templates
1679 * Thu Dec 07 2006 Paddy Sreenivasan <paddy at zmanda dot com>
1680 - Application API changes
1681 * Fri Jun 16 2006 Kevin Till <ktill at zmanda dot com>
1682 - make install will install necessary example files.
1684 * Wed Jun 07 2006 Paddy Sreenivasan <paddy at zmanda dot com> -
1685 - Added amoldrecover and amanda-client.conf man page.
1686 * Thu Jun 01 2006 Kevin Till <ktill at zmanda dot com> -
1687 - Added amcrypt-ossl, amcrypt-ossl-asym by Ben Slusky.
1688 * Thu May 18 2006 Paddy Sreenivasan <paddy at zmanda dot com> -
1689 - Added SLES10, RHEL3 build options.
1690 * Tue May 09 2006 Chris Lee <cmlee at zmanda dot com> -
1691 - Added amanda-release file to amandabackup home directory.
1692 - Installation message logging cleanup.
1693 * Thu Apr 27 2006 Paddy Sreenivasan <paddy at zmanda dot com> -
1694 - Removed dependency on tar version.
1695 - Moved log directory creation after backup user creation.
1696 * Wed Apr 19 2006 Chris Lee <cmlee at zmanda dot com> -
1697 - Added informative message to note the location of pre- and post-
1698 - install script logs files.
1699 * Mon Apr 17 2006 Chris Lee <cmlee at zmanda dot com> -
1700 - Reworked installation message logging and reporting.
1701 * Fri Apr 14 2006 Chris Lee <cmlee at zmanda dot com> -
1702 - Changed behavior for creating required localhost entries in the
1703 - amandahosts file to check for these entries even when the file
1705 * Wed Apr 12 2006 Chris Lee <cmlee at zmanda dot com> -
1706 - Removed pre-install check for "disk" group. This group should exist
1707 - by default on almost all modern distributions.
1708 * Tue Apr 11 2006 Chris Lee <cmlee at zmanda dot com> -
1709 - Added amandahosts entry for "localhost" without domain.
1710 * Fri Apr 07 2006 Chris Lee <cmlee at zmanda dot com> -
1711 - Changed default entries in .amandahosts to use "localdomain" instead
1713 - Updated amanda_version and release.
1714 * Mon Apr 03 2006 Chris Lee <cmlee at zmanda dot com> -
1715 - Added example amanda.conf to files.
1716 * Thu Mar 16 2006 Chris Lee <cmlee at zmanda dot com> -
1717 - Corrected an issue with pre-install scripts wrt bug #218.
1718 - Corrected an issue with post-install scripts and added testing .profile
1719 - in amandabackup's home directory for setting environment variables wrt
1721 * Mon Mar 13 2006 Chris Lee <cmlee at zmanda dot com> -
1722 - Corrected a syntactical error with setting ownership of amandates file
1724 * Wed Mar 08 2006 Chris Lee <cmlee at zmanda dot com> -
1725 - Added pre-install scripts to verify proper ownership of
1726 - amandabackup home directory.
1727 * Thu Feb 2 2006 Paddy Sreenivasan <paddy at zmanda dot com> -
1728 - Require xinetd. Require termcap and initscripts for Fedora and Redhat.
1729 * Mon Jan 09 2006 Chris Lee <cmlee at zmanda dot com> -
1730 - Pre/post install scripts updated:
1731 - o Resolved an issue where an empty amandates file was installed
1732 - even if the file already existed on the system.
1733 - o If .amandahosts does not exist a default is now created.
1734 - The Amanda user account has been changed to 'amandabackup' for
1735 - additional security.
1736 * Tue Jan 03 2006 Paddy Sreenivasan <paddy at zmanda dot com> -
1737 - Removed amandates from files list.
1738 * Thu Dec 29 2005 Chris Lee <cmlee at zmanda dot com> -
1739 - Corrected dependency for awk to "/bin/awk".
1740 * Thu Dec 29 2005 Kevin Till <ktill at zmanda dot com> -
1741 - add man pages for amcrypt and amaespipe
1742 * Thu Dec 29 2005 Chris Lee <cmlee at zmanda dot com> -
1743 - Updated dependancy info to depend on tar >= 1.15.
1744 - Included dependancies from top-level package in backup_client and
1745 - backup_server packages.
1746 - Reorganized files lists for readability (alphabetically).
1747 - Updated backup_client files list to include some missing files per
1749 - Updated pre- and post-install to handle potential issue when
1750 - /var/log/amanda exists and is a file rather than a directory.
1751 - Corrected permissions for /var/log/amanda in pre-install scripts
1752 - per bug #78 and 13 December change.
1753 * Thu Dec 22 2005 Paddy Sreenivasan <paddy at zmanda dot com> -
1754 - Added amaespipe and amcrypt
1755 - Added sles9 build definitions
1756 * Tue Dec 13 2005 Chris Lee <cmlee at zmanda dot com> -
1757 - Changed permissions for /var/log/amanda, removing set group id bit.
1758 - Added /etc/amandates to backup_client package.
1759 * Thu Dec 08 2005 Chris Lee <cmlee at zmanda dot com> -
1760 - Corrected an issue with detection of existing 'amanda' user account.
1761 - Corrected ownership of setuid executables per Bug #66.
1762 - Moved the gnutar and noop files to the backup_client package (where
1764 - Removed amqde from files list.
1765 - Added logging features to pre- and post-install scripts.
1766 * Wed Dec 07 2005 Chris Lee <cmlee at zmanda dot com> -
1767 - Changed a number of directory and file permissions from amanda:root
1768 - to amanda:disk in response to Bug #57.
1769 * Fri Dec 02 2005 Chris Lee <cmlee at zmanda dot com> -
1770 - Corrected SYSCONFDIR path definition. Closes Bug #58.
1771 * Mon Nov 28 2005 Chris Lee <cmlee at zmanda dot com> -
1772 - Really fixed user creation preinstall scripts.
1773 * Wed Nov 23 2005 Paddy Sreenivasan <paddy at zmanda dot com> -
1774 - Updated package description.
1775 - Changed Group for packages.
1776 * Tue Nov 22 2005 Chris Lee <cmlee at zmanda dot com> -
1777 - Corrected dependancy packaging issue with amanda libraries.
1778 - Fixed creation of amanda user on systems which it does not exist.
1779 - Corrected Group definition for SuSE.
1780 - Updated descriptions to include amanda-libs package.
1781 - Updated release number to 2.
1782 * Tue Nov 08 2005 Chris Lee <cmlee at zmanda dot com> -
1783 - Permissions changes: now using user=amanda, group=disk
1784 * Sun Oct 30 2005 Chris Lee <cmlee at zmanda dot com> -
1785 - Parameters to configure options --with-user and --with-group changed
1786 - such that when test_build is set to '1' the username of the user who
1787 - runs rpmbuild is used for both values. If test_build is set to '0'
1788 - then root is used for both values.
1789 - The release field was also changed to automatically reflect the
1790 - distribution and distribution release version for which the RPM was
1792 * Tue Oct 18 2005 Chris Lee <cmlee at zmanda dot com> -
1793 - Initial RPM SPEC file created.