O Oracle é gerenciado usando o sqlplus & ferramentas rman, seja qual for o sistema operacional. Seus scripts não devem exigir muitas mudanças para funcionar no Linux.
Como dito, use o crontab (dê uma olhada na página do cron) e não se esqueça de adicionar a conta que você usa para executar a manutenção no grupo do dba.
Eu costumo trabalhar com 2 scripts: O primeiro define o ambiente e chama o segundo que executará a ação.
Poderia ser assim:
shutdown_DevDB1.sh
#!/bin/sh
set ORACLE_SID=DevDB
set ORACLE_HOME=/opt/oracle/Home1
set ORA_SCRIPTS=/opt/oracle/scripts
if [ -f $ORA_SCRIPTS/$ORACLE_HOME/$ORACLE_SID-shutdown.sql ]; then
$ORA_SHUT = $ORA_SCRIPTS/$ORACLE_HOME/$ORACLE_SID-shutdown.sql
else
$ORA_SHUT = $ORA_SCRIPTS/generic/shutdown.sql
fi
$ORA_SCRIPTS/shutdown.sh
shutdown.sh
#!/bin/sh
echo 'date': shutting down $ORACLE_SID.
$ORACLE_HOME/bin/sqlplus /nolog @$ORA_SHUT
if [ $! != 0 ]; then
echo Impossible to shut down $ORACLE_SID
exit -1
fi
echo $ORACLE_SID has been shut down.
shutdown.sql
connect / as sysdba
shutdown immediate;
quit;
Na maioria das vezes, você pode simplesmente copiar o primeiro script e alterar as três primeiras linhas. E se você tem um banco de dados com algumas singularidades, coloque o arquivo sql no lugar certo para usá-lo em vez do genérico.