سؤال الإجابة تلقائيًا "نعم" عند استخدام apt-get install


هل هناك طريقة لجعل apt-get install أجب بـ "نعم" على "هل تريد المتابعة [y / N]؟"؟


301
2017-07-16 20:34


الأصل




الأجوبة:


عبر apt-get man page:

apt-get -y install [packagename]

351
2017-07-16 20:36



هل هذا هو نفس الإجابة عنbclermont (- نعم - القوة - نعم)؟ - jjxtra


المشكلة مع:

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";

159
2017-07-16 22:08



+1 لمجموعة متنوعة. كل ال -y كانوا يملون (بالإضافة إلى أنها إجابة أكثر اكتمالاً.) - Dennis Williamson
+1 أفضل إجابة - كنت أبحث عن الحل لإجبار نعم ، بدلاً من الاضطرار إلى تحديده في كل مرة - Robin Winslow
هل سيعمل هذا عندما يقول "لمواصلة الكتابة في العبارة" نعم ، افعل ما أقول! "أيضًا؟ إن لم يكن ما هو العمل حولها؟ أواجه هذا عند محاولة استبدال sysvinit مع systemd في بلدي صورة ديريان متني. - Lennart Rolland
من فضلك لا تستخدم من أي وقت مضى --force-yes: مثل هذا الرد على موضوع ذات الصلة على debian-devel وتقترح، --force-yes قد يجعل النظام غير قابل للاستخدام. (أنا لست معجلاً لأن الإجابة تعالج المشكلة بالفعل كما هو مذكور في البروتوكول الاختياري ، لكنني سأضيف تحذيرًا أحمرًا كبيرًا للإجابة على أي حال). - kostix
APT :: Get :: Assume-Yes "true"؛ ساعدني لتجنب المقاطعة في التثبيت في حاوية عامل ميناء. - Mehdi Sadeghi


لاحظ أنه إذا كنت تريد أيضًا الانتقال تلقائيًا بواسطة الإجابات الافتراضية عند ظهور رسالة مطالبة تفاعلية ، فيمكنك استخدامها 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

مثال على المطالبة التفاعلية:

enter image description here

قراءة مثيرة للاهتمام: إجراء تثبيت غير مراقب لحزمة Debian


42
2017-07-12 18:36





APT::Get::Assume-Yes "true";

APT::Get::force-yes "true";

يجب أن يكون هذا على الأقل /etc/apt/apt.conf وعلق بها. أنا قلق أن Ubuntu يأخذ طريقة مايكروسوفت في طلب الإذن.

"هل أنت متأكد؟" ، بالطبع أنا متأكد من أنني لست قردًا متدربًا ، ما عليك سوى الكتابة بعيدًا بلوحة المفاتيح ، والضغط على "سعيد".

بعد ذلك سيسألك الباب: "هل أنت متأكد أنك تريد الخروج؟"
سيسأل الفرن ، "هل أنت متأكد من أنك تريد أن تطبخ؟"
سوف تسأل السيارة "هل أنت متأكد من أنك تريد تطبيق الفرامل؟"
سوف تسألك مطفأة الحريق "هل أنت متأكد من أنك تريد إطفاء الحريق؟"
أنا آسف يا ديف ، لا أستطيع أن أدعك تفعل ذلك.
يمكن أن يستخدم HAL9000 تقلصًا لكن البيانات لم تستطع أو لم تستطع.


15
2018-06-07 01:00



هذا هو أفضل إجابة - Robin Winslow
الفرق مع HAL9000 و dpkg الذي يطلب الإذن هو أن HAL قالت "لا ، فترة" ، في حين أن الشيء "نعم ، أفعل كما أقول" يظهر فقط إذا كنت على وشك أن تقطع نظامك تمامًا. إذا كان هذا هو ما تريده ، بالتأكيد ، تفضل. لكن وجود تحذير في هذه الحالة يبدو معقولاً. - Wouter Verhelst


من apt-get HOWTO

استخدم ال -y مفتاح كهربائي: apt-get -y install packagename


9
2017-07-16 20:37





apt-get -y update
apt-get -y install [package]

7
2017-07-16 20:37



+1 ، ولكن لماذا update يحتاج الإذن؟ - amyassin
amyassin apt-get update يتطلب الأمر أذونات الجذر لأنه يقوم بتحديث قوائم الحزم المحلية (الفهارس) ، والتي هي ملفات النظام التي يملكها الجذر. - jjmontes


عموما يجب أن تعمل خيارات من دليل جيد

apt-get -y --force-yes install package

إذا لم ينجح يمكنك محاولة استخدام yes أمر.

yes | apt-get -y --force-yes install package

استخدمت هذا مع نصي التجهيز shell المتفرعة

PS: في حالة ما إذا كنت تريد غير تفاعلي ولكن مع الإفادة عمومًا ، فيمكنك تجربة ذلك:

yes no | apt-get install package

2
2017-11-17 16:51





كنت أبحث عن طريقة لتحديد غير افتراضي في برنامج نصي ، خاصة عند تثبيت wireshark ، وانتهى الأمر باستخدام tmux للتفاعل مع shell ، كما يلي:

# 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

1
2017-09-10 13:29