How do I tell which AIX version am I running?

Solution 1:

You are correct in the fact that oslevel will give you the current installed version, but that is not always enough information particularily if you are asked the question by support personnel.

# oslevel <--- this will only give you the Base Level

To be more precise you should use the following command which will give you additional Technology Level, Maintenance Level and Service Pack level information.

    # oslevel -s
5300-09-02-0849

This will give you

  • "5300" - Base Level
  • "09" - Technology Level
  • "02" - Maintenance Level
  • "0849" - Service Pack

On some older versions of AIX the -s option is not available in whichh cas you should use the -r option which will report as far as the Technology level

I hope this helps

Mike Scheerer

Solution 2:

I just added this to my ~/.profile, so I immediately see the AIX version on login:

function aixversion {
  OSLEVEL=$(oslevel -s)
  AIXVERSION=$(echo "scale=1; $(echo $OSLEVEL | cut -d'-' -f1)/1000" | bc)
  AIXTL=$(echo $OSLEVEL | cut -d'-' -f2 | bc)
  AIXSP=$(echo $OSLEVEL | cut -d'-' -f3 | bc)
  echo "AIX ${AIXVERSION} - Technology Level ${AIXTL} - Service Pack ${AIXSP}"
}
aixversion

Example output:

AIX 7.1 - Technology Level 3 - Service Pack 1

nb: This function is compatible with both KSH and BASH, so you can put in ~/.bashrc instead if you are a BASH fan.

nb2: The last 4 digits from oslevel are the year and week the SP was released. I don't particularly care to see that, so I left it out. I was happy enough with Version/TL/SP.

EDIT 2018-02-22: I just came up with an equivalent but shorter implementation, and no longer depends on bc and uses awk instead of cut & bc.

As a one-liner:

oslevel -s | awk -F- '{printf "AIX %.1f - Technology Level %d - Service Pack %d\n",$1/1000,$2,$3}'

Output:

AIX 5.3 - Technology Level 9 - Service Pack 2

As a shell function:

aixversion() {
  oslevel -s | awk -F- '{printf "AIX %.1f - Technology Level %d - Service Pack %d\n",$1/1000,$2,$3}'
}

aixversion

Output:

AIX 5.3 - Technology Level 9 - Service Pack 2

Solution 3:

$ man oslevel
$ oslevel
6.1.0.0    <- what I was looking for

Solution 4:

You can use "uname" with various options:

$ uname -v
5
$ uname -r
3

Tags:

Aix