[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: apt-get ohne interaktion



On 06.Sep 2003 - 13:37:26, Georg Damm wrote:
> Danke für die bisherigen Tipps. Das meiste hatte ich leider schon selbst 
> erfolglos ausprobiert.
> 
> 1. Das Problem der interaktiven Abfragen (ob die Version des Paketbetreuers 
> ... installiert werden soll oder nicht) läßt sich - zumindest bei tetex-extra 
> -  weder mit DEBIAN_FRONTEND=noninteractive noch mit der apt-get option -y 
> abschalten. Kann das daran liegen, dass das Paket in derHinsicht schlecht 
> gepackt ist?

Ich denke nicht das das Paket schlecht gepackt ist. Das Ding ist halt
das solch eine Abfrage ein bisschen einfacher mit ein wenig
Shellscripting in einem der (pre|post)inst Skripte zu machen ist, als
per debconf. Man möge mich da berichtigen, falls ich mich irre. Und
daher hilft debconf nichts und die Option für apt-get betrifft wohl
eher die apt-get Fragen und nicht die der Config-Skripte. Wenn du
genau weiss das du garantiert alle Fragen mit 'y' oder 'n' beantworten
kannst und keine debconf Fragen kommen, dann kannst du mit yes|apt-get
... arbeiten.

> 2. Ich bekomme (push-update bei mehreren Rechnern) mit
> 
> dpkg --get-selections \* | dsh -aci -- dpkg --set-selections
> dsh -g all -c -- DEBIAN_FRONTEND=Noninteractive apt-get update && apt-get -y 
> -q dist-upgrade
> 
> schon in der ersten Zeile die Fehlermeldung 
> 
> dsh: dsh.c:556: do_shell: Zusicherung »((((__extension__ ({ union { 
> __typeof(childstatus) __in; int __i; } __u; __u.__in = (childstatus); 
> __u.__i; }))) & 0x7f) == 0)« nicht erfüllt.
> Abgebrochen
> 
> Der Prozeß läuft dann trotzdem weiter, es werden aber nur die ersten 50 Pakete 
> per dpkg weitergegeben. Ist das ein Bug von dsh??

Frag doch mal bugs.debian.org. Übrigens, wieso hast du da eigentlich
einen \* bei dpkg --get-selections, das ist AFAIK überflüssig.

Das mit den 50 Paketen kommt daher weil du keine apt-get
dselect-upgrade machst, denn die Auswahl die du mittels dpkg
--set-selections setzt wird bei apt-get nur mit dselect-upgrade
benutzt, wie du aus den manpages auch erfahren hättest. Das was du
machst ist lediglich ein normales dist-upgrade.

Wenn das weglassen des \* nicht hilft, dann ist es ein Bug im dsh und
du solltest ihn melden, auf das er behoben wird.

Um sicherzugehen, das das apt-get Zeug nur ausgeführt wird wenn das
setzen der Paketauswahl geklappt hat wäre es wohl besser ein &&
dazwischen zu packen.

Andreas

-- 
Lieber untertauchen als zugrunde gehen...



Reply to: