Knoppix Remastering Howto Deutsch


From Knoppix Documentation Wiki
Jump to: navigation, search

Dies HowTo beschreibt, wie eine Knoppix CD nach der alten "chroot-Methode" remastert werden kann. Die Scripte von "Vorarbeiten" bis "ISO erstellen" wurden mit Knoppix V7.0.4CD getestet. Dies HowTo kann nicht für eine Knoppix DVD verwendet werden.

Vorarbeiten

Vorbereitung zum Remaster

  • Boote mit Knoppix CD
  • Ein Terminal öffnen und "su" eingeben, um root zu werden.
  • Internet-Verbindung einrichten. Wenn DHCP verwendet wird, sollte bereits alles von allein konfiguriert sein (mit ifconfig überprüfen).
  • Lege die Partition fest, mit der Du arbeiten willst und ändere die Variable "PFAD" innerhalb der Scripte wie Du sie brauchst. Im Beispiel hier wird /media/sda1 verwendet. Die Partition sollte mindestens einen freien Platz von 5 GB zum remastern einer CD und 20 GB zum remastern einer DVD haben.
  • Das erste Script macht alle notwendigen Vorarbeiten:
#! /bin/sh
# krhowto_1
# Path to partition you will work on
PFAD="/media/sda1"
START=$(date +'%s')
# Disable screensaver
xscreensaver-command -exit
# One sub-directory will be used for the Master-CD
mkdir -p $PFAD/knx/master
cd $PFAD/knx
# You will need a swapfile
dd if=/dev/zero of=swapfile bs=1M count=500
mkswap swapfile ; swapon swapfile
# Make a sub-directory for the source
mkdir -p $PFAD/knx/source/KNOPPIX
echo "Copy the KNOPPIX files to your source directory."
echo "This will take a long time!"
cp -rp /KNOPPIX/* $PFAD/knx/source/KNOPPIX
# Additionally, copy the files to build the ISO later
rsync -aH --exclude="KNOPPIX/KNOPPIX*" /mnt-system/* $PFAD/knx/master
# gunzip inital RAM-disk
mkdir -p $PFAD/knx/minirt/minirtdir
cp $PFAD/knx/master/boot/isolinux/minirt.gz $PFAD/knx/minirt/
cd $PFAD/knx/minirt/
gunzip minirt.gz
cd minirtdir
cpio -imd --no-absolute-filenames < ../minirt
# Enable screensaver
su knoppix -c "xscreensaver -nosplash &"
echo -e "\nFinished! Used time: $(expr $(expr $(date +'%s') - $START) / 60) min. \
  and $(expr $(expr $(date +'%s') - $START) % 60) sec."

Einrichten der chroot-Umgebung

  • Benutze dies Script bevor in die chroot-Umgebung gewechselt wird:
#! /bin/sh
# krhowto_2
# Path to partition you will work on
PFAD="/media/sda1"
# To use the Internet add your nameserver into the chroot folder
cp /etc/resolv.conf $PFAD/knx/source/KNOPPIX/etc/resolv.conf
# Allow X-based programs in chroot
[ -e $PFAD/knx/source/KNOPPIX/home/knoppix/.Xauthority ] \
   && rm $PFAD/knx/source/KNOPPIX/home/knoppix/.Xauthority
cp /home/knoppix/.Xauthority $PFAD/knx/source/KNOPPIX/home/knoppix
chown knoppix:knoppix $PFAD/knx/source/KNOPPIX/home/knoppix/.Xauthority
# prepare enviroment for chroot
mount --bind /dev $PFAD/knx/source/KNOPPIX/dev
mount -t proc proc $PFAD/knx/source/KNOPPIX/proc
mount -t sysfs sysfs $PFAD/knx/source/KNOPPIX/sys
mount --bind /dev/pts $PFAD/knx/source/KNOPPIX/dev/pts
mount --bind /tmp $PFAD/knx/source/KNOPPIX/tmp
Top

Arbeiten in der chroot-Umgebung

  • Jetzt das "chroot" zur Kopie von KNOPPIX:
 chroot /media/sda1/knx/source/KNOPPIX
  • Bedenke, daß alles, was Du hier in der chroot-Umgebung machst, auf die CD gebrannt werden wird.
  • Innerhalb des chroot können auch X-basierte Programme ausgeführt werden, wenn man sie von der Kommandozeile im Terminal aus startet.
  • Tippe "su knoppix" ein, um zum Benutzer "knoppix" zu werden; verwende Strg+D, um wieder "root" zu sein.
  • Aktualisiere zuerst die Paketliste mit: apt-get update
    • Warnung: apt-get upgrade ist eine schlechte Idee. Es ist ziemlich wahrscheinlich, daß ein nicht mehr bootbares remastert KNOPPIX zurück bleibt, oder es sonstwie zerstört ist. Sicherer ist es, nur für einzelne Pakete ein Upgrade zu machen, wenn es wirklich nötig ist.
    • Bevor man weitere Pakete installiert, wird es erforderlich sein, stattdessen andere Pakete zu löschen.
  • Um eine Übersicht über die installierten Pakete zu erhalten, kann kn-what benutz werden, welches unter anderen auch eine Liste nach Dateigröße liefert.

Verlassen der chroot-Umgebung

  • Verwende Strg+D, um die chroot-Umgebung zu verlassen; dann dies Script ausführen:
#! /bin/sh
# krhowto_3
# Path to partition you will work on
PFAD="/media/sda1"
for i in dev/pts proc sys dev tmp; do
  umount $PFAD/knx/source/KNOPPIX/$i
done
sed -i '2,$d' $PFAD/knx/source/KNOPPIX/etc/resolv.conf

Arbeiten außerhalb der chroot-Umgebung

  • Wenn man ein andersartiges Startverhalten von Knoppix möchte, kann man Änderungen in '/media/sda1/knx/master/boot/isolinux/isolinux.cfg' eintragen:
    • Ersetze zum Beispiel überall 'tz=localtime' mit 'tz=Europe/Berlin'
  • In dieser Datei kann man auch Cheatcodes anfügen, welche man immer braucht:
    • Hänge zum Beispiel 'no3d' (ohne ' ') an jede Append-Zeile an, wenn man nicht Compiz 3d mag.
  • Lies knoppix-cheatcodes.txt durch. Die neuste Version davon ist immer hier Mirrors zu finden.
  • In '/media/sda1/knx/source/KNOPPIX/etc/X11/Xsession.d/45knoppix' findet sich, welches Wallpaper Knoppix benutzt und welchen Startsound.
  • In '/media/sda1/knx/source/KNOPPIX/etc/init.d/knoppix-halt' ist der Hinweis, was beim shutdown zu hören ist.
  • Erstelle die Datei '/media/sda1/knx/master/KNOPPIX/knoppix.sh' neu und trage hier Dienste ein, welche man zusätzlich starten möchte.
Top

ISO erstellen

  • Wir sind jetzt fertig mit den Anpassungen und bereit zum brennen:
#! /bin/sh
# krhowto_4
# Path to partition you will work on
PFAD="/media/sda1"
START=$(date +'%s')
# Disable screensaver
xscreensaver-command -exit
# Build new inital RAM-disk
cd $PFAD/knx/minirt/minirtdir/
find . | cpio -oH newc | gzip -9 > ../minirt.gz
cp $PFAD/knx/minirt/minirt.gz $PFAD/knx/master/boot/isolinux/
# Make the big compressed filesystem KNOPPIX
genisoimage -input-charset ISO-8859-15 -R -l -D -V KNOPPIX_FS -quiet \
  -no-split-symlink-components -no-split-symlink-fields \
  -hide-rr-moved -cache-inodes $PFAD/knx/source/KNOPPIX \
  | /usr/sbin/create_compressed_fs -q -B 65536 -t 8 -L 9 \
  -f $PFAD/knx/isotemp - $PFAD/knx/master/KNOPPIX/KNOPPIX
# Update the file hashes used by the "testcd" boot option
cd $PFAD/knx/master ; find -type f -not -name \
  sha1sums -not -name boot.cat -not \
  -name isolinux.bin -exec sha1sum '{}' \; > KNOPPIX/sha1sums
# Create new Knoppix ISO
genisoimage -l -r -J -V "KNOPPIX" \
  -b boot/isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 \
  -boot-info-table -c boot/isolinux/boot.cat \
  -o $PFAD/knx/remasterd.iso $PFAD/knx/master
# Enable screensaver
su knoppix -c "xscreensaver -nosplash &"
echo -e "\nFinished! Used time: $(expr $(expr $(date +'%s') - $START) / 60) min. \
  and $(expr $(expr $(date +'%s') - $START) % 60) sec. \
  \n\nThe new ISO is stored in '$PFAD/knx/remastered.iso' "
Top

ISO testen ohne eine CD zu brennen

  • kvm-qemu

Wenn der Prozessor Virtualization unterstützt und wenn dies im BIOS aktiviert ist, kannst Du die neue ISO mit kvm-qemu testen. Prüfe auf Support mit:

egrep '(vmx|svm)' --color=always /proc/cpuinfo

Wenn das Ergebnis "vmx" ist, gib

modprobe kvm-intel

andernfalls, wenn das Ergebnis "svm" ist, gib

modprobe kvm-amd

ein, um das kvm Modul zu laden. Jetzt kann das Iso getestet werden mit:

kvm -m 512 -cdrom $PFAD/knx/remastered.iso
  • VirtualBox

Alternativ kann das neue ISO mit VirtualBox geprüft werden.


Sieh auch:

Top