OpenJDK / OpenJREが適切に機能する場合は、@ SAMが推奨する代わりにそのパッケージを使用することをお勧めします。ただし、一部のソフトウェアにはOracleのJDK / JREが実際に必要です。この答えは、PPAのOracleパッケージでライセンスの質問を黙らせる方法です。
まず、質問が開発者によって作成されたパッケージの機能であることを確認しましょう。
oracle-java7-installer (7u7-0~webupd8~4) maverick; urgency=medium
* removed cookie file use or else the PPA stays disabled
* request the user to accept the Oracle license before installation
-- Alin Andrei <webupd8@gmail.com> Tue, 04 Sep 2012 14:18:29 +0200
@Nateが答えで示したように、サイレントオプションがあるはずです。そこには。インストールする前にこれを行ってください:
$ echo debconf shared/accepted-oracle-license-v1-1 select true | \
sudo debconf-set-selections
$ echo debconf shared/accepted-oracle-license-v1-1 seen true | \
sudo debconf-set-selections
これにより、debconfキーの値がtrueに設定されますが、ユーザーから見えるようにマークされます。これで、この質問は表示されなくなります!
これはどうやって見つけたの?
パッケージのソースで、oracle-java7-installer.preinst
ファイルでこれを追跡しました。
license=oracle-license-v1-1
# snip
db_get shared/accepted-$license
if [ "$RET" = "true" ]; then
echo "$license license has already been accepted" >&2
exit 0
fi
どうやら、debconfのキーの値をshared/accepted-oracle-license-v1-1
使用して、ユーザーが既にライセンスを受け入れているかどうかを確認します。存在する場合、スクリプトは正常に終了し、質問をせずにインストールを続行できます。ここで、debconfにOracle License 1.1にすでに同意していることを伝える必要があります。
詳細についてはマンページを参照してくださいdebconf-set-selections
が、これは問題の例であり、他のパッケージでも同様に機能します。debconfのデータベースにあるシステムの他のキーは何ですか?インストールdebconf-utils
して実行
$ sudo debconf-get-selections
次に、自動インストールで設定する必要があるキーをさらにgrepします。これは、インストール時のデフォルト設定以外を設定する機会を提供するため、-y
with apt-get
を使用するよりもはるかに柔軟です。