VMware Template Ubuntu 20.04: verschil tussen versies

Uit WaaaghPedia
Regel 24: Regel 24:
sudo service rsyslog stop
sudo service rsyslog stop


#clear audit logs
#verwijder audit logs
if [ -f /var/log/wtmp ]; then
if [ -f /var/log/wtmp ]; then
     truncate -s0 /var/log/wtmp
     sudo truncate -s0 /var/log/wtmp
fi
fi
if [ -f /var/log/lastlog ]; then
if [ -f /var/log/lastlog ]; then
     truncate -s0 /var/log/lastlog
     sudo truncate -s0 /var/log/lastlog
fi
fi


#cleanup /tmp directories
#leeg /tmp map
rm -rf /tmp/*
sudo rm -rf /tmp/*
rm -rf /var/tmp/*
sudo rm -rf /var/tmp/*


#cleanup current ssh keys
#verwijder host SSH keys
rm -f /etc/ssh/ssh_host_*
sudo rm -f /etc/ssh/ssh_host_*


#add check for ssh keys on reboot...regenerate if neccessary
#genereer SSH Host Keys bij nieuwe bootup wanneer deze er niet meer is.
cat << 'EOL' | sudo tee /etc/rc.local
sudo cat << 'EOL' | sudo tee /etc/rc.local
#!/bin/sh -e
#!/bin/sh -e
#
#
Regel 62: Regel 62:


# make sure the script is executable
# make sure the script is executable
chmod +x /etc/rc.local
sudo chmod +x /etc/rc.local


#reset hostname
#reset hostname
# prevent cloudconfig from preserving the original hostname
# prevent cloudconfig from preserving the original hostname
sed -i 's/preserve_hostname: false/preserve_hostname: true/g' /etc/cloud/cloud.cfg
sudo sed -i 's/preserve_hostname: false/preserve_hostname: true/g' /etc/cloud/cloud.cfg
truncate -s0 /etc/hostname
sudo truncate -s0 /etc/hostname
hostnamectl set-hostname localhost
sudo hostnamectl set-hostname localhost


#cleanup apt
#schoon apt op
apt clean
sudo apt clean


# set dhcp to use mac - this is a little bit of a hack but I need this to be placed under the active nic settings
sudo sed -i 's/optional: true/dhcp-identifier: mac/g' /etc/netplan/50-cloud-init.yaml
# also look in /etc/netplan for other config files
sed -i 's/optional: true/dhcp-identifier: mac/g' /etc/netplan/50-cloud-init.yaml


# cleans out all of the cloud-init cache / logs - this is mainly cleaning out networking info
# Cloud-init logs opschonen
sudo cloud-init clean --logs
sudo cloud-init clean --logs


#cleanup shell history
#Schoon terminal history op.
sudo cat /dev/null > ~/.bash_history && history -c
cat /dev/null > ~/.bash_history && history -c
cat /dev/null > ~/.bash_history && history -c
history -w
history -w


#shutdown
#Uitschakelen
sudo shutdown -h now</pre>
sudo shutdown -h now</pre>



Versie van 1 jul 2021 17:38

https://docs.microsoft.com/nl-nl/azure/cloud-adoption-framework/manage/hybrid/server/best-practices/vmware-ubuntu-template

https://jimangel.io/post/create-a-vm-template-ubuntu-18.04/


INSTALATIE UBUNTU

UPDATEN UBUNTU

# Ik heb voor het gemak -y toegevoegd maar ben hier voorzichtig mee. Deze tag zorgt er voor dat updates automatisch geïnstalleerd worden.
sudo apt -y update
sudo apt -y upgrade

Tools installeeren

# Waarschijnlijk al geïnstalleerd.
sudo apt -y install open-vm-tools

Template afronden

#Stop services for cleanup
sudo service rsyslog stop

#verwijder audit logs
if [ -f /var/log/wtmp ]; then
    sudo truncate -s0 /var/log/wtmp
fi
if [ -f /var/log/lastlog ]; then
    sudo truncate -s0 /var/log/lastlog
fi

#leeg /tmp map
sudo rm -rf /tmp/*
sudo rm -rf /var/tmp/*

#verwijder host SSH keys
sudo rm -f /etc/ssh/ssh_host_*

#genereer SSH Host Keys bij nieuwe bootup wanneer deze er niet meer is.
sudo cat << 'EOL' | sudo tee /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
# dynamically create hostname (optional)
#if hostname | grep localhost; then
#    hostnamectl set-hostname "$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 13 ; echo '')"
#fi
test -f /etc/ssh/ssh_host_dsa_key || dpkg-reconfigure openssh-server
exit 0
EOL

# make sure the script is executable
sudo chmod +x /etc/rc.local

#reset hostname
# prevent cloudconfig from preserving the original hostname
sudo sed -i 's/preserve_hostname: false/preserve_hostname: true/g' /etc/cloud/cloud.cfg
sudo truncate -s0 /etc/hostname
sudo hostnamectl set-hostname localhost

#schoon apt op
sudo apt clean

sudo sed -i 's/optional: true/dhcp-identifier: mac/g' /etc/netplan/50-cloud-init.yaml

# Cloud-init logs opschonen
sudo cloud-init clean --logs

#Schoon terminal history op.
sudo cat /dev/null > ~/.bash_history && history -c
cat /dev/null > ~/.bash_history && history -c
history -w

#Uitschakelen
sudo shutdown -h now

Converteer naar Template

Pas de systeem instellingen aan.

Rechtermuistoets klik op de VM die je wilt veranderen naar een template. Ga naar Clone en vervolgens naar Clone to template. Volg de wizard.