Making Database Administration Easier with Freeware
September 12, 2007
Depending on your environment, working with and between Windows and UNIX can be somewhat problematic. It seems that no two workplaces are the same when it comes to the network file system. Two of the more commonly seen problems include not being able to get a GUI tool (e.g., Oracle Universal Installer) to display and not being able to have it display at the correct location. There is a freeware tool to help you work around these problems and make your job of administering Oracle (and Oracle products) easier.
Common UNIX Environments
Listed below is a list of environments commonly seen in the workplace. UNIX, in these examples, refers to Solaris, AIX, HP, Linux and so on (the variants are sometimes referred to as *NIX).
Case 1 - Physical access to the UNIX (or database) server
If a smaller server, such as a SPARC workstation, youre probably in a development shop, so logging onto the actual server may be as simple as rolling your chair across the office to sign on. If a larger server, such as those found in a production environment, the server (or servers) may be located in a computer room. The room may be an environmentally controlled/temperature regulated/restricted access room, but the point is, you can go into the room and physically access the server (even if that means youre pulling out a laptop built in to the rack).
Case 2 - Indirect access to a specific server
In this environment, your access or logon to the server is through an application (on your PC) such as PuTTY. Information about PuTTY can be found in numerous places, and this site is fairly concise and relevant to our needs.
The information typed into the Host Name field is the name of the specific server you want to connect to. You can save the connection information for each server and load them as needed.
Case 3 - Indirect access to a specific server via a gateway
What differentiates this case from the previous one is that you cannot logon directly to a real server, but first must go through a gateway server (you logon to services, and once you are authenticated, you can SSH onto your server of interest).
Direct logons are the easiest when it comes to having a GUI-based application displayed at the monitor in front of you. It shouldnt be hard to figure out that our number one GUI-based application of interest here is Oracle Universal Installer.
In general, obtaining or acquiring command line interface is not a problem. What is a problem, as evidenced by the roughly 28 million Google hits on Cant open display (and not counting the seven on MetaLink) is getting a GUI to 1) display and 2) display to the correct monitor.
X, or The Truth is Out There
If youve ever been frustrated with X (or X11 or X-Windows), youll definitely enjoy reading chapter 7 of The UNIX-Haters Handbook. One OpenSSH application in particular can take care of connecting (via SSH) and displaying GUIs such as OUI, and that application is Cygwin, a Linux-like environment for Windows. During the installation of Cygwin, the selection of SSH and X options give you a quick, easy way to access a server, open an xterm window, and have GUIs display just like that. After downloading the setup.exe program, the first several windows shown in the installation process are self-explanatory. The window you need to go beyond just clicking Next is shown below.
Scroll down to Shells and select tcsh (expand it and ensure the box is checked). The bash option will probably work as well, but it may take a few install attempts to get the right combination for your environment.
Lastly, the other option to have installed (aside from the defaults) is found by expanding the last category (X11) and scrolling down to the very bottom. The package of interest is xterm. Ensure that is selected and click Next to finish the installation process.
The installation will take a few minutes (mileage varies based on which mirror site you selected and your Internet connection). When the installation is finished, start Cygwin and youll see a shell-like window. This window will look and operate much like youre on a Linux machine. Type env and you can see how Cygwin translates many of your Windows settings (e.g., environment variables) into a UNIX-like format.
At this point (assuming youre in a case 2 environment), enter startx. A new X window will appear, and from this window, you can logon to the server where you need to run OUI.
The trick here is to add -X in the ssh call. Enter ssh X oracle@server_name, and supply the password. Entering xclock at this point should cause the clock GUI to appear. At this point, if you know you can get an X application to run (xcalc and xeyes are others), you can get OUI to start (given that all of the system prerequisites have been met).
Even on your PC, you should be able to see X applications run.
Notice there was no need to set the DISPLAY environment variable or use the xhost command. There was no lets reverse what client and server mean confusion introduced by X-Windows. Even better, when compared to other tools and a cost of hundreds of dollars (see Exceed), the freeware price of Cygwin is hard to beat.
You can spend lots of time trying to get an X-based application to display, again the main reason to run an X application is to test your ability to run OUI. If nothing seems to work, not being able to launch OUI is not a show stopper, as the RDBMS and other products can all be installed using response files. Depending on your environment, you can still try the established way of using xhost and setting the DISPLAY environment variable.
As an additional resource, MetaLink offers two troubleshooting guides. Notes 153960.1 (FAQ: X Server Testing and Troubleshooting) and 113443.1 (Configure and Test an X Server for Running X Windows Applications) are good starting points in terms of troubleshooting why OUI wont appear.