コマンドラインでのパスワードの使用に関する問題を理解した後、問題なく(どこかにパスワードが記録されずに)プログラムにパスワードを与える方法を見つける必要があります。
私はソースからLAMPサーバー全体を自動的にインストールするbashスクリプトを持っています:Apache、FastCGI、PHPおよびMySQL。これらのインストールにはパスワード、特にMySQLが必要です。
パスワードを明かさずにスクリプトを完全に自動化するにはどうすればよいですか?
編集(6月9日、3:55 UTC):
コマンドラインでパスワードを使用して、mysqlを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")
そしてps aux | grep mysql
、通常のユーザー(dor)を介して実行しますが、パスワードは表示されません!
(の一部)ps
出力は次のとおりです。
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
それはどうして可能ですか?