IBM P5 Series Server: Recovery boot from serial console


We have some old IBM P5 series servers that run AIX 5.3 which we use for testing. They get powered down rarely, so we don't often have to go through a cold boot cycle. Last week one of the machines was power cycled and would not respond to pings. The guy who normally handles this type of thing was unavailable, so I got to try my hand at restoring the old server to an operational state.

Fortunately for me I was able to succeed. :)

References

Cut to the Chase

While it was an adventure learning more about IBM servers and corresponding HMCs, I won't make you read the whole narrative to extract the pertinent technical information about P5 servers. Here are the details:

P5 HMC Default Credentials:

  • Username: admin
    • Password: admin
  • Username: general
    • Password: general


P5 HMC Default APIP Addresses & Serial Console Settings:

  • HMC Port 1: 169.254.2.147 with a subnet mask of 255.255.255.0
  • HMC Port 2: 169.254.3.147 with a subnet mask of 255.255.255.0
  • Serial Port: 19200 8N1

 

Steps to Boot or Reboot an IBM P5 into AIX:

  1. Login to the HMC using serial connection (serial can be enabled via web UI, see instructions above). You may need to press a few keys (like Return) to start seeing anything
  2. Enter the Power/Restart Control menu
  3. Select Option 1 for'Power On/off System
  4. Select Option 8 to start the boot process
  5. Watch the text scroll across the serial connection. That's how you'll know if actions are proceeding
  6. Press Enter when prompted
  7. When given the option to boot into single user mode, take it
  8. When asked about leave single user mode, hit enter to go to the default run level (I think it goes to run level 2)
  9. Try to ping your host once it has booted
  10. Try to SSH into the host, should be successful

This may take around 10 to 15 minutes depending on how slow the box is feeling

Exploration (Long Story)

Coming from a strong background in Linux on generic x86 hardware, it took me a fair amount of time to become familiarized with old IBM hardware. My initial google queries did not return much useful information, just that there is a serial console port which can be used to potentially get into single user mode.

After connecting a USB -> Serial adapter hooked up so I could plug in the 9-pin cable to the P5 I tried using a serial console emulator to connect. Unfortunately, this was not successful. I did not see any text roll across the screen as I had expected.

After running into a wall using the serial port, I performed a few more optimized google queries and came up with some information about the Hardware Management Controller (HMC) that is installed on these servers.Apparently there is a web console which can be accessed once an ethernet cable is plugged into one of the HMC ethernet ports.

I plugged in an ethernet cable between my laptop and the server and tried to use NMAP to scan the whole 169.254.x.x range to find out what APIP address the server had assigned to itself. After waiting a few minutes I realized just how long that would take and aborted the open ended scan. I enabled WIndows Internet Connection Sharing (ICS), rebooted the server and monitored the DHCP requests using WireShark.

Once I had identified the P5's IP address (assigned via ICS DHCP server) I fired up nmap to do a port scan against the host. There were 2 open ports: 30000 and 443. The documentation I had found suggested that all I had to do was enter the IP addres of the mahine in the web browser and the web console would load. I tried that and received the following error when using Firefox: ssl_error_no_cypher_overlap

Apparently the versions of Chrome, IE and FireFox that I tried were all too new to communicate with this old server's SSL stack. I had to download a copy of FireFox 1.5 which could speak the same language as the P5 in order to access the web console.

Once the web console loaded I ran into another problem: the dreaded username and password prompt. Fortunately for me we have this information documented. In case anyone who reads this does not know their username or password to access the HMC, here are the defaults:

  • Username: admin
    • Password: admin
       
  • Username: general
    • Password: general

After gaining access to the web UI I messed around with a few options and read the serial port configuration. Apparently my serial console was using the wrong settings. I needed to set the serial connection to 19200 8N1 instead of the 9600 that I had been trying.

Now that I had gained access to the serial console, I was able to boot the box. Apparently booting the HMC is different than booting the box itself.