Add script to install all needed debian packages and perl modules. Usefull after upgrading the Operating System (OS).
This commit is contained in:
parent
9aaaf80c43
commit
2c826fd75d
90
README.debian_packages
Normal file
90
README.debian_packages
Normal file
@ -0,0 +1,90 @@
|
|||||||
|
# - Debian packages needed for a complete mailserver
|
||||||
|
# - postfix/postfixadmin/vacation/amavis/dovecot/roundcube
|
||||||
|
# -
|
||||||
|
|
||||||
|
alien
|
||||||
|
amavisd-new
|
||||||
|
arc
|
||||||
|
arj
|
||||||
|
aspell-da
|
||||||
|
aspell-de
|
||||||
|
aspell-en
|
||||||
|
aspell-es
|
||||||
|
aspell-fr
|
||||||
|
aspell-it
|
||||||
|
binutils
|
||||||
|
bsd-mailx
|
||||||
|
bzip2
|
||||||
|
cabextract
|
||||||
|
clamav-base
|
||||||
|
clamav-daemon
|
||||||
|
clamav-docs
|
||||||
|
clamav-freshclam
|
||||||
|
cpanminus
|
||||||
|
cpio\
|
||||||
|
ftp
|
||||||
|
geoip-bin
|
||||||
|
geoip-database
|
||||||
|
haveged
|
||||||
|
lhasa
|
||||||
|
libclamunrar7
|
||||||
|
libdbd-mysql
|
||||||
|
libdbd-mysql-perl
|
||||||
|
libdbd-pg-perl
|
||||||
|
libdbd-pgsql
|
||||||
|
libdbi-dev
|
||||||
|
libdbi-perl
|
||||||
|
libemail-sender-perl
|
||||||
|
libemail-valid-perl
|
||||||
|
libgeoip-dev
|
||||||
|
libgeo-ipfree-perl
|
||||||
|
libgeo-ip-perl
|
||||||
|
libgmp10
|
||||||
|
libgmp-dev
|
||||||
|
libimage-info-perl
|
||||||
|
libio-socket-ssl-perl
|
||||||
|
libio-string-perl
|
||||||
|
libio-zlib-perl
|
||||||
|
libkrb5-dev
|
||||||
|
liblog-log4perl-perl
|
||||||
|
liblz4-tool
|
||||||
|
libmail-dkim-perl
|
||||||
|
libmail-sendmail-perl
|
||||||
|
libmail-spf-perl
|
||||||
|
libmime-encwords-perl
|
||||||
|
libnet-cidr-lite-perl
|
||||||
|
libnet-ident-perl
|
||||||
|
libpq5
|
||||||
|
libpq-dev
|
||||||
|
libsasl2-modules
|
||||||
|
lrzip
|
||||||
|
lzop
|
||||||
|
melt
|
||||||
|
ncftp
|
||||||
|
nomarch
|
||||||
|
opendkim
|
||||||
|
opendkim-tools
|
||||||
|
p7zip
|
||||||
|
p7zip-full
|
||||||
|
p7zip-rar
|
||||||
|
pax
|
||||||
|
postfix
|
||||||
|
postfix-mysql
|
||||||
|
postfix-pcre
|
||||||
|
postfix-pgsql
|
||||||
|
postgrey
|
||||||
|
pyzor
|
||||||
|
rar
|
||||||
|
re2c
|
||||||
|
ripole
|
||||||
|
rpm
|
||||||
|
sasl2-bin
|
||||||
|
socat
|
||||||
|
spamassassin razor
|
||||||
|
tar
|
||||||
|
tnef
|
||||||
|
unrar
|
||||||
|
unrar-free
|
||||||
|
unzip
|
||||||
|
zip
|
||||||
|
zoo
|
15
README.perl_modules
Normal file
15
README.perl_modules
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
# - Perl modules needed for a complete mailserver
|
||||||
|
# - postfix/postfixadmin/vacation/amavis/dovecot/roundcube
|
||||||
|
# -
|
||||||
|
|
||||||
|
CPAN
|
||||||
|
Mail::Sender
|
||||||
|
DBI
|
||||||
|
DBD::mysql
|
||||||
|
DBD::Pg
|
||||||
|
IO::Socket::UNIX
|
||||||
|
Digest::SHA1
|
||||||
|
Digest::SHA2
|
||||||
|
Digest::SHA256
|
||||||
|
Encode::Detect
|
||||||
|
Net::Patricia
|
187
install_all_needed_resources.sh
Executable file
187
install_all_needed_resources.sh
Executable file
@ -0,0 +1,187 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
_src_base_dir="$(realpath $(dirname $0))"
|
||||||
|
|
||||||
|
log_file="$(mktemp)"
|
||||||
|
|
||||||
|
|
||||||
|
# -------------
|
||||||
|
# - Functions
|
||||||
|
# -------------
|
||||||
|
|
||||||
|
clean_up() {
|
||||||
|
|
||||||
|
# Perform program exit housekeeping
|
||||||
|
rm -f "$log_file"
|
||||||
|
exit $1
|
||||||
|
}
|
||||||
|
|
||||||
|
echononl(){
|
||||||
|
echo X\\c > /tmp/shprompt$$
|
||||||
|
if [ `wc -c /tmp/shprompt$$ | awk '{print $1}'` -eq 1 ]; then
|
||||||
|
echo "$*\\c" 1>&2
|
||||||
|
else
|
||||||
|
echo -e -n "$*" 1>&2
|
||||||
|
fi
|
||||||
|
rm /tmp/shprompt$$
|
||||||
|
}
|
||||||
|
|
||||||
|
error(){
|
||||||
|
echo ""
|
||||||
|
echo -e "\t[ \033[31m\033[1mFehler\033[m ]: $*"
|
||||||
|
echo ""
|
||||||
|
}
|
||||||
|
|
||||||
|
echo_ok() {
|
||||||
|
echo -e "\033[75G[ \033[32mok\033[m ]"
|
||||||
|
## echo -e " [ ok ]"
|
||||||
|
}
|
||||||
|
echo_failed(){
|
||||||
|
echo -e "\033[75G[ \033[1;31mfailed\033[m ]"
|
||||||
|
## echo -e " [ failed ]"
|
||||||
|
}
|
||||||
|
echo_skipped() {
|
||||||
|
echo -e "\033[80G[ \033[33m\033[1mskipped\033[m ]"
|
||||||
|
}
|
||||||
|
|
||||||
|
_needed_packages_base="
|
||||||
|
alien
|
||||||
|
amavisd-new
|
||||||
|
arc
|
||||||
|
arj
|
||||||
|
aspell-da
|
||||||
|
aspell-de
|
||||||
|
aspell-en
|
||||||
|
aspell-es
|
||||||
|
aspell-fr
|
||||||
|
aspell-it
|
||||||
|
binutils
|
||||||
|
bsd-mailx
|
||||||
|
bzip2
|
||||||
|
cabextract
|
||||||
|
clamav-base
|
||||||
|
clamav-daemon
|
||||||
|
clamav-docs
|
||||||
|
clamav-freshclam
|
||||||
|
cpanminus
|
||||||
|
cpio\
|
||||||
|
ftp
|
||||||
|
geoip-bin
|
||||||
|
geoip-database
|
||||||
|
haveged
|
||||||
|
lhasa
|
||||||
|
libclamunrar7
|
||||||
|
libdbd-mysql
|
||||||
|
libdbd-mysql-perl
|
||||||
|
libdbd-pg-perl
|
||||||
|
libdbd-pgsql
|
||||||
|
libdbi-dev
|
||||||
|
libdbi-perl
|
||||||
|
libemail-sender-perl
|
||||||
|
libemail-valid-perl
|
||||||
|
libgeoip-dev
|
||||||
|
libgeo-ipfree-perl
|
||||||
|
libgeo-ip-perl
|
||||||
|
libgmp10
|
||||||
|
libgmp-dev
|
||||||
|
libimage-info-perl
|
||||||
|
libio-socket-ssl-perl
|
||||||
|
libio-string-perl
|
||||||
|
libio-zlib-perl
|
||||||
|
libkrb5-dev
|
||||||
|
liblog-log4perl-perl
|
||||||
|
liblz4-tool
|
||||||
|
libmail-dkim-perl
|
||||||
|
libmail-sendmail-perl
|
||||||
|
libmail-spf-perl
|
||||||
|
libmime-encwords-perl
|
||||||
|
libnet-cidr-lite-perl
|
||||||
|
libnet-ident-perl
|
||||||
|
libpq5
|
||||||
|
libpq-dev
|
||||||
|
libsasl2-modules
|
||||||
|
lrzip
|
||||||
|
lzop
|
||||||
|
melt
|
||||||
|
ncftp
|
||||||
|
nomarch
|
||||||
|
opendkim
|
||||||
|
opendkim-tools
|
||||||
|
p7zip
|
||||||
|
p7zip-full
|
||||||
|
p7zip-rar
|
||||||
|
pax
|
||||||
|
postfix
|
||||||
|
postfix-mysql
|
||||||
|
postfix-pcre
|
||||||
|
postfix-pgsql
|
||||||
|
postgrey
|
||||||
|
pyzor
|
||||||
|
rar
|
||||||
|
re2c
|
||||||
|
ripole
|
||||||
|
rpm
|
||||||
|
sasl2-bin
|
||||||
|
socat
|
||||||
|
spamassassin razor
|
||||||
|
tar
|
||||||
|
tnef
|
||||||
|
unrar
|
||||||
|
unrar-free
|
||||||
|
unzip
|
||||||
|
zip
|
||||||
|
zoo"
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echononl " Install needed debian packages"
|
||||||
|
|
||||||
|
for _pkg in $_needed_packages_base ; do
|
||||||
|
if aptitude search "$_pkg" | grep " $_pkg " | grep -e "^i" > /dev/null 2>&1 ; then
|
||||||
|
continue
|
||||||
|
else
|
||||||
|
needed_packages_base="$needed_packages_base $_pkg"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if [[ -n "$needed_packages_base" ]]; then
|
||||||
|
DEBIAN_FRONTEND=noninteractive apt-get -y install $needed_packages_base > /dev/null 2> "$log_file"
|
||||||
|
if [[ $? -eq 0 ]] ; then
|
||||||
|
echo_ok
|
||||||
|
else
|
||||||
|
echo_failed
|
||||||
|
error "$(cat $log_file)"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo_skipped
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echononl " Install database related CPAN Modules"
|
||||||
|
_failed=false
|
||||||
|
> $log_file
|
||||||
|
_needed_cpan_modules="
|
||||||
|
CPAN
|
||||||
|
Mail::Sender
|
||||||
|
DBI
|
||||||
|
DBD::mysql
|
||||||
|
DBD::Pg
|
||||||
|
IO::Socket::UNIX
|
||||||
|
Digest::SHA1
|
||||||
|
Digest::SHA2
|
||||||
|
Digest::SHA256
|
||||||
|
Encode::Detect
|
||||||
|
Net::Patricia"
|
||||||
|
for _module in $_needed_cpan_modules ; do
|
||||||
|
cpanm -q --skip-installed $_module >> "$log_file" 2>&1
|
||||||
|
if [[ "$?" -ne 0 ]] ; then
|
||||||
|
_failed=true
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if $_failed ; then
|
||||||
|
echo_failed
|
||||||
|
error "$(cat $log_file)"
|
||||||
|
else
|
||||||
|
echo_ok
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
clean_up 0
|
Loading…
Reference in New Issue
Block a user