UTL_FILE and Unix Group Privs 2004-05-19 - By Charlotte Hammond
Many thanks to John Dunn who provided the solution to this.
The problem was that I 'd added oracle to the appgroup *after* I started the listener, so oracle processes did not have the required group membership. This was fixed by bouncing the listener.
Thanks to all who replied.
- Charlotte
-- --Original Message-- --
From: Vergara, Michael (TEM) [mailto:mvergara@(protected)]
Sent: 13 May 2004 20:50
To: oracle-l@(protected)
Subject: RE: UTL_FILE and Unix Group Privs
This could be a couple of things. How do you have
the initSID.ora 'utl_file_dir ' parameter configured? If you
do not specifically have this path in the parameter (or have
the parameter set to '* ') then it will fail.
If you 're using 9i, you should create a directory (in the
database) that points to this location and use that directory
name in the utl_file.fopen statement. That is:
SQL > create directory mydir as '/home/charlotte/report ';
... and then ...
fh :=3D utl_file.fopen( 'MYDIR ', 'test ', 'w ');
HTH,
Mike
-- --Original Message-- --
From: Charlotte Hammond [mailto:charlottejanehammond@(protected)]
Sent: Thursday, May 13, 2004 10:27 AM
To: oracle-l@(protected)
Subject: UTL_FILE and Unix Group Privs
Help!
I am trying to run the following simple test:
declare
file_id utl_file.file_type;
begin
file_id :=3D utl_file.fopen( '/home/charlotte/report ', 'test ', 'w ');
end;
/
I have created a unix group called appgroup. oracle is a member of =
appgroup. The above PL/SQL works if:
=20
drwxrwxrwx 2 charlotte appgroup 96 May 13 18:12 report
or
drwxr-xr-x 2 oracle appgroup 96 May 13 18:12 report
=20
But! It does not work for:
=20
drwxrwxr-x 2 charlotte appgroup 96 May 13 18:12 report
=20
ERROR at line 1:
ORA-29283 (See ORA-29283.ora-code.com): invalid file operation
ORA-06512 (See ORA-06512.ora-code.com): at "SYS.UTL_FILE ", line 449
ORA-29283 (See ORA-29283.ora-code.com): invalid file operation
ORA-06512 (See ORA-06512.ora-code.com): at line 4
=20
I don 't understand why not. oracle is a member of appgroup and the =
directory is writeable by appgroup group. In fact if I log in using the =
oracle unix account, I can manuall create a file in this directory.
=20
The O/S trace shows:
=20
gettimeofday({1084468047, 557093}, NULL) =3D 0
access( "/home/charlotte/report/test ", F_OK) =3D -1 ENOENT (No such file =
or directory)
statfs( "/home/charlotte/report/test ", 0xbfff1220) =3D -1 ENOENT (No such =
file or directory)
open( "/home/charlotte/report/test ", =
O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) =3D -1 EACCES (Permission =
denied)
gettimeofday({1084468047, 559298}, NULL) =3D 0
=20
I 'm not sure exactly what the problem is.
Is there anyway I can use UTL_FILE using Unix group privileges or do I =
either (a) have to make oracle own the directory, or (b) make it =
publically writable
Thanks for any info
- Charlotte
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ------
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ------
To unsubscribe send email to: oracle-l-request@(protected)
put 'unsubscribe ' in the subject line.
--
Archives are at http://www.freelists.org/archives/oracle-l/
FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- --
-- ---- ---- ---- ---- ---- -----
Do you Yahoo!?
SBC Yahoo! - Internet access at a great low price.
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ------
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ------
To unsubscribe send email to: oracle-l-request@(protected)
put 'unsubscribe ' in the subject line.
--
Archives are at http://www.freelists.org/archives/oracle-l/
FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- --
|
|