Adicione algo como
if [ "$(id -nu)" != 'your_user' ]; then
exec sudo -u 'your_user' $0
fi
no início do script.
Estou usando o Rails, e gostaria de realizar uma tarefa específica de rake na inicialização. Eu fiz um script de shell assim:
cd /path/to/my/app
rake db:backup
, que é linkado em symlink em /etc/rc2.d/
. O problema é que o script é executado como root, o que significa que ele não tem acesso ao rake (estou usando bundler e rvm). Eu gostaria de mudar para o meu usuário para o script, mas não posso descobrir como fazer isso com sucesso.
Então, existe uma maneira de fazer isso ser executado como minha conta, ou existe uma maneira melhor de executar a tarefa rake após a inicialização?
Adicione algo como
if [ "$(id -nu)" != 'your_user' ]; then
exec sudo -u 'your_user' $0
fi
no início do script.