add stretch vm setup script.

This commit is contained in:
Gero Müller 2017-06-12 10:38:21 +10:00
parent 7afaf894f0
commit 611911c8b1

70
stretch-vm.sh Normal file
View File

@ -0,0 +1,70 @@
#!/bin/bash
set -e
{ # failed download protection
cat > /etc/apt/sources.list <<EOF
deb http://mirror.hetzner.de/debian/packages stretch main contrib non-free
EOF
apt update
echo "Install important system tools."
apt install -y htop ne iotop curl wget zsh figlet iptraf borgbackup
echo "Use zsh!"
wget -q -O /root/.zshrc http://git.grml.org/f/grml-etc-core/etc/zsh/zshrc
cat >>/root/.zshrc << EOF
export LS_COLORS="*=00;37:rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:"
RED="$(tput setaf 1)"
ORANGE="$(tput setaf 3)"
BLUE="$(tput setaf 4)"
BLACK="$(tput sgr0)"
colorls() {
/bin/ls -lh --color=yes $@ | sed -e "s/ \([0-9,.]\+K\) / ${BLUE}\1${BLACK} /g" -e "s/ \([0-9.,]\+G\) / ${RED}\1${BLACK} /g" -e "s/ \([0-9.,]\+M\) / ${ORANGE}\1${BLACK} /g"
}
alias ls='command ls -h --color=auto'
alias l='colorls'
alias ll='colorls -A'
EOF
chsh -s /bin/zsh
echo "Setup hostname."
( exec ne /etc/hostname /etc/hosts )
hostname -F /etc/hostname
echo "Nice motd."
figlet `hostname -f | sed 's/\./ \. /g'` > /etc/motd
echo "Install system and security utils."
apt install -y systemd-cron apticron logwatch unattended-upgrades
apt install -y ssmtp
( exec ne /etc/ssmtp/* )
echo "Disable unneeded getty"
for i in {4..6}; do
systemctl stop getty@tty$i.service
systemctl disable getty@tty$i.service
done
wget -q -O /usr/local/sbin/systembackup https://code.camijo.de/gmueller/server-scripts/raw/master/systembackup
if [ ! -f /etc/systembackup.conf ] then
cat >>/etc/systembackup.conf <<EOF
REPOSITORY=
PASSPHRASE=
MYSQL=no
EOF
fi
( exec ne /etc/systembackup.conf )
}