Script für Download der Suse-Patches
![](https://seccdn.libravatar.org/avatar/54a63f1224a27574165c42e5388f9bc4.jpg?s=120&d=mm&r=g)
Hallo, wir haben ein kleines Script gebastelt, mit dem man alle Patches einer Version von Suse automatisch downloaden kann. Dieses Script ist in der Anlage beigefügt. Vorgehen: sript in ein Verzeichnis kopieren, im gleichen Verzeichnis mit "wget http://www.suse.de/de/support/download/updates/73_i386.html" beispielsweise die html-datei mit den notwendigen Links vom Suse-Server laden. Anschließend das script mit: ./script 73_i386.html aufrufen. Es entsteht eine Datei (wget.datei) mit den notwendigen Links, die nun mit wget -i wget.datei aufgerufen werden kann und alle Patchdateien runterlädt. (Dabei wird ein wesentlich schnellerer Server als der Suse-Server benutzt) Allerdings gibt es noch ein Problem. Dieses befindet sich in der Zeile find . -type f -name down8 | xargs perl -pi.old -e "s/\bi386\/update\/7.3\b/7.3_update/g" Abhängig von der benötigten Version (7.0, 7.1, 7.2, 7.3) sollte die Zeile automatisch den richtigen Eintrag beinhalten. Momentan muß man die Zahlen entsprechend vor dem Aufruf des Scripts anpassen. Hat jemand dafür eine Lösung? Überhaupt würde ich mich freuen, wenn jemand Verbesserungen finden würde. Grüße, Werner ******* Script ****** #!/bin/ksh # die download-file von Suse anpassen # nur alle Zeilen mit ftp cat $1 | grep ftp > down1 # nur alle Zeilen mit "<td valign" cat down1 | grep "<td valign" > down2 # die Zeilen werden durch den Feldtrenner # automatisch aufgeteilt for i in $(cat down2) ; do echo $i >> down3 ; done # alle Zeilen mit "href" cat down3 |grep href >down4 # Feldtrenner ändern OLDIFS=$IFS IFS=\" # wieder die Zeilen trennen, mit Feldtrenner """ # es bleiben die html-Beschreibungen in eigenen # Zeilen stehen for i in $(cat down4) ; do echo $i >> down5; done # alle Zeilen mit "ftp" cat down5 |grep ftp >>down6 # Zeilen nach src.rpm und rpm sortieren # wahrscheinlich überflüssig sort down6 > down7 # alle Zeilen mit src.rpm weglassen cat down7 | grep -v "src.rpm" >down8 # download-Server ändern find . -type f -name down8 | xargs perl -pi.old -e "s/\bftp.suse.com\/pub\/suse\b/ftp.gwdg.de\/pub\/linux\/suse/g" find . -type f -name down8 | xargs perl -pi.old -e "s/\bi386\/update\/7.2\b/7.2_update/g" # Datei sichern cp down8 wget.datei rm down*
![](https://seccdn.libravatar.org/avatar/a3ff056493aff2be178ce8c6a4afa5c9.jpg?s=120&d=mm&r=g)
Werner Ginzky schrieb am 11.03.2002 (07:34):
wir haben ein kleines Script gebastelt, mit dem man alle Patches einer Version von Suse automatisch downloaden kann. [viele cat, grep,.. gesnippt]
Hallo Werner, ich habe mir Dein Script nicht allzu intensiv angesehn und meins nicht intensiv getestet, aber hast Du mal überlegt, einfach wget -r -A rpm -R src.rpm ftp://ftp.suse.com/pub/suse/i386/update/7.3 (bzw. ftp.gwdg.de/....) als Basis zu nehmen? Auf Wunsch kannst Du den wget-Aufruf ja in einem Script verstecken und auch das "7.3" und/oder den gewünschten ftp-Server als Argument übergeben. Die Ausführung sei dem geneigten Leser zu Übung empfohlen *g* (übersetzt: Ich bin gerade zu faul.). Weitergesponnen: Man könnte die Mirrorliste (http://www.suse.de/en/support/download/ftp/germ_mirrors.html) nach dem schnellsten Server durchtesten und den dann nehmen... Aber ich fürchte, das wäre etwas übertrieben. Gruß, Antje P.S.: Das "7.3" muß sich doch irgendwo raus"cut"ten lassen. Nur wo? uname gibt mir nix her... -- Anything on the ground is a cat toy. Anything not there yet, will be.
![](https://seccdn.libravatar.org/avatar/4d8530562813a13b5f5de8c9bcbbaea8.jpg?s=120&d=mm&r=g)
Hallöchen! Warum hat denn SuSE so etwas noch nicht eingebaut, so eine Art "Autoupdate"?! Die SuSE Gurus würden das bestimmt in 5mins schreiben *g*. Oder hab ich da das übersehen? Gruss Mario
Werner Ginzky schrieb am 11.03.2002 (07:34):
wir haben ein kleines Script gebastelt, mit dem man alle Patches einer Version von Suse automatisch downloaden kann. [viele cat, grep,.. gesnippt]
Hallo Werner,
ich habe mir Dein Script nicht allzu intensiv angesehn und meins nicht intensiv getestet, aber hast Du mal überlegt, einfach wget -r -A rpm -R src.rpm ftp://ftp.suse.com/pub/suse/i386/update/7.3 (bzw. ftp.gwdg.de/....) als Basis zu nehmen?
Auf Wunsch kannst Du den wget-Aufruf ja in einem Script verstecken und auch das "7.3" und/oder den gewünschten ftp-Server als Argument übergeben. Die Ausführung sei dem geneigten Leser zu Übung empfohlen *g* (übersetzt: Ich bin gerade zu faul.).
Weitergesponnen: Man könnte die Mirrorliste (http://www.suse.de/en/support/download/ftp/germ_mirrors.html) nach dem schnellsten Server durchtesten und den dann nehmen... Aber ich fürchte, das wäre etwas übertrieben.
Gruß, Antje
P.S.: Das "7.3" muß sich doch irgendwo raus"cut"ten lassen. Nur wo? uname gibt mir nix her...
-- Anything on the ground is a cat toy. Anything not there yet, will be.
-- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com
![](https://seccdn.libravatar.org/avatar/b86c281f936433b6682a4766844ecbba.jpg?s=120&d=mm&r=g)
hallöchen, Am Montag, 11. März 2002 11:46 schrieb spiekey:
Hallöchen! Warum hat denn SuSE so etwas noch nicht eingebaut, so eine Art "Autoupdate"?! Die SuSE Gurus würden das bestimmt in 5mins schreiben *g*. Oder hab ich da das übersehen?
Weil SuSE kein wirkliches Interesse daran hat, das alle derren Seiten immer mit wget abholen (Kostet ja auch alles viel Geld wegen der Volumina) ausserdem ist ja auch noch die Supportdatenbank _sdb.suse.de_ darin enthalten ... und darauf hat SuSE Urheberrechte, die auch jederzeit wieder offline gemacht werden kann ... und sogar sollte. Grüße Stephan -- Kurth EDV, Görlitzerstrasse 11, 31157 Sarstedt Tel.: 05066 / 900771, Mobil: 0170 / 6346007 http://www.kurthedv.com, Registered Linux User: 262575, http://counter.li.org
![](https://seccdn.libravatar.org/avatar/a3ff056493aff2be178ce8c6a4afa5c9.jpg?s=120&d=mm&r=g)
Hallo Mario, spiekey schrieb am 11.03.2002 (11:46):
Warum hat denn SuSE so etwas noch nicht eingebaut, so eine Art "Autoupdate"?! Die SuSE Gurus würden das bestimmt in 5mins schreiben *g*. Oder hab ich da das übersehen?
Du kennst YOU (Yast Online Update)? Gruß, Antje -- Whoever said there is no such thing as a stupid question has never worked in customer service.
![](https://seccdn.libravatar.org/avatar/ce3af4e2b76c2ccb739d7bbb0f0285db.jpg?s=120&d=mm&r=g)
Am Montag, 11. März 2002 17:37 schrieben Sie:
Hallo Mario,
spiekey schrieb am 11.03.2002 (11:46):
Warum hat denn SuSE so etwas noch nicht eingebaut, so eine Art "Autoupdate"?! Die SuSE Gurus würden das bestimmt in 5mins schreiben *g*. Oder hab ich da das übersehen?
Du kennst YOU (Yast Online Update)?
Gruß, Antje hi!
ein freund von mir hat ein script geschrieben (ich glaube er hat nichts dagegen, wenn ichs weitergeben), mit dem kann man sich die daten auf dem eigenen rechner mit den daten von ftp.suse.com "synchronisieren" lassen. das heißt du hast dann auf deinem lokalen Gerät ein spiegelung von (in diesem fall) ftp.suse.com/pub/suse/i386/update/7.3/ den ordner kannst du natürlich ändern. das script legst du dan in den ordner, wo du deine bisherigen updates hast, und startest es. dann spielst du die pakete am besten mit yast ein. wenn du willst kann ich dirs schicken grüße erwin
![](https://seccdn.libravatar.org/avatar/636565f8243fee5ae10cbf0493cfdbc3.jpg?s=120&d=mm&r=g)
Hallo, irgendwie bekomme ich das mit Samba nicht hin. Ich will innerhalb des gleichen VLANs 192.168.17.0 auf einen Server mit Samba zugreifen. Das klappt auch ganz wunderbar, leider kann ich aber in die gemounteten shares nicht schreibend zugreifen, lesen funktioniert! (sowohl von Windowsrechner aus, als auch von einem Linuxclient mittels mount Befehl)! Ich habe bei jedem Share read only auf no gesetzt! Hat jemand eine Idee? Hier noch meine smb.conf # Global parameters [global] workgroup = LUNA interfaces = eth1 encrypt passwords = Yes map to guest = Bad User log file = /var/log/samba/%m socket options = SO_KEEPALIVE IPTOS_LOWDELAY TCP_NODELAY character set = ISO8859-15 os level = 2 hosts allow = 192.168.17.0/255.255.255.0 printing = lprng veto files = /*.eml/*.nws/riched20.dll/*.{*}/ [homes] comment = Home Directories read only = No create mask = 0640 directory mask = 0750 browseable = No [backup] comment = backup path = /mnt/data2 read only = No browseable = No [printers] comment = All Printers path = /var/tmp create mask = 0600 printable = Yes browseable = No
![](https://seccdn.libravatar.org/avatar/7c83f882adfe44d1bb42f3b5212f1a30.jpg?s=120&d=mm&r=g)
Hallo, welche Rechte sind denn auf die Verzeichnisse am Server gesetzt ? Sind die user mittles smbuseradd angelegt und aktiv ? Gruß -SLSupport- Alex Ascherl Voltastr.4 91056 Erlangen URL: www.slsupport.de MAIL: info@slsupport.de TEL: 09131 992535 MOBIL: 0172 8498729 ----- Original Message ----- From: "Heinrich Steidl" <hsteidl@gmx.net> To: <suse-linux@suse.com> Sent: Saturday, August 17, 2002 1:14 AM Subject: Samba läßt mich nicht schreiben Hallo, irgendwie bekomme ich das mit Samba nicht hin. Ich will innerhalb des gleichen VLANs 192.168.17.0 auf einen Server mit Samba zugreifen. Das klappt auch ganz wunderbar, leider kann ich aber in die gemounteten shares nicht schreibend zugreifen, lesen funktioniert! (sowohl von Windowsrechner aus, als auch von einem Linuxclient mittels mount Befehl)! Ich habe bei jedem Share read only auf no gesetzt! Hat jemand eine Idee? Hier noch meine smb.conf # Global parameters [global] workgroup = LUNA interfaces = eth1 encrypt passwords = Yes map to guest = Bad User log file = /var/log/samba/%m socket options = SO_KEEPALIVE IPTOS_LOWDELAY TCP_NODELAY character set = ISO8859-15 os level = 2 hosts allow = 192.168.17.0/255.255.255.0 printing = lprng veto files = /*.eml/*.nws/riched20.dll/*.{*}/ [homes] comment = Home Directories read only = No create mask = 0640 directory mask = 0750 browseable = No [backup] comment = backup path = /mnt/data2 read only = No browseable = No [printers] comment = All Printers path = /var/tmp create mask = 0600 printable = Yes browseable = No -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com
![](https://seccdn.libravatar.org/avatar/636565f8243fee5ae10cbf0493cfdbc3.jpg?s=120&d=mm&r=g)
Tja, überall hab ich gesucht, in der firewall, aber daß an so etwas blöden wie den Verzeichnisrechten liegen kann. Genau das wars, die files hatten den richtigen user, aber eben das Verzeichnis selbst gehörte noch root. Toll danke, man sollte eben doch nicht mehr um diese Zeit an seinem Rechner rumbasteln. On Saturday 17 August 2002 01:20, Alex Ascherl wrote:
Hallo,
welche Rechte sind denn auf die Verzeichnisse am Server gesetzt ?
Sind die user mittles smbuseradd angelegt und aktiv ?
Gruß
-SLSupport- Alex Ascherl Voltastr.4 91056 Erlangen URL: www.slsupport.de MAIL: info@slsupport.de TEL: 09131 992535 MOBIL: 0172 8498729
![](https://seccdn.libravatar.org/avatar/7c83f882adfe44d1bb42f3b5212f1a30.jpg?s=120&d=mm&r=g)
-SLSupport- Alex Ascherl Voltastr.4 91056 Erlangen URL: www.slsupport.de MAIL: info@slsupport.de TEL: 09131 992535 MOBIL: 0172 8498729 ----- Original Message ----- From: "Heinrich Steidl" <hsteidl@gmx.net> To: <suse-linux@suse.com> Sent: Saturday, August 17, 2002 1:37 AM Subject: Re: Samba läßt mich nicht schreiben Tja, überall hab ich gesucht, in der firewall, aber daß an so etwas blöden wie den Verzeichnisrechten liegen kann. Genau das wars, die files hatten den richtigen user, aber eben das Verzeichnis selbst gehörte noch root. Toll danke, man sollte eben doch nicht mehr um diese Zeit an seinem Rechner rumbasteln. On Saturday 17 August 2002 01:20, Alex Ascherl wrote:
Hallo,
welche Rechte sind denn auf die Verzeichnisse am Server gesetzt ?
Sind die user mittles smbuseradd angelegt und aktiv ?
Gruß
-SLSupport- Alex Ascherl Voltastr.4 91056 Erlangen URL: www.slsupport.de MAIL: info@slsupport.de TEL: 09131 992535 MOBIL: 0172 8498729
-- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com
![](https://seccdn.libravatar.org/avatar/54a63f1224a27574165c42e5388f9bc4.jpg?s=120&d=mm&r=g)
Hi Antje "Antje M. Bendrich" schrieb:
Werner Ginzky schrieb am 11.03.2002 (07:34):
wir haben ein kleines Script gebastelt, mit dem man alle Patches einer Version von Suse automatisch downloaden kann. [viele cat, grep,.. gesnippt]
Hallo Werner,
ich habe mir Dein Script nicht allzu intensiv angesehn und meins nicht intensiv getestet, aber hast Du mal überlegt, einfach wget -r -A rpm -R src.rpm ftp://ftp.suse.com/pub/suse/i386/update/7.3 (bzw. ftp.gwdg.de/....) als Basis zu nehmen?
würde ich damit nicht alle rpm´s runterladen? Dies geht natürlich auch. Aber ich habe dann immer 1,2 GB Daten bekommen. Obwohl ich aber nur 400 MB brauche. bei ftp.gwdg.de kämen nämlich die verlinkten Dateien noch dazu. Grüße, Werner
![](https://seccdn.libravatar.org/avatar/a3ff056493aff2be178ce8c6a4afa5c9.jpg?s=120&d=mm&r=g)
Hallo Werner, Werner Ginzky schrieb am 11.03.2002 (12:00):
"Antje M. Bendrich" schrieb:
Werner Ginzky schrieb am 11.03.2002 (07:34):
wir haben ein kleines Script gebastelt, mit dem man alle Patches einer Version von Suse automatisch downloaden kann. wget -r -A rpm -R src.rpm ftp://ftp.suse.com/pub/suse/i386/update/7.3 (bzw. ftp.gwdg.de/....) als Basis zu nehmen?
würde ich damit nicht alle rpm?s runterladen?
Dies geht natürlich auch. Aber ich habe dann immer 1,2 GB Daten bekommen. Obwohl ich aber nur 400 MB brauche. bei ftp.gwdg.de kämen nämlich die verlinkten Dateien noch dazu.
Was meinst Du mit "alle rpm's"? Soweit ich das mit ein paar nicht allzu genauen Blicken sehen kann, liegen in ftp://ftp.gwdg.de/pub/linux/suse/ftp.suse.com/suse/i386/update/7.3 nur echte Updates. Und die Links wurden bei meinem recht schnell wieder abgebrochenen Testlauf nur angelegt, nicht ein zweites Mail geladen. Vielleicht könntest Du auch mit YOU (Yast Online Update) was werden? Irgendwo meine ich gelesen zu haben, daß YOU in seiner neuesten Version auch auf Kommandozeile (sprich Script-fähig) bedienbar ist, nicht mehr nur von der Yast2-Oberfläche aus. Gruß, Antje -- When tempted to fight fire with fire, remember that the Fire Department usually uses water.
![](https://seccdn.libravatar.org/avatar/54a63f1224a27574165c42e5388f9bc4.jpg?s=120&d=mm&r=g)
Hi Antje "Antje M. Bendrich" schrieb:
Hallo Werner,
Werner Ginzky schrieb am 11.03.2002 (12:00):
"Antje M. Bendrich" schrieb: würde ich damit nicht alle rpm?s runterladen?
Was meinst Du mit "alle rpm's"? Soweit ich das mit ein paar nicht allzu genauen Blicken sehen kann, liegen in ftp://ftp.gwdg.de/pub/linux/suse/ftp.suse.com/suse/i386/update/7.3 nur echte Updates. Und die Links wurden bei meinem recht schnell wieder abgebrochenen Testlauf nur angelegt, nicht ein zweites Mail geladen.
Nein, in den Verzeichnissen liegen die rpm´s verknüpft mit den Versions-rpms, z.B.: aaa_base-2001.10.19-1.i386.rpm aaa_base.rpm verknüpft auf die obere Datei und dann sind da noch die Source-rpm´s Insgesamt 3 mal so viel wie notwendig.
Vielleicht könntest Du auch mit YOU (Yast Online Update) was werden? Irgendwo meine ich gelesen zu haben, daß YOU in seiner neuesten Version auch auf Kommandozeile (sprich Script-fähig) bedienbar ist, nicht mehr nur von der Yast2-Oberfläche aus.
Gruß, Antje
Klar könnte man auch benutzen, aber ich nutze den Download in einem Source- Verzeichnis dann zum Update mehrerer Maschinen und brenne die rpm´s auf CD, damit ich sie auch außerhalb des Netzes nutzen kann. Für die Geschichte mit der Versionänderung hat keiner eine Lösung? Grüße, Werner
![](https://seccdn.libravatar.org/avatar/a3ff056493aff2be178ce8c6a4afa5c9.jpg?s=120&d=mm&r=g)
Hallo Werner, Werner Ginzky schrieb am 12.03.2002 (08:40):
"Antje M. Bendrich" schrieb:
Werner Ginzky schrieb am 11.03.2002 (12:00):
"Antje M. Bendrich" schrieb: würde ich damit nicht alle rpm?s runterladen? Was meinst Du mit "alle rpm's"? Soweit ich das mit ein paar nicht allzu genauen Blicken sehen kann, liegen in ftp://ftp.gwdg.de/pub/linux/suse/ftp.suse.com/suse/i386/update/7.3 nur echte Updates. Und die Links wurden bei meinem recht schnell wieder abgebrochenen Testlauf nur angelegt, nicht ein zweites Mail geladen. Nein, in den Verzeichnissen liegen die rpm?s verknüpft mit den Versions-rpms, z.B.: aaa_base-2001.10.19-1.i386.rpm
Richtig, wird geladen.
aaa_base.rpm verknüpft auf die obere Datei
Ja, und wird darum *nur als Link* im Download-Verzeichnis angelegt. Die Datei wird kein zweites Mal heruntergeladen.
und dann sind da noch die Source-rpm?s
Die werden durch das "-R src.rpm" nicht mitgeladen. Ich entschlüssele den wget-Aufruf nochmal: wget -A rpm -R src.rpm -r -np ftp://blablubb | | | `geht nie in höhere Verzeichnisse | | `lädt rekursiv alles runter | `weist die Endung src.rpm explizit zurück `lädt nur Dateien mit Endung rpm
Insgesamt 3 mal so viel wie notwendig.
Ich teste das Skript gerade selber aus. Bisher sieht es nicht danach aus. Ich war allerdings zu faul, die von Dir zu zerschnippelnde html-Datei mit dem tatsächlichen Inhalt der Verzeichnisse abzugleichen, sorry. Wenn ich auch nur ein einziges src.rpm oder eine doppelte Datei (kurzer und langer Name) finden sollte, melde ich mich heute abend noch mal.
Für die Geschichte mit der Versionänderung hat keiner eine Lösung?
Doch. Diverse Leute haben mir geantwortet, daß man das "7.3" aus /etc/SuSE-release rausschnippeln kann. Mein Script-Vorschlag wäre damit: #!/bin/bash # Alle zur installierten SuSE-Version vorhandenen Updates # laden VERSION=$(tac /etc/SuSE-release | tail -n1 | cut -d" " -f3) ARCHITEKTUR=$(tac /etc/SuSE-release | tail -n1 | \ cut -d" " -f4 | tr -d \(\)) wget -A rpm -R src.rpm -r -np \ ftp://ftp.gwdg.de/pub/linux/suse/ftp.suse.com/suse/$ARCHITEKTUR/update/$VERSION Umleitung der Ausgabe in Logdateien und ähnliche Späße darf sich jeder selbst basteln. In diesem Zusammenhand weise ich noch auf den Schalter "-N" von wget hin: -N, --timestamping keine Dateien holen, die älter als die lokalen Dateien sind Ist vielleicht bei häufigerer Ausführung des Skriptes ganz praktisch, habe ich aber noch nicht ausprobiert. Gruß, Antje -- Don't make me use uppercase...
participants (9)
-
Alex Ascherl
-
Antje M. Bendrich
-
Erwin lang
-
Heinrich Steidl
-
Markus Schiefer
-
spiekey
-
stephan-kurth@t-online.de
-
Werner Ginzky
-
Werner Jansen