Return to General UNIX Home Page.


Xvfb for HP/UX 11.0

by Jeff Hunter, Sr. Database Administrator


With Xvfb (X Virtual Frame Buffer) you can create your own virtual DISPLAY regardless of if the server has a graphic adapter or not. By default, Xvfb is not included with HP/UX 11.0, but through a patch obtained from HP you can get it installed. Right now, this patch is known as PHSS_25277, but please check with HP Support to get the correct patch for your system.

  1. First unpack the HP patch which contains the Xvfb software:
    # sh PHSS_25277
    You now should have the two files PHSS_25277.text and PHSS_25277.depot

  2. Install the patch

    NOTE: The machine will reboot

    # swinstall -x autoreboot=true -x patch_match_target=true -s /tmp/PHSS_25277.depot

  3. Check for an available DISPLAY index. By default, you Unix system uses DISPLAY index 0, but you might already have other virtual DISPLAY software packages running, so you should check directory /etc/X11 for files named X#screens, where # is the index number. Since HP/UX by default uses DISPLAY index 0, you will already have a file called /etc/X11/X0screens.

    To check for all possible DISPLAY files:

    # ls -l /etc/X11/*screens

  4. Determine which DISPLAY index number you want to use for Xvfb. Let's say you determine that you want to use DISPLAY index 10 for Xvfb:
    # cp /etc/X11/X0screens /etc/X11/X10screens

  5. Now add the following lines to the end of /etc/X11/X10screens:
    ServerOptions
        ServerMode XVfb

  6. Start Xvfb (as root):
    # nohup /usr/bin/X11/Xvfb :10 -screen 0 1024x800x8 -pn -fp /usr/lib/X11/fonts/misc -sp  /etc/X11/SecurityPolicy &

  7. Set the new DISPLAY, and allow it to be used:
    # export DISPLAY=$(hostname):10.0
    # xhost +

  8. You can now configure your products about the new DISPLAY:

    For Oracle Reports Multitier Server you set the DISPLAY variable in the script $ORACLE_HOME/6iserver/reports60_server, e.g.:

    DISPLAY 192.168.0.74:10.0; export DISPLAY
    For Oracle Portal and Oracle Discoverer Viewer, you set the DISPLAY variable in jserv.properties, e.g.:
    wrapper.env=DISPLAY=192.168.0.74:10.0
    In the scenario above, 192.168.0.74 is the IP address of the server.

  9. In a HP/UX ServiceGuard cluster, it will not be wise to hardcode the IP address in jserv.properties and in $ORACLE_HOME/6iserver/reports60_server, you should rather pick up the IP address dynamically, in case the iAS software package is reallocated over to another node the cluster.

    If iAS is running in a HP cluster, you should set the DISPLAY like this in $ORACLE_HOME/6iserver/reports60_server:

    DISPLAY=$(hostname):10.0; export DISPLAY
    The cluster solution for Jserv, is to edit the script $ORACLE_HOME/Apache/Apache/bin/apachectl, and add the following:
    DISPLAY=$(hostname):10.0; export DISPLAY
    Then in jserv.properties:
    wrapper.env.copy=DISPLAY



Last modified on: Saturday, 18-Sep-2010 18:21:07 EDT
Page Count: 15916