ProLiant Servers (ML,DL,SL)
Showing results for 
Search instead for 
Did you mean: 

Failed to update HP SMH on ProLiant DL360 G7 running Citrix XenServer

Occasional Advisor

Failed to update HP SMH on ProLiant DL360 G7 running Citrix XenServer

I am trying to get a Citrix XenServer that is running HP SMH 6.2.X upgraded to 6.3.X.  I downloaded it from this link:


When I try to run the installer using this syntax:


rpm -ivh hpsmh-6.3.1-23.x86_64.rpm


I receive these errors:


file /oprt/hp/hpsmh/sbin/smhrun from install of hpsmh-6.3.1-23.x86_64 conflicts with file from package hpsmh-6.2.1-14.i386


There are a bunch of them for each file.


If I try this syntax:


rpm -ivh --force hpsmh-6.3.1-23.x86_64.rpm


I receive this:


Preparing... but nothing ever happens.


I've attached screenshots of the results of both commands.  I'd really appreciate any help you can provide.  Thanks.

Honored Contributor

Re: Failed to update HP SMH on ProLiant DL360 G7 running Citrix XenServer

When you try to install something with "rpm -i" and a package with the same name is already installed, you would normally get a "package is already installed" error: the normal procedure in that case would be to use "rpm -Uvh" to upgrade the existing hpsmh package. But your situation is more complicated, because the old version is 32-bit (...i386) and the new is 64-bit (...x86_64).


When you tried to force the installation, your second screenshot indicates you got a message: "package hpsmh-6.3.1-23.x86_64 is intended for a x86_64 architecture". And you call this "nothing"?


Normally the rpm tool knows the system's native architecture, and has special handling to allow the installation of 32-bit software to 64-bit systems. Trying to install 64-bit software to a 32-bit system won't work. The fact that it rejects your installation with a message about system architecture tells me you probably are running a 32-bit version of Citrix XenServer.


Please run "uname -m" and see what is the response.


If it responds "x86_64", you have a 64-bit system and the rpm tool is just having trouble with the situation of upgrading a 32-bit software package to 64-bit version, because technically it handles the 32- and 64-bit versions of hpsmh as two separate packages, not as two versions of the same package. The easiest fix would be to remove the old version before installing the new one:

rpm -e hpsmh
rpm -ivh hpsmh-6.3.1-23.x86_64.rpm


On the other hand, if "uname -m" responds with something like "ix86" (where x might be 5 or 6, I forget which), you have a 32-bit system and the ...x86_64.rpm is not appropriate for it.  You would have to find a "hpsmh-6.3.1-23.i386.rpm" and install it instead.