I have been using the VMware Software Manager since the day it came out. But, it often has something I can see that others cannot. Or, I don’t see something that they do. Plus it is often late at downloading things down for me, or making them available.
A friend of mine has created a Linux version of the VMware Software Manager tool. And he has put a lot of work in it so that many of the little issues that might occur in the VMware version are handled nicely. Of course, it is still a legit tool so you need to supply your My VMware credentials.
This article will help make it work for you.
Things to have ready
- You will need a Redhat based distribution of Linux – for me it is Centos and I suggest you use it too if you can.
- The readme for the script, and the script are easy to find but don’t download the script as it will be pulled down automatically later. This way you will always get the latest copy – plus it makes upgrades easier.
- You can use an NFS or SMB share to host the downloaded files. NFS is likely easier, but SMB is much more useful. So have a SMB share mounted on your Linux box. We will do that below so I have all the necessary info for you (and me) in one place.
- Internet connection to download patches and other things – sort of obvious I guess – right?
Getting things ready
- So deploy a Centos v7 VM. BTW, I built my template using this article. I have done this with DHCP and static IP and both work fine. Static meant a little more config but links in that article will help and doing all your network config in a custom specification works great and is easier for non-Linux people.
- Next we need to update so – yum update. In my case there was a lot of updates (231 packages) but no reboot necessary. But I rebooted anyway to make sure things were good.
Configuring SMB on Centos
So we want our downloaded files to be stored on an SMB share so they are easier to consume.
- We need to install some files first:
yum install samba-client samba-common cifs-utils
- Next, create a local mount point:
[root@host]# mkdir /mnt/win
- Next, edit the /etc/fastab and add a line:
\\winbox\getme /mnt/win cifs sec=ntlm,user,rw,suid,username=sushi,password=yummy 0 0
- You can use mount -a to mount without a reboot. Once you have it working though, make sure to reboot to confirm. It seemed to me that mount -a worked right away, but a reboot took a minute or two after it was completely started and this seemed to vary a bit. Quite confusing and frustrating. I will try and learn more and find a better method. It looks like it is more tricky since Windows is not in use. It is using the credentials from my QNAP and connecting to the QNAP.
- Bear in mind that this leaves the password in the clear for people to discover. Several better (and more complex) ways to do this in in this article.
- Restart your server and make sure that it does restart, and that the link is there.
Now we work on the fun stuff – like configuring VSM to work and being able to download files. BTW, I do the work below in my home folder. The script will end up, after the VSM install, in /usr/local/bin.
- First we need to load some re-req’s that vsm needs.
yum -y install wget
wget -O aac-base.install https://raw.githubusercontent.com/Texiwill/aac-lib/master/base/aac-base.install
chmod +x aac-base.install
./aac-base.install vsm – make sure on this one to select VSM when you have the chance (choice 8).
You should now have everything ready to proceed.
Now we make stuff happen!
The first run of the vsm.sh script will ask us some questions and record things to make it a little easier next time. It also assumes a default path so we need to deal with that. Help is available via vsm.sh -h.
- vsm.sh –repo /mnt/win –save . My path – or share – is /mnt/win and you can use what you want.
- It should show in the small menu that you are using your new path.
- As part of this first connection you will be prompted for your My VMware credentials and you will have the opportunity to download stuff.
- The second time you run you would just use vsm.sh and not need to do any of the other stuff.
This will show you the new path, and a bunch of XML type stuff will be downloaded and then you can choose what files to download and they will be stored on the share. I chose Datacenter, Enterprise Plus, and 6.5 and then all. And a lot is coming down, even some partner stuff. You can easily tweak what you download and you can always use the excellent help – vsm -h – to see what options are available.
- You can mark a release as a favorite, and then use the following command to keep everything up to date:
vsm.sh -y -r -l –favorite
- You can find the option to mark when you are inside of a product area. See below where the option is when I am in the vRA area.
- So doing updates is easy.
./aac-base.install -i vsm
- You will need to do the chmod +x vsm.sh since it is downloaded again.
- Want a cron job line to keep the installers, scripts and repo favorites current? So if aac-base is in /home/mwhite:
/home/mwhite/aac-base.install -u; /home/mwhite/aac-base.install -i vsm; /usr/local/bin/vsm.sh -r -l -y –favorite
- Want to check the version?
- Tips and Tricks for Windows Shares – https://wiki.centos.org/TipsAndTricks/WindowsShares
- Replacement for vMA – https://www.astroarch.com/2017/10/vsphere-upgrade-saga-vsphere-management-assistant-replacement/
- vsm – https://github.com/Texiwill/aac-lib/tree/master/vsm
- 11/12/17 – updated for 2.0.1 and make it a littler easier to read.
- This was done with 1.6.9 and I will keep it updated as the versions change.
By the time we reach here, you should have a Linux VM with the VMware Software download capability running and maybe even it is writing out to a SMB / CIFS share. And things should work good! I have tested this article quite carefully and it works. But, I don’t like the CIFS share – it seems to work fine with mount -a but it takes longer to work after a reboot. I will try and improve that connection and update this article as I learn more.
Questions and comments welcomed and encouraged!
=== END ===