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

Live Update mit bootfähiger CD

uwel

Newbie
Hallo,

ich möchte von Suse 11.0 nach 11.2 updaten. Leider habe ich nur eine Double Layer DVD, welche bei Booten des Rechners nicht als bootfähiger Datenträger erkannt wird. Diese Vorgeschichte versuche ich hier http://www.linux-club.de/viewtopic.php?f=27&t=107390 zu lösen.

Da ich keine Netzwerkinstallation durchführen kann und mir die ISO-Datei auch nicht aus dem Internet herunterladen kann (durchschnittliche Downloadrate liegt bei mir bei ca. 40 kB/s; minimales DSL mit 384 kB/s), möchte ich über den Weg, den mir Tooltime vorgeschlagen hat ein Update versuchen:

Code:
Beitragvon Tooltime am 2010-Jan-06, 15:17
Im Prinzip kann man aus der DVD eine Boot-CD erstellen, hat der Rechner noch ein zusätzliches CD-Laufwerk? Wenn das erneute Downloaden zu lange dauert, könnte das eine Option sein.

Ich benutze selber eine Kombination aus Boot-CD und USB-Disk um Linux-Systeme zu installieren. Das Starten des Installationssystem besteht im Prinzip aus zwei Schritten.

      1. Bootmanager --> Kernel u. initrd laden --> einbinden des Installationsmedium.
      2. Installation vom Installationsmedium aus starten.

Dabei kann sich das Installationsmedium auf einer beliebigen Quelle befinden. (Server, interne/externe Platte, USB-Sticks). Mann sollte aber zwei Sachen beachten. Das Installationsmedium sollte nicht zum System gehören wie z.B eine home-Partition. Und ein Mediumwechsel im Bootlaufwerk (z.B DVD-ROM) sollte vermieden werden, das Unmounten u. Mounten bei laufenden Setup könnte Probleme bereiten. Also am Besten, Punkt 1 u. 2 auf getrennte Geräte.

Ein Live-Update nach diesem Thread http://www.linux-club.de/viewtopic.php?f=3&t=106080 hatte ich auch bereits versucht, scheitere aber an dem Fehler, das für libpopt.so.0 keine Versionsangabe verfügbar sei. Bei Yast nachgeschaut, ist eine Version 1.7-427.1 von popt mit der Datei libpopt.so.0 installiert. Dann ist noch libpopt0 installiert, aber ohne Versionbezeichnung! Und dies beinhaltet ebenfalls eine Dati libpot.so.0. Frage ich aber gezielt nach Versionen, kommt hier die Angabe Version 1.13-4.2-i586.

Jetzt meine Frage zum oben gezeigten Weg: Die DVD in ein zweites Laufwerk zum einbinden als Repository ist klar, aber womit bzw. wie starte ich das Update. Das geht ja sicher nicht mit einer DVD von Suse 11.0. Geht es mit einer Live-CD von 11.2 oder was benötige ich als Startwerkzeug? Denn wie erstelle ich eine Boot-CD für Suse 11.2, wenn ich selber kein 11.2 zur Verfügung habe?

Besten Dank für jeden Hinweis.

Uwe
 

Appleonkel

Hacker
Mit bootfähigen CD's bist du bei den LiveCD's wohl besser aufgehoben.
Wenn du eine zweiten Linuxrechner hast, kannst ja auch die DVD als repository über nfs freigeben und dann mit der Netzwerk-Install CD das System installieren.
Oder mit
Code:
yast2 image-creator
eine 11.2 LiveCD aus der DVD basteln.
 

josef-wien

Ultimate Guru
Wie Du in http://www.linux-club.de/viewtopic.php?f=27&t=107390#p664548 wünschst, geht es hier weiter, auch wenn ich keinen Zusammenhang mit "Live-CD-ROMs" sehe.

Wenn die DVD-DL voll ist, wird auch eine 8 GB-Speicherkarte nicht ausreichen, ein 4 GB-Stick ist zu klein. Wenn die Speicherkarte zu klein ist, mußt Du aus dem ISO-Image openSUSE-fremde Daten entfernen.

1. Installiere von http://unetbootin.sourceforge.net/ das entsprechende rpm-Paket.

2. Erzeuge mit K3b aus der DVD-DL ein ISO-Image.

3. Starte unetbootin, wähle Image - ISO und gib die ISO-Datei an, wähle das zutreffende USB-Laufwerk, drücke OK. unetbootin kopiert nun alle Daten aus dem ISO-Image auf die Speicherkarte und macht diese boot-fähig, das dauert natürlich seine Zeit.

4. unetbootin legt leider an Stelle der Verknüpfungen leere Dateien an, was das openSUSE-Installationsprogramm überhaupt nicht mag. Daher müssen diese Verknüpfungen mit
Code:
cd /hauptverzeichnis/des/iso-image
find -type l
ermittelt und beim USB-Medium manuell hergestellt werden. Bei einem geeigneten Dateisystem wie Ext2 reicht es, die leeren Dateien durch die Verknüpfungen zu ersetzen. Bei einem Dateisystem wie FAT32 mußt Du die ursprünglichen Dateien unter ihrem Verknüpfungsnamen kopieren, d. h. diese Dateien sind dann mit gleichem Inhalt unter zwei Namen vorhanden.

5. Starte den PC vom USB-Medium. Die bei http://de.opensuse.org/SuSE_Installation_vom_USB_Medium#Setup unter Setup geschilderte Vorgangsweise ist einzuhalten (bei 11.1 funktioniert es, bei 11.2 wird es wohl nicht anders sein). Alternativ zu unetbootin kannst Du auch die im LINK beschriebene Methode mit mksusebootdisk wählen, damit habe ich aber keine Erfahrung.
 

Tooltime

Advanced Hacker
Wenn ich das richtig sehe machen wir mit dem Thema Bootcd hier weiter. Ich habe mir dafür ein kleines Script gebastelt, damit ich mir nicht immer die ganzen Parameter und Pfade per Hand eintippen muss. Ausgangsbasis ist also ein Linux, das über das Dateisystem zugriff auf eine Installations-DVD bzw das Repository hat.

make_distribution_bootcd_11.2:
Code:
#! /bin/bash
#
#
INSTALL_ARCH=i386
# Für 64-Bit das #-Zeichen bei INSTALL_ARCH=x86_64 entfernen
# INSTALL_ARCH=x86_64
#
#
# Pfad zur openSUSE Version
PATH_DISTRIBUION=/daten/openSUSE/11.2/oss
# Name des CD-Image
PATH_BOOTCD_IMAGE=openSUSE_11.2_bootcd-"$INSTALL_ARCH"-selfmade.iso
#
#
# Daten der bootcd
# Verzeichnisse die komplett auf die Boot-CD kommen
IMAGE_DATA="$IMAGE_DATA $PATH_DISTRIBUION/boot"
IMAGE_DATA="$IMAGE_DATA $PATH_DISTRIBUION/docu"
IMAGE_DATA="$IMAGE_DATA $PATH_DISTRIBUION/media.1"
#
#
# 
# Pfad wo die CD zusammen gebaut wird.
IMAGE_BUILD_PATH=`mktemp -d -t my_boot_cd.XXXXXXXXXX`
#
# CD-Daten in temporären build-Pfad kopieren
echo "Kopieren der nötigen Dateien in temporäres Verzeichnis"
cp $PATH_DISTRIBUION/* $IMAGE_BUILD_PATH 2>/dev/null
cp -r $IMAGE_DATA $IMAGE_BUILD_PATH
#
# Eventuellen Schreibschutz von isolinux.bin aufheben.
chmod u+w $IMAGE_BUILD_PATH/boot/$INSTALL_ARCH/loader/isolinux.bin
#
# eigene Bootkonfiguration einfügen, falls vorhanden
MY_BOOT_CONFIG="/daten/openSUSE/11.2/my_gfxboot.cfg"
[ -r $MY_BOOT_CONFIG ] && cp -f $MY_BOOT_CONFIG $IMAGE_BUILD_PATH/boot/$INSTALL_ARCH/loader/gfxboot.cfg

# Erstellen des CD-Image
mkisofs -o $PATH_BOOTCD_IMAGE \
		-r -J -l \
		-b boot/$INSTALL_ARCH/loader/isolinux.bin \
		-c boot/$INSTALL_ARCH/loader/boot.cat \
		-no-emul-boot -boot-load-size 4 -boot-info-table \
		-graft-points -iso-level 4 -pad -allow-leading-dots \
		$IMAGE_BUILD_PATH
#
#
# Temporäre Dateien löschen
rm -rf $IMAGE_BUILD_PATH
Du müsstest dann die DVD einlegen und ein paar Pfade anpassen.

  • PATH_DISTRIBUION=/daten/openSUSE/11.2/oss
    MY_BOOT_CONFIG="/daten/openSUSE/11.2/my_gfxboot.cfg"
Die Datei my_gfxboot.cfg ist nur notwendig, wenn man Einstellungen für den Bootloader ändern will. Ich habe die folgenden Parameter geändert, damit er automatisch meine USB-Disk findet und der Pfad nicht immer per Hand angegeben werden muss.
  • install=hd
    install.hd.path=openSUSE/11.2/oss
Das Ergebnis ist ein ISO-Image für eine Boot-CD ähnlich wie die Netinstallversion.

Einen Haken hat ganze noch, bis 11.1 konnte man so eine Bootcd erstellen mit der man eine 32 u. 64-Bit Version installieren kann. Bei 11.2 funktionierte das nicht, daher ist es hier erforderlich im Script zu wählen welche Version man haben will (Shellvariable INSTALL_ARCH=x86_64).

So jetzt einfach von der CD booten, im Bootmanager mit F4 die Installationsquelle wählen und mit F7 die zu installierende Architektur (32 o. 64-Bit), die muss natürlich zur CD-Version passen.

Jetzt könnte noch ein zweites kleines Problem auftauchen, da man als Installationsquelle CDROM nicht das Laufwerk aussuchen kann, wird er wahrscheinlich nicht auf die DVD wechseln. Dann probiere mal Festplatte als Quelle aus und dort /dev/sr0 oder /dev/sr1 als Gerät ausprobieren. Wie bereits erwähnt kann alles als Installationsquelle dienen das als Dateisystem eingebunden werden kann. Im Extremfall eine gemountete Freigabe von einen Server über eine WLAN-Verbindung.

So und ich glaube jetzt an alles gedacht zu haben. Ach ja, achte bitte auf die Prüfsumme des ISO-Image und kontrolliere sie gleich nach dem Brennen. Dann kann man bei Problemen das Brennen als Fehlerquelle gleich ausschließen.
 
OP
U

uwel

Newbie
Hallo josef-wien und Tooltime,

besten Dank erst einmal für die Antworten. Diesen Thread hatte ich an anderer Stelle neu aufgemacht. Warum er dann hierher (Live-CD's) verschoben wurde, ist mir auch ein Rätsel. Ich sehe auch keinen Zusammenhang.

Jetzt mal zu den Euren Antworten.
josef-wien:
Vom Prinzip verstanden, aus der ISO müßte ich sicherlich einiges entfernen, aber der gesamte DVD-Inhalt wird auch nicht zur Aktualisierung benötigt. Da ist einiges zuviel drauf. Dann müßte die 8 GB-Karte reichen. Der Stick wird zu klein sein, da die SUSE 11.2 ISO von Haus aus bereits 4,7 GB hat.

Die Lösung werde ich mal ausprobieren. Brauche da aber noch ein wenig Zeit zu. Über die Links habe ich auch einiges an Lesestoff um weiterzukommen.

Tooltime:
Hier benötige ich wohl ein wenig länger, bis ich alles verstanden habe. Da sind meine Linux-Kenntnisse auch nach knapp 5 Jahren Linux-Erfahrung noch etwas bescheiden. Aber lass mich erst einmal lesen und nachdenken. Wenn ich nicht weiterkommen sollte, melde ich mich wieder.

Wenn es geklappt hat, setze ich diesen Thread auch auf gelöst. Eventuell noch mit weiteren Hinweisen.

Danke erst einmal

Uwe
 

Tooltime

Advanced Hacker
Das Prinzip ist einfach, hätte ich wohl erklären sollen:

  • Einfach alle Dateien von der DVD in ein temporäres Verzeichnis kopieren mit Ausnahme vom Verzeichnis suse, dadurch werden alle rpm-Pakete entfernt und es bleiben nur noch 506 MB übrig.

    Bei bedarf die Bootloaderconfig ändern, in meinen Fall damit die Repo-Quelle automatisch gefunden wird.

    Aus dem temporären Verzeichnis eine CD-Brennen die bootfähig ist.
Der eigentliche Wechsel des Installationsmedium erfolgt durch die Bootlaoderoptionen die jede bootbare CD/DVD von Haus aus mitbringt. Der Ergebnis ist quasi eine selbstgebaute Netinstall-CD

Alternativ könntest du genauso einfach die Netinstall-CD von openSUSE herunterladen und mit dem Bootmanager (Taste F4) deine Installationsquelle auswählen. Aber es ging ja darum, die Datenmenge die heruntergeladen werden muss zu minimieren.
 

Appleonkel

Hacker
uwel schrieb:
Warum er dann hierher (Live-CD's) verschoben wurde, ist mir auch ein Rätsel. Ich sehe auch keinen Zusammenhang.
Mit dem Paketmanager gab es ja keine Probleme, eher mit dem Booten von CD's, das meines Wissen alle LiveCD's können ;)
 
Oben