Tester gesucht: Mageia Live-DVD booten mit grub2

Dieses Forum ist für die erweiterte Hilfe und Unterstützung vorgesehen:

Bitte stelle hier Deine Fragen zur fortgeschrittenen Benutzung von Mageia. Beispielsweise geht es hier um Fragen zum Netzwerk, automatischen Installationen, komplexer Serverkonfiguration, Kerneltuning, Aufsetzen eines Mageia-Mirrors, kurz gesagt: alle Aufgaben, die auch für erfahrene Benutzer eine Herausforderung sind.

Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon lula » Sep 17th, '13, 01:06

Hallo,

was mir bei Mageia schon länger fehlt, ist die Möglichkeit, das Live-Iso auf eine(n) Platte/Stick zu kopieren, einen entspr. Boot-Eintrag zu erstellen und dann das neue Live-Medium zu testen. Mit grub2 ist das bei anderen Distris schon länger möglich, bei Mageia fehlte mir das noch, also habe ich mich mal daran gemacht, das zu ermöglichen. Für mich selbst hatte ich das schon länger gelöst, aber ich wollte das ganz gerne etwas allgemeiner gestalten, damit alle Mageia-Nutzer etwas davon haben, also Ihr seid alle aufgefordert, das auszuprobieren, zu kommentieren, zu verbessern ...

Hier jetzt also die Anleitung (etwas länger), aber möglicherweiser kommt ja etwas dabei heraus, was später in die Distribution übernommen wird, zumal im int. Forum das auch schon öfter mal Thema war.

Voraussetzungen:
    Mageia-4-alpha2-LiveDVD-KDE4-x86_64-DVD.iso vorhanden und geprüft mit md5sum, o.ä.
    grub2 installiert
    isomaster installiert
    kpartx installiert
    qemu installiert
    ca. 5GB Plattenplatz (gerne auch mehr)
    root-shell
Vorgehen (als root):
    Laden wichtiger Module für die benutzten Tools
    Anlegen des Arbeits-Verzeichnisses mit Unterverzeichnissen
    Anlegen eines ca. 2GB-Platten-Images, partionieren, anlegen des Dateisystems
    Installation von grub2 in das Platten-Image, grub.cfg anlegen
    initrd vom Live-Iso auspacken, anpassen, wieder zusammenpacken
    Austausch der initrd im Live-Iso und Speichern des neuen Isos
    Testen
Was jetzt folgt ist ein Haufen shell-Befehle + Screenshots, Kommentare und Ausgaben beginnen mit #

Code: Alles auswählen
#~ laden von loop und dm_mod
modprobe -v loop
modprobe -v dm_mod
#~ Kontrolle mit
lsmod | grep -e loop -e dm
#~ dm_mirror              21976  0
#~ dm_region_hash         20849  1 dm_mirror
#~ dm_log                 18529  2 dm_region_hash,dm_mirror
#~ dm_mod                 88398  2 dm_log,dm_mirror
#~ loop                   27979  1
#~ --
#~ cwd ist bei mir /data2
mkdir -p liveiso/{tempmount,initrd/inittest,isomount}
cd liveiso
#~ --
#~ Anlegen der Image-Datei, nennt sich sparse-file
dd if=/dev/zero of=mgatest.img bs=1 count=0 seek=2GB
#~ 0+0 Datensätze ein
#~ 0+0 Datensätze aus
#~ 0 Bytes (0 B) kopiert, 0,00979479 s, 0,0 kB/s
# Partitionstabelle anlegen
fdisk mgatest.img
n<Return>
<Return>
<Return>
<Return>
<Return>
w<Return>
# Kontrolle mit
fdisk -l mgatest.img
#~ Disk mgatest.img: 2000 MB, 2000000000 bytes, 3906250 sectors
#~ Units = Sektoren of 1 * 512 = 512 bytes
#~ Sector size (logical/physical): 512 bytes / 512 bytes
#~ I/O size (minimum/optimal): 512 bytes / 512 bytes
#~ Disk identifier: 0x3fc757c3

      #~ Gerät  boot.     Anfang        Ende     Blöcke   Id  System
#~ mgatest.img1            2048     3906249     1952101   83  Linux
#~ --
#~ Mit kpartx verbinden und Dateisystem anlegen
kpartx -av mgatest.img
#~ add map loop0p1 (252:0): 0 3904202 linear /dev/loop0 2048
#~ Wichtig hierbei: loop0p1
mkfs.ext2 /dev/mapper/loop0p1
#~ mke2fs 1.42.7 (21-Jan-2013)
#~ Blöcke des Gerätes werden verworfen: erledigt                       
#~ Dateisystem-Label=
#~ OS-Typ: Linux
#~ Blockgröße=4096 (log=2)
#~ Fragmentgröße=4096 (log=2)
#~ Stride=0 Blöcke, Stripebreite=0 Blöcke
#~ 122160 Inodes, 488025 Blöcke
#~ 24401 Blöcke (5.00%) reserviert für den Superuser
#~ Erster Datenblock=0
#~ Maximale Dateisystem-Blöcke=503316480
#~ 15 Blockgruppen
#~ 32768 Blöcke pro Gruppe, 32768 Fragmente pro Gruppe
#~ 8144 Inodes pro Gruppe
#~ Superblock-Sicherungskopien gespeichert in den Blöcken:
        #~ 32768, 98304, 163840, 229376, 294912

#~ Platz für Gruppentabellen wird angefordert: erledigt                       
#~ Inode-Tabellen werden geschrieben: erledigt                       
#~ Schreibe Superblöcke und Dateisystem-Accountinginformationen: erledigt
#~ --
#~ mounten der Partition, Grub2 installieren
mount /dev/mapper/loop0p1 tempmount/
#~ Kontrolle mit
df -h | grep tempmount
#~ /dev/mapper/loop0p1  1,9G    2,9M  1,8G    1% /data2/liveiso/tempmount
grub2-install --boot-directory=/data2/liveiso/tempmount /dev/loop0
#~ jede menge
#~ device-mapper: table ioctl on  failed: Kein passendes Gerät bzw. keine passende Adresse gefunden
#~ ...
#~ installation beendet. Keine Fehler aufgetreten.
# also testen
umount tempmount
kpartx -dv mgatest.img
#~ del devmap : loop0p1
#~ loop deleted : /dev/loop0
# -m Hauptspeicher in MB -hda 1. Platte -vga GraKa -monitor in der aufruf. shell
qemu-system-x86_64 -m 1024 -hda mgatest.img -vga std -monitor stdio
#~ sollte einen grub-prompt liefern, wie im screenshot
shot01.png
shot01: grub2 prompt
shot01.png (8.56 KiB) 6461-mal betrachtet
Code: Alles auswählen
#~ wieder einhängen
kpartx -av mgatest.img
mount /dev/mapper/loop0p1 tempmount/
# Anlegen der grub.cfg im Image
cat << EOF > tempmount/grub2/grub.cfg
set timeout=-1
set default=0

menuentry 'Mageia-4-alpha2-LiveDVD-KDE4-x86_64-DVD.iso isofrom' {
  set isofile="/Mageia-4-alpha2-LiveDVD-KDE4-x86_64-DVD.iso"
  loopback loop \$isofile
  linux    (loop)/boot/vmlinuz root=mgalive:LABEL=Mageia-4-KDE4-LiveDVD ro rd.luks=0 rd.lvm=0 rd.md=0 rd.dm=0 lang=de isofrom=/dev/sda1:\$isofile 3 vga=788
  initrd   (loop)/boot/cdrom/initrd.gz
}

menuentry 'Mageia-4-alpha2-LiveDVD-KDE4-x86_64-DVD.iso isofrom rd.break=initqueue' {
  set isofile="/Mageia-4-alpha2-LiveDVD-KDE4-x86_64-DVD.iso"
  loopback loop \$isofile
  linux    (loop)/boot/vmlinuz root=mgalive:LABEL=Mageia-4-KDE4-LiveDVD ro rd.luks=0 rd.lvm=0 rd.md=0 rd.dm=0 lang=de isofrom=/dev/sda1:\$isofile 3 vga=788 rd.break=initqueue
  initrd   (loop)/boot/cdrom/initrd.gz
}
EOF
# Kontrolle mit
cat tempmount/grub2/grub.cfg
# und wieder aushängen, testen
umount tempmount
kpartx -dv mgatest.img
qemu-system-x86_64 -m 1024 -hda mgatest.img -vga std -monitor stdio
#~ Menü wie in
shot02.png
shot02: grub2 menü
shot02.png (10.13 KiB) 6461-mal betrachtet
Code: Alles auswählen
#~ --
# mounten der original-Iso und entpacken der initrd
# nicht wundern, bei mir heißt die Mageia-4-alpha2-LiveDVD-KDE4-x86_64-DVD.iso.orig
mount Mageia-4-alpha2-LiveDVD-KDE4-x86_64-DVD.iso.orig isomount
#entpacken der initrd
cat isomount/boot/cdrom/initrd.gz | xz -d > initrd/initrd
# iso wieder weghängen
umount isomount/
cd initrd/inittest/
# auspacken des cpios
cpio -div --no-absolute-filenames < ../initrd
# Anlegen einer neuen Datei liveiso.sh, da passiert eigentlich alles um vom Iso zu booten
cat << EOF > usr/lib/dracut/hooks/initqueue/liveiso.sh
#!/bin/sh

type getarg >/dev/null 2>&1 || . /lib/dracut-lib.sh

# isofrom="/dev/sda1:/m4.iso"
if [ -n "\$isofrom" ]; then
  isomount="/live/isomount"
  isodev=\$(echo "\$isofrom" | sed 's,:.*\$,,g')
  isofile=\$(echo "\$isofrom" | sed 's,^.*:,,g')
  if [ ! -z "\$isodev" -a ! -z "\$isofile" ]; then
    mkdir -m 0755 -p "\$isomount"
  else
    emergency_shell -n isofrom "Break in liveiso, check isodev and isofrom "
  fi
 
  isodevfs=\$(blkid -s TYPE -o value "\$isodev")
  grep -q "\$isomount" /proc/mounts || mount -n -r -t "\$isodevfs" "\$isodev" "\$isomount" > /dev/null 2>&1  || emergency_shell -n isofrom "Break in liveiso, mounting failed"
 
 
  if [ -e "\${isomount}\${isofile}" ]; then
   
    losetup -a | grep -q "\${isomount}\${isofile}"
    if [ \$? -ne 0 ]; then
      losetup \$(losetup -f) "\${isomount}\${isofile}" || emergency_shell -n isofrom "Break in liveiso, losetup failed"
    fi
  else
     emergency_shell -n isofrom "Break in liveiso, isofile does not exist"
  fi
fi
EOF
#~ Kontrolle mit
cat usr/lib/dracut/hooks/initqueue/liveiso.sh
# ausführbar machen
chmod +x usr/lib/dracut/hooks/initqueue/liveiso.sh
#~ Kontrolle mit
ls -l usr/lib/dracut/hooks/initqueue/liveiso.sh
#~ immer schön auf die x-bits achten
#~ wieder zusammenpacken, generiert die neue initrd
find | cpio -coV  | xz --check=crc32 --lzma2=dict=1MiB > ../initrd.gz
#~ --
#~ neues Iso erstellen
cd ../../
#~ Testplatte wieder einhängen
kpartx -av mgatest.img
mount /dev/mapper/loop0p1 tempmount/
# original-iso mit isomaster öffnen
isomaster Mageia-4-alpha2-LiveDVD-KDE4-x86_64-DVD.iso.orig
# Pfade entspr. einstellen, unten in /boot/cdrom initrd.gz auswählen und "Entfernen" drücken

shot03.png
shot03: alte initrd entfernen
Zuletzt geändert von lula am Sep 17th, '13, 06:01, insgesamt 5-mal geändert.
lula
 
Beiträge: 644
Registriert: Feb 10th, '12, 20:13

Tester gesucht: Mageia Live-DVD booten mit grub2, Forts.

Beitragvon lula » Sep 17th, '13, 01:11

Code: Alles auswählen
# oben die neue initrd.gz auswählen und "Hinzufügen" drücken

shot04.png
shot04: neue initrd

Code: Alles auswählen
#~ und das neue Iso in die gemountete Partion unter dem originalen Dateinamen (Mageia-4-alpha2-LiveDVD-KDE4-x86_64-DVD.iso) speichern
#~ also "Speichern unter", Pfad auswählen (bei mir /data2/liveiso/tempmount)

shot05.png
shot05: neues iso speichern

Code: Alles auswählen
# isomaster beenden, Kontrolle mit
ls -l tempmount/
#~ drwxr-xr-x 4 root root       4096 Sep 17 01:29 grub2
#~ drwx------ 2 root root      16384 Sep 17 01:27 lost+found
#~ -rw------- 1 root root 1460963328 Sep 17 01:33 Mageia-4-alpha2-LiveDVD-KDE4-x86_64-DVD.iso
#~ Mageia-4-alpha2-LiveDVD-KDE4-x86_64-DVD.iso sollte vorhanden sein
#~ also aushängen, loop entfernen, testen
umount tempmount/
kpartx -dv mgatest.img
#~ del devmap : loop0p1
#~ loop deleted : /dev/loop0
#~ fertig, also testen
qemu-system-x86_64 -m 1024 -hda mgatest.img -vga std -monitor stdio

Wenn dann irgendwann "Welcome to Mageia 4!" auftaucht, hat's geklappt
shot06.png
shot6: welcome to ...

Wer dann noch möchte, kann das ganze noch auf Hardware probieren z.B. auf Stick / Festplatte,
bin gespannt auf Eure Rückmeldungen...

Grüße,
Lutz
lula
 
Beiträge: 644
Registriert: Feb 10th, '12, 20:13

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon Phoenix » Sep 17th, '13, 18:24

Hallo Lutz,

Einwürfe aus dem Untergrund... :ugeek:

- Funktioniert denn ein "Installieren" des Live- Isos mit dd nicht?
- Hat das dann auf den Stick gebrachte Livesystem keinen eigenen Bootmanager (isolinux oder so)?
- Weshalb möchtest Du unbedingt den Grub 2 dazu nutzen -> welche Vorteile versprichst Du Dir davon?
- Kopieren: das Iso als ganzes z.B. mit cp (oder dem Dateimanager) auf den Stick kopieren?

"Zwischendurch" sprichst Du davon, den Grub 2 zu installieren- doch wohl auf den Stick? Hättest Du dazu eine Quelle/ einen Link zu einer Anleitung?

Die Konsolenausgaben sind hier etwas zersplittert. Sind die bei Dir alle in einem Strang entstanden, oder hast Du mehrere Anläufe gemacht?

Ich möchte ja gerne- leider besteht bei uns die Netzschwäche weiter.

Wäre das, was Du da ausführst, auch mit Remastern möglich?

Viel Erfolg mit Deiner Idee in die Runde (Du hast das ja schon erfolgreich durchgeführt)

Phoenix
Phoenix
 
Beiträge: 500
Registriert: Jun 7th, '11, 23:13

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon lula » Sep 17th, '13, 18:58

Hallo,

Phoenix hat geschrieben:- Funktioniert denn ein "Installieren" des Live- Isos mit dd nicht?
- Hat das dann auf den Stick gebrachte Livesystem keinen eigenen Bootmanager (isolinux oder so)?
- Weshalb möchtest Du unbedingt den Grub 2 dazu nutzen -> welche Vorteile versprichst Du Dir davon?
- Kopieren: das Iso als ganzes z.B. mit cp (oder dem Dateimanager) auf den Stick kopieren?

der Trick an der Geschichte ist folgender:
Wenn Du mit dd ein live-Iso auf ein Stick "kopierst", dann ist der Rest des Sticks unbrauchbar, also angenommen Du hast das KDE-Live-Iso mit 1,5GB und haust das auf einen 8GB-Stick, sind die restlichen 6,5GB für die Tonne. Deshalb können inzwischen viele Distributionen vom Iso gestartet werden, Du hast also neben dem Mageia-KDE-Iso noch ein Mageia-Gnome-Iso, ein SuSE-Iso ... Das Iso, das gestartet werden soll, wählst Du über das Menü von grub2 aus. Damit das funktioniert, muß die zu startende Iso darauf reagieren, daß sie von einem Iso läuft. Das gibt es (m. W.) bisher bei Mageia noch nicht, deshalb hier der 1. Versuch. Und natürlich hat das Live-Medium einen bootloader, sonst könnte man es nicht starten.
Phoenix hat geschrieben:"Zwischendurch" sprichst Du davon, den Grub 2 zu installieren- doch wohl auf den Stick? Hättest Du dazu eine Quelle/ einen Link zu einer Anleitung?
Steht doch alles da, ersetze /dev/loop0 durch /dev/sdX.

Phoenix hat geschrieben:Die Konsolenausgaben sind hier etwas zersplittert. Sind die bei Dir alle in einem Strang entstanden, oder hast Du mehrere Anläufe gemacht?
Der Hirnschmalz steckt im Verständnis des Bootmechanismus (dracut) und der Erstellung des entpr. Skripts, nicht in dem "Drumherum" das ist bloses doing.

Phoenix hat geschrieben:Wäre das, was Du da ausführst, auch mit Remastern möglich?
Das ist nach meinem Verständnis remastern, die originale initrd wird durch eine andere ersetzt.

Grüße,
Lutz
lula
 
Beiträge: 644
Registriert: Feb 10th, '12, 20:13

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon Phoenix » Sep 17th, '13, 23:02

Danke Lutz,

ich hab ja angedeutet, daß ich Deine Arbeit mangels Iso kaum werde nachstellen können. Dennoch interessiert mich das soweit, daß ich das auskopiert habe. Nur fallen mir dann beim "in die Form bringen" (optisch) im Writer Dinge auf, die mich meist zu langen Nachforschungen treiben würden. Deshalb die Nachfragen...

Ich bin mir nicht sicher, meine aber, daß ich 'Liveinstallationen per dd' auch nachträglich noch verkleinert habe, ohne daß die Bootfähigkeit litt. GParted war das Werkzeug dabei...

Was Du da mit mehreren Isos erwähnt hast, gibt es wohl auch in diversen Tipps im INet (ist hier wohl auch bereits behandelt worden). Ich hab solch eine Aufgabe ja mit der VirtualBox zu lösen versucht; klar, daß Deine Lösung Platz spart.

Ich hoffe, daß Deine Idee zu Nachstellungen anregt und ggfs. Verbesserungen an Mageia Live bringt.

Nette Grüße

Phoenix
Phoenix
 
Beiträge: 500
Registriert: Jun 7th, '11, 23:13

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon unklar » Feb 10th, '14, 22:24

Hallo lula,

da bin ich bei dir gelandet, weil es mit meinem Test nicht klappt.

Ich habe mir einen USB-Stick eingerichtet, mit grub2 und einigen Iso's, aber die mga4 will einfach nicht.
D.h., mga3-dual und mga4-dual tun es, jedoch die KDE4-x86_64-DVD.iso tut es nicht.

In einigen Quellen steht zu lesen, dass es nicht mit jeder ISO gelingt...

Das ist meine grub.cfg(manuell befüllt)
Code: Alles auswählen
# das ist meine eigene multiboot-usb-grub.cfg
# zur freien verwendung/unklar/2014-01-15
# folgend de-tastatur-layout (wieder entfernt ist derzeit unbekannt)

insmod part_msdos
insmod ext2
insmod png
insmod gzio
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
#loadfont /boot/grub/fonts/unicode.pf2
#set locale_dir=/boot/grub/locale
#set lang=en_US
#insmod gettext
#terminal_output gfxterm

set gfxpayload=1024x768x32
set menu_color_normal=white/blue
set timeout=20
set default=1

set root='(hd0,msdos1)'
search --no-floppy --label --set=root MULTIUSB
search --no-floppy --fs-uuid --set=root E70D-D399

# set sysresciso="/boot/isos/systemrescuecd-x86-4.0.0.iso"

menuentry "SystemRescueCD 4.0.0 (i586 load to RAM)" {
      set isofile=$sysresciso
      loopback loop $isofile
      linux (loop)/isolinux/rescue32 docache -- rescue32 docache isoloop=$isofile setkmap=de
      initrd (loop)/isolinux/initram.igz
}

menuentry "SystemRescueCD 4.0.0 (x86_64 load to RAM)" {
      set isofile=$sysresciso
      loopback loop $isofile
      linux (loop)/isolinux/rescue64 docache -- rescue32 docache isoloop=$isofile setkmap=de
      initrd (loop)/isolinux/initram.igz
}

menuentry "Parted Magic (load to RAM)" {
      set isofile="/boot/isos/pmagic_2013_05_01.iso"
      loopback loop $isofile
      linux (loop)/pmagic/bzImage iso_filename=$isofile edd=off load_ramdisk=1 prompt_ramdisk=0 rwnomce sleep=10 loglevel=0 keymap=de-latin1 de_DE
      initrd (loop)/pmagic/initrd.img
}

menuentry "antiX-13.2_x64-full.iso" {
      set isofile="/boot/isos/antiX-13.2_x64-full.iso"
      loopback loop $isofile
      linux (loop)/antiX/vmlinuz fromiso=$isofile antiX=MLX lang=de_DE
      initrd (loop)/antiX/initrd.gz
}

menuentry "Mageia-4-KDE4-x86_64-DVD.iso" {
      set isofile="/boot/isos/Mageia-4-LiveDVD-KDE4-x86_64-DVD.iso"
      loopback loop $isofile
      linux (loop)/boot/vmlinuz root=mgalive:LABEL=Mageia-4-KDE4-LiveDVD ro rd.luks=0 rd.lvm=0 rd.md=0 rd.dm=0 lang=de isofrom=/dev/sda1:\$isofile 3
      initrd (loop)/boot/cdrom/initrd.gz 
}

menuentry "Run-Slax-7.0.8-x86_64.iso" {
      set isofile="/boot/isos/slax-German-7.0.8-x86_64.iso"
      loopback loop $isofile
      linux (loop)/slax/boot/vmlinuz from=$isofile load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 slax.flags=xmode
      initrd (loop)/slax/boot/initrfs.img
}

menuentry "Mageia-4-RC-dual-DVD.iso" {
      set isofile="/boot/isos/Mageia-4-RC-dual-DVD.iso"
      loopback loop $isofile
      linux (loop)/isolinux/x86_64/vmlinuz from=$isofile ro rd.luks=0 rd.lvm=0 rd.md=0 rd.dm=0 lang=de xmode=800x600 xrandr
      initrd (loop)/isolinux/x86_64/all.rdz
}

menuentry "MX-14-i386-xfce.iso" {
      set isofile="/boot/isos/MX-14-beta2.iso"
      loopback loop $isofile
      linux (loop)/antiX/vmlinuz fromiso=$isofile antiX=MLX lang=de_DE
      initrd (loop)/antiX/initrd.gz
}

menuentry "Kali-Linux-Live-amd64.iso" {
      set isofile="/boot/isos/kali-linux-1.0.6-amd64.iso"
      loopback loop $isofile
      linux (loop)/live/vmlinuz fromiso=$isofile boot=live username=root hostname=kali
      initrd (loop)/live/initrd.img
}

So sieht die VZ-Struktur aus
VerzStruktur.jpg

Das Menü
mga4kde67DVD.jpg

und die Fehlermeldung(en) in qemu
mga4kde73isomaster.jpg

egal, was mit root=.. und dem LABEL anstellst, dracut findet es einfach nicht :oops:
Nicht irritieren lassen, die Bilder sind nicht fortlaufend aufgenommen
Was mir spanisch vorkommt, isomaster meckert immer beim speichern
Code: Alles auswählen
.
# isomaster /media/DATEN/Distris/Tests/Mageia-4-LiveDVD-KDE4-x86_64-DVD.iso
Gtk-Message: Failed to load module "canberra-gtk-module"

(isomaster:8458): GVFS-RemoteVolumeMonitor-WARNING **: cannot connect to the session bus: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
mangling
opening '/media/MULTIUSB_/boot/isos/Mageia-4-LiveDVD-KDE4-x86_64-DVD.iso' for writing
writing blank at 0
writing terminator at 9800
sorting 9660
writing primary directory tree at A800
sorting joliet
writing supplementary directory tree at 11800
writing 9660 path tables at 17800
writing joliet path tables at 18800
writing files at 19800
writing long NMs at 5F4FF000
writing pvd at 8000
writing svd at 9000
freeing memory
Quitting
[root@localhost liveiso]# umount isomount
 

Vielleicht siehst du ja den Fehler, ich habe erstmal die **** voll. :|
El Conkystador (el conquistador = der Sieger) ein Markenzeichen für @Sector11 8-)
unklar
 
Beiträge: 1468
Registriert: Jun 1st, '11, 15:06

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon lula » Feb 11th, '14, 01:20

Hallo,

bei der Installations-DVD brauchst Du den ganzen Spuk nicht, die kannst Du mit grub2 direkt vom originalen Iso booten. Das Patchen der initrd ist nur für die Live-DVDs, die Installer bringen ja eine initrd mit, die startfähig ist, bei den Live-DVDs ist das leider nicht so.

Der Eintrag für die Mageia-4-x86_64-DVD.iso sieht bei mir folgendermaßen aus:

Code: Alles auswählen
menuentry "MAGEIA4 x86_64 Loop-install" {
  loopback loop /iso/Mageia-4-x86_64-DVD.iso
  linux (loop)/x86_64/isolinux/alt0/vmlinuz lang=de vga=791
  initrd (loop)/x86_64/isolinux/alt0/all.rdz
}


Den Pfad zu dem Iso mußt Du natürlich anpassen, den vga-Wert ggf. auch.

Grüße
Lutz
lula
 
Beiträge: 644
Registriert: Feb 10th, '12, 20:13

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon lula » Feb 11th, '14, 08:41

Hallo,

ich sehe gerade, Du hast ja doch eine Live-DVD, die Aussage
unklar hat geschrieben: D.h., mga3-dual und mga4-dual tun es, jedoch die KDE4-x86_64-DVD.iso tut es nicht.
hat mich ein wenig irritiert. Das einzige, was mir auffällt ist Dein Eintrag in der grub.cfg:

unklar hat geschrieben:
Code: Alles auswählen
menuentry "Mageia-4-KDE4-x86_64-DVD.iso" {
      set isofile="/boot/isos/Mageia-4-LiveDVD-KDE4-x86_64-DVD.iso"
      loopback loop $isofile
      linux (loop)/boot/vmlinuz root=mgalive:LABEL=Mageia-4-KDE4-LiveDVD ro rd.luks=0 rd.lvm=0 rd.md=0 rd.dm=0 lang=de isofrom=/dev/sda1:\$isofile 3
      initrd (loop)/boot/cdrom/initrd.gz 
}

Versuch es mal ohne den backslash bei $isofile

Grüße
Lutz
lula
 
Beiträge: 644
Registriert: Feb 10th, '12, 20:13

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon unklar » Feb 11th, '14, 18:39

Hi,

keine Chance!

Habe mir das Prozedere erneut gemacht, weil ich gar nicht mehr sicher war, ob ich gestern den Patch auch wirklich in die Original-ISO geschrieben hatte.. (das einzig Positive, es geht immer schneller von der Hand ;) )
El Conkystador (el conquistador = der Sieger) ein Markenzeichen für @Sector11 8-)
unklar
 
Beiträge: 1468
Registriert: Jun 1st, '11, 15:06

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon lula » Feb 11th, '14, 19:08

Hallo,

ich bin gerade dabei, daß mit der final zu testen, vom Image funktioniert es in qemu, ich schieb das gleich mal auf einen Stick und teste dann noch einmal.

Grüße
Lutz
lula
 
Beiträge: 644
Registriert: Feb 10th, '12, 20:13

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon lula » Feb 11th, '14, 20:47

Hallo,
meine Tests haben folgendes ergeben:

boot vom image in qemu: OK
boot vom stick in qemu: OK
boot vom stick auf Hardware: gleiches Ergebnis wie bei Dir

Zwei Dinge sind mir beim Booten auf Hardware aufgefallen:
1.
Code: Alles auswählen
isofrom=/dev/sda1:$isofile
sda1 stimmt nicht (immer), der Kernel sieht bei mir den Stick als sdb, obwohl im Bios davon gebootet wurde. Das ist, sagen wir mal, suboptimal, das werde ich mal auf uuids umstellen.
2. Das mounten schlägt fehl, das sieht mir nach einem Timing-Problem aus, das Skript versucht, die Partition vom Stick zu mounten, das Device ist aber noch nicht da. Mal sehen, was ich da noch machen kann.

Grüße
Lutz
lula
 
Beiträge: 644
Registriert: Feb 10th, '12, 20:13

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon unklar » Feb 11th, '14, 20:56

lula hat geschrieben:boot vom stick in qemu: OK
boot vom stick auf Hardware: gleiches Ergebnis wie bei Dir
Bei mir ist beides negativ.

Das sda1 <> sdb1 -Problem habe ich nicht beobachtet. Ich führe dies darauf zurück
unklar hat geschrieben:
Code: Alles auswählen
..
set root='(hd0,msdos1)'
search --no-floppy --label --set=root MULTIUSB
search --no-floppy --fs-uuid --set=root E70D-D399
..
in meiner grub.cfg
El Conkystador (el conquistador = der Sieger) ein Markenzeichen für @Sector11 8-)
unklar
 
Beiträge: 1468
Registriert: Jun 1st, '11, 15:06

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon lula » Feb 11th, '14, 21:13

Hallo,
unklar hat geschrieben:Das sda1 <> sdb1 -Problem habe ich nicht beobachtet. Ich führe dies darauf zurück
Code: Alles auswählen
..
set root='(hd0,msdos1)'
search --no-floppy --label --set=root MULTIUSB
search --no-floppy --fs-uuid --set=root E70D-D399
..
in meiner grub.cfg
Das Problem wird bei Dir genauso vorhanden sein wie bei mir. Das isofrom ist eine Option, die von der initrd verarbeitet wird, die --set=root Anweisungen sind alleine für den grub da, damit er z.B. die Partition findet auf dem das iso liegt, von dem er booten soll. Du kannst das ja mal zum Testen auf Hardware auf sdb1, sdc1 etc. umstellen, je nachdem wie viele Platten im Rechner stecken.

Grüße
Lutz
lula
 
Beiträge: 644
Registriert: Feb 10th, '12, 20:13

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon unklar » Feb 11th, '14, 21:31

lula hat geschrieben: Das Problem wird bei Dir genauso vorhanden sein wie bei mir.

Bestätigung!
Auf der Kiste mit 4 Platten ist er (der Stick) bei mir korrekterweise sde.
El Conkystador (el conquistador = der Sieger) ein Markenzeichen für @Sector11 8-)
unklar
 
Beiträge: 1468
Registriert: Jun 1st, '11, 15:06

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon unklar » Feb 11th, '14, 21:48

lula hat geschrieben:
Code: Alles auswählen
..
linux (loop)/x86_64/isolinux/alt0/vmlinuz lang=de vga=791
..

Wobei, fällt mir gerade wieder auf, die vga-Option bemängelt "mein"Grub2 immer mit deprecated eben in dieser Kernelzeile. Deshalb lasse ich sie immer weg, weil das nicht auswertet.

Hoffentlich, Lutz, kommen wir da auch noch zum Ziel, bei diesen "Ungereimtheiten". ;)
El Conkystador (el conquistador = der Sieger) ein Markenzeichen für @Sector11 8-)
unklar
 
Beiträge: 1468
Registriert: Jun 1st, '11, 15:06

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon lula » Feb 11th, '14, 21:58

Hallo,

das vga ist Kosmetik, das kann man auch weglassen, ich schreib's halt gerne rein damit man ein bischen mehr Text auf dem Schirm hat. Das isofrom=irgendwas ist auch nicht so dramatisch, das kann ich ja auf uuids umstellen, sind halt ein paar Änderungen im Skript. Kopfschmerzen macht mir das mit dem noch nicht vorhandenen device, da habe ich noch nicht wirklich eine Idee...

Grüße
Lutz
lula
 
Beiträge: 644
Registriert: Feb 10th, '12, 20:13

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon unklar » Feb 11th, '14, 22:38

lula hat geschrieben:Kopfschmerzen macht mir das mit dem noch nicht vorhandenen device, da habe ich noch nicht wirklich eine Idee...
Du meinst die Meldungen hier kurz bevor der Stick als "Toshiba" und sda /sda1 erkannt wird.
Code: Alles auswählen
dracut Warning: Break in liveiso, check isodev an isofrom
?
mga4kde77isofromL.jpg


Vielleicht ein sleep einbauen, denn mir scheint da der Rechner/Kernel für den Stick zu schnell zu sein.
Wobei das ansich schon eine Geduldsprobe ist, denn die ISO normal mit dd auf den Stick geschrieben, ist 10mal schneller, wie
unser Test mit grub2 und der ISO vom Stick.

Kennst Du das: http://refracta.freeforums.org/boot-ref ... -t367.html
El Conkystador (el conquistador = der Sieger) ein Markenzeichen für @Sector11 8-)
unklar
 
Beiträge: 1468
Registriert: Jun 1st, '11, 15:06

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon lula » Feb 11th, '14, 23:24

Hallo,
ja, genau die. Die Meldung kommt ja aus meinem Skript und bedeutet, daß das Skript schon ausgeführt wird, bevor das device da ist. Übrigens kannst Du als workaround versuchen, wenn Du den isofrom auf das richtige device gesetzt hast, in der initrd im qemu einfach ein paar mal exit gefolgt von einem Return einzugeben. Wenn Du Glück hast, bootet er weiter. :roll:

Grüße,
Lutz
lula
 
Beiträge: 644
Registriert: Feb 10th, '12, 20:13

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon lula » Feb 12th, '14, 01:44

Hallo,

die Lösung für das 2. Problem könnte sein:
Das unten angefügte Skript in der ausgepackten initrd als usr/lib/dracut/hooks/initqueue/settled/liveiso.sh speichern und ausführbar machen und das alte Skript in usr/lib/dracut/hooks/initqueue/liveiso.sh löschen. Das Problem war zum einen, daß das alte Skript im falschen Verzeichnis lag und außerdem noch ein paar debug-Meldungen hatte. Mit dem neuen klappt es bei mir, bin gespannt auf die Rückmeldung von Dir.

Grüße
Lutz

Code: Alles auswählen
#!/bin/sh

type getarg >/dev/null 2>&1 || . /lib/dracut-lib.sh

if [ -n "$isofrom" ]; then

  isodev=$(echo "$isofrom" | sed 's,:.*$,,g')
  isofile=$(echo "$isofrom" | sed 's,^.*:,,g')

  if [ ! -z "$isodev" -a ! -z "$isofile" ]; then
    isomount="/live/isomount"
    test -d "$isomount" || mkdir -m 0755 -p "$isomount"
 
    isodevfs=$(blkid -s TYPE -o value "$isodev")
    grep -q "$isomount" /proc/mounts || mount -n -r -t "$isodevfs" "$isodev" "$isomount" > /dev/null 2>&1

    if [ -e "${isomount}${isofile}" ]; then
      losetup -a | grep -q "${isomount}${isofile}"
      if [ $? -ne 0 ]; then
        losetup $(losetup -f) "${isomount}${isofile}"
      fi
    fi
  fi
fi
lula
 
Beiträge: 644
Registriert: Feb 10th, '12, 20:13

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon unklar » Feb 12th, '14, 13:28

Ergebnis (nur in qemu getestet): NEIN.
Habe das auch gestern noch mit dem Trick exit mehrfach versucht.

Es fällt auf, er scant wieder btrfs-devices und die letzte Zeile ist wieder wartend dracut:/ #
ScriptNEU.jpg

isofrom taucht nicht auf. Kann es sein Lutz, in dem neuen Script ist ein Zeilenumbruch zuviel?

Ansonsten habe ich schon wieder alle möglichen Varianten in der Kernelzeile ohne Erfolg ausprobiert.

Ich will auch nochmal ein Paar grundlegende Fragen zusammenstellen...
Du bist wieder 'dran. ;)
El Conkystador (el conquistador = der Sieger) ein Markenzeichen für @Sector11 8-)
unklar
 
Beiträge: 1468
Registriert: Jun 1st, '11, 15:06

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon lula » Feb 12th, '14, 18:16

Hallo,

komisch, bei mir funktioniert das zuverlässig, sowohl in qemu als auch auf HW. Der Zeilenumbruch gehört da natürlich nicht hin, das ist nur die Darstellung hier im Forum. Ich baue jetzt noch die uuids ein und stelle danach die aktuelle Version hier ein.

Grüße,
Lutz
lula
 
Beiträge: 644
Registriert: Feb 10th, '12, 20:13

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon lula » Feb 12th, '14, 19:48

Hallo,

Zeit für eine neue initrd :), jetzt umgestellt auf uuid. Dazu verwende ich folgenden Eintrag in der grub.cfg:

Code: Alles auswählen
# UUID der 1. Partition auf dem Stick
set ruuid="3925bc92-128d-4006-a6bb-e6e909d32523"
search --no-floppy --fs-uuid $ruuid --set=root

menuentry 'Mageia-4-LiveDVD-KDE4-x86_64-DVD.iso isofrom' {
  set isofile="/Mageia-4-LiveDVD-KDE4-x86_64-DVD.iso"
  loopback loop $isofile
  linux    (loop)/boot/vmlinuz root=mgalive:LABEL=Mageia-4-KDE4-LiveDVD ro isofrom=$ruuid:$isofile lang=de rd.luks=0 rd.lvm=0 rd.md=0 rd.dm=0 vga=791
  initrd   (loop)/boot/cdrom/initrd.gz
}

Die uuid muß natürlich angepasst werden. Danach das Skript in /lib/dracut/hooks/initqueue/settled/liveiso.sh gegen folgendes austauschen:

Code: Alles auswählen
#!/bin/sh

type getarg >/dev/null 2>&1 || . /lib/dracut-lib.sh

if [ -n "$isofrom" ]; then

  isodev=$(echo "$isofrom" | sed 's,:.*$,,g')
  isofile=$(echo "$isofrom" | sed 's,^.*:,,g')

  if [ ! -z "$isodev" -a ! -z "$isofile" ]; then
    isomount="/live/isomount"
    test -d "$isomount" || mkdir -m 0755 -p "$isomount"
 
    isoblock=$(blkid -U $isodev)
    isodevfs=$(blkid -s TYPE -o value "$isoblock")
    grep -q "$isomount" /proc/mounts || mount -n -r -t "$isodevfs" "$isoblock" "$isomount" > /dev/null 2>&1

    if [ -e "${isomount}${isofile}" ]; then
      losetup -a | grep -q "${isomount}${isofile}"
      if [ $? -ne 0 ]; then
        losetup $(losetup -f) "${isomount}${isofile}"
      fi
    fi
  fi
fi
initrd wieder zusammenpacken und gegen die auf dem Iso tauschen.

Viel Spaß beim Testen,
Lutz
lula
 
Beiträge: 644
Registriert: Feb 10th, '12, 20:13

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon unklar » Feb 12th, '14, 20:29

Hi,

dann erst einmal Glückwunsch an Dich für die gute Arbeit! :D

In der Zwischenzeit habe ich mit gleichem Ergebnis das Ding auf HW getestet. Ich vermute, der Fehler liegt an diesem Zeilenumbruch, weil keinerlei Hinweis aud Dein Script kommt.
Nachher will ich in Ruhe die ISO nochmal packen.

Zu den grundlegenden Fragen - Du kannst mir das sicher beantworten.

1. ich habe den Stick mit FAT32 formatiert und der Eigentümer ist unklar. Demnach sehen die ISO's auch so aus nachdem ich sie auf den Stick geschoben habe
Code: Alles auswählen
-rw-r--r-- 1 unklar unklar 1599070208 Feb 12 11:19 Mageia-4-LiveDVD-KDE4-x86_64-DVD.iso
-rw-r--r-- 1 unklar unklar 1080033280 Jan 20 10:58 Mageia-4-RC-dual-DVD.iso
-rw-r--r-- 1 unklar unklar 3890216960 Feb 11 15:35 Mageia-4-x86_64-DVD.iso
-rw-r--r-- 1 unklar unklar  330301440 Mai  5  2013 pmagic_2013_05_01.iso
-rw-r--r-- 1 unklar unklar  239628288 Jan 18 13:53 slax-German-7.0.8-x86_64.iso
-rw-r--r-- 1 unklar unklar  454516736 Jan 15 18:10 systemrescuecd-x86-4.0.0.iso
 
Währenddessen sie in der Phase der "Bearbeitung" auf einem x86_64bit, ext4-Dateisystem, die Tests mit qemu, root gehören. Bis dieser sie mit Isomaster wieder auf den Stick abspeichert.
Verstehst Du, mir fehlt eine Erklärung, dass das kein "Restrisiko" für die Funktion darstellt.

2.Zu Grub2 - nutzt Du eine manuelle cfg oder machst Du das per update-grub?
Hier habe ich den von siduction hauptsächlich wegen der Aktualität gewählt. Manuell erstellt, schrieb ich schon. Natürlich ist eine automatisch generierte grub.cfg nicht schlecht. Da man aber eh oft händisch die Einträge (siehe unsere Tests) korrigieren
muß, dachte ich mir os-prober etc. nicht zu verwenden.

Danke, ich werde berichten. 8-)
El Conkystador (el conquistador = der Sieger) ein Markenzeichen für @Sector11 8-)
unklar
 
Beiträge: 1468
Registriert: Jun 1st, '11, 15:06

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon lula » Feb 12th, '14, 21:16

Hallo,

zu Deiner ersten Frage:
Soweit ich das weiß, hat fat32 keine Vorstellung von Berechtigungen wie man sie in Linux kennt, das was man sieht ist eine Abbildung auf das Linux-Konzept, es gehört alles dem User, der das Dateisystem mountet bzw. was man dem mount-Kommando an Optionen wie uid, gid, umask etc. mitgibt . Von daher sollte das keinerlei Auswirkung haben, aber da kann ich Dir auch nicht viel mehr zu sagen, ich benuzte das eigentlich nie. Solange Du dich auf Linux-Dateisystemen bewegst sieht Du natürlich die vollen Rechte des Linux-Dateisystems.

Zu 2.: Ich schreibe die confs immer von Hand, auf irgendwelche Automatismen verlasse ich mich dabei ungern. Wenn ich mir so einige generierte Konfigs anschaue (z. B. von Usern hier, deren System nicht mehr startet), fühle ich mich darin auch meistens bestärkt. Hinzu kommt noch, daß m. E. besonders der grub2 in den Distributionen zwar viel grafischen bling-bling dabei hat, wirklich wichtige Sachen, wie z.B. eine deutsche (bzw. bel. andere) Keymap(s) aber fehlen. Und wenn ich dann noch sehe, daß man, wenn man einen Eintrag bearbeiten will, das ganze in einem "Kinderfenster" (z.B. bei OpenSuSE) machen muß, kann ich da getrost drauf verzichten. Und diesen osprober habe ich noch nie verstanden, bzw. gebraucht. Ich habe eine Partition auf der Platte, die kein OS hat, da ist nur der zum MBR gehörende grub dabei, alle anderen Systeme boote ich entweder über chainloading, configfile oder halt direkt aus dem Menu der grub-Partition.

Grüße
Lutz
lula
 
Beiträge: 644
Registriert: Feb 10th, '12, 20:13

Re: Tester gesucht: Mageia Live-DVD booten mit grub2

Beitragvon unklar » Feb 12th, '14, 21:39

Ich danke Dir für die Beantwortung. :D

Noch eine Frage zum Script. Hier schreibst Du
die Lösung für das 2. Problem könnte sein:
Das unten angefügte Skript in der ausgepackten initrd als usr/lib/dracut/hooks/initqueue/settled/liveiso.sh speichern und ausführbar machen und das alte Skript in usr/lib/dracut/hooks/initqueue/liveiso.sh löschen


und hier
Die uuid muß natürlich angepasst werden. Danach das Skript in /lib/dracut/hooks/initqueue/settled/liveiso.sh gegen folgendes austauschen:

Ich habe "nachgesehen", es gibt das 2.Script unter beiden Pfaden...
Nur, damit ich mir das 3.Script richtig einbaue. :)
El Conkystador (el conquistador = der Sieger) ein Markenzeichen für @Sector11 8-)
unklar
 
Beiträge: 1468
Registriert: Jun 1st, '11, 15:06

Nächste

Zurück zu Erweiterter Support

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron