Problem:
While restoring controlfile to test environment, from filesystem or tape environment after installing grid infrastructure.
I got following errors from both RMAN and DBCA, despite the fact that I could create directory alias in asmcmd.
RMAN> run {
2> allocate channel t1 device type ‘SBT_TAPE’
3> parms ‘ENV=(NSR_SERVER=bcksrv1, NSR_CLIENT=mydb, NSR_DATA_VOLUME_POOL=JB10)’;
4> RESTORE controlfile to ‘+DATA’ FROM ‘/tmp/ctl01.dbf’;
5> release channel t1 ;
6> }
allocated channel: t1
channel t1: SID=386 device type=SBT_TAPE
channel t1: NMO v5.0.0.0
Starting restore at 29-MAY-12
released channel: t1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 05/29/2012 14:31:34
ORA-19504: failed to create file “+DATA”
ORA-15045: ASM file name ‘+DATA’ is not in reference form
ORA-17502: ksfdcre:5 Failed to create file +DATA
ORA-15081: failed to submit an I/O operation to a disk
ORA-19600: input file is control file (/tmp/ctl01.dbf)
ORA-19601: output file is control file (+DATA)
Cause:
Access rights to oracle disk.
Solution:
I checked the asm disks. /dev/rdsk/disk * has grid:oinstall ownership.
Grid infra home and bin has grid:oinstall, while the oracle home and bin has oracle:oinstall, as told in the MOS.
In our case, access rights on disk device files, are not 77x. As the second 7 means access to group oinstall.
I changed the access rights to 777 and it worked.