How to Check for Missing Filesets in a Maintenenance Level

instfix -i | grep AIX_ML

instfix -ciqk 61-06-051115_SP| grep :-:

To list which software is below AIX(R) Version 6.1 technology
level 0, service pack 1, type:

oslevel -s -l 6100-00-01-0748



usage of the instfix command


Hints, Tips and usage of the ‘instfix’ command

This document will describe many of the various and most common uses of the ‘instfix’ command.

The main topics covered will include:

– TL verses ML – Which is correct?
– Usage of the ‘instfix’ command to check for APARs
– Usage of the ‘instfix’ command to install APARs
– Adding missing APAR information to the ‘fix’ object class of the ODM

TL verses ML – Which is correct?

Starting in 5.3 TL7 the terminology changed. What use to be called ML or Maintenance Level is now called TL or Technology Level. The format for the numbering of the filesets also changed at that time. A base level fileset for 5.3 ML6 would have been but starting in 5.3 TL7 the third number indicated the TL level. So a base level fileset for 5.3 TL7 would be “TL” and “ML” are technically the same thing and interchangeable but “TL” is generally what is used now, however the ‘instfix’ command wasn’t changed and still uses ML.

Usage of the ‘instfix’ command to check for APARs

To use the ‘instfix’ command to determine what TLs are currently installed on the system as well as the status of the install (i.e. whether they are completely installed or not) you can use the following command:

# instfix -i | grep ML

All filesets for 6100-00_AIX_ML were found.

All filesets for were found.

Not all filesets for 6100-01_AIX_ML were found.


If something is missing from a TL you can use ‘instfix’ to determine what is missing using the following command:
# instfix -icqk <ML LEVEL> | grep :-:

# instfix -icqk 6100-01_AIX_ML | grep :-:
6100-01_AIX_ML:X11.adt.imake: 6100-01 Update
6100-01_AIX_ML:X11.samples.apps.clients: 6100-01 Update
6100-01_AIX_ML:X11.samples.lib.Core: 6100-01 Update

You can also use the ‘instfix’ command to check what Service Packs are installed on a system and check their status. For that you would use the following command:

# instfix -i | grep _SP
All filesets for 61-00-010748_SP were found.
All filesets for 61-00-020750_SP were found.
All filesets for 61-00-030808_SP were found.
All filesets for 61-00-040815_SP were found.
All filesets for 61-01-010823_SP were found.

If you just want to check to see if a particular APAR is installed you can use the following:

# instfix -ik <fix>
# instfix -ik IZ04606
All filesets for IZ04606 were found.

If you want to find out more information about a particular APAR you can use the following:
# instfix -aik <fix>
# instfix -aik IZ04606
IZ04606 Abstract: pwdadm not working as intended for authuser

IZ04606 Symptom Text:
A user with a role with
authorization is unable to use the pwdadm command to set the
ADMIN flag for a user:
$ rolelist -ea
$ pwdadm -f ADMIN abc
3004-692 Error changing “flags” to “ADMIN” : You do not have
All filesets for IZ04606 were found.

If you want to see a list of fixes that are on a CD or in a directory you can use the following:
# instfix –Td /dev/cd0
# instfix -Td <directory path>
Here’s a sample of what the output will look like:
IZ50383 Hang in mkuser command
IZ50386 System may crash in iodone+000044 after failed health check
IZ50388 Crash when unconfiguring path to open MPIO Disk.
IZ50482 DELAYED_INTS error log entry for 10-Gigabit Ethernet Adapter
IZ50483 DSI at kxent_ras_callback
IZ50591 Fixdata for new service pack

You may want to know if any of the APARs you have in a directory contain any fixes for say multibos. You can check that with the following:
# instfix -Td . | grep -i multibos
IY78256 multibos bootlist support in diag.

You may have a need to create a list of APARs that are included in a directory. That can easily be done with the following command:
# instfix -Td . | cut -f1 -d ” ” > /tmp/fix.list
# cat /tmp/fix.list | pg

If you want to see a list of what filesets are included with an APAR you can get that with the following command:
# instfix -ivk <fix>
# instfix –ivk IZ50591
IZ50591 Abstract: Fixdata for new service pack

Fileset bos.rte.install: is applied on the system.
All filesets for IZ50591 were found.

Then if you needed to know the date it was installed
# lslpp -h <one of the filesets from above>
# lslpp -h bos.rte.install
Fileset Level Action Status Date Time
Path: /usr/lib/objrepos
bos.rte.install COMMIT COMPLETE 07/12/07 14:55:01 COMMIT COMPLETE 07/12/07 14:55:29 COMMIT COMPLETE 01/05/08 21:12:55 COMMIT COMPLETE 07/02/08 15:05:54 COMMIT COMPLETE 12/07/08 19:45:09 COMMIT COMPLETE 05/16/09 16:59:59

If you have a particular fileset level installed on your system and you want to determine what APAR’s are associated with it:
instfix –aiv | grep –p <fileset>:<level>
For example:
# instfix -aiv | grep -p devices.pciex.b3154a63.rte:
Fileset devices.pciex.b3154a63.rte: is applied on the system.
All filesets for IZ48863 were found.
IZ50114 Abstract: IB Applications using IbBaseLib may hang on close

Fileset devices.chrp.IBM.lhca.rte: is not applied on the system.
Fileset devices.common.IBM.ib.rte: is not applied on the system.
Fileset devices.pci.b315445a.rte: is not applied on the system.
Fileset devices.pciex.b3154a63.rte: is applied on the system.
Not all filesets for IZ50114 were found.

So devices.pciex.b3154a63.rte: is the only fileset for IZ48863 and one of four filesets for IZ50114

If you prefer to use smitty to check for fixes the fastpath is
# smitty show_apar_stat

Usage of the ‘instfix’ command to install APARs

Installing an APAR using the ‘instfix’ command is fairly straight forward
To install a fix from cd0
# instfix -k <fix> -d /dev/cd0

To install a fix from a directory
# instfix -k <fix> -d <directory>
# instfix -k IZ36737 -d .
Pre-installation Verification…
Verifying selections…done
Verifying requisites…done

From there the installation will continue.

If you prefer to use smitty to install a fix the fastpath is:
# smitty update_by_fix

Adding missing APAR information to the ‘fix’ object class of the ODM

If an APAR doesn’t show up with instfix –ik <APAR number> but it is installed you can check to see if it’s in the ODM
# ODMDIR=/usr/lib/objrepos odmget fix | grep -p <APAR number>

If an APAR doesn’t show up with the instfix -ik command it may be an efix.
Check for ifixes / efixes with the emgr command
# emgr -l
or to get more info
# emgr -lv3

If a TL and/or SP doesn’t show up with oslevel –rq or –sq but you know the level is on the system the ODM is missing the fix data.

Note: You will be modifying the ODM on the system that is missing the fix data. If you are unfamiliar with that you may want to call the support center for assistance.

To get it in the ODM you can copy it from another system using the following procedure:

On a good system at the same level

# ODMDIR=/usr/lib/objrepos odmget -q name=<ML, SP or APAR > fix > /tmp/fix.backup

Here’s an APAR example
# ODMDIR=/usr/lib/objrepos odmget -q name=IZ11011 fix > /tmp/fix.backup
# cat /tmp/fix.backup

name = “IZ11011”
abstract = “Install commit only operation fails”
type = “f”
filesets = “bos.rte.install:\n\

symptom = ” Not able to do a commit only operation on a fileset.\n\
Fileset is left in the apply state.\n\

And here’s an example of a Technology Level
# ODMDIR=/usr/lib/objrepos odmget -q name=5300-10_AIX_ML fix > /tmp/fix.backup

And this is an example of a Service Pack
# ODMDIR=/usr/lib/objrepos odmget -q name=53-10-010921_SP fix > /tmp/fix.backup

Note: if you aren’t sure of the format to use above for the ML or SP level you can run the following command to get a list of ML’s
# ODMDIR=/usr/lib/objrepos odmget fix | grep _ML | pg

or the following to get a list of SP’s
# ODMDIR=/usr/lib/objrepos odmget fix | grep _SP | pg

ftp /tmp/fix.backup to the system not seeing the fix level or APAR

Then on the system you ftp’d it to: backup the ODM
Do this from the / (root) directory
# tar -cvf /tmp/odm.tar ./etc/objrepos ./usr/lib/objrepos
Note: Check the space in /tmp first and increase if necessary

Follow these steps to add the fix data to the ODM:

# ODMDIR=/usr/lib/objrepos odmadd /tmp/fix.backup

# oslevel -rf
# oslevel -r

# oslevel -sf
# oslevel -s

>> The levels should now be correct or if you just added an APAR it should show up now with
# instfix –ik <APAR #>
# instfix -ik IZ11011
All filesets for IZ11011 were found.

Note: If after doing an odmadd with the fix data from another system the fix data still isn’t showing up and rootvg is mirrored you may need to do the following steps:
# synclvodm -Pv rootvg
# savebase
# bosboot -ad /dev/ipldevice

How to post an delayed email in Outlook

Just found this one the other day. Quality if you come in from the pub and want to email in sick at 3am, but need to make it look it you sent it in the morning!

Nice one to have up your sleeve!

How to gunzip and untar all at once!

This tip is a rather simple but useful one. It’s not a trick or anything fancy, but just something that I somehow didn’t know for a long time that I wish I would have. A common thing to do in Linux/Unix/Whateverix is to download a tarball archive that has been gzipped and then extract and untar it. So you might do somethig like this:

gunzip myfile.tar.gz
tar -xvf myfile.tar

The first command unzips it. The second command extracts the tar archive. What I didn’t know is that you can combine all of this into one simple command! Just do the following:

Most linux version support the following command:
tar -zxvf myfile.tar.gz

However on AIX you need to pipe the commands like this:
gunzip myfile.tar.gz | tar xvf –

of try:

gunzip < abc.tar.gz | tar xvf -That's all there is to it!


search engines matured, they started identifying more metrics for
determining rankings. One that stood out among the rest was link
The difference between link relevancy and link popularity (discussed in
the previous section) is that link relevancy does not take into account the
power of the link. Instead, it is a natural phenomenon that works when
people link out to other content.
Let me give you an example of how it works. Say I own a blog where I
write about whiteboard markers. (Yes, I did just look around my office for
an example to use, and yes, there are actually people who blog about
whiteboard markers. I checked.) Ever inclined to learn more about my
passion for these magical writing utensils, I spend part of my day reading
online what other people have to say about whiteboard markers.
On my hypothetical online reading journey, I find an article about the
psychological effects of marker color choice. Excited, I go back to my
website to blog about the article so (both of) my friends can read about it.
Now here is the critical takeaway. When I write the blog post and link to the
article, I get to choose the anchor text. I could choose something like “click
here,” but more likely I choose something that it is relevant to the article. In
this case I choose “psychological effects of marker color choice.”
Someone else who links to the article might use the link anchor text
“marker color choice and the effect on the brain.”
People have a tendency to link to content using the anchor text of either
the domain name or the title of the page. Use this to your advantage by
including keywords you want to rank for in these two elements.
This human-powered information is essential to modern-day search
engines. These descriptions are relatively unbiased and produced by real
people. This metric, in combination with complicated natural language
processing, makes up the lion’s share of relevancy indicators online.
Other important relevancy indicators are link sources and information
hierarchy. For example, the search engines can also use the fact that I
linked to the color choice article from a blog about whiteboard markers to
supplement their understanding of relevancy. Similarly, they can use the
fact that the original article was located at the URL to determine the high-level positioning and
relevancy of the content. As you read later in this book (Chapter 2
specifically), these secrets are essential for SEOs to do their job.
Beyond specific anchor text, proximal text—the certain number of
characters preceding and following the link itself—have some value.
Something that’s logical, but annoying is when people use a verb as
anchor text, such as “Frank said . . . “ or “Jennifer wrote . . .“, using “said” or
“wrote” as the anchor text pointing back to the post. In a situation like that,
engines have figured out how to apply the context of the surrounding copy
to the link.
Tying Together Popularity and Relevancy
So far in this chapter I have discussed both popularity and relevancy.
These two concepts make up the bulk of Search Engine Optimization
theory. They have been present since the beginning of search engines and
undoubtedly will be important in the future. The way they are determined
and the relationship between them changes, but they are both fundamental
to determining search results.
Popularity and relevancy are the two concepts that make up the bulk of
Search Engine Optimization theory.
This fact is critical to SEOs. We have very little control over how the
major search engines operate, yet somehow we are supposed to keep our
jobs. Luckily, these immutable laws of popularity and relevance govern
search engines and provide us with some job security.
In this chapter, I explained the concepts of popularity and relevancy in
relation to modern search engines. This information, along with your prior
SEO experience, will make up the foundation for all of the SEO secrets
and knowledge that you learn throughout the rest of the book. You no doubt
have some questions. I’ll start answering many of your questions in the next
chapter, but you will likely form many more. Welcome to the mindset of a
Professional SEO. Prepare to be questioning and Googling things for the
rest of your life.
Chapter 2
Relearning How You See the Web
In This Chapter
Analyzing how a website fits in its “web neighborhood”
Viewing websites like an SEO
Assessing good site architecture and webpages from an SEO
Assessing website content like an SEO
When people surf the Internet, they generally view each domain as its own
island of information. This works perfectly well for the average surfer but is
a big mistake for beginner SEOs. Websites, whether they like it or not, are
interconnected. This is a key perspective shift that is essential for
understanding SEO.
Take Facebook, for example. It started out as a “walled garden” with all
of its content hidden behind a login. It thought it could be different and
remain completely independent. This worked for a while, and Facebook
gained a lot of popularity. Eventually, an ex-Googler and his friend became
fed up with the locked-down communication silo of Facebook and started
a wide open website called Twitter. Twitter grew even faster than
Facebook and challenged it as the media darling. Twitter was smart and
made its content readily available to both developers (through APIs) and
search engines (through indexable content).
Facebook responded with Facebook Connect (which enables people to
log in to Facebook through other websites) and opened its chat protocol
so its users could communicate outside of the Facebook domain. It also
made a limited amount of information about users visible to search
engines. Facebook is now accepting its place in the Internet community
and is benefiting from its decision to embrace other websites. The fact that
it misjudged early on was that websites are best when they are
interconnected. Being able to see this connection is one of the skills that
separates SEO professionals from SEO fakes.
I highly recommend writing down everything you notice in a section of a
notebook identified with the domain name and date of viewing.
In this chapter you learn the steps that the SEO professionals at
SEOmoz go through either before meeting with a client or at the first
meeting (depending on the contract). When you view a given site in the
way you are about to learn in this chapter, you need to take detailed notes.
You are likely going to notice a lot about the website that can use
improvement, and you need to capture this information before details
distract you.
Keep Your Notes Simple
The purpose of the notebook is simplicity and the ability to go back frequently
and review your notes. If actual physical writing isn’t your thing, consider a lowtech
text editor on your computer, such as Windows Notepad or the Mac’s
Bare-bones solutions like a notebook or text editor help you avoid the distraction
of the presentation itself and focus on the important issues—the characteristics
of the web site that you’re evaluating.
If you think it will be helpful and you have Internet access readily
available, I recommend bringing up a website you are familiar with while
reading through this chapter. If you choose to do this, be sure to take a lot
of notes in your notebook so you can review them later.
The 1,000-Foot View—Understanding
the Neighborhood
Before I do any work on a website I try to get an idea of where it fits into the
grand scheme of things on the World Wide Web. The easiest way to do
this is to run searches for some of the competitive terms in the website’s
niche. If you imagine the Internet as one giant city, you can picture domains
as buildings. The first step I take before working on a client’s website is
figuring out in which neighborhood its building (domain) resides.
This search result page is similar to seeing a map of the given Internet
neighborhood. You usually can quickly identify the neighborhood anchors
(due to their link popularity) and specialists in the top 10 (due to their
relevancy). You can also start to get an idea of the maturity of the result
based on the presence of spam or low-quality websites. Take a look at
Figures 2-1 and 2-2.
Figure 2-1: Google search result for “advertising”
Notice the difference in the maturity (quality) of the search results. In the
second set of results (Figure 2-2), you see some of the same big names
again (Wikipedia, for example, appears in both searches) but this time
they are mixed with some sites that appear spammier (,
During client meetings, when I look at the search engine result page for
a competitive term like advertising, I am not looking for websites to visit but
rather trying to get a general idea of the maturity of the Internet
neighborhood. I am very vocal when I am doing this and have been known
to question out loud, “How did that website get there?” A couple times, the
client momentarily thought I was talking about his website and had a quick
moment of panic. In reality, I am commenting on a spam site I see rising up
the results.
To turn this off, append “&pws=0” to the end of the Google URL.
Also, take note that regardless of whether or not you are logged into a
Google account, the