Bah. Descobri logo após postar ...
A questão toda é que eu criei o arquivo "oracle" em um PC e fiz o upload dele. Então teve os finais de linha errados. Reconstrua o arquivo e tudo funciona bem.
Eu configurei um punhado de servidores CentOS 5.6 com o Oracle 11gR2 e não me deparo com esse problema em particular, mas eu bati uma parede com o CentOS 6.3 e a inicialização automática do Oracle. Não tenho certeza se isso está relacionado à versão mais recente do CentOS ou a mim tendo um momento de PEBKAC, mas preciso de uma mão.
Eu tenho uma instalação funcional do Oracle 11gR2 no CentOS 6.3. Corre e é funcional. Agora eu só quero começar com o servidor. Para esse fim, fiz as seguintes coisas que costumo fazer:
Criado /etc/init.d/oracle:
#!/bin/bash
#
# oracle Init file for starting and stopping
# Oracle Database. Script is valid for 10g and 11g versions.
# chkconfig: 35 80 30
# description: Oracle Database startup script
# Source function library.
. /etc/init.d/functions
ORACLE_OWNER="oracle"
ORACLE_HOME="/opt/app/oracle/product/11.2.0/db_1"
case "$1" in
start)
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
;;
stop)
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"
;;
*)
echo $"Usage: $0 {start|stop}"
esac
Então, os dois comandos a seguir foram executados:
chmod 750 /etc/init.d/oracle
chkconfig --add oracle --level 0356
Quando eu tento um service oracle start
, (como root), no entanto, recebo este erro:
env: /etc/init.d/oracle: No such file or directory
Não tenho certeza de como descobrir qual arquivo estamos procurando.
Se eu executar o comando inicial real desse script com as variáveis expandidas, o banco de dados será iniciado sem erros.
su - oracle -c "/opt/app/oracle/product/11.2.0/db_1/bin/dbstart /opt/app/oracle/product/11.2.0/db_1"
Então ... o que estou perdendo aqui? Algumas pesquisas casuais na web me fazem sentir que essa abordagem ainda deve funcionar.
Tags startup centos oracle-database