Configuration post-installation d'un container Ubuntu 18.04
Environnement
L'environnement est fourni à titre indicatif afin d'identifier d'éventuelles divergences de résultats en cas d'utilisation du script dans un environnement proche mais néanmoins différent.
- Hyperviseur Proxmox 5
- Conteneur LXC Ubuntu 18.04
Description
Ce script effectue les modifications suivantes :
- Paramétrage des locales
- Paramétrage du fuseau horaire
- Mise à jour du système et des logiciels
- Installation de divers logiciels d'administration système et réseau
- Application automatique des mises à jour de sécurité
- Activation de l'autocomplétion du compte root
- Nettoyage des paquets inutiles
/!\ Dans l'ensemble du script, modifier la valeur email@domaine.lan par l'adresse email de votre choix
Script
#! /bin/bash
# ubuntu18.04-container-lxc-postinstall-light.sh
# Script de configuration d'un container LXC Proxmox Ubuntu 18.04.2
# Paramétrage des locales
# Paramétrage du fuseau horaire
# Mise à jour du système et des logiciels
# Installation de divers logiciels d'administration système et réseau
# Application automatique des mises à jour de sécurité
# Activation de l'autocomplétion du compte root
# Nettoyage des paquets inutiles
# update 2019-01-14 : config /etc/apt/apt.conf.d/50unattended-upgrades
# update 2019-03-10 : auto-completion root
# 1. locales & time
echo "###############################################################################"
echo "locales & time"
echo "###############################################################################"
dpkg-reconfigure locales
dpkg-reconfigure tzdata
2. Mise à jour du système et installation des logiciels de base
echo "###############################################################################"
echo "Update"
echo "###############################################################################"
apt update
apt -y dist-upgrade
apt install -y iotop most ncdu vfu iptraf iftop htop tree sysstat mc open-vm-tools dkms build-essential lshw net-tools unattended-upgrades
# 3. Installation quotidienne des mises à jour de sécurité
echo "###############################################################################"
echo "Installation quotidienne des mises à jour de sécurité"
echo "###############################################################################"
cp -p /etc/apt/apt.conf.d/50unattended-upgrades /etc/apt/apt.conf.d/50unattended-upgrades.bak
sed -i 's,//Unattended-Upgrade::AutoFixInterruptedDpkg "false";,Unattended-Upgrade::AutoFixInterruptedDpkg "true";,' /etc/apt/apt.conf.d/50unattended-upgrades
sed -i 's,//Unattended-Upgrade::MinimalSteps "false";,Unattended-Upgrade::MinimalSteps "true";,' /etc/apt/apt.conf.d/50unattended-upgrades
sed -i 's,//Unattended-Upgrade::Mail "root";,Unattended-Upgrade::Mail "email@domaine.lan";,' /etc/apt/apt.conf.d/50unattended-upgrades
sed -i 's,//Unattended-Upgrade::MailOnlyOnError "true";,Unattended-Upgrade::MailOnlyOnError "true";,' /etc/apt/apt.conf.d/50unattended-upgrades
sed -i 's,//Unattended-Upgrade::Remove-Unused-Kernel-Packages "false";,Unattended-Upgrade::Remove-Unused-Kernel-Packages "true";,' /etc/apt/apt.conf.d/50unattended-upgrades
sed -i 's,//Unattended-Upgrade::Remove-Unused-Dependencies "false";,Unattended-Upgrade::Remove-Unused-Dependencies "true";,' /etc/apt/apt.conf.d/50unattended-upgrades
echo 'APT::Periodic::Download-Upgradeable-Packages "1";' >> /etc/apt/apt.conf.d/20auto-upgrades
echo 'APT::Periodic::AutocleanInterval "7";' >> /etc/apt/apt.conf.d/20auto-upgrades
apt install apticron -y
cp -p /usr/lib/apticron/apticron.conf /etc/apticron/apticron.conf
sed -i 's/EMAIL="root"/EMAIL="email@domaine.lan"/' /etc/apticron/apticron.conf
# 4. Auto-completion root
echo "if [ -f /etc/bash_completion ] && ! shopt -oq posix; then" >> /root/.bashrc
echo " . /etc/bash_completion" >> /root/.bashrc
echo "fi" >> /root/.bashrc
# 5. Nettoyage
echo "###############################################################################"
echo "Nettoyage"
echo "###############################################################################"
apt clean
apt autoclean
apt autoremove