VMWare | Create Template Ubuntu 12.04
In this article, I am going to outline a procedure to create a very basic Ubuntu VMWare virtual machine template for rapid deployment.
1. Perform the installation of Ubuntu as you would any Virtual Machine. Create an initial user called ‘cloud’
2. Install gcc, build essential and the Linux headers for the currently running kernel:
sudo apt-get install gcc build-essential linux-headers-$(uname –r)
3. Install VMWare Tools. Accept all defaults during the installation:
sudo mount /dev/cdrom /media/cdrom
cp /media/cdrom/VMWareTools-XXX.tar.gz ~
cd ~
tar zxf VMWareTools-XXX.tar.gz
cd vmware-tools
sudo ./vmware-install.pl
cd ..
rm –rf vmware-tools VMWareTools-XXX.tar.gz
4. Fully patch the operating system:
sudo apt-get update
sudo apt-get upgrade
sudo shutdown –r now
5. Clear the apt cache:
sudo apt-get clean
6. To prevent hardware related issues, remove the udev persistent rules as follows:
sudo rm –f /etc/udev/rules.d/70*
7. For the users’ convenience, lets update the locate database:
sudo updatedb
8. For good measure, lets create an administrative user in case we need access later:
sudo adduser admin (Enter details and document)
sudo usermod –G sudo admin
9. Lets make the initial users password expire immediately upon logging in as well:
chage –d 0 cloud
10. Clear out the temp directories:
sudo rm –rf /tmp/*
gesudo rm –rf /var/tmp/*
11. Now we will remove all SSH host keys:
rm –rf /etc/ssh/*keys*
12. Now we will clear the bash history to cover our tracks a bit:
history –c
13. Clearing out the logs is also a good idea. This can be accomplished as follows:
NOTE: Where ‘1’ is usually the first rotation. Check if additional rotations have occurred ‘2’.
sudo logrotate –f /etc/logrotate.conf
sudo cat /dev/null > /var/log/wtmp
sudo rm –rf /var/log/*.1 /var/log/*.gz