Depois de entender o problema de usar uma senha na linha de comando , preciso encontrar uma maneira de alimentar um programa com uma senha sem que isso seja um problema (sem que a senha seja registrada em algum lugar).
Eu tenho um script bash que instala automaticamente um servidor LAMP inteiro a partir da fonte: Apache, FastCGI, PHP e MySQL. Essas instalações requerem uma senha, especialmente MySQL.
Como posso tornar o script totalmente automatizado sem revelar a senha?
Edit (9 de junho, 3:55 UTC):
Estou invocando o mysql com uma senha na linha de comando, via root:
root@dor-desktop:/home/dor# PASS=`cat /home/dor/tmpf/pass`
root@dor-desktop:/home/dor# mysql -u root -p"$PASS"
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 6
(PASS = "p4ssw0rd" no nosso caso)
E executo ps aux | grep mysql
via meu usuário comum (dor), que não me mostra a senha !
(Parte da) ps
saída é:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 3562 0.0 0.0 34156 2864 pts/0 S+ 05:53 0:00 mysql -u root -px xxxxxx
Como isso é possível?