[Eisfair] "apt-mark hold *php*" mit dem eisman ?

Peter Bäumer peter at baeumer.duckdns.org
Mi Feb 18 05:45:00 CET 2026


Am 17.02.2026 um 22:08 schrieb Uwe Kunze:
> Hi Marcus,
> 
>> Dazu dient --exclude oder --skip, kann dir aber nicht sagen, ob das auch
>> Wildcards z. B. php* erlaubt.
> 
> Danke, scheint leider nicht mit Wildcards zu funktionieren.
> Habe ziemlich alle Varianten durchprobiert (wie z.B. --exclude=php8*),
> klappt nicht.
> 
> Dann 172 Pakete per Hand aktualisieren und die php-Pakete dabei
> auslassen ... auf jeder von 4 Maschinen.

Mit eisman upgrade --listonly kann eine Liste mit den anstehenden upgrade angezeigt werden.
Daraus kann eine Installationsliste gebaut werden, mit dem dann auch Pakete ausgeschlossen werden können.

Als Beispiel, da bei nur 2 Pakete anstehen, soll nur das base-certificate installiert werden, aber keine Pakete mit perl im Namen

kalisto # eisman upgrade --listonly
name       base-certificate
version    3.6.0
short      base-certificate - Various base certificate for eisfair
date       2026-02-17
url        https://www.pack-eis.de/dl.php?l=80601/base-certificate.tar.bz2
status     stable
---------------------------------------------------------
name       perl-mail-spamassassin
version    3.6.1
short      Perl - Mail::SpamAssassin
date       2026-02-17
url        https://www.pack-eis.de/dl.php?l=80602/perl-mail-spamassassin.tar.bz2
status     stable
---------------------------------------------------------

Mit awk den Paketnamen filtern:
kalisto # eisman upgrade --listonly| awk ' /name/ {print $2}'
base-certificate
perl-mail-spamassassin

und mit grep -v alle Pakete mit perl im Namen
kalisto # eisman upgrade --listonly| awk ' /name/ {print $2}'| grep -v 'perl'
base-certificate


Liste erstellen:
LISTE=( $(eisman upgrade --listonly| awk ' /name/ {print $2}'| grep -v 'perl') )


LISTE Installieren:
eisman install ${LISTE[*]}


Für php8 müsste es so aussehen:
einmal schauen ob alles nicht dabei ist:
eisman upgrade --listonly| awk ' /name/ {print $2}'| grep -v 'php8'

un d dann Mutig sein:
LISTE=( $(eisman upgrade --listonly| awk ' /name/ {print $2}'| grep -v 'php8') )
eisman install ${LISTE[*]}


> 
> VG Uwe

MfG
   Peter B.

PS: geht auch ohne grep:
     eisman upgrade --listonly| awk ' /name/ && !/php8/ {print $2}'
     /name/ alle Zeilen mit: name
     !/php8/ keine Zeilen mit php8
     ! kann als ein nicht gelesen werden...
     && die beiden Filter mit und (&&) verbinden



Mehr Informationen über die Mailingliste Eisfair