Install / Upgrade vbscripts for windows 32 & 64 bit

April 28th, 2009

A few of the software packages I use have a good enough silent installer to allow me to build a vbscript to install them. I’ve also tried to include an “upgrade” function which uninstalls the previous version of the software at the same time, using the win32_product class to find and uninstall it. The problem that occurs with this system is that 64 bit systems do not use the win32_Product class, and I haven’t found an equivalent wmi object to do this. Instead, I’ve resorted to including the uninstall command string the registry uses.  There are some problems with this, notably that the uninstall may not have a silent installer string available for it.

Apr 27 to May 1st

April 28th, 2009

The windows domain rename has been completed and we’re preparing the network to move from one I.P. range to a new one, which will give us more bandwidth, flexibility to deal with network monitoring requests and more room add laptops and other computing devices.

  • Monitoring deployment of ghostscript update
  • checking dhcp and dns scripts for black network switchover
  • installation of new hard drive for vmware server

April 20 to 24th

April 22nd, 2009

It appears our data migration was successful. I’ll be working on a lot of admin activities, and trying to sort out some problems with uninstall commands in my upgrade scripts for windows software.

  • yum update monitoring
  • making windows script work in 64 bit OS
  • windows ssl certificate checks

Dell Service Tag from Bios

April 22nd, 2009

I found a neat way to get bios/service tag info about a computer without using a dell utility.

Linux

dmidecode -q | grep -E ‘System Info|Serial’ | grep -n1 System | tail -n1 | awk ‘{print $4;}’

(mileage may vary depending on BIOS – better to try dmidecode -q | less to see the whole output if the above doesn’t work)

Windows XP:

wmic bios get serialnumber

UPDATE (Feb 4 2011): Alan (our linux sysadmin) found another tool which will give you hardware info on linux servers, including the serial number.  It is called lshw (you can use lshw -html or -xml to output into either format).  It is available for installation on ubuntu and debian.

April 13th to 17th

April 15th, 2009

I’m still working out some of the issues with the automated yum scripts – all the machines have now updated from centos 5.2 to 5.3 (Rocks Cluster software is based around centos).  Apparently not all the mirrors have synchronized the repositories they carry, so it’s taken a few days to get all the nodes to update.

  • Ghostscript and Gsview update and new install scripts
  • Windows Security Patches
  • Data migration on linux file server

yum-fastestmirror – excluding mirrors in 1.1.16

April 8th, 2009

In yum-fastestmirror-1.1.16-13.el5.centos, I discovered a bug involving the exclude option in fastestmirror.conf . If you exclude two mirrors that are adjacent in the mirror repository array used by fastestmirror.py to search for excluded mirrors, the second one will not be removed from the list of possible mirrors.

The reason this occurs is because the for loop which iterates through the array skips the next value after an entry is removed from the array. I was able to fix it by changing line 195 from:

for mirror in repomirrors[str(repo)]:

to

for mirror in repomirrors[str(repo)][:]:

Now it uses a copy of the array to search, and can delete the entry from the original array without effecting the next value in the for loop.

It appears that this bug has been resolved in yum-utils-1.1.18 and higher, by using the filter command to go through each mirror and test it against the exclude list. I’m learning all sorts of neat python tricks today!

April 6 to the 10th

April 7th, 2009

I’m going to be concentrating on the cluster update tests this week – testing out the package list I’d like when we next decide to upgrade the cluster OS. We’ve also added a new backup routine for some of the home directories on our linux file server, so I’ll be continuing to monitor that, as well as the security updates for the windows machines running adobe products.

  • New version of Maya
  • Cluster automatic update script testing
  • Active Directory ssl certificate research

Updating Acrobat using msiexec and psexec

March 31st, 2009

Most of the software in our lab is managed via group policy through our active directory server, which means I can patch software by applying the .msp file (if it exists) to the network installation or by simplying adding a new network install point and having it upgrade the previous version of the software.

However, some software pacakges, for licensing or performance reasons, have to be installed on individual machines.  Our licenses for Adobe Acrobat mean that we have different versions installed on different machines throughout the lab.  Every computer has reader, but some also have Acrobat 7 or 8.  To patch these machines, I did the following:

Downloaded the updates from the adobe site:

http://www.adobe.com/support/downloads/product.jsp?product=1&platform=Windows

Use the ADMIN$ share on machines with Acrobat installed to store the patches, and run psexec from a control machine to install them.

For Acrobat 7, I only to install 2 updates on a couple of machines and I used the command line options I found on AppDeploy to run them.

msiexec /p c:\windows\temp\AcPr710.msp;c:\windows\temp\ AcroUpd711_all_incr.msp REINSTALLMODE=OMUS RINSTALL=All REBOOT=ReallySuppress /qn

For 8, I wrote a batch file to apply several updates in order, with the following format:

msiexec /p c:\windows\temp\AcrobatUpd814_all_incr.msp /q

AppDeploy Acrobat Pages:

http://www.appdeploy.com/packages/detail.asp?id=545

http://www.appdeploy.com/packages/detail.asp?id=431

http://www.appdeploy.com/packages/detail.asp?id=937

March 30th to April 3rd

March 31st, 2009

There is an update to an acrobat pdf problem that has been out in the wild for some time, and so we’re patching the individual installations of Acrobat Pro this week.  Still haven’t had an opportunity to work on hydra’s new configuration, and still testing our new backup drive array.

  • Adobe  Acrobat Update
  • Hydra update and config changes
  • Researching laptop backup and synchronization system

File locking and IMAP writes

March 25th, 2009

Occasionally in the lab, users have had problems accessing or copying email from their inbox.  The cause is often kernel file locking.  Here are the two situations I’ve seen the problem occur in:

  1. User has a problem with Pine, and it crashes or is killed in a way that doesn’t release the kernel lock on the file (kill -9).
  2. An offline operation to move a message (“UID COPY”) from one IMAP folder to another fails in some way, saying “Timeout while waiting for lock”.

For us, the first case is much more common.  Yesterday was the first time I’ve seen something like #2.  A user was unable to copy a message from his inbox to another imap folder in Apple Mail.  Our server is running dovecot, so I checked and saw that there was a .lock file being created and that the imap process moving the email was frozen.

I did the following:

  • stopped the imap process and closed the client mail app
  • ls -li imapfolder to get the inode number of the file (we use mbox format so all imap folders are files)
  • cat /proc/locks to check and see if there was a kernel lock on the file
  • mv imapfolder imapfolder_tmp; cp imapfolder_tmp imapfolder This creates a new file with a new inode number that can be written.