Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Oracle Client on RedHat Linux- can't run sqlplus as another user
Well, I'm 2-days-new into the Linux world, and installed the Oracle 8.1.7
client on a RedHat 7.3 Linux server. This is one of those "Hey I should
learn how Linux works" deals... but I'm stuck on this one issue- I can only
run sqlplus when I'm the Linux oracle user.
Eliminating all environment and path and etc variables, the simple fact is that when I'm logged in to Linux as myself (not as the oracle user, not as the root user), I can't access the /home/oracle directory. Yes I followed the Oracle 8i for Linux installation docs... there's a dba group and an oinstall group. Yes I applied all the compatability patches for RedHat 7.3 to 6.2. Yes, if I'm logged in as the oracle user (to Linux), I can run sqlplus and play with my tnsnames.ora and etc. I even set the secondary group for myself to be "oinstall", and if I type "newgrp oinstall", I still can't run sqlplus from my own account.
As my own account (not the oracle account), if I try an "ls /home/oracle" or an "ls /home/oracle/product/8.1.7/bin", I get a "Permission denied" error.
If I try running "/home/oracle/product/8.1.7/bin/sqlplus", I get the same Permission denied error.
I tried, as the oracle user, to do a "chmod a+r /home/oracle"- and that made the permissions on the /home/oracle directory become "dwrxr--r--". From my own Linux account, suddenly, I can do an "ls /home/oracle" and see files! That made sense...
So I logged in as the oracle user again, to do "chmod -R a+r /home/oracle",
to give the "read" attribute recursively to the whole /home/oracle directory
tree. To check, as the oracle user, I did an "ls -l", and all the files &
directories (with the exception of the root.sh's) have the "drwxr-xr-x"
attributes. So I logged in as myself, but if I try to do an "ls
/home/oracle/product/8.1.7/bin" or even "ls /home/oracle/product", I still
get the Permission denied error.
If anyone could help, that would be great! Remember too that I just
installed the Oracle Client- not a full database- so there's nothing to do
with a SID in my installation. I just want to run sqlplus from my own user
account, not as the oracle account. And I think that once I can "see" the
/home/oracle/product/8.1.7 directory (my $ORACLE_HOME) and it's files, then
I'll be able to run sqlplus, and that's when I'll worry about environment
variables and the like.
Or am I trying to make something work that won't? Do I have to copy the bin diretory into the /usr/local/bin directory, where the OUI dumped a few scripts? (And it doesn't matter if I run those scripts from my own user account, because I (a) don't have a SID since it's just the client, and (b) don't have access to /home/oracle/product/8.1.7 anyway.) Or should I just copy the whole $ORAHOME directory structure to somewhere like /usr/etc? But other users should be able to use that original Oracle Client installation, right?
I did a 'net search, but it seems that everyone says "I set up my ORACLE_HOME, ORACLE_SID, ORACLE_BASE, and PATH=$ORACLE_HOME/bin:$PATH in the .profile, exported the variables, and it works."
Thanks! I've done Oracle Server on Windows and Novell, but I'm not doing too well with Linux. It's probably something obvious related to Linux- and that's probably why I can't find much on the 'net about this.
-Thomas Received on Thu Mar 18 2004 - 13:02:43 CST