Yanıtlar:
aracılığıyla apt-get man sayfasında :
apt-get -y install [packagename]
İle ilgili sorun:
apt-get --yes install $something
Paket imza sahibinin genel anahtarının anahtarlıkta mı yoksa başka bir koşulda mı olduğunu manuel olarak onaylaması istenecektir. Bir onay istemediğinden emin olmak için sadece şunu yap:
apt-get --yes --force-yes install $something
Bu ayarların kalıcı olmasını istiyorsanız, /etc/apt/apt.conf.d/ içinde /etc/apt/apt.conf.d/90forceyes gibi, aşağıdaki içeriğe sahip bir dosya oluşturun:
APT::Get::Assume-Yes "true";
APT::Get::force-yes "true";
-y
sıkıcı olmaya başladı. (Ayrıca daha eksiksiz bir cevap.)
--force-yes
: Bu, ilgili bir konuya verilen cevaplarındebian-devel
önerdiği gibi --force-yes
sistemi kullanılamaz hale getirebilir. (Cevap düşürmem, çünkü aslında OP'nin belirttiği soruyu cevaplıyor, ancak yine de cevaba BÜYÜK KIRMIZI BİR UYARI
Ayrıca, etkileşimli bir bilgi istemi göründüğünde otomatik olarak varsayılan cevaplara geçmek isterseniz, DEBIAN_FRONTEND=noninteractive
Tek kurulum:
sudo DEBIAN_FRONTEND=noninteractive apt-get -y install [packagename]
Örneğin:
sudo DEBIAN_FRONTEND=noninteractive apt-get -y install postfix
Tüm güncellemeler:
sudo DEBIAN_FRONTEND=noninteractive apt-get -y update
Sen ayarlayabilirsiniz ince seçenekleri ile -o Dpkg::Options::="--force-confdef"
ve -o Dpkg::Options::="--force-confold"
.
Örnekler:
apt-get update
sudo DEBIAN_FRONTEND=noninteractive apt-get upgrade -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold"
veya
apt-get -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" dist-upgrade
Etkileşimli bilgi istemi örneği:
İlginç okuma: Bir Debian paketinin katılımsız kurulumunu gerçekleştirme
-y
, hizmetleri yeniden başlatmak isteyip istemediğim soruluyor. Tüm talepleri tamamen ortadan kaldırmak için buna ihtiyacım vardı.
APT::Get::Assume-Yes "true";
APT::Get::force-yes "true";
Bu en azından girmeli /etc/apt/apt.conf
ve yorumlanmalıdır. Endişeleniyorum Ubuntu, Microsoft'un her zaman izin istemesinin üstesinden geldiğini söylüyor.
"Emin misin?", Elbette eminim, klavyeden yazarak, tıklanınca mutlu olacak eğitimli bir maymun değilim.
Daha sonra kapı "Dışarıya çıkmak istediğinden emin misin?" Diye soracak.
Fırın, "Yemek yapmak istediğinize emin misiniz?"
Otomobil, "Fren uygulamak istediğinize emin misiniz?"
Yangın söndürücü "Yangını söndürmek istediğinizden emin misiniz?"
Üzgünüm Dave, bunu yapmana izin veremem.
HAL9000 bir daralma kullanabilir, ancak Veri kullanamadı veya kullanamadı.
Gönderen apt-get NASIL
Düğmesini kullanın -y
:
apt-get -y install packagename
genellikle el kitabındaki seçenekler iyi sonuç vermelidir
apt-get -y --force-yes install package
başarılı olmazsa yes
komutu kullanmayı deneyebilirsiniz .
yes | apt-get -y --force-yes install package
Bunu serseri bir kabuk sağlama komut dosyası ile kullandım
Not: İnteraktif olmamakla birlikte genellikle hayır diyen ile o zaman şunu deneyebilirsiniz:
yes no | apt-get install package
Her zaman -y argümanını istiyorsanız, satırı eklemenizi tavsiye ederim.
alias apt-get='apt-get -y' #Automatic -y argument on apt-get commands
.bashrc içine. Bu açıklamada açıklandığı gibi otomatik olarak tüm apt-get komutlarınıza -y argümanını ekler ve bu nedenle tüm indirmeleri onaylar.
NOT: .bashrc'nizi geri dönene ve kabuğu yeniden başlatana kadar bu doğru kalacaktır.
Bir komut dosyasında, özellikle wireshark kurarken varsayılan olmayan bir yöntem seçmenin bir yolunu arıyordum ve aşağıdaki gibi bir kabukla etkileşimde bulunmak için tmux kullanmaya başladım:
# 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