Debootstrap to x86-64 LiveCD
From Knoppix Documentation Wiki
Revision as of 20:01, 19 September 2007 by Harry Kuhman (Talk | contribs)
Welcome to the Knoppix 64 / 64bit / AMD64 / EM64T / Knoppix64 LiveCD
Contents
preamble
- PLEASE if anyone knows where to find the patches for the knoppix kernel please send me an email: jupiterproject at gmail dot com, thanks!
- In Development by SNIa 05:05, 10 Jul 2006 (GMT)
- Using the Debian Net-inst CD as a base, still very alpha.
Variables
#!/bin/bash SOURCEDIR=/mnt/hda1/source/KNOPPIX64 MASTERDIR=/mnt/hda1/master/KNOPPIX64 ARCH=amd64 DEBIAN_RELEASE=sarge DEBIAN_MIRROR=http://amd64.debian.net/debian-pure64/
Set Up the Environment
mkdir -p ${SOURCEDIR} mkdir -p ${MASTERDIR}
DeBootstrap
debootstrap --arch ${ARCH} ${DEBIAN_RELEASE} ${SOURCEDIR} ${DEBIAN_MIRROR} cp /etc/resolv.conf ${SOURCEDIR}/etc/.
Now Chroot and set up environment
chroot ${SOURCEDIR} \ /usr/bin/env -i \ HOME=/root \ TERM=$TERM \ PS1='\u:\w\$ ' \ PATH=/bin:/usr/bin:/sbin:/usr/sbin \ /bin/bash --login mount proc -t proc proc cd /dev && ./MAKEDEV generic #ensure /etc/apt/sources.list is setup correclty apt-get update apt-get install locales apt-get install \ gawk \ perl \ perl-modules \ console-tools \ console-data \ console-common \ pciutils \ udev \ dhcp3-common \ binutils \ debhelper \ dpkg-dev \ file \ gettext \ html2text \ intltool-debian \ libmagic1 \ make \ patch \ po-debconf \ bzip2 \ cpp \ cpp-3.3 \ gcc-3.3 \ libc6-dev \ linux-kernel-headers
libvolume-id0 \ #not in repository linux-sound-base \ #not in repository ndiswrapper-utils \ #not in repository ndiswrapper-common \ #not in repository ndiswrapper-utils-1.1 \ #not in repository libdb4.4 \ #not in repository libpci2 \ #not in repository
Custom Kernel
- Download the latest stable 2.6 kernel
- Extract
- Configure
- Make, make modules, make modules_install
- Set up kernel
- Some notes found here http://www.knoppix.net/forum/viewtopic.php?t=21145
tar -xjf /path/to/linux-2.X.YY.tar.bz2 -C /usr/src cd /usr/src ln -s linux-2.X.YY linux cd linux cp /boot/config-2.6.11 .config make oldconfig make menuconfig make make modules make modules_install cd include ln -s asm-i386 asm cd .. cp arch/i386/boot/bzImage /boot/vmlinuz-2.X.YY cp System.map /boot/System.map-2.X.YY cp .config /boot/config-2.X.YY cd /boot rm config System.map vmlinuz ln -s config-2.X.YY config ln -s System.map-2.X.YY System.map ln -s vmlinuz-2.X.YY vmlinuz
Compressed Filesystem
Choose either cloop or squashfs
cloop
- http://en.wikipedia.org/wiki/Cloop
- Found here http://debian-knoppix.alioth.debian.org/sources/cloop_2.04-1.tar.gz
- Support on cloop seems to be scattered? No home page? No listing on freshmeat?
make KERNEL_DIR=path to kernel
SquashFS
- squashfs: http://en.wikipedia.org/wiki/SquashFS (may be using squashfs)
- http://sourceforge.net/project/showfiles.php?group_id=63835
- HOWTO http://www.artemio.net/projects/linuxdoc/squashfs/SquashFS-HOWTO.html
cd /usr/src/linux-2.6.17 patch -p1 < ../squashfs3.0/linux-2.6.15/squashfs3.0-patch make menuconfig
select File systems, misc file systems, select squashfs as built in module.
make make modules make modules_install
unionfs module
TO DO
- Custom Kernel
- cloop module
- unionfs module
- Make a custom minirt.gz file
- (compared from Debootstrap to LiveCD) Install Custom Kernel Configuration (now 64 bit)
notes
- See sister project for comparison Debootstrap to LiveCD