जवाबों:
apt-get man पेज के माध्यम से :
apt-get -y install [packagename]
के साथ समस्या:
apt-get --yes install $something
यह है कि यदि पैकेज हस्ताक्षर स्वामी की सार्वजनिक-कुंजी कीरिंग, या कुछ अन्य स्थितियों में नहीं है, तो यह मैनुअल पुष्टिकरण के लिए पूछेगा। यह सुनिश्चित करने के लिए कि यह सिर्फ एक पुष्टि नहीं करता है:
apt-get --yes --force-yes install $something
यदि आप इन सेटिंग्स को स्थायी करना चाहते हैं, तो /etc/apt/apt.conf.d/ में एक फ़ाइल बनाएं, जैसे /etc/apt/apt.conf.d/90forceyes निम्न सामग्री के साथ:
APT::Get::Assume-Yes "true";
APT::Get::force-yes "true";
-y
उबाऊ हो रहे थे। (प्लस यह एक अधिक पूर्ण उत्तर है।)
--force-yes
: सुझाव पर संबंधित थ्रेड के इस उत्तर केdebian-devel
रूप में , --force-yes
सिस्टम को अनुपयोगी बना सकता है। (मैं नीच नहीं हूं क्योंकि जवाब वास्तव में ओपी द्वारा बताई गई समस्या को संबोधित करता है, लेकिन मैं वैसे भी जवाब में एक बड़ा लाल चेतावनी
ध्यान दें कि यदि आप भी इंटरएक्टिव प्रॉम्प्ट के प्रकट होने पर डिफ़ॉल्ट उत्तरों द्वारा स्वचालित रूप से जाना चाहते हैं, तो आप उपयोग कर सकते हैं DEBIAN_FRONTEND=noninteractive
एकल इंस्टॉल:
sudo DEBIAN_FRONTEND=noninteractive apt-get -y install [packagename]
उदाहरण के लिए:
sudo DEBIAN_FRONTEND=noninteractive apt-get -y install postfix
सभी अपडेट:
sudo DEBIAN_FRONTEND=noninteractive apt-get -y update
आप के साथ और बेहतर विकल्प सेट कर सकते हैं ।-o Dpkg::Options::="--force-confdef"
-o Dpkg::Options::="--force-confold"
उदाहरण:
apt-get update
sudo DEBIAN_FRONTEND=noninteractive apt-get upgrade -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold"
या
apt-get -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" dist-upgrade
इंटरैक्टिव संकेत का उदाहरण:
दिलचस्प पढ़ें: डेबियन पैकेज की अप्राप्य स्थापना करना
-y
, मुझे अभी भी संकेत मिले हैं कि क्या मैं सेवाओं को फिर से शुरू करना चाहता हूं। मुझे सभी संकेतों को पूरी तरह से समाप्त करने के लिए इसकी आवश्यकता थी।
APT::Get::Assume-Yes "true";
APT::Get::force-yes "true";
यह कम से कम होना चाहिए /etc/apt/apt.conf
और टिप्पणी की जानी चाहिए । मुझे चिंता है कि उबंटू हमेशा से अनुमति मांगने का माइक्रोसॉफ्ट का सौदा कर रहा है।
"क्या आप निश्चित हैं?", निश्चित रूप से मुझे यकीन है, मैं एक प्रशिक्षित बंदर नहीं हूँ जो कीबोर्ड पर टाइप कर रहा हो, खुश होकर क्लिक करें।
अगले दरवाजे से पूछेंगे, "क्या आप सुनिश्चित हैं कि आप बाहर जाना चाहते हैं?"
ओवन पूछेगा, "क्या आप सुनिश्चित हैं कि आप खाना बनाना चाहते हैं?"
ऑटोमोबाइल पूछेगा, "क्या आप सुनिश्चित हैं कि आप ब्रेक लगाना चाहते हैं?"
आग बुझाने वाला पूछेगा, "क्या आप सुनिश्चित हैं कि आप आग बुझाना चाहते हैं?"
मुझे खेद है डेव, मैं तुम्हें ऐसा नहीं कर सकते।
HAL9000 एक संकुचन का उपयोग कर सकता है लेकिन डेटा नहीं कर सकता है, या नहीं कर सकता है।
-y
स्विच का उपयोग करें :
apt-get -y install packagename
आम तौर पर मैनुअल से विकल्पों को अच्छी तरह से काम करना चाहिए
apt-get -y --force-yes install package
यदि यह सफल नहीं होता है तो आप yes
कमांड का उपयोग करने का प्रयास कर सकते हैं ।
yes | apt-get -y --force-yes install package
यह मेरी योनि खोल प्रावधान स्क्रिप्ट के साथ प्रयोग किया
पुनश्च: यदि आप गैर-संवादात्मक चाहते हैं, लेकिन आम तौर पर नहीं तो आप यह कोशिश कर सकते हैं:
yes no | apt-get install package
यदि आप हमेशा चाहते हैं-मैं तर्क मैं लाइन जोड़ने की सलाह देंगे
alias apt-get='apt-get -y' #Automatic -y argument on apt-get commands
अपने .bashrc में। यह, जैसा कि टिप्पणी बताती है, स्वचालित रूप से आपके सभी उपयुक्त-कमांड के लिए -y तर्क जोड़ देगा और इसलिए सभी डाउनलोडों को अनुमोदित करता है।
ध्यान दें: यह तब तक सही रहेगा जब तक आप अपने .bashrc को वापस नहीं लेते और शेल को पुनरारंभ करते हैं।
मैं एक स्क्रिप्ट में एक गैर-डिफ़ॉल्ट का चयन करने के लिए एक रास्ता तलाश रहा था, विशेष रूप से जब वायरशार्क स्थापित कर रहा है, और एक शेल के साथ बातचीत करने के लिए tmux का उपयोग करके समाप्त हो गया, इस प्रकार है:
# Start a detached root session
sudo tmux new-session -d
# Send the command
sudo tmux send-keys "DEBIAN_FRONTEND=readline apt-get -qq install wireshark-common; exit" enter
# Wait for the tmux session to get to the interactive stage
sleep 5
# Answer the question
sudo tmux send-keys "yes" enter
# Now attach to the session so we wait for command completion
sudo tmux attach