Dell System Update

Installing Dell System Update CentOS for Firmware Updates.

# Get the Dell Repo.
$ wget -q -O - http://linux.dell.com/repo/hardware/dsu/bootstrap.cgi | bash

# Install Dell System Update
$ yum install dell-system-update

# Apply Firmware updates.
$ dsu --apply-upgrades

I first had to install the Lifecycle controller update, reboot, then rerun to install any other updates, i.e. BIOS, Disk. Unsure if that is a requirement of a quirk on my systems.

Dell OMSA

To install Dell OMSA on CentOS for system management.

# If not done already, as above add the Dell Repo
$ wget -q -O - http://linux.dell.com/repo/hardware/dsu/bootstrap.cgi | bash

# Exlude shim and mokutil updates due to bug causing boot failure 
# after update on my hardware (Dell PowerEdge 710)
$ echo 'exclude=shim*,mokutil*' >> /etc/yum.conf 

# Use `--skip-broken` as excluding shim, and mokutil breaks some dependencies.
$ yum update --skip-broken

# Install OMSA
$ sudo yum install srvadmin-all
$ /etc/init.d/dataeng start
$ /etc/init.d/dsm_om_connsvc start

You should now be able to browse to OMSA on https://x.x.x.x:1311 where x.x.x.x is the IP address of your server.

Official Doco

Dell iDrac6 Console Work Around

Getting the iDrac 6 console running on modern Java versions is a nightmare. Fortunately, there is a workaround. I didn't develop it, credit for that belongs to the person behind the GitHub page listed below. Putting it here for my reference. Big thanks for those that contributed to that page.

  • Download JRE1.7 from Oracle (requires login to access archive)
  • Create a folder structure as follows:
    • ~/idrac/lib - Used for library files downloaded in the following steps.
    • ~/idrac/jre - Extracted JRE1.7 here.
  • Download .jnlp file from iDrac (The Launch Virtual Console button should do this).
  • Open the file in text editor.
  • Find the url to the main jar file avctKVM.jar and download to ~/idrac
  • Find the libraries for your OS and download to ~/idrac/lib
  • Create script ~/idrac/idrac6-console.sh containing:
#!/bin/bash

echo -n 'Host: '
read drachost

echo -n 'Username: '
read dracuser

echo -n 'Password: '
read -s dracpwd
echo

./jre/bin/java -cp avctKVM.jar -Djava.library.path=./lib com.avocent.idrac.kvm.Main ip=$drachost kmport=5900 vport=5900 user=$dracuser passwd=$dracpwd apcp=1 version=2 vmprivilege=true "helpurl=https://$drachost:443/help/contents.html"

or for Windows users, the PowerShell script

@echo off

set /P drachost="Host: "
set /p dracuser="Username: "
set "psCommand=powershell -Command "$pword = read-host 'Enter Password' -AsSecureString ; ^
    $BSTR=[System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($pword); ^
        [System.Runtime.InteropServices.Marshal]::PtrToStringAuto($BSTR)""
for /f "usebackq delims=" %%p in (`%psCommand%`) do set dracpwd=%%p

.\jre\bin\java -cp avctKVM.jar -Djava.library.path=.\lib com.avocent.idrac.kvm.Main ip=%drachost% kmport=5900 vport=5900 user=%dracuser% passwd=%dracpwd% apcp=1 version=2 vmprivilege=true "helpurl=https://%drachost%:443/help/contents.html"
  • Run the script and provide host and credentials as required.

Note: Virtual media does not appear to work using this. Possibly require the relevant libraries to be downloaded, but I haven't investigated as using a local USB drive.

Process expanded from procedure found here