• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

zypper: auto-yes?

Moin Moin,

ich versuche gerade per skript ein "zypper in" auszuführen. Leider liefert mir die man-page keinen Hinweis darauf das es so etwas wie "auto-yes" als Option für zypper gibt. "-n" bzw "--no-interactive" liefert leider Fehler, welche ohne diese Option aufgelöst werden aber dann wieder die Eingabe "Y" bzw einfach das Drücken der Enter-Taste erfordern. Gibt es diese Option wirklich nicht? Im Zweifel bau ich mir ein kleines Perl-Skript was das Drücken der Entertaste ausführt aber schöner wäre es wenn man das mit zypper selbst erledigen könnte.
 

lOtz1009

Moderator
Teammitglied
In irgend einem Skript hab ich das mal verbastelt. Ich schau heute Abend zu Hause mal nach.
Allerdings weiß ich nicht, ob das was bringt, wenn Abhängigkeitsfehler auftreten.
 

Appleonkel

Hacker
Es gibt zypper -n
zypper help schrieb:
--non-interactive, -n Do not ask anything, use default answers automatically.
Finde ich sogar besser als auto-yes. Ansonsten geht es evtl. noch mit dem Programm yes was in einer endlosschleife "y" ausgibt.
 
OP
Geier0815

Geier0815

Guru
Entschuldige bitte, aber hast Du meinen Post gelesen? Bei mir werden Pakete deinstalliert und bei einigen der Vendor gewechselt. zypper normal aufgerufen listet dies auf und macht es dann nach einem Enter auf die Frage ob ich das so möchte. zypper mit "-n" bricht dann mit entsprechenden Fehlermeldungen ab.
Klar wäre es schön wenn man sämtliche Abhängkeiten sauber in den rpms lösen würde, aber bei ca. 150 Paketen die ins System sollen und ca. 10 die dabei Theater machen, nicht unbedingt das was ich wollte. Da ich die Paketliste schon über xargs ans zypper übergebe, weiß ich nicht wie ich "yes" da auch noch rein "pipen" sollte. Da die ganze Chose als autoinstall ja läuft, hatte ich die Hoffnung das es bei zypper ein undokumentiertes Feature ala dkgs auto-yes gibt.
 

Appleonkel

Hacker
Geier0815 schrieb:
Entschuldige bitte, aber hast Du meinen Post gelesen?
Ja hatte, ich ...
Die hälfte aber wohl nach lesen von l0tz antwort und reichlichen Überlegen, wieder verdrängt. :???:
Geier0815 schrieb:
Bei mir werden Pakete deinstalliert und bei einigen der Vendor gewechselt. zypper normal aufgerufen listet dies auf und macht es dann nach einem Enter auf die Frage ob ich das so möchte. zypper mit "-n" bricht dann mit entsprechenden Fehlermeldungen ab.
Das ist jetzt nur so eine Vermutung, aber vielleicht bekommt man das mit den entsprechenden Prioritäten in den Griff.
Geier0815 schrieb:
Klar wäre es schön wenn man sämtliche Abhängkeiten sauber in den rpms lösen würde, aber bei ca. 150 Paketen die ins System sollen und ca. 10 die dabei Theater machen, nicht unbedingt das was ich wollte. Da ich die Paketliste schon über xargs ans zypper übergebe, weiß ich nicht wie ich "yes" da auch noch rein "pipen" sollte. Da die ganze Chose als autoinstall ja läuft, hatte ich die Hoffnung das es bei zypper ein undokumentiertes Feature ala dkgs auto-yes gibt.
Wenn es immer die selben Pakete sind sollte man da wirklich an den Paketen Hand anlegen ;)
Eventuell hilft dir auch --force-resolution weiter.

P.S: Ist die Paketliste die du übergibst dynamisch erstellt?
 

lOtz1009

Moderator
Teammitglied
Also meine Optionen sind "--no-recommends --auto-agree-with-licenses --non-interactive"
Welche Fehler bekommst du denn nach deiner Methode?
 
OP
Geier0815

Geier0815

Guru
So, ich habe nun ein Perl-Script und ein bash-Script gebaut mit dem das Ganze zumindest läuft. Das Perl-Script baut einen schreibenden Dateihandle auf den Zypper-Prozess und wird über ein expect-Script mit dem nötigen "Y" und Enter versorgt.

Vielleicht ist ja einer der Herren in der Lage mir zu verraten wo ich die Standardeinstellungen für --non-interactive finde um mir solche Arien in Zukunft sparen zu können. Die normale Standardeinstellung davon bricht mir halt die Installation ab.
 

lOtz1009

Moderator
Teammitglied
IIRC werden bei non-interactive Fragen zur Signatur mit "n" beantwortet.
Dies könnte man noch mit --no-gpg-checks umgehen.
 
OP
Geier0815

Geier0815

Guru
Tja, das war mir auch schon klar aber das mache ich schon beim Einbinden des Repos. Die Frage war ja nun eher wo man das Standardverhalten einstellen kann, denn da weißt die man-Page drauf hin das das Verhalten von andern Faktoren abhängt aber schreibt nicht weiter wie man das Verhalten beeinflussen kann.
 

lOtz1009

Moderator
Teammitglied
Wenn, dann in /etc/zypp/zypper.conf oder /etc/zypp/zypp.conf
Wobei ich mich nicht erinnern kann, solche Optionen dort gesehen zu haben.
 
Oben