Siduction Forum

Siduction Forum => Installation - Support => Topic started by: michaa7 on 2011/12/21, 01:35:38

Title: siduction-test und fromiso mit Grub2
Post by: michaa7 on 2011/12/21, 01:35:38
Da es keine  grub2-fll-fromiso unter siduction gibt, wie gehe ich vor um ein iso mit Grub2 zu booten?

Kann ich einfach als root die bislang nicht existierende musterdatei aus dem apto handbuch in /etc/default/grub2-fll-fromiso erzeugen und entsprechend bearbeiten?

Wenn ja, verstehe ich das richtig, dass mit einem anschließendem "update-grub" die datei /etc/grub.d/*60_fll-fromiso erzeugt wird?
Title: siduction-test und fromiso mit Grub2
Post by: Bequimão on 2011/12/21, 07:15:09
Ja, funktioniert. Die Dateien werden bei Installation des Paketes grub2-fll-fromiso erstellt. /etc/default/grub2-fll-fromiso muß natürlich manuell angepaßt werden.

Gruß,
Bequimão
Title: siduction-test und fromiso mit Grub2
Post by: michaaa62 on 2011/12/21, 09:09:24
Das könnte eher ein Thema für "Experimentelles" sein...
Quote
Wenn ja, verstehe ich das richtig, dass mit einem anschließendem "update-grub" die datei /etc/grub.d/*60_fll-fromiso erzeugt wird?
Nein, diese Datei musst du ebenso in das System prügeln, oder das "Third-Party" (ist das befriedigend das zu schreiben :) ) Paket grub2-fll-fromiso installieren (und damit deinen Support NICHT verlieren, weil siduction-User dich in Experimentell unterstützen werden, jippiiie)
Update-grub erneuert dann die Datei /boot/grub/grub.cfg.

Um die Sache danach wieder in gepflegtere Bahnen zu bekommen, kannst du den erzeugten Grubeintrag nach /etc/grub/40_custom kopieren und die obengenannten Dateien wieder löschen.
Title: siduction-test und fromiso mit Grub2
Post by: agaida on 2011/12/21, 12:41:15
@michaaa62: Von welchen Third Party Tools redest Du? ;)

In dem Moment, wo grub2-fll-from iso aus einem Siduction-Spiegel und siduction kommt, ist es recht eindeutig, dass dieses Paket eine Kernkomponente von siduction ist. Die haben wir uns ans Bein gebunden und sind damit auch dafür verantwortlich. Ich hoffe doch, dass wir unsere eigenen Sachen so weit im Griff haben, dass wir die auf die Allgemeinheit loslassen können. Sonst würden sie statt in Siduction in Experimental liegen. :twisted:

Noch was ganz anderes, eher allgemeines: Wenn Ihr im Grub-Bereich was von Dauer haben wollt, dann hilft es nicht wirklich, den Teufel mit dem Beelzebub auszutreiben. 40- und 41-custom sind offiziell mitgelieferte Templates und sakrosant.  

Zur Verwendung im scriptgesteuerten Erzeugen von /boot/grub/grub.cfg werden die an die gewünschte Stelle in der Reihenfolge kopiert. Dann wird die kopierte Datei modifiziert, nie das Orginal an sich. (Abgesehen davon steht ja in der 40-custom nur der tail drin, der sich und den darüberstehenden Kommentar entfernt.) So sehe ich das auch mit der xyfromiso. Die Nummer gibt nur die Reihenfolge der Verarbeitung an und sollte in der Zieldatei irgendwo hinter 05 und wahrscheinlich, je nach Geschmack vor 10_linux liegen.

NACHTRAG: Nimmst Du natürlich grub2-fll-fromiso von aptosid oder sonst woher, dann ist das Third Party und wird von uns nicht unterstützt.  :lol:
Title: siduction-test und fromiso mit Grub2
Post by: michaa7 on 2011/12/21, 15:55:36
@ agaida

Quote from: "agaida"@michaaa62: Von welchen Third Party Tools redest Du? ;)

In dem Moment, wo grub2-fll-from iso aus einem Siduction-Spiegel und siduction kommt, ist es recht eindeutig, dass dieses Paket eine Kernkomponente von siduction ist. Die haben wir uns ans Bein gebunden und sind damit auch dafür verantwortlich. Ich hoffe doch, dass wir unsere eigenen Sachen so weit im Griff haben, dass wir die auf die Allgemeinheit loslassen können. Sonst würden sie statt in Siduction in Experimental liegen. :twisted:

nur gibt es das paket bei siduction *nicht*, das hatte ich *vor* meinem ausgangsposting bereits dort gesucht (als referenz ein weiteres paket):


Quote# apt-cache policy grub2-fll-fromiso sidu-installer
sidu-installer:
 Installiert: 0.9.16+nmu1
 Kandidat:    0.9.19+nmu1
 Versionstabelle:
    0.9.19+nmu1 0
       500 http://packages.siduction.org/siduction/ unstable/main i386 Packages
*** 0.9.16+nmu1 0
       100 /var/lib/dpkg/status
N: Paket grub2-fll-fromiso kann nicht gefunden werden
Title: siduction-test und fromiso mit Grub2
Post by: michaaa62 on 2011/12/21, 16:55:00
Das Third-Party Paket grub2-fll-fromiso besteht nur aus zwei Konfigdateien /etc/grub/60_fll-fromiso, /etc/default/grub2-fll-fromiso und dem Paket-"kram", der für die Paketdatenbank wichtig, aber für die Funktion nicht entscheidend ist. Der Befehl 'update-grub' wertet diese aus und erstellt den Eintrag fürs Grub-Startmenü.
Title: siduction-test und fromiso mit Grub2
Post by: michaa7 on 2011/12/21, 17:58:24
mit "/etc/grub/60_fll-fromiso" meinst du aber
"/etc/grub.d/60_fll-fromiso"?

(BTW: kann mir jemand sagen, warum im mc die dateien unter "/etc/grub.d/" alle ein führendes "*" haben, DAS verwirrt mich, seit ich dem iso boot unter Grub2 nachgehe)
Title: siduction-test und fromiso mit Grub2
Post by: Bequimão on 2011/12/21, 19:56:25
Das sind ausführbare Shellscripte. Du kannst übrigens die einzelnen Scripte aus- oder einschalten, indem Du die Ausführbarkeit setzt oder entziehst. Gräusliches Verfahren!

Bequimão
Title: siduction-test und fromiso mit Grub2
Post by: agaida on 2011/12/22, 11:13:37
Quote from: "Bequimão"Das sind ausführbare Shellscripte. Du kannst übrigens die einzelnen Scripte aus- oder einschalten, indem Du die Ausführbarkeit setzt oder entziehst. Gräusliches Verfahren!
Afaik lieben viele Leute diese Einfachheit in Linux. Eleganter als mit einem chmod geht das doch eigentlich nicht wirklich.

Andere Sache. Geforked ist grub2-fll-fromiso. Bisher wahr wohl noch nicht die Zeit dazu, dass als Paket anzubieten oder es gab triftige Gründe dafür. Prinzipiell würde ich davon abraten, die aptosid-Repos einzubinden, es könnten gruselige Sachen passieren ;). Das ist jetzt keine Spitze gegen Aptosid, aber die Codebasis ist sich recht ähnlich, einige Pakete haben in beiden Repos den gleichen Namen, aber unterschiedliche Versionen. Das könnte mit ein wenig Pech zu unangenehmen Seiteneffekten führen, die nicht wirklich so ganz einfach nachzuvollziehen sind.
Title: siduction-test und fromiso mit Grub2
Post by: devil on 2011/12/22, 11:17:00
Ich glaube fast, wir haben grub2-fll-fromiso ab einem besatimmten Punkt einfsach vergessen. :)
Das lässt sich zur final release ändern.

greetz
devil
Title: siduction-test und fromiso mit Grub2
Post by: michaa7 on 2011/12/22, 14:56:38
das wäre in der tat super, wenn das bald in die repos käme. Ich will nämlich zum testen nicht DVDs brennen müssen ...
Mein install der ersten testversion läuft ja stabil, ich muss und will also nicht neu installieren. Aber die neueren versionen bzw die anderen flavors würde ich mir als ISO-boots wenigsten testweise anschauen wollen.

Danke für euren einsatz!!!
Title: siduction-test und fromiso mit Grub2
Post by: michaaa62 on 2011/12/22, 15:47:34
Quote
Prinzipiell würde ich davon abraten, die aptosid-Repos einzubinden, es könnten gruselige Sachen passieren .
Davon war ja nicht die Rede, es ging doch nur um den Inhalt der zwei Dateien...
Quote from: "devil"Ich glaube fast, wir haben grub2-fll-fromiso ab einem besatimmten Punkt einfsach vergessen. :)
Das lässt sich zur final release ändern.

greetz
devil
So ist es aber viel besser!!!
Title: siduction-test und fromiso mit Grub2
Post by: michaa7 on 2011/12/22, 15:53:50
vermutlich spricht aber nichts dagegen, das paket aus /var/cache/apt/archives meiner noch bestehenden aptosid installation heraus zu kopieren und per dpkg -i zu installieren. Vielleicht könnt ihr ja sogar ein derartiges vorgehen bei der einstellung dieses pakets in das siduction repo durch eine höhere versionsnummer berücksichtigen.
Title: siduction-test und fromiso mit Grub2
Post by: agaida on 2011/12/25, 02:58:49
Viel Spass beim Testen der Isos mit grub2-fll-fromiso. Paket liegt vor und ich schreibe grade aus einer mit grub2-fll-fromiso gebooteten lxde.
Title: siduction-test und fromiso mit Grub2
Post by: michaa7 on 2011/12/25, 19:40:03
Danke dass du dafür zeit gefunden hast!
Installiert, konfiguriert, funzt!

Bin grad am testen, btw, sollen dafür nach wie vor extra seiten im wiki angelegt werden (falls man bugs findet) oder soll das nun hier ins forum?

Aha, und nochas zum isoboot.

Geht auch mit GRUB2 bzw der grub2-fll-fromiso sowas wie ...=LABEL=<dasLabel> bei der zuweisung des basis verzeichnisses?
Title: siduction-test und fromiso mit Grub2
Post by: hsp on 2011/12/25, 20:08:46
Das ganze geht auch ohne grub2-fll-fromiso. Hier mal meine /etc/grub.d/95_isoboot-siduction.
An die eigene Umgebung angepasst und fertig. Ich nutzt das zu regelmässigen Backupzwecken.

#! /bin/sh
#
cat << EOF_
menuentry "siduction-amd64 from ISO-Image" {
insmod part_msdos
insmod part_gpt
insmod ext2
search --no-floppy --fs-uuid --set=root b0671ffd-f179-4cf6-921e-215a86f15b26
set isofile='/siduction/siduction.iso'
loopback loop \$isofile
linux (loop)/boot/vmlinuz0.amd boot=fll quiet fromhd=UUID=b0671ffd-f179-4cf6-921e-215a86f15b26 fromiso=/siduction/siduction.iso nointro lang=de hostname=hsp1
initrd (loop)/boot/initrd0.amd
}
EOF_


...
Title: siduction-test und fromiso mit Grub2
Post by: agaida on 2011/12/25, 20:18:04
@michaa7 - Chili Issues sind bevorzugt, wenn man Fehler klar zuordnen kann. Zum rausfinden, was eigentlich hängt und zum Eingrenzen der Fehler kann man auch das Forum und oder IRC benutzen, bis sich jemand erbarmt, und ein Issue draus macht. Das gilt auch dann, wenn man sich nicht sicher ist, den Bugtracker bedienen zu können, obwohl man sich den ruhig anschauen kann. Ist keinerlei Teufelswerk und im Laufe der Zeit werden sich da interessante Sachen drin sammeln.

@hsp: Klar geht das, aber ich habe ersthafte Zweifel, ob das bei mehreren Isos so bequem ist auf Dauer.
Title: siduction-test und fromiso mit Grub2
Post by: hsp on 2011/12/25, 20:21:20
Quote from: "agaida"@hsp: Klar geht das, aber ich habe ersthafte Zweifel, ob das bei mehreren Isos so bequem ist auf Dauer.
Wer es bequem will und nyx selber machen möchte soll Windows nehmen.

...
Title: siduction-test und fromiso mit Grub2
Post by: agaida on 2011/12/25, 20:22:12
oder kompiliert und installiert schon vorbereitete und vergessene Pakete.
Title: siduction-test und fromiso mit Grub2
Post by: devil on 2011/12/25, 20:23:40
Quote
btw, sollen dafür nach wie vor extra seiten im wiki angelegt werden (falls man bugs findet) oder soll das nun hier ins forum?
in der Release Note stünde was dazu. Bugs gehen nach http://chili.siduction.org/projects/newsid-verwaltung/issues .

greetz
devil
Title: siduction-test und fromiso mit Grub2
Post by: michaa7 on 2011/12/25, 21:11:30
Quote from: "agaida"...

@hsp: Klar geht das, aber ich habe ersthafte Zweifel, ob das bei mehreren Isos so bequem ist auf Dauer.

Das heißt aber, mit der grub2-fll-fromiso ist eine verzeichnisangabe ala root=LABEL=<label>hinz/kunz oder so ähnlich *nicht* möglich.

Ich frag das jetzt ehr aus neugierde denn aus notwendigkeit, denn da es eingerichtet ist und auch für mehrere isos funktioniert besteht keine notwendigkeit das zu änderen (es sei denn neuere kernel geruhen eines tages ihre meinung darüber zu ändern, was unter diskX.... zu verstehen wäre).
Title: siduction-test und fromiso mit Grub2
Post by: agaida on 2011/12/25, 21:37:18
Das heisst im allgemeinen und ganz speziellen, dass ich nicht mal das Problem oder Deinen Ansatz verstehe. ;) Ist nicht so hart gemeint, wie es eventuell rüber kommt. Zur Erklärung;


# Defaults for grub2-fll-fromiso update-grub helper
# sourced by grub2's update-grub
# installed at /etc/default/grub2-fll-fromiso by the maintainer scripts

#
# This is a POSIX shell fragment
#

# specify where to look for the ISO
# default: /srv/ISO
FLL_GRUB2_ISO_LOCATION="/opt/isos"

# array for defining ISO prefices --> siduction-*.iso, non-recursive
# default: "siduction- fullstory-"
FLL_GRUB2_ISO_PREFIX="siduction-"

# set default language
# default: en_US
FLL_GRUB2_LANG="de_DE"

# override the default timezone.
# default: UTC
FLL_GRUB2_TZ="Europe/Berlin"

# additional cheatcodes
# default: quiet noeject
#FLL_GRUB2_CHEATCODE="quiet nolapic_timer radeon.modeset=1 noeject"


Ich werfe alle meine Isos in die spezifizierte Location, sag ihm noch wie die heissen dürfen und das wars. (ok, Sprache und options setze ich auch noch, weil mir mein Rechner sonst ins Gesicht springt. Da die Buben die schlauen Bücher gelesen haben wird jetzt ein wenig Magie angewandt und per script werden im Pfad die definierten isos gesucht und menüeinträge erstellt und loopdevices gebastelt.

Kernel suchen:

kernels="$( ( ${ISOINFO} -J -l -i ${iso_image} 2>/dev/null || ${ISOINFO} -l -i ${iso_image} ) | tr A-Z a-z | sed -n 's/.*\(vmlinuz.*\)/\1/p')"
if ( ${ISOINFO} -J -l -i ${iso_image} 2> /dev/null|| ${ISOINFO} -l -i ${iso_image}) | tr A-Z a-z | grep -q initrd\\.img; then
  initrd_suffix=".img"
fi


Die Kernel abarbeiten:


for kernel in ${kernels}; do
   printf "menuentry \"$(basename ${iso_image} .iso) (${kernel#vmlinuz\-})\" {\n"
   printf "\tinsmod iso9660\n"
   prepare_boot_cache="$(prepare_grub_to_access_device ${cur_device} | sed -e "s/^/\t/")"
   printf '%s\n' "${prepare_boot_cache}"


Schwups, noch die Laufwerke erstellt und weggeschrieben


loopback loop ${stripped_path}
linux (loop)/boot/${kernel} fromhd=${cur_fromhd} fromiso=${stripped_path} $CMDLINE
initrd (loop)/boot/initrd${initrd_suffix}${kernel#vmlinuz}


Das hat erstmal mit der von die angesprochenen Syntax nichts zu tun. Solange die unteren 3 Zeilen in Grub2 so funken wird da der Pfad zum Kernel im loop-Device gelegt und gefunden werden. Wenn das mal nicht mehr so sein sollte, weil grub auf einmal eine andere Meinung hat, wird man in diesen 3 Zeilen entsprechend reagieren müssen. Ich bin aber verdammt froh darüber, dass da in absehbarer Zeit keinerlei Notwendigkeit für eine Änderung besteht.
Title: siduction-test und fromiso mit Grub2
Post by: piper on 2011/12/26, 05:05:47
# Defaults for grub2-fll-fromiso update-grub helper
# sourced by grub2's update-grub
# installed at /etc/default/grub2-fll-fromiso by the maintainer scripts

#
# This is a POSIX shell fragment
#

# specify where to look for the ISO
# default: /srv/ISO
FLL_GRUB2_ISO_LOCATION="/media/disk1part7/aptosid"

# array for defining ISO prefices --> aptosid-*.iso, non-recursive
# default: "aptosid- fullstory-"
FLL_GRUB2_ISO_PREFIX="siduction-11.1-rc-OneStepBeyond-kde-lite-amd64-201112212148 aptosid-snapshot-kde-lite-amd64-201112251404"

# set default language
# default: en_US
#FLL_GRUB2_LANG="de_DE"

# override the default timezone.
# default: UTC
#FLL_GRUB2_TZ="Europe/Berlin"

# additional cheatcodes
# default: quiet noeject
FLL_GRUB2_CHEATCODE="quiet noeject toram"

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
 load_env
fi
set default="0"
if [ "${prev_saved_entry}" ]; then
 set saved_entry="${prev_saved_entry}"
 save_env saved_entry
 set prev_saved_entry=
 save_env prev_saved_entry
 set boot_once=true
fi

function savedefault {
 if [ -z "${boot_once}" ]; then
   saved_entry="${chosen}"
   save_env saved_entry
 fi
}

function load_video {
 insmod vbe
 insmod vga
 insmod video_bochs
 insmod video_cirrus
}

insmod part_msdos
insmod reiserfs
set root='(hd0,msdos6)'
search --no-floppy --fs-uuid --set=root 5125fd7e-218f-4508-9795-0468591a9ec9
if loadfont /usr/share/grub/unicode.pf2 ; then
 set gfxmode=640x480
 load_video
 insmod gfxterm
 insmod part_msdos
 insmod reiserfs
 set root='(hd0,msdos6)'
 search --no-floppy --fs-uuid --set=root 5125fd7e-218f-4508-9795-0468591a9ec9
 set locale_dir=($root)/boot/grub/locale
 set lang=en_US
 insmod gettext
fi
terminal_output gfxterm
set timeout=5
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
insmod part_msdos
insmod reiserfs
set root='(hd0,msdos6)'
search --no-floppy --fs-uuid --set=root 5125fd7e-218f-4508-9795-0468591a9ec9
insmod png
if background_image /usr/share/images/desktop-base/desktop-grub.png; then
 set color_normal=magenta/black
 set color_highlight=green/black
else
 set menu_color_normal=magenta/black
 set menu_color_highlight=green/black
fi
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Aptosid' --class debian --class gnu-linux --class gnu --class os {
insmod gzio
insmod part_msdos
insmod reiserfs
set root='(hd0,msdos6)'
search --no-floppy --fs-uuid --set=root 5125fd7e-218f-4508-9795-0468591a9ec9
echo 'Loading Linux 3.1-6.slh.1-aptosid-amd64 ...'
linux /boot/vmlinuz-3.1-6.slh.1-aptosid-amd64 root=UUID=5125fd7e-218f-4508-9795-0468591a9ec9 ro  quiet
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-3.1-6.slh.1-aptosid-amd64
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/20_memtest86+ ###
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows 7" --class windows --class os {
insmod part_msdos
insmod ntfs
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set=root 78710D782AD1A7D3
chainloader +1
}
menuentry "Siduction" --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod reiserfs
set root='(hd0,msdos8)'
search --no-floppy --fs-uuid --set=root ca456070-3643-43a7-8ac1-dadcab0cc403
linux /boot/vmlinuz-3.1-6.towo.2-siduction-amd64 root=UUID=ca456070-3643-43a7-8ac1-dadcab0cc403 ro quiet
initrd /boot/initrd.img-3.1-6.towo.2-siduction-amd64
}
menuentry "Siduction old" --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod reiserfs
set root='(hd0,msdos8)'
search --no-floppy --fs-uuid --set=root ca456070-3643-43a7-8ac1-dadcab0cc403
linux /boot/vmlinuz-3.1-5.towo.3-siduction-amd64 root=UUID=ca456070-3643-43a7-8ac1-dadcab0cc403 ro quiet
initrd /boot/initrd.img-3.1-5.towo.3-siduction-amd64
}
menuentry "Debian" --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(hd0,msdos9)'
search --no-floppy --fs-uuid --set=root 218bc597-6b3e-4db9-9e78-429face0d2e2
linux /boot/vmlinuz-2.6.32-5-amd64 root=UUID=218bc597-6b3e-4db9-9e78-429face0d2e2 ro quiet nomodeset nouveau.modeset=0
initrd /boot/initrd.img-2.6.32-5-amd64
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  $prefix/custom.cfg ]; then
 source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###

### BEGIN /etc/grub.d/60_fll-fromiso ###
menuentry "Siduction-Live" {
insmod iso9660
insmod part_msdos
insmod reiserfs
set root='(hd0,msdos7)'
search --no-floppy --fs-uuid --set=root 2815de12-8b41-4d98-9b3e-9c9aa067ec33
loopback loop /aptosid/siduction-11.1-rc-OneStepBeyond-kde-lite-amd64-201112212148.iso
linux (loop)/boot/vmlinuz0.amd fromhd=UUID=2815de12-8b41-4d98-9b3e-9c9aa067ec33 fromiso=/aptosid/siduction-11.1-rc-OneStepBeyond-kde-lite-amd64-201112212148.iso boot=fll lang=en_EN tz=UTC quiet noeject toram
initrd (loop)/boot/initrd0.amd
}
menuentry "Aptosid-Live" {
insmod iso9660
insmod part_msdos
insmod reiserfs
set root='(hd0,msdos7)'
search --no-floppy --fs-uuid --set=root 2815de12-8b41-4d98-9b3e-9c9aa067ec33
loopback loop /aptosid/aptosid-snapshot-kde-lite-amd64-201112251404.iso
linux (loop)/boot/vmlinuz0.amd fromhd=UUID=2815de12-8b41-4d98-9b3e-9c9aa067ec33 fromiso=/aptosid/aptosid-snapshot-kde-lite-amd64-201112251404.iso boot=fll lang=en_EN tz=UTC quiet noeject toram
initrd (loop)/boot/initrd0.amd
}
### END /etc/grub.d/60_fll-fromiso ###