How to Knoppix to Harddisk (oder wie bringe ich Knoppix auf die verflixte Platte :-)

Knoppix Logo Das Dokument unterliegt der GNU Free Documentation License (Deutsch)

Hinweis

Das Dokument ist inzwischen veraltet und auf der neuen Knoppix ist ein Script welches eine Installation auf der Harddisk ermöglicht, ich selber habe es noch nicht getestet.
"Auf neueren Versionen von KNOPPIX ab 3.1 ist unter
/usr/local/bin/knx-hdinstall
ein Skript mit dabei, das aus KNOPPIX eine "normale" Debian-Installation auf Festplatte erzeugt. Benutzung auf eigene Gefahr!"
Aus Knoppix-FAQ.

Zur Entstehung

Alles fing mit diesem Posting von TUX an. Die CD wurde also auch einmal in den Windows-PC der Eltern reingeworfen und für gut empfunden. Doch es musste natürlich auf die Harddisk dieses Rechners. Das ganze auf die Harddisk zu bringen ging noch relativ schnell doch das ganze entsprach dann halt noch nicht einen richitgen Linux System und daher wurden wieder einige Fragen von Tomix im GPL/Linux-Forum (offen) gestellt über diese nervte sich Grünschnabel so das er die CD auch ausprobierte, auch er war begeistert und beschäftigte sich mit dem System. Aus den Anleitungen von uns beiden wurde schliesslich dies hier.

Voraussetzungen

Nützlich

"Installation"

Kopieren der Daten

  1. Backup der bestehenden Daten erstellen
  2. Knoppix booten
  3. ext2-Dateisystem auf einer freien Partion einrichten.
    fdisk /dev/hda Um die Partionen auf der ersten Harddisk zu ändern (Achtung: Hier sollte man wissen was man tut, ansonsten sind alle Daten auf der Harddisk verlohren)
    mkfs /dev/hdaX X ist die so eben bereit gestellte Partion
    mount /dev/hdaX /mnt/test Partion nach /mnt/test mounten und nicht einfach nur mounten
  4. cp -a /KNOPPIX/* /mnt/test/ kopieren der Dateien
  5. mkdir /mnt/test/home/knoppix && chown knoppix.knoppix /mnt/test/home/knoppix
  6. /mnt/test/etc/lilo.conf auf das neue System anpassen (als Editoren stehen vi und emacs zur Verfügung)
    zum Beispiel wie folgt:
    #start lilo.conf
    lba32
    boot=/dev/hdaX
    root=/dev/hdaX
    compact
    install=/boot/boot.b
    map=/boot/map
    timeout=100
    vga=791
    append="lang=de apm=power-off hda=scsi hdb=scsi hdc=scsi hdd=scsi"
    default=Knoppix
    image=/vmlinuz
        	root=/dev/hdaX
         	label=Knoppix
    #ende lilo.conf
  7. chroot /mnt/test chroot Umgebung für Lilo einrichten.
    lilo aufrufen, zuerst lilo -t zum testen wenn alles okay lilo, um mal eine Startdiskette zu haben noch lilo -b /dev/fd0.
    Falls das ganze noch in den Bootmanager von Windows (NT, W2K, XP?) soll, denn Bootsektor von der soeben erstellten Diskette auch noch in eine Datei auf der Diskette schreiben.
    dd if=/dev/fd0 bs=512 count=1 of=/bootsek.lin
    mount -t vfat /dev/fd0 /mnt/floppy
    cp /bootsek.lin /mnt/floppy/bootsek.lin
    umount /mnt/floppy
  8. /etc/fstab erstellen zum Beispiel so eine:
    proc       /proc       proc   defaults            0 0
    devpts     /dev/pts    devpts mode=0622           0 0
    /dev/hdaY  swap        swap   defaults            0 2
    /dev/hdaX  /           ext2   defaults            1 1
    /dev/fd0   /mnt/floppy auto   user,noauto,exec    0 0
    /dev/cdrom /mnt/cdrom  auto   user,noauto,exec,ro 0 0
  9. Diskette rein und reboot oder reboot und Windows starten und Knoppix im Bootmanager von M$ einbinden.
    Dazu Windows als Administrator (wie kommt man auf so einen Benutzername?) starten und die Datei bootsek.lin nach c:\ kopieren und am Ende der Datei c:\boot.ini die Zeile c:\bootsek.lin="Linux" eintragen. Dann wieder das geliebte Linux booten:-).
  10. Login als Root (wechseln auf eine Konsole)
    passwd root Root Passwort vergeben
    usermod -d root /root damit auch Root ein Homeverzeichnis hat
    passwd knoppix Passwort für den schon eingerichteten User Knoppix
    adduser Die gewünschten User hinzufügen
  11. /etc/sudoers die letzte Zeile auskommentieren (der User Knoppix) damit er kein Sicherheitsloch mehr darstellt
  12. chmod 1777 /var/tmp
  13. in /etc/host den gewünschten Namen eintragen
    zum Beispiel so eine:
    127.0.0.1       flatix.fam-kuster.ch    localhost
    
    # The following lines are desirable for IPv6 capable hosts
    # (added automatically by netbase upgrade)
    
    ::1     ip6-localhost ip6-loopback
    fe00::0 ip6-localnet
    ff00::0 ip6-mcastcodefix
    ff02::1 ip6-allnodes
    ff02::2 ip6-allrouters
    ff02::3 ip6-allhosts
    
  14. in /etc/hostname den Rechnername eintargen, zum beispiel:
    flatix
  15. automatisches Konsolen login deaktivieren und kdm als grafischen Login-Manager starten, dazu die /etc/inittab bearbeiten wie im Beispiel (die Zeilen nach ####):
  16. /etc/init.d/knoppix-autoconfig ändern etwa so wie im Beispiel (TODO wie denn nun genau).
  17. Führe ein apt-get remove dosfstools aus, dir wird dann gesagt das kfloppy auch gelöscht wird, bestätige dies. Diese Tools haben einen Bug und crashen deine root-Partition.
  18. init links anlegen liste: (ich (grünschnabel) arbeite an einem script zur automatischen verlinkung
    ****thomas**** sehr schön das erspart einem eine menge arbeit.
    /etc/rc0.d:
    K11cron
    K14ppp
    K19nfs-common
    K20exim
    K20inetd
    K20logoutd
    K20xfs
    K25hwclock.sh
    K25nfs-server
    K25nfs-user-server
    K89atd
    K90sysklogd
    S10portmap
    S35networking
    S90halt
    
    /etc/rc1.d:
    K11cron
    K14ppp
    K20inetd
    K20logoutd
    K20xfs
    K25nfs-user-server
    K89atd
    K90sysklogd
    S19nfs-common
    S20exim
    S25nfs-server
    
    /etc/rc2.d:
    K11anacron
    S10sysklogd
    S14ppp
    S19nfs-common
    S20exim
    S20inetd
    S20logoutd
    S20xfs
    S25nfs-server
    S25nfs-user-server
    S89anacron
    S89atd
    S89cron
    S99rmnologin
    
    /etc/rc3.d:
    K11anacron
    S10sysklogd
    S14ppp
    S19nfs-common
    S20exim
    S20inetd
    S20logoutd
    S20xfs
    S25nfs-server
    S25nfs-user-server
    S89anacron
    S89atd
    S89cron
    S99rmnologin
    
    /etc/rc4.d:
    K11anacron
    S10sysklogd
    S14ppp
    S19nfs-common
    S20exim
    S20inetd
    S20logoutd
    S20xfs
    S25nfs-server
    S25nfs-user-server
    S89anacron
    S89atd
    S89cron
    S99rmnologin
    
    /etc/rc5.d:
    K11anacron
    S10sysklogd
    S14ppp
    S19nfs-common
    S20exim
    S20inetd
    S20logoutd
    S20xfs
    S25nfs-server
    S25nfs-user-server
    S89anacron
    S89atd
    S89cron
    S99rmnologin
    
    /etc/rc6.d:
    K11cron
    K14ppp
    K19nfs-common
    K20exim
    K20inetd
    K20logoutd
    K20xfs
    K25hwclock.sh
    K25nfs-server
    K25nfs-user-server
    K89atd
    K90sysklogd
    S10portmap
    S35networking
    S90reboot
    
    /etc/rcS.d:
    S00autoconf
    S18hwclockfirst.sh
    S39dns-clean
    S40networking
    S41portmap
    S50hwclock.sh
    S55bootmisc.sh
    S55urandom