Difference between revisions of "Debootstrap to LiveCD"


From Knoppix Documentation Wiki
Jump to: navigation, search
(Specific Knoppix Packages)
Line 31: Line 31:
 
=====Specific Knoppix Packages=====
 
=====Specific Knoppix Packages=====
 
  KNOPPIX_PACKAGES="\
 
  KNOPPIX_PACKAGES="\
  [[ash-knoppix-26]] \
 
  [[automount-knoppix]] \
 
  [[ddcxinfo-knoppix]] \
 
  [[etcskel-knoppix]] \
 
  [[hwdata-knoppix]] \
 
 
   [[knoppix-dma]] \
 
   [[knoppix-dma]] \
  [[knoppix-initscripts]] \
 
  [[knoppix-ndiswrapper]] \
 
  [[knoppix-remountrw]] \
 
 
   [[knoppix-setrootpassword]] \
 
   [[knoppix-setrootpassword]] \
  [[knoppix-sounds]] \
 
  [[knoppix-splash-utils]] \
 
  [[knoppix-terminalserver]] \
 
 
   [[knoppix-udev-config]] \
 
   [[knoppix-udev-config]] \
 
   [[knoppix-workarounds]] \
 
   [[knoppix-workarounds]] \
  [[kudzu-knoppix-vesa]] \
 
 
   [[libntfs9-knoppix]] \
 
   [[libntfs9-knoppix]] \
  [[mkdosswapfile-knoppix]] \
 
  [[modemlink-knoppix]] \
 
 
   [[modemtool-knoppix]] \
 
   [[modemtool-knoppix]] \
 
   [[mount-ntfs-knoppix]] \
 
   [[mount-ntfs-knoppix]] \
  [[netcardconfig-knoppix]] \
 
 
   [[network-setup-knoppix]] \
 
   [[network-setup-knoppix]] \
  [[networkconfig-knoppix]] \
 
 
   [[ntfsprogs-knoppix]] \
 
   [[ntfsprogs-knoppix]] \
 
   [[nxsetup-knoppix]] \
 
   [[nxsetup-knoppix]] \
  [[ppp-scripts-knoppix]] \
 
  [[rebuildfstab-knoppix]] \
 
  [[restartx-knoppix]] \
 
  [[rootshell-knoppix]] \
 
  [[sambastart-knoppix]] \
 
  [[saveconfig-knoppix]] \
 
  [[scanpartitions-knoppix]] \
 
 
   [[sndconfig-knoppix]] \
 
   [[sndconfig-knoppix]] \
  [[soundcardconfig-knoppix]] \
 
  [[sshstart-knoppix]] \
 
  [[startsyslog-knoppix]] \
 
  [[sudoers-knoppix]] \
 
  [[user-profile-knoppix]] \
 
  [[usleep-knoppix]] \
 
  [[wlcardconfig-knoppix]] \
 
 
   [[xorgconfig-knoppix]] \
 
   [[xorgconfig-knoppix]] \
  [[xsession-initscript-knoppix]] \
 
  [[xsession-knoppix]] \
 
  hwsetup \
 
 
   cloop-module-2.6.19 \
 
   cloop-module-2.6.19 \
 
   linux-image-2.6.19 \
 
   linux-image-2.6.19 \
Line 117: Line 84:
 
==Within chroot==
 
==Within chroot==
 
*Install Dependencies required for Knoppix
 
*Install Dependencies required for Knoppix
 +
 +
echo 'deb-src http://debian-knoppix.alioth.debian.org ./' >> /etc/apt/sources.list
 +
echo 'deb http://debian-knoppix.alioth.debian.org ./' >> /etc/apt/sources.list
 +
apt-get update
 
  [[apt-get]] [[apt-get#install|install]] \
 
  [[apt-get]] [[apt-get#install|install]] \
 
   gawk \
 
   gawk \
Line 141: Line 112:
 
   make \
 
   make \
 
   patch \
 
   patch \
   po-debconf
+
   po-debconf \
+
  [[ash-knoppix-26]] \
 +
  [[automount-knoppix]] \
 +
  [[ddcxinfo-knoppix]] \
 +
  [[etcskel-knoppix]] \
 +
  [[hwdata-knoppix]] \
 +
  [[knoppix-initscripts]] \
 +
  [[knoppix-ndiswrapper]] \
 +
  [[knoppix-remountrw]] \
 +
  [[knoppix-sounds]] \
 +
  [[knoppix-splash-utils]] \
 +
  [[knoppix-terminalserver]] \
 +
  [[kudzu-knoppix-vesa]] \
 +
  [[mkdosswapfile-knoppix]] \
 +
  [[modemlink-knoppix]] \
 +
  [[netcardconfig-knoppix]] \
 +
  [[networkconfig-knoppix]] \
 +
  [[ppp-scripts-knoppix]] \
 +
  [[rootshell-knoppix]] \
 +
  [[sambastart-knoppix]] \
 +
  [[soundcardconfig-knoppix]] \
 +
  [[sshstart-knoppix]] \
 +
  [[startsyslog-knoppix]] \
 +
  [[sudoers-knoppix]] \
 +
  [[rebuildfstab-knoppix]] \
 +
  [[restartx-knoppix]] \
 +
  [[saveconfig-knoppix]] \
 +
  [[scanpartitions-knoppix]] \
 +
  [[user-profile-knoppix]] \
 +
  [[usleep-knoppix]] \
 +
  [[wlcardconfig-knoppix]] \
 +
  [[xsession-initscript-knoppix]] \
 +
  [[xsession-knoppix]] \
 +
  hwsetup
 +
 
 
  [[useradd]] [[useradd#-m|-m]] knoppix
 
  [[useradd]] [[useradd#-m|-m]] knoppix
echo 'deb-src http://debian-knoppix.alioth.debian.org ./' >> /etc/apt/sources.list
+
 
echo 'deb http://debian-knoppix.alioth.debian.org ./' >> /etc/apt/sources.list
+
 
   
 
   
 
  [[apt-get]] [[apt-get#update|update]]
 
  [[apt-get]] [[apt-get#update|update]]

Revision as of 07:39, 6 March 2007

PREAMBLE

  • Debian Releases:
    • sarge = stable realease
    • etch = testing release
    • sid = unstable release

CONVENTIONS USED

The following conventions are used, within dotted box:

Commands & paramaters
Text can be directly input into a script.

Some commands are linked, if you require further explanation click the link :)

apt-get

SCRIPT

Setup The Environment

Hash Bang
  • As required at the beginning of a script (UNIX), a Hash Bang
#!/bin/bash
Script Variables
SOURCEDIR=`pwd`/source/KNOPPIX
MASTERDIR=`pwd`/master
ARCH=i386 
DEBIAN_RELEASE=sid
DEBIAN_MIRROR=http://http.us.debian.org/debian
Specific Knoppix Packages
KNOPPIX_PACKAGES="\
  knoppix-dma \
  knoppix-setrootpassword \
  knoppix-udev-config \
  knoppix-workarounds \
  libntfs9-knoppix \
  modemtool-knoppix \
  mount-ntfs-knoppix \
  network-setup-knoppix \
  ntfsprogs-knoppix \
  nxsetup-knoppix \
  sndconfig-knoppix \
  xorgconfig-knoppix \
  cloop-module-2.6.19 \
  linux-image-2.6.19 \
  loop-aes-modules-2.6.19 \
  madwifi-modules-2.6.19 \
  ndiswrapper-modules-2.6.19 \
  rt2x00-cvs-modules-2.6.19 \
  aufs-cvs-modules-2.6.19 \
  linux-image-2.6.19 \
  linux-kernel-headers \
  linux-sound-base
  loop-aes-utils \
  madwifi-tools \
  ndiswrapper-utils 
 "

Now setup the environment, make directories, run the debootstrap command and then change root:

mkdir -p ${SOURCEDIR}
mkdir -p ${SOURCEDIR}/knxfiles

debootstrap --arch ${ARCH} ${DEBIAN_RELEASE} ${SOURCEDIR} ${DEBIAN_MIRROR}
cd /KNOPPIX/usr/src/ &&
cp -Rp \
  * \
  ${SOURCEDIR}/usr/src/.

cd ${SOURCEDIR}/knxfiles &&
for PACKAGE in ${KNOPPIX_PACKAGES};
{
  dpkg-repack ${PACKAGE}
};

chroot ${SOURCEDIR} \
  /usr/bin/env -i \
  HOME=/root \
  TERM=$TERM \
  PS1='\u:\w\$ ' \
  PATH=/bin:/usr/bin:/sbin:/usr/sbin \
  /bin/bash --login

Within chroot

  • Install Dependencies required for Knoppix
echo 'deb-src http://debian-knoppix.alioth.debian.org ./' >> /etc/apt/sources.list
echo 'deb http://debian-knoppix.alioth.debian.org ./' >> /etc/apt/sources.list
apt-get update
apt-get install \
  gawk \
  perl \
  libdb4.4 \
  perl-modules \
  console-tools \
  console-data \
  console-common \
  pciutils \
  libpci2 \
  udev \
  libvolume-id0 \
  pump \
  dhcp3-common \
  binutils \
  debhelper \
  dpkg-dev \
  file \
  gettext \
  html2text \
  intltool-debian \
  libmagic1 \
  make \
  patch \
  po-debconf \
  ash-knoppix-26 \
  automount-knoppix \
  ddcxinfo-knoppix \
  etcskel-knoppix \
  hwdata-knoppix \
  knoppix-initscripts \
  knoppix-ndiswrapper \
  knoppix-remountrw \
  knoppix-sounds \
  knoppix-splash-utils \
  knoppix-terminalserver \
  kudzu-knoppix-vesa \
  mkdosswapfile-knoppix \
  modemlink-knoppix \
  netcardconfig-knoppix \
  networkconfig-knoppix \
  ppp-scripts-knoppix \
  rootshell-knoppix \
  sambastart-knoppix \
  soundcardconfig-knoppix \
  sshstart-knoppix \
  startsyslog-knoppix \
  sudoers-knoppix \
  rebuildfstab-knoppix \
  restartx-knoppix \
  saveconfig-knoppix \
  scanpartitions-knoppix \
  user-profile-knoppix \
  usleep-knoppix \
  wlcardconfig-knoppix \
  xsession-initscript-knoppix \
  xsession-knoppix \
  hwsetup
useradd -m knoppix


apt-get update
cd /knxfiles &&
  dpkg -i * &&
  cd / && rm -rf /knxfiles
apt-get clean

exit

Exit Chroot & Finalize

Prep startup rc startup scripts, inittab

cd ${SOURCEDIR}/etc &&
  rm -rf rc* &&
  cd /KNOPPIX/etc && 
  cp -ax inittab rc* ${SOURCEDIR}/etc/.

Build The CD

  • Make the compressed KNOPPIX CLOOP file
mkisofs \
-R \
-U \
-V "Knoppix" \
-publisher "rjenniss" \
-hide-rr-moved \
-cache-inodes \
-no-bak \
-pad ${SOURCEDIR} | \
nice -5 /usr/bin/create_compressed_fs - 65536 >  ${MASTERDIR}/KNOPPIX/KNOPPIX
  • Create the knoppix.iso file
mkdir -p ${MASTERDIR}/KNOPPIX
cd /cdrom && find . -size -10000k -type f -exec cp -p --parents '{}' ${MASTERDIR} \;
cd ${MASTERDIR}
mkisofs \
-pad \
-l \
-r \
-J \
-v \
-V "KNOPPIX" \
-no-emul-boot \
-boot-load-size 4 \
-boot-info-table \
-b boot/isolinux/isolinux.bin \
-c boot/isolinux/boot.cat \
-hide-rr-moved \
-o knoppix.iso ${MASTERDIR}

SPECIAL THANKS & SUPPORT

  • If this was of help, feel free to post a message
  • Support
  • How do I find what files belong to what packages? answer