Debian paketi kurarken istemleri devre dışı bırakın


22

Bir Debian paketi kurarken ortaya çıkan istemleri nasıl tamamen devre dışı bırakabilirim, bulduğum tüm seçenekleri kullandım, ancak hala isteyen bazı paketler var.

Bu komutu kullanıyorum:

apt-get -y --allow-unauthenticated --force-yes -o DPkg::Options::="--force-overwrite" -o DPkg::Options::="--force-confdef" install x11-common

X11 ortak paketi neden hala soruyor? bu istemlerden nasıl kurtulabilirim?

Şimdiden teşekkürler

--Victor

Düzenleme: sadece netleştirmek için, istemler "evet / hayır" istemleri değildir, renkli ekranda açık sorulardır (tipik iki renkli ekran), ancak bu soruların varsayılan seçeneğini belirlemek istiyorum

Yanıtlar:


38

Env'nizi ayarlayarak yeni bir ön uç seçin.

DEBIAN_FRONTEND=noninteractive apt-get -y install x11-common

Bunu her zaman paket kurulumunu otomatikleştirerek kullanırım cfengine.


+1 Bu doğru cevap
lynxman

Bu iç chroot olmayan kullanmaları gerektiğinde etkileşimli kullanabileceğiniz bazı garip durumlarda gibiDEBIAN_FRONTEND=noninteractive sudo -E chroot . echo "something"
mschuett

8

X11-common ürününü manuel olarak kurmamak, hangi soruların sorulduğundan emin değilim. Ama eğer debconf'tan geliyorlarsa, soruları önceden cevaplayabilmelisin debconf-set-selections.


Çözüm bu, teşekkürler. Debconf-get-seçimleri olan özellikleri alıyorum ve bunları daha önce debconf-set-seçimleriyle ayarlıyorum ve daha fazla istem
görünmüyor

Seçimler olsa bile, bazı paketler önceliğe bağlı olarak sorular sorabilir. Ancak mümkünse seçimleri ayarlamanızı öneririm. Ön ucu ayarlamak noninteractivesihirdir "ne olursa olsun bana bir şey sorma" bayrağı.
bahamat

4

Bunu yapmanız dpkg-reconfigure debconfve "Öneminden daha düşük öncelikli soruları yoksay: Kritik" olarak söylemeniz gerekir.

Bu, kritik soruları yanıtlamanızı engellemez.


1

Tüm paketleri yeniden yapılandırmak için istemleri global olarak devre dışı bırakmak için debconf, /etc/apt/apt.conf.d/70debconfdosyadaki ikinci satırı yorumlamanız yeterlidir.

Veya VM kullanıyorsanız, aşağıdaki komutları tedarik bülteninize ekleyin:

sudo ex +"%s@DPkg@//DPkg" -cwq /etc/apt/apt.conf.d/70debconf
sudo dpkg-reconfigure debconf -f noninteractive -p critical

Ayrıca Travis CI’ın yaptığı şekilde de deneyebilirsiniz:

sudo -E apt-get -yq --no-install-suggests --no-install-recommends --force-yes install some_package

ttf-mscorefonts-installer(Bağımlı olan gibi) diğer bazı paketler language-pack-eniçin yukarıdakilerin çalışmadığı görülüyor.

echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true | sudo debconf-set-selections
sudo apt-get install -y language-pack-en

1
--force-yesÇOK korkutucu ve istemleri arasında patlama için tavsiye edilmez. Bir gün kırık ve telafi edilemez bir sistemle sonuçlanırsa şaşırmayın.
dragon788
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.