O erro que você está recebendo é
ORA-29283 :> oerr ora 29283
29283. 00000 - "invalid file operation"
*Cause: An attempt was made to read from a file or directory that does
not exist, or file or directory access was denied by the
operating system.
*Action: Verify file and directory access privileges on the file system,
and if reading, verify that the file exists.
Portanto, o
/usr/apps/datafiles diretório não existe ou não é gravável pelo proprietário do processo Oracle (por exemplo, o oracle conta); ou possivelmente (mas menos provável) o arquivo de log que você especificou já existe e não pode ser substituído. Como você disse que existe, veja as permissões completas do diretório (por exemplo,
ls -ld /usr/apps/datafiles , verifique o proprietário e o grupo do proprietário do processo Oracle (por exemplo, id -a ) para comparar as permissões nesse diretório e seu pai. Se tudo estiver OK, enquanto estiver conectado como proprietário do processo Oracle, verifique se você pode criar um arquivo no diretório, por exemplo:touch /usr/apps/datafiles/test_file
ls -l /usr/apps/datafiles/test_file
rm -f /usr/apps/datafiles/test_file
Se tudo isso funcionar, e acho que provavelmente funciona pelo seu comentário, então, como você está usando o RAC, talvez seja necessário consultar a nota de suporte 1305166.1.
A primeira coisa a tentar é fazer o
expdp sem o @orcl , como parece (a) há problemas quando o ouvinte e o banco de dados estão sendo executados em contas diferentes (por exemplo, grid e oracle , e a grid o usuário não pode acessar o diretório do SO - repita o touch teste como esse usuário para ver se é esse o caso); ou (b) se o alias tiver balanceamento de carga e estiver sendo executado em um nó diferente que não possui o diretório.