VMware Template Ubuntu 20.04: verschil tussen versies
Uit WaaaghPedia
Regel 21: | Regel 21: | ||
==Template afronden== | ==Template afronden== | ||
<pre>#Stop services for cleanup | |||
sudo service rsyslog stop | |||
#clear audit logs | |||
if [ -f /var/log/wtmp ]; then | |||
truncate -s0 /var/log/wtmp | |||
fi | |||
if [ -f /var/log/lastlog ]; then | |||
truncate -s0 /var/log/lastlog | |||
fi | |||
#cleanup /tmp directories | |||
rm -rf /tmp/* | |||
rm -rf /var/tmp/* | |||
#cleanup current ssh keys | |||
rm -f /etc/ssh/ssh_host_* | |||
#add check for ssh keys on reboot...regenerate if neccessary | |||
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 | |||
chmod +x /etc/rc.local | |||
#reset hostname | |||
# prevent cloudconfig from preserving the original hostname | |||
sed -i 's/preserve_hostname: false/preserve_hostname: true/g' /etc/cloud/cloud.cfg | |||
truncate -s0 /etc/hostname | |||
hostnamectl set-hostname localhost | |||
#cleanup apt | |||
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 | |||
# 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 | |||
sudo cloud-init clean --logs | |||
#cleanup shell history | |||
cat /dev/null > ~/.bash_history && history -c | |||
history -w | |||
#shutdown | |||
shutdown -h now</pre> | |||
Gooi hostname leeg | Gooi hostname leeg | ||
<pre>sudo sed -i 's/preserve_hostname: false/preserve_hostname: true/g' /etc/cloud/cloud.cfg | <pre>sudo sed -i 's/preserve_hostname: false/preserve_hostname: true/g' /etc/cloud/cloud.cfg |
Versie van 1 jul 2021 17:31
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 #clear audit logs if [ -f /var/log/wtmp ]; then truncate -s0 /var/log/wtmp fi if [ -f /var/log/lastlog ]; then truncate -s0 /var/log/lastlog fi #cleanup /tmp directories rm -rf /tmp/* rm -rf /var/tmp/* #cleanup current ssh keys rm -f /etc/ssh/ssh_host_* #add check for ssh keys on reboot...regenerate if neccessary 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 chmod +x /etc/rc.local #reset hostname # prevent cloudconfig from preserving the original hostname sed -i 's/preserve_hostname: false/preserve_hostname: true/g' /etc/cloud/cloud.cfg truncate -s0 /etc/hostname hostnamectl set-hostname localhost #cleanup apt 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 # 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 sudo cloud-init clean --logs #cleanup shell history cat /dev/null > ~/.bash_history && history -c history -w #shutdown shutdown -h now
Gooi hostname leeg
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
Verwijder terminal history
cat /dev/null > ~/.bash_history && history -c
Shutdown
sudo shutdown 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.