Posts Tagged ‘VMWare’
If you have a standalone VMware ESX 4 unmanaged or you haven’t yet configured VMware Update Manager, and you want to update it, you should do the following.
Download the update package from VMware Web Site : ESX-4.0.0-update01.zip
Copy it to your ESX Server 4 (i.e. on /tmp).
Connect to your ESX Server with SSH or to a local console.
Execute :
esxupdate --bundle=ESX-4.0.0-update01.zip update
Hope this help
Bye
Riccardo
Print This Post
This post is not for a sort of “religion war” between Microsoft and VMware.
I’m using daily both Microsoft products with satisfaction (not every time) and VMware.
I love VMware products, and this is not a secret, but before today, I’ve read everything about Microsoft Hyper-V, so I’ve decided to download it and test it.
The following is my opinion about VMware ESXi and Hyper-V comparison, this because Microsoft trying to tell us that his Hypervisor is similar (or better) than VMware one, and because I don’t think so, you can read here the main reasons.
I started using VMware Update Manager almost immediately after its release.
In my opinion another patching software for Microsoft Windows wasn’t needed when WSUS already existed and does a great job at Windows patching.
For the above reason I’m using VMware Update Manager only for patching esx hosts.
One of the most important feauture of Update Manager is that is fully integrated with VMware DRS, so patching an ESX host cause zero-downtime because the host will be put into Maintenance Mode for patching and than become available again.
This process details the Patching of an ESX host. The remediation process involves Migrating Virtual Machines off the host using vMotion, patching and then redistributing workloads via DRS.
1) First of all connect to Virtualcenter and you must enable the Update Manager plugin.
2) Download and install the Plug-in, and enabled it.
3) When you have the plugin enables, you should see another task button and another Tab at cluster level and at host level.
4) The next step is to attach a baseline to cluster (best practice) or to host. It would be better to attach the baseline to cluster because with thi solution you will have all the hosts at the same patchlevel.
A baseline is a collection of patch, defined by some policy, baselines could be “fixed” or “dynamic”, the first one are a manually selected update lists, the second one is an update lists defined by some dynamic choice. Every baseline should be divided “Non Critical” and “Critical” classifications.
5) When you attach a baseline to an object (a cluster or an host) you should select “SCAN FOR UPDATES” and UpdateManager will check the object patchlevel do define which update should be applied to it.
6) When the task has been finished, you should choose “REMEDIATE”, and consider to run this on one host at a time.
7) Choose from the defined baselines which ones you want to apply to the selected host, and define all options requested.
After the above operations, the host will go into “Maintenance Mode” and all running Virtual Machines will be evacuated to other hosts, Update Manager will apply all needed patches rebooting the host if necessary and at the end the host will exit from “Maintenance Mode”.
Hope this help
Bye
Riccardo
Print This Post
Recently I was trying to move VMware VirtualCenter database from one server to another and found that for 250MB database I have about more than 30GB of transaction log (LDF) files. I wanted to get rid of this file. There are 2-3 methods but the method I’ve used was thew following :
1) Open SQL Management Studio Express
2) Detach the database from the SQL Server Management Studio.
3) Go to the location of transaction log and rename it (don’t delete the file yet!!)
4) Attach the database without the log file. When you do this step make sure you highlight the log file entry in the wizard and remove it. (Final attach would happen only with one file i.e. with the MDF file).
At this point there would be a new log file created by the SQL Server.
5) Edit the database properties, and select the preferred increment policy of your newly created log file, enabling automtic grow, define increment step and also define maximum dimension to avoid the problem above.
4) Delete the log file once the database is attached and you have verified it.
You can save a lot of space with above steps.
I’ve tested this procedure with VMware VirtualCenter 2.5 Update4, Microsoft SQL 2005 Express with the latest service pack, Microsoft Management Studio Express, and all works fine.
If i remeber well, this would work even with SQL 2000.
Hope this help
Bye
Riccardo
Print This Post
This is a VERY CLEAR reference from Massimo Re Ferrè (not so strange ….) about Storage Configuration in a VMware Site Recovery Manager Installation.
You could find it here.
Thank you Massimo for the great job
Bye
Riccardo
Taken from Duncan Epping – Yellow Bricks Blog
this is the complete list of VMware HA Advanced Options that you should use configuring a VMware Cluster :
- das.failuredetectiontime – Amount of milliseconds, timeout time for isolation response action(with a default of 15000 milliseconds).
- das.isolationaddress[x] – IP adres the ESX hosts uses for it’s heartbeat, where [x] = 1‐10. It will use the default gateway by default.
- das.usedefaultisolationaddress – Value can be true or false and needs to be set in case the default gateway, which is the default isolation address shouldn’t be used for this purpose.
- das.poweroffonisolation – Values are False or True, this is for setting the isolation response. Default a VM will be powered off.
- das.vmMemoryMinMB – Higher values will reserve more space for failovers.
- das.vmCpuMinMHz - Higher values will reserve more space for failovers.
- das.defaultfailoverhost - Value is a hostname, this host will be the primary failover host.
- das.failuredetectioninterval – Changes the heartbeat interval among HA hosts. By default, this occurs every second (1000 milliseconds).
- das.allowVmotionNetworks – Allows a NIC that is used for VMotion networks to be considered for VMware HA usage. This permits a host to have only one NIC configured for management and VMotion combined.
- das.allowNetwork[x] – Enables the use of port group names to control the networks used for VMware HA, where [x] = 0 – ?. You can set the value to be ʺService Console 2ʺ or ʺManagement Networkʺ to use (only) the networks associated with those port group names in the networking configuration.
- das.isolationShutdownTimeout – Shutdown time out for the isolation response “Shutdown VM”, default is 300 seconds. In other words, if a VM isn’t shutdown clean when isolation response occured it’s being powered off after 300 seconds.
- das.bypassNetCompatCheck – Disable the “compatible network” check for HA that was introduced with Update 2. Default value is “false”, setting it to “true” disables the check.
- das.ignoreRedundantNetWarning – Remove the error icon/message from your vCenter when you don’t have a redundant Service Console. Default valie is “false”, setting it to “true” will disable the warning.
- das.maxvmrestartcount – The maximum amount of retries to start a VM, where <x> 1..(reasonable number), 0 for no restarts, -1 for indefinite. The default is 5.
- das.failureInterval = The polling interval for failures. Default value is 30.
- das.maxFailureWindows = Minimum amount of seconds between failure. Default value is 3600 seconds, if VM fails within 3600 seconds VM HA doesn’t restart the machine.
- das.maxFailures = Maximum amount of VM failures, if the amount is reached VM HA doesn’t restart the machine automatically. Default value is 3.
- das.minUptime = The minimum uptime in seconds before VM HA starts polling. The default value is 120 seconds.
Virtual Machine Monitoring HA advanced options
Hope this help
Bye
Riccardo
Print This Post
This should be an example on how to configure a simple HA (High Availability) without VMware Virtual Center in a two hosts configuration. It requires shared storage between the two hosts, and it works great letting save you a lot of money. Obviously it not provide all Virtual Center features, but it works great. When I have some time to waste, I will add also email notification capabilities. The script will check the “other hosts” with some ICMP packet, and if the host don’t answer for 14 times, it will register all the other host’s VMs and power it on automatically, then wait for 16 seconds and execute all tasks again for paranoid sysadmin. I’ll schedule the job execution every minutes, so it will run twice every minute. I think the script is just pretty commented, but if you have any questions, feel free to ask. The only thing you should do will be export in a file all the VMs registered on the two hosts, and put it on both hosts, for doing this you should simply run :
vmware-cmd -l
and copy and paste the output on a text file, or if you are a script addicted, you should execute on the first host :
vmware-cmd -l | sed 's/\ /\\ /g' > /root/esx01
and on the second host :
vmware-cmd -l | sed 's/\ /\\ /g' > /root/esx02
then you should copy the VMs list between the host, using for example scp, with the following syntax :
usage: scp [-pqrvBC1246] [-F config] [-S program] [-P port] [-c cipher] [-i identity] [-l limit] [-o option] [[user@]host1:]file1 [...] [[user@]host2:]file2
And finally here’s the script :
#!/bin/bash
#
# Manual VMware HA script for two host configuration
# You should keep updated the /root/esx0X file on both hosts if you add or remove VMs
#
# Script created by Riccardo Riva
# Script created 2009/06/29
#
# ESX01 – 10.10.10.11 (VMs list on /root/esx01 on both hosts)
# ESX02 – 10.10.10.12 (VMs list on /root/esx02 on both hosts)
#
# Schedule this script to be executed every minutes by executing ‘crontab -e’ and add the following
# * * * * * /somewhere/this_script.sh
#
# Remeber to assign executable permissions to this script by running ‘chmod +x this_script.sh’
# Modify only the following variables according to your installation
HOSTtoCHECK=10.10.10.11
HOSTtoCHECK_VMs=/root/esx01
# Do not change nothing below this line
if ! ping -c 14 $HOSTtoCHECK > /dev/null; then
while read line
do
vmware-cmd -s register “${line}” && vmware-cmd “${line}” start ;
done < $HOSTtoCHECK_VMs
fi
sleep 16
if ! ping -c 14 $HOSTtoCHECK > /dev/null; then
while read line
do
vmware-cmd -s register “${line}” && vmware-cmd “${line}” start ;
done < $HOSTtoCHECK_VMs
fi
Hope this help
Bye
Riccardo
Print This Post
This post will explain how to do create a VMware ESXi bootable USB pen drive, note that it will not be an installer, but a live system running on an USB drive.
First of all you should use it for testing hardware systems for compatibility, avoiding to install the hypervisor on the system, or you can use it to play (as I’m doing) with it on your notebook or desktop.
The following is the two procedure to follow to create it based on Linux and Windows operating systems :
This post will assume you’ve already have an ISO image of the latest VMware ESXi hypervisor on your system, if you don’t have it, please download it for free at http://www.vmware.com
Linux :
Locate the ISO image.
Mount it in a directory on your system (if you don’t know how, look here : http://www.riccardoriva.com/archives/64) and extract the file you need with the following commands :
sudo mkdir /tmp/iso
sudo mount -o loop -t iso9660 VMware-VMvisor-InstallerCD-3.5.0_Update_4-153875.i386.iso /tmp/iso/
sudo cp /tmp/iso/install.tgz /tmp/
sudo umount /dev/loop0
sudo tar -xzvf /tmp/install.tgz usr/lib/vmware/installer/VMware-VMvisor-big-3.5.0_Update_4-153875.i386.dd.bz2
cd /tmp/usr/lib/vmware/installer/
sudo bunzip2 VMware-VMvisor-big-3.5.0_Update_4-153875.i386.dd.bz2
Now insert your USB Pen Drive (at least 2 GB) in your system and locate it (tipically /dev/sdb).
Copy to it the image with the following command :
sudo dd if=/tmp/usr/lib/vmware/installer/VMware-VMvisor-big-3.5.0_Update_4-153875.i386.dd of=/dev/sdb BS=1M
Umount your en Drive
sudo umount /dev/sdb
Reboot your system and check your BIOS configuration for enabling “Boot from USB devices”, and check if something goes wrong.
Windows :
For windows system you should need two free software (portable) to do all works :
7-Zip Portable : http://portableapps.com/apps/utilities/7-zip_portable
DD For Windows : http://www.chrysocome.net/dd
Open the ISO file with 7zip, locate “install.tgz” and open it, locate “install.tar” and open it,
locate the folder “\usr\lib\vmware\installer\”, locate the fle : “VMware-VMvisor-big-3.5.0_Update_4-153875.i386.dd.bz2″ and open it.
Extract the file “VMware-VMvisor-big-3.5.0_Update_4-153875.i386.dd” in a temporary directory of your system (i.e. C:\temp).
Insert your pen drive (at least 2 GB) on your system and wait a couple of seconds.
Check the device ID of your pen drive using DD for Windows (by opening a command prompt on the DD directory) with the following comand :
dd –list
Then use the following syntax to copy the dd image on your removable device :
dd bs=1M if=VMware-VMvisor-big-3.5.0_Update_4-153875.i386.dd of=\\?\Device\Harddisk1\Partition0 –progress
You’ve done
Hope this help
Bye
Riccardo
Print This Post
This post don’t want to encourage any kind of religion wars beteen VMware, Microsoft or Citrix addicted, simply want to be a comparison between the main feature of the most commons hpervisor out there.
I love this comparison because there’s a lot of smoke and disinformation coming from ALL three major vitualization supporters and I think that some images like the following should help someone to choose which products best match their need.
This post will explain some best practice to adopt when you have VMware Virtual Center and/or VMware License Server on a virtual machine.
The main problem that can occur is that when your VM which contains the license server goes down and has been down for longer then 14 days you will not be able to boot it up again. This is because the grace period has expired, and ESX doesn’t let you power on any virtual machine for licensing problems.
What you can do to avoid this type of situation should be :
- Make sure you always have a “host based” license file on each of your ESX server. In all days job you don’t need it, but in some cases it could be useful to bypass the need to contact the license server. Obviously, after put online again your license server, you can revert to license server based configuration.
- You could also put the host the VM is on into evaluation mode. Than you should restart the VM and then revert to license server based configuration.
- You should also keep a copy of a VMware license server VM on a separate virtual machine external to your infrastructure, for example running on your notebook with VMware Workstation or VMware Server, and in case of need boot up that VM to have a valid license server.
- If you have some money you should consider also products like VMware vCenter Hearthbeat or Neverfail for VirtualCenter.
That’s all, you should now be safe.
Hope this help
Bye
Riccardo
Print This Post
This post will show all actions to do for installing VMware Tools on a Virtual Machine running Ubuntu.
First of all you have to instal all packages needed for a correct installation on configuration of VMware Tools (make, gcc, and kernel sources) by running the following commands :
sudo apt-get install make
sudo apt-get install gcc
sudo apt-get install build-essential
sudo apt-get install linux-headers-`uname -r`
So you have to select from VMware VM menu “Install/Update VMware Tools” for your virtual machine and do the following :
Mount the VMwareTools Virtual Cd-Rom with the following command :
sudo mount /dev/cdrom /mnt
Copy the compressed package on your system :
sudo cp /mnt/VMware-xxx.yyy.tar.gz /tmp
sudo umount /dev/cdrom
Access to the directory on which you’ve copied the file and extract it :
cd /tmp
sudo tar -xzvf VMware-xxx.yyy.tar.gz
You should now delete the archive, enter in the new directory and execute the VMware Tools installer :
sudo rm VMware-xxx.yyy.tar.gz
cd vmware-tools-distrib
sudo ./vmware-install.pl
Follow the on-screen instructions and reboot your virtual machine at the end.
Hope this help
Bye
Riccardo
Print This Post
At some customer sites I have to shutdown all Virtual Machines and all ESX hosts when a power failure occurs, but I didn’t find a place in which collect all informations needed to let all works.
Finally I collect all the information needed and adjust some script find all over the internet and the following is the result.
I’ve tested it on ESX Server 3.5 Update 4 with APC PowerChute Agent v2.2.3 and APC SMART-UPS 5000i UPS
The goal was to :
If a power failure occurs then wait some minutes to check if power come back, and if not :
- try to shutdown all virtual machines running on esx host with a soft shutdown command
- if soft shutdown above fail, shut them down with a hard shutdon command
- wait for virtual machine to shutdown (300 sec).
- if virtual machine is already running then do hard power off
- shutdown esx host
Yesterday, April, 21 VMware had announced VMware VSphere, the new major version of the VMware Infrastructure.
This is what they said on website :
VMware vSphere is the industry’s first cloud operating system, transforming IT infrastructures into a private cloud—a collection of internal clouds federated on-demand to external clouds—delivering IT infrastructure as an easily accessible service. Enable the next generation of flexible, reliable IT services with the efficiency and low cost of cloud computing—featuring uncompromising control over service levels.
Beautiful !
Hope to install it ASAP !
Bye
Riccardo
In this post I am going to talk about a very particular piece of hardware, unique on the market at this moment and that should be very useful for virtualization or clustering purpose, with a very low budget.
This product is called DamVirtualOne.
DamVirtualOne is a modular server (not a Blade) and have some very interesting feature :
- Fully redundant hot swap power supply.
- Fully redundant hot swap Gigabit ethernet switches with failover.
- Fully redundant hot swap storage controller, with multipathing and failover support.
- Up to six (6) compute module double socket (for Intel Xeon 5400 or 5500 CPU family).
- Up to 96GB of RAM each compute module.
- Up to 14 HDD SAS.
- Up to two redundant external SAS connection to storage expansion or SAS device connection (i.e. Tape Unit).
But the more important things that lead me to write this post is that storage is shared between the compute module, but not as other Blade Server on the market right now, with DamVirtualOne you should create a Virtual Disk (similar to a SAN LUN) and share it between all compute module if you need it.
At this time only IBM Blade Center S should have the same possibility, but it’s a Blade server, not a modular server, and there is a big price difference.
I had the luck to test the DamVirtualOne for few days (a lot) and I’ve installed the following :
- VMware ESXi 3.5
- VMware ESX 3.5
- Red Hat Enterprise Linux 5.3
- Microsoft Windows Server 2003
- Microsoft Windows Server 2008
I’ve created some fully function, and very performance VMware HA and DRS Cluster, and some Linux Cluster based on RHEL, and a large number of my previous post was written based on the installation above.
The standard server virtualization or clustering best practices require shared storage to use all benefits of the technology and this lead to buy SAN, Storage array (tipically Fibre Channel) who is very expensive, difficult to maintain and create a very complex infrastructure.
So you should know why I’m so excited about DamVirtualOne, because it’s a “single package” that contains all things you need for virtualization or clustering purpose : servers, storage and network a real datacenter all in one.
With the maximum configuration this machine should support up tp two hundred (200) Virtual Machine !! And his price will be very similar to two or three phisical server (as you are useful to see) and a shared storage, so you should understand that is a beautiful “piece of iron”.
I truly believe that modular server is sometimes under valuated, but in my opinion there is an enormous potential in it and it will be beautiful if this post lead some people to find out a solution, cheaper than other more famous one, using this piece of technology.
You should found more details about DamVirtualOne at the following websites.
Feel free to ask, they will answer you !
Riccardo
Print This Post
This post will show a simple post installation script for VMware ESX server to avoid a lot of manual configuration and some reboot to apply changes.
In the script I’m going to :
- Add an SSH banner text
- Unload unuseful modules (i.e. vmfs2 support)
- Adjust some settings for SAN access
- Increase Service Console Memory reservation to 800 MB
- Configure networking with portgroup and vlan
- Set mgmg.local as the local domain
- Add to hosts file all other esx
- Configure NTP
This script assume you have 4 esx hosts (esx01.mgmt.local, esx02.mgmt.local and so on), and you have 4 phisical NICs on each host.
Assume also you want to create networking for the following networks :
- LAN (with VLAN ID 1) for Internal Network Virtual Machines
- DMZ (with VLAN ID 10) for Virtual Machines accessible from externals network
- TS (with VLAN ID 11) for Terminal Service Virtual Machines
- LAB (with VLAN ID 12) for LAB VMs
- TEST (with VLAN ID 99) for Testing purpose
Great job, as ever, from Massimo Re Ferrè,
you could find it here : http://it20.info/blogs/main/archive/2008/11/14/162.aspx
Very interesting.
Bye
Riccardo
The following is some Networking Stuff about VMware ESX networking.
You could also find all these information on VMware WebSite but I like to keep some info also here for personal quick reference.
Virtual Ethernet Adapters
There are three types of adapters available for virtual machines :
- vmxnet is a paravirtualized device that works only if VMware Tools is installed on the Operating System. This adapter is optimized for virtual environments and designed for high performance.
- vlance emulates the AMD Lance PCNet32 Ethernet adapter. It is compatible with most 32-bit guest operating systems and can be used without VMware Tools.
- e1000 emulates the Intel E1000 Ethernet adapter and is used in either 64-bit or 32-bit virtual machines.
There are two other virtual adapters that are available through VMware technology. Vswif is a paravirtualized device similar to vmxnet that is used by the VMware ESX service console. Vmknic is a device in the VMkernal that is used by the TCP/IP stack to serve NFS and software iSCSI clients.
Virtual Switches
VMware technology includes virtual switches that you can build on demand at run-time to provide different functions, including:
- Layer 2 forwarding.
- VLAN tagging, stripping and filtering.
- Layer 2 security, checksum and segmentation offloading.
This modular approach reduces complexity and maximizes system performance, VMware virtualization technology loads only those components it needs to support the specific physical and virtual Ethernet adapter types used in the configuration. Additionally, the modular design enables VMware and third-party developers to incorporate new modules to enhance the system in the future. Up to 248 virtual switches can be created on each VMware ESX host. Following are important features of virtual switches:
- Virtual ports: The ports on a virtual switch provide logical connection points among virtual devices and between virtual and physical devices. Each virtual switch can have up to 1,016 virtual ports, with a limit of 4,096 ports on all virtual switches on a host. The virtual ports provide a rich control channel for communication with the virtual Ethernet adapters attached to them.
- Uplink ports: Uplink ports are associated with physical adapters, providing a connection between the virtual network and the physical networks. They connect to physical adapters when they are initialized by a device driver or when the teaming policies for virtual switches are reconfigured. Virtual Ethernet adapters connect to virtual ports when you power on the virtual machine, when you take an action to connect the device or when you migrate a virtual machine using VMware VMotion. A virtual Ethernet adapter updates the virtual switch port with MAC filtering information when it is initialized or when it changes.
- Port groups: Port groups make it possible to specify that a given virtual machine should have a particular type of connectivity on every host, and they contain enough configuration information to provide persistent and consistent network access for virtual Ethernet adapters. Some of the information contained in a port group includes virtual switch name, VLANIDs and policies for tagging and filtering, the teaming policy and traffic shaping parameters. This is all the information needed for a switch port.
- Uplinks: With VMware technology, uplinks are the physical Ethernet adapters that serve as bridges between the virtual and physical network. The virtual ports connected to them are called uplink ports. A host may have up to 32 uplinks.
REFERENCE: http://www.vmware.com/files/pdf/virtual_networking_concepts.pdf
Hope this help
Bye
Riccardo
Hi, this is a simple doc who explain the main TCP/IP communications established in a VMware Virtual Infrastructure.
Hope this help to open “all” the rights ports on your firewalls.
Bye
Riccardo
Sometimes (frequently as a lot of people think) you have to use command line for VMware ESX.
#Enter into Maintenance Mode
vimsh -n -e /hostsvc/maintenance_mode_enter
#Exit from Maintenance Mode
vimsh -n -e /hostsvc/maintenance_mode_exit
#Checking Maintenance Mode
vimsh -n -e /hostsvc/runtimeinfo | grep inMaintenanceMode | awk ‘{print $3}’
#Temporarily open all ports through the ESX firewall:
esxcfg-firewall -allowIncoming
esxcfg-firewall -allowOutgoing
#Enable services through the ESX firewall:
esxcfg-firewall -e sshClient
esxcfg-firewall -e ntpClient
esxcfg-firewall -e snmpd
#Unload the VMFS-2 module to improve LUN and volume scan speed and improve overall performance:
vmkload_mod -u vmfs2
#Ensure the firewall is enabled and running before final build completion:
service firewall start
esxcfg-firewall -blockIncoming
esxcfg-firewall -blockOutgoing
#create portgroup for the Production VLAN and tag with id: 1 because this is configured as the native VLAN
esxcfg-vswitch -A LAN vm_switch0
esxcfg-vswitch -p LAN vm_switch0 -v 1
#Configure time zone and NTP:
cp /etc/ntp.conf /etc/ntp.orig
ln -sf /usr/share/zoneinfo/Europe/Italy /etc/localtime
echo “server 0.vmware.pool.ntp.org” >> /etc/ntp.conf
echo “server 1.vmware.pool.ntp.org” >> /etc/ntp.conf
echo “server 2.vmware.pool.ntp.org” >> /etc/ntp.conf
echo “server 3.vmware.pool.ntp.org” >> /etc/ntp.conf
echo “server time.ien.it” >> /etc/ntp.conf
echo “server 0.vmware.pool.ntp.org” >> /etc/ntp/step-tickers
echo “server 1.vmware.pool.ntp.org” >> /etc/ntp/step-tickers
echo “server 2.vmware.pool.ntp.org” >> /etc/ntp/step-tickers
echo “server 3.vmware.pool.ntp.org” >> /etc/ntp/step-tickers
echo “server time.ien.it” >> /etc/ntp.conf
esxcfg-firewall -e ntpClient
chkconfig –level 345 ntpd on
service ntpd restart
hwclock –systohc
#SAN multipathing best practice:
esxcfg-advcfg -s 1 /Disk/UseLunReset
esxcfg-advcfg -s 0 /Disk/UseDeviceReset
service mgmt-vmware restart
#Set Disk.MaxLUN to 40 to reduce rescan time:
esxcfg-advcfg -s 40 /Disk/MaxLUN
service mgmt-vmware restart
#Inject install completion date/time stamp into Message Of The Day:
dateTime=`date ‘+%c’`
echo “Built on “$dateTime” by Riccardo Riva.” > /etc/motd
Hope this help
Bye
Riccardo























