This article descibes details about updating or patiching a Citrix Presentation Server. Do you know the difference between a general-, limited or private hotfix? What's a Rollup hotfix and how to install multiple hotifxes in one step?
Find the answers and much more in the following article.
Types of Presentation Server Hotfixes A hotfix is a piece of software updating a Citrix product and each hotfix is product- and language specific, delivered in a self-installing package (.EXE, .MSI, .MSP). With Citrix hotfixes there are four different types of fixes that will be explained next.
General Release hotfix These hotfixes are available from Citrix support web site http://support.citrix.com/product/ps/v4.0 or http://support.citrix.com/product/ps/v4.5 The issues they resolve are generic in nature and affect many customers. Some hotfixes introduce new registry values, enhancements or include other (previous) hotfixes.
Limited release hotfix Is a fix that is targeted at a specific end-user issue. This problem is specific to that customer's environment and may not affect other customers. These hotfixes can be supplied to customers by the Citrix Technical Support personal (open a call), since customers don't have access to them via the Citrix website (actually some partner etc. can review the article of the limited hotfix). When Citrix notice many requests for a specific limited hotfix, it will become a general release hotfix.
Private Fix A private fix is a preliminary code fix that is given to a customer when actively working on resolving a customer problem. It is not possible for a customer to directly get a copy of a private fix. A private fix can only be obtained via the Citrix Escalation team. Customers must contact Technical Support to open an incident.
Rollup hotfix "Hotfix Rollup Packs (HRPs) are distribution mechanisms that provide a simplified methodology for customers to update their servers quickly and easily by grouping all available problem fixes into a single package." That means a Rollup hotfix like R01 includes all previous released general- or some or all limited hotfixes to the day the Rollup was published (at least it should). General hotfixes releases after the Rollup get the suffix R01 (see naming convention). Rollup R02 will include all R01 general hotfixes and so on.
Hotfix Naming Convention Citrix hotfixes are language, product dependants and they all refer to a naming convention. The hotfix name gives all required information on the supported product, platform and language.
AAAB000C11DDDDDDD222 = PSE400R01W2K3X64001
First set of characters (AAA) Supported Product - Presentation Server (PS), XenApp (XA)
Second set of characters (B) Product Language - Englisch (E), German (G), French (F), Spanish (S), Japanese (J)
Third set of characters (000) Product Version - 400 (4.0), 450 (4.5)
Fourth set of characters (C) Product Rollup - R
Fifth set of characters (11) Product Rollup version - 01, 02, 03
Sixth set of characters (DDDDDDD) Operating System - Windows 2000 (W2K), Windows 2003 (W2K3), W2K3 64Bit (W2K3X64)
Seventh set of characters (222) Hotfix number - 001 up to 999
Hotfix Installation There are different ways to install a Citrix hotfix or Rollup. The following explains the most common methods to apply Citrix Presentation Server fixes.
Manuall installation process: (as recommended by Citrix)
Copy the hotfix to an empty folder on the Server
Close all applications and make sure no user is working on the Server
Go to Control Panel, click on Add/Remove software (or use the "change user" command)
Follow the wizard to install the hotfix from the folder created in point 1
Once done, restart the server.
Silent Installation process The silent Installation is simply a Windows Installer Command-Line option "/qn - no user interaction". Read the Microsoft article "Command-Line Switches for the Microsoft Windows Installer Tool" KB227091 for more details.
Example : Msiexec /p "hotfix.msp" /qn
Citrix Installation Manager (IM) The Installation Manager is the most secure way to install one or multiple hotfixes. Secure in the meaning of to be 100% sure the package will be installed (see Installation process for multiple hotfixes). This is due to the fact that IM runs a install procedure for each hotfix.
Create a package group in IM
Add any hotfix that you want to install to the package group
Set the install sequence to a numeric order
Apply/Schedule the package to a Server and set "Delay reboot until end of job"
Installation process for multiple Hotfixes The most complex method to install multiple hotfixes (not using IM, SMS etc.) is the usage of a script. Main problem with a script solution is the timing between hotfix installations. This is due to the fact that some hotfixes using the command line to run scripts or to set registry keys. In some cases process might still run whereas the main hotfix has finished and causes the next hotfix not to install itself! Actually the hotfix will be skipped without any notice.
In a first approach I advised Citrix to use the Windows "start" command to launch hotfixes. Citrix has documented this in the article CTX110104. Later on I noticed that it only worked for about 95% of the script installations. To make it 100% an additional timeout between hotfixes is needed.
Using a script When using a script to install multiple hotfixes, then make sure you have read the following advice
Use the Start /wait command with each hotfix
Use the Windows Installer options /qn /norestart
Add timeouts between hotfix installations (ping command or sleep utility)
Reboot the Server through the Windows shutdown command (shutdown, tsshutdn)
The hotfix installation script The hotfix installation script that I have published for quite some time in the Presentation section has been evolved over time. I made it quite flexible to install Citrix hotfixes and works as follows:
Copy all hoftixes and rollup (if any) in the folder along with the script
Set three options within the script SET CPSV=PSE400 | Presentation Server version SET RO=R03 | Rollup version you are installing SET IRO=No | Set if the Rollup itself should be installed as well
Q: Some hotfixes include other hotfixes that I have already installed!? A: That's not a problem, apply them as usual. Just keep in mind that introduced registry keys that come with a hotfix will be re-set to the default value.
Q: A hotfix has been released with a lower hotfix number, how do I apply the fix? A: Just apply the hotfix as usual. The fix should not be part of another hotfix.
Q: The Setup Splash Screen Displays the Highest Hotfix Number Currently Installed? A: Therefore see Citrix article CTX111783
Q: How can I review the installed Hotfixes or even compare fixes between Server? A: Hotfix Management is part of the Access Suite Console 4.0 or Access Management Console 4.5. You can also use cpatch.exe to review installed fixes or try out the MFHotfix utility CTX106667
Q: When installing post Rollup hotfixes, due I have to install the Rollup again? A: No.
Q: What hotfixes or Rollups should I apply? A: Only those, that fix an currently existing issue with your Presentation Server.
Certain Hotfixes and Rollup Packs Force the Server to Communicate with the Data Store by Setting the PSRequired Registry Value to 1 http://support.citrix.com/article/CTX110831
Error: Installation operation failed: Unsuccessful. Build number 1494 does not match MetaFrame build of 1467. The hotfix will not install. http://support.citrix.com/article/CTX102636
broken link?: Download the script here: Written by thorntonb on 2007-05-14 15:17:39When I click on the link "Download the script here: CPSUpdate.cmd" (http://www.thomaskoetzing.de/index.php?option=com_docman&task=doc_download&gid=169) to download this
I get the error message "Not authorized"
Regards, Brian Thornton brian.thornton AT esb.ie
broken link?: Download the script here: Written by thomas koetzing on 2007-05-14 17:43:10Ups! Is fixed now.
Thx Thomas
Microsoft hotfixes Written by Guest on 2007-05-17 01:04:09You used to have a cool section on www.citrix4ge.de with a list of "good" post SP hotifxes from the MS perspective. I am installing some new Win2003 (both R2 and not) with SP1...not ready for SP2, but want to figure out which post SP1 hotfixes to apply...do you still have that list on your web site?
Microsoft hotfixes Written by thomas koetzing on 2007-05-17 07:03:16I still have (everything was moved from 4GE to this site) and you find it under Terminal Services, because it's MS stuff. You find also Information about MS security patches on Citrix http://support.citrix.com/page.jspa?pageID=microsoft
Thomas
64 bit Customer Written by Guest on 2007-06-28 23:08:00I have been using PS4 64 Bit for about 5 months now. It smokes 32 bit. I can fit 100 users on one server and the server still running smoothly. Only hotfix I have applied are 3 security and the WFshell hotfix. I simply don't have to babysit this like I did with MFXP.
Download Hotfix PSE400R02W2K3072 Written by Guest on 2007-07-05 17:01:56Were can I download hotfix PSE400R02W2K3072 Thanx
PSE400R02W2K3072 Written by Thomas Koetzing on 2007-07-06 15:13:43PSE400R02W2K3072 is a Limited release hotfix, read the article and you know what you have to do.
Written by Guest on 2007-08-16 08:18:24i am having some major issues applying a rollup, it's always complaining the MPS.MSI file isn't the original. not happy
Bug in CPSUPDATE Written by mavre on 2007-08-27 09:33:59Hi Thomas, habe am WE Dein Skript benutzt. Hat letztendlich auch super funktionert, vielen Dank!
In Zeile 135 gibts m. M. ein Problem mit dem Parameter "%LOGPATH%\%%i.log". Er versucht dabei, eine Log-Datei zu erstellen, die den vollen Pfad zu den Hotfixes enthält. Da dieser aber immer nen Doppelpunkt oder Backslashes enthält, schlägt das fehl und die Hotfixes werden nicht installiert. Nach Anpassung auf einen anderen Dateinamen läufts.
Gruss Markus
Bug in CPSUPDATE Written by Thomas Koetzing on 2007-08-27 09:40:22Ich habe das Skript bisher nur mit Presentation Server 4.x verwendet und da ist kein Fehler gewesen. Ich nutze das Skript selbst recht häufig...
Paul Johnson Written by Guest on 2007-12-04 16:03:53I have to agree it fails at same point as the "%LOGPATH%\%%i.log" translates to C:\windows\system32\logfiles\Y:\and file name. I believe its down to Y:
Bug in CPSUPDATE Written by Thomas Koetzing on 2007-12-04 17:29:05Ok I have fixed that minor issue with the log path. Script is updated.
Ich habe das Problem mit dem Pfad behoben. Skript wurde aktualisiert.
hotfix link Written by Guest on 2008-01-11 15:55:22has changed.its now: http://support.citrix.com/product/ps/v4.0/
or http://support.citrix.com/product/ps/v4.5/#tab-hotfix
RunOnceEx Eintrag funktioniert nicht Written by Pipeline on 2008-02-26 10:15:56Moin Thomas,
ich habe dies Skript mit Begeisterung getestet und bin erfreut über die gute Funktion.
Nur leider wird der Eintrag im RunOnceEx nicht ausgeführt und bleibt somit bestehen.
Bis dann, Stefan
Patch through Installation Manager Written by Guest on 2009-01-16 09:51:00Hi. Running PS 4.0 it is not possible to install patches from Installation Manager. When installing a .MSP file to a server it always fails.
Patch through Installation Manager Written by Thomas Koetzing on 2009-01-16 10:00:42>When installing a .MSP file to a server >it always fails. Then you should enable MSI logging and find out the problem. Make sure the IM account has no folder redirection.
system engineer Written by Daniel on 2009-03-04 19:30:20Trying to install the Hotfix Rollup 03 (the same with previus ones) silent I use the command line that i quoted somewhere. The installation process determines there is one other process running, namely the batchfile that runs the installation and that will handle some more things before the restart of the server, and demands me to close that process (or ignore). This causes the installation to stop for interaction even though I use the /qb to make it silent. Any undocumented switches to tell the rollup installation to really shut up?
/Daniel
system engineer Written by Thomas Koetzing on 2009-03-04 19:32:37Hey Daniel,
why not give my update script a try... Link is on this site
Trouble with Proxy Written by Guest on 2009-03-09 21:48:22When I configure the script to use a proxy (without username/password) the script fails, goes to reboot and no logs explaining what went wrong. Does the script work with proxies that don't use username/password?
P.S.! Thanks for nice script & Site! :-)
Trouble with Proxy Written by Thomas Koetzing on 2009-03-09 21:48:45I tried it with proxy+ and worked flawless.
Java and Hotfix issue Written by Paul Aljets on 2009-03-27 10:19:31Script works great... Installed Rollup06 just fine.. But when it went to install PSE400R06W2K3001.msp it fails.. It just sits there..
Also, can you provide an update to your script that accomodates the requirement of Java 1.6??
Written by Guest on 2009-04-24 12:40:34http://support.citrix.com/article/CTX119811 for R06 for PS4 under the section for issues resolved in this rollup pack point 1 states the following
1. After applying Fix #179220, the print spooler might stop responding. To enable this fix, you must also deploy the corresponding client-side Fix #192617. [From PSE400R06W2K3006][#192617]
My question is how do you track down a referenced # fix eg #192617, and how does the # convention in CTX articles link to other CTX articles and hotfixes
Excellent explaination! Written by Anurag on 2009-08-24 09:45:40This explaination is excellent.
R05 auf PS 4.0 / W2k3 x64 Written by Gast on 2009-12-09 14:37:55Hi!
Erstmals: super Seite! zweitens hätte ich eine frage: kann man das r05 bzw. r06 für PS 4.0 auch auf w2k3 64x bit umgebung installieren? Danke für die Hilfe!
MFG Rene
R05 auf PS 4.0 / W2k3 x64 Written by Thomas Koetzing on 2009-12-12 14:00:19>kann man das r05 bzw. r06 für >PS 4.0 auch auf w2k3 64x bit Nein, natürlich kann man x32 Hotfixe NICHT für ein x64 System verwenden. Das sollte doch klar sein und bedarf eigentlich keiner Erwähung.
Zudem ist PSE 4.0 x64 schon lange aus dem Citrix Support http://www.citrix.com/English/SS/supportThird.asp?slID=5107&tlID=164141
Carlos T Written by Guest on 2009-12-21 02:57:11would the hotfix naming convention we applicable to other citrix products (i.e. Xendesktop)?