The SYS.DBMS_BACKUP_RESTORE package can be used to do the restore, but you will need to open a service request with Oracle to get the instructions on how to use it (there is no 'public' documentation available).
"The person who says it cannot be done should not interrupt the person doing it." --Chinese Proverb
I tried restring RMAN database by sharing drive as well however RMAN doesn't identify the backup file which is very stange !!
The original backup location was 'M:\OracleBackup\
I shared the drive on the network and mapped it on the database server under M: so path of backup looks exactly same 'M:\OracleBackup\
How ever RMAN throws following
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-03002: failure of restore command at 02/13/2009 15:05:14
ORA-19505: failed to identify file "M:\OracleBackup\DBCOM\DBCOM_948_20090212"
ORA-27041: unable to open file
OSD-04002: unable to open file
O/S-Error: (OS 3) The system cannot find the path specified.
It seems that RMAN stored some sort of identification number so with the same path elsewhere it doesn't let me restore.
I know this post is many years old, but did you find a solution to this restore problem that says unable to open file ? I am running into the same problem and wondered if you ever found out. I am trying to restore my RMAN backup from production server(9i) to a test server(9i). I was able to do all the steps upto restoring the database. It's exactly like you mentioned in your post. RMAN does not find the new back up. Let me know please.
set newname for datafile 1 to '/oracle/oradata/db_name/system01.dbf';
set newname for datafile 2 to '/oracle/oradata/db_name/undo01.dbf';
set newname for datafile 3 to '/oracle/oradata/db_name/sysaux01.dbf';
set newname for datafile 4 to '/oracle/oradata/db_name/data.dbf';
set newname for datafile 5 to '/oracle/oradata/db_name/users01.dbf';
set newname for datafile 6 to '/oracle/oradata/db_name/indx01.dbf';
set newname for tempfile 1 to '/oracle/oradata/db_name/temp01.dbf';
duplicate target database to tmstr logfile
group 1 ('/oracle/oradata/db_name/redo01a.log','/oracle/oradata/db_name/redo01b.log') size 52428800 reuse
,group 2 ('/oracle/oradata/db_name/redo02a.log','/oracle/oradata/db_name/redo02b.log') size 52428800 reuse
,group 3 ('/oracle/oradata/db_name/redo03a.log','/oracle/oradata/db_name/redo03b.log') size 52428800 reuse;
But you don't need to do all of that, you can also do this:
duplicate target database to dupdb
from active database spfile
set log_file_name_convert= 'sourcedb','dupdb',
The second example might be 11g only. Also I typed in the commands
and may have made mistakes. So you will need to test everything.