यदि OpenJDK / OpenJRE आपके लिए ठीक काम करता है, तो मैं @SAM द्वारा सुझाए गए अनुसार उस पैकेज का उपयोग करने की सलाह देता हूं। हालाँकि, कुछ सॉफ्टवेयर को वास्तव में ओरेकल के JDK / JRE की आवश्यकता होती है। यह जवाब है कि पीपीए से ओरेकल पैकेज के साथ लाइसेंस प्रश्न को कैसे चुप करें।
सबसे पहले, आइए जानें कि पूछे गए प्रश्न पैकेज की एक विशेषता है, जिसे डेवलपर द्वारा बनाया गया है।
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 कुंजी का मान सही पर सेट करता है, लेकिन उपयोगकर्ता द्वारा देखे जाने के रूप में भी चिह्नित करता है। अब यह सवाल सामने नहीं आना चाहिए!
मुझे यह कैसे पता चला?
पैकेज के स्रोत में, मैंने इसे 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
जाहिर है, यह कुंजी का उपयोग करता है shared/accepted-oracle-license-v1-1
कि क्या उपयोगकर्ता ने पहले ही लाइसेंस स्वीकार कर लिया है , यह जांचने के लिए debconf के मान का उपयोग करता है । यदि यह है, तो स्क्रिप्ट इनायत से बाहर निकल जाएगी और आपको सवाल पूछे बिना इंस्टॉलेशन जारी रखने की अनुमति देगी। हमें अब सिर्फ डीबकफ बताना चाहिए कि आप पहले से ही ओरेकल लाइसेंस 1.1 स्वीकार करते हैं।
कृपया debconf-set-selections
अधिक विवरण के मैनपेज का संदर्भ लें , लेकिन यह आपके मुद्दे का उदाहरण है और अन्य पैकेजों के लिए समान है। डिबेंकफ के डेटाबेस में आपके सिस्टम में आपके पास और कौन सी चाबियां हैं? स्थापित करें debconf-utils
और करें
$ sudo debconf-get-selections
फिर अधिक कुंजी के लिए grep जिसे आपको अपने स्वचालित इंस्टॉलेशन में सेट करना होगा। यह उपयोग -y
करने की तुलना में अधिक लचीला है apt-get
क्योंकि यह आपको स्थापना समय पर डिफ़ॉल्ट सेटिंग्स के अलावा अन्य सेट करने का अवसर देता है।