Exadata Patching - Cell Server

Cell storage patching can be done by patchmgr utility which is used to do a patching in rolling as well in non-rolling fashion.

Syntax: ./patchmgr -cells cell_group -patch [-rolling] [-ignore_alerts] [- smtp_from "addr" -smtp_to "addr1 addr2 addr3 ..."]

Here addr is the sending mail id which is used to send status of patching and addr1,addr2,addr3 are receiving mail id to receive the status of patching.

Step-1  First note down the current image version of cell by executing 


Step-2  Go to cell patch directory where patch has been copied


Step-3  Reset the server to a known state using the following command

./patchmgr -cells cell_group -reset_force

Step-4  Clean up any previous patchmgr utility runs using the following command

./patchmgr -cells cell_group -cleanup

Step-5 Verify that the cells meet prerequisite checks using the following command


./patchmgr -cells ~/cellgroup -patch_check_prereq -rolling 



./patchmgr -cells ~/cellgroup -patch_check_prereq 

Here cellgroup file contains IPs of all cell server.

Step-6  Output should not have any error, If any error than resolve it first than re-execute above command

Step-7 Patch cell server


./patchmgr -cells ~/cellgroup -patch -rolling



./patchmgr -cells ~/cellgroup -patch

Step-8  Check logs if any error in patchmgr.stdout file.

How it works?

Entire patching activity done by patchmgr utility automatically.

  • To ensure good backup exists, USB recovery media is recreated 
  • Check cells have ssh equivalence for root user
  • Initialize files, check space and state of cell services
  • Copy, extract prerequisite check archive to cells 
  • Check prerequisites on cell
  • Copy the patch to cell
  • Execute plug-in check for Patch Check Prereq
  • Initiate patch on cell
  • Reboot the cell
  • Execute plug-in check for Patching
  • Finalize patch
  • Reboot the cell
  • Check the state of patch
  • Execute plug-in check for Post Patch
  • Done
After completion of patching you can check the image version, it should be changed to new version



Step-1  Disable writeback flash cache (You can refer Oracle DOC ID - 1500257.1)

Step-2  Check rollback pre-requisites


./patchmgr -cells ~/cellgroup -rollback_check_prereq -rolling -ignore_alerts



./patchmgr -cells ~/cellgroup -rollback_check_prereq -ignore_alerts  

Step-3  Perform the rollback


./patchmgr -cells ~/cellgroup -rollback -rolling -ignore_alerts  



./patchmgr -cells ~/cellgroup -rollback -ignore_alerts 

Step-4  Clean up the cells using the -cleanup option to clean up all the temporary patch or rollback files on the cells

./patchmgr -cells ~/cellgroup -cleanup

You would also like 


  1. good one! Thanks

    Now waiting for articles on db server via dbnodeupdate.sh

  2. Hi all,
    when you start patching the storage server what about the existing configuration like:
    - ssh keys to compute nodes
    - mailing configuration (smtp)
    may be there are other configuration files
    How is this backuped and afterwards restored?
    What do we have to keep in mind?

    kind regards