Cannot run OUI from NFS

  • From: Yong Huang <yong321@xxxxxxxxx>
  • To: oracle-l@xxxxxxxxxxxxx
  • Date: Thu, 9 Aug 2012 15:10:51 -0700 (PDT)

We use 64-bit RHEL 5.8, kernel 2.6.18-308.11.1.el5. We want to put Oracle 
installation files on a shared NFS server. But runInstaller always fails with 
"Error in writing to directory /tmp/OraInstall..." message, even though /tmp 
has space and the said subdirectory can be written to. We *can* run OUI 
successfully if we copy the installation files to a local filesystem.

The message is catch-all (according to one Oracle note). So we suspect some 
mount options are not up to Oracle's standard. We tried different ones, mainly 
"rw,bg,nointr,hard,timeo=600,wsize=32768,rsize=32768,nfsvers=3,tcp" and that 
plus "noac" (based on Note:553283.1). The error does not change. An strace is 
done as follows:

----------- BEGIN -----------
$ strace -o /tmp/abcd -f ./runInstaller -ignoreSysPrereqs
********************************************************************************

Please run the script rootpre.sh as root on all machines/nodes. The script can 
be found at the toplevel of the CD or stage-area. Once you have run the script, 
please type Y to proceed

Answer 'y' if root has run 'rootpre.sh' so you can proceed with Oracle 
Clusterware installation.
Answer 'n' to abort installation and then ask root to run 'rootpre.sh'.

********************************************************************************

Has 'rootpre.sh' been run by root? [y/n] (n)
y

[ Process PID=5544 runs in 32 bit mode. ]
Starting Oracle Universal Installer...

Checking installer requirements...

Checking operating system version: must be redhat-3, SuSE-9, redhat-4, 
UnitedLinux-1.0, asianux-1 or asianux-2
                                      Failed <<<<


>>> Ignoring required pre-requisite failures. Continuing...

Preparing to launch Oracle Universal Installer from 
/tmp/OraInstall2012-08-09_04-44-18PM. Please wait ...[ Process PID=5545 runs in 
64 bit mode. ]
[ Process PID=5545 runs in 32 bit mode. ]

Error in writing to directory /tmp/OraInstall2012-08-09_04-44-18PM. Please 
ensure that this directory is writable and has atleast 60 MB of disk space. 
Installation cannot continue.
: Invalid argument
----------- END -----------

The strace output near the error has these lines:

25078 dup(2)                            = 5
25078 fcntl64(5, F_GETFL)               = 0x8002 (flags O_RDWR|O_LARGEFILE)
25078 fstat64(5, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
25078 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) 
= 0xfffffffff7f70000
25078 _llseek(5, 0, 0xff8f0ac0, SEEK_CUR) = -1 ESPIPE (Illegal seek)
...
25078 write(5, "\n", 1)                 = 1
25078 write(5, "Error in writing to directory /t"..., 181) = 181
25078 write(5, ": Invalid argument\n", 19) = 19

Apparently, stderr (file descriptor 2), duplicated to descriptor 5, goes 
through a seek. It's not even seekable as far as I know.

Any input is appreciated. It's not a big issue. Just something nice to have.

Yong Huang

--
//www.freelists.org/webpage/oracle-l


Other related posts: