Mozilla Skin

APBioKnoppix:Documentation

From Linux & Open Source @ NUS

Contents

Background

Main Project Contributors: Chua Ruiwen, Luqman Hakim B Abdul Hadi and Goh Lu Feng

This page will document the step by step process on how we remaster Knoppix 5.0.1 to create Apbioknoppix 3.0.

NOTE: We did this re-mastering with 0 knowledge, therefore though research has been done, this is mainly trial and error.

Once completed, the software will be available to all. It will be used in the teaching of bioinformatics to NUS students.

Deviations

Based on the previoushow-to, we did not install:

  • ploticus (dun think we need this)
  • r-base (dun think we need this)
  • tcsh (dun think we need this)
  • wine-doc (dun think we need this)
  • wEMBOSS ??? (can't seem to find. Is it really needed since we've got Jemboss?)

System requirements and setup

This method is applicable to Knoppix versions later than 3.3. Earlier versions do not have the provision for the required 'Knoppix style' HD installation. Any computer capable of running Knoppix can be used for remastering provided it has enough free space on the hard drive. Approximately 6 Gig of free space is required:

Partition contents Partition size
HD installed Knoppix min 2.3 Gig
assembled compressed file system 700 Meg
final iso file system ready to burn to CD 700 Meg
combined RAM & swap space totalling 1 Gig 500-700 Meg
toHD Knoppix operating system 700 Meg
Total 6.1 Gig

For this example we are going to assume we are starting from a HD with some form of Windows on it which will be set up for dual boot as this is probably more typical than a Linux only system. Functionally, the only difference having the Windows system actually makes is to change the partition numbers.The recommended HD partition is as follows:

Partition# Partition content Partition size
hda1 Windows O/S size as appropriate
hda5 Knoppix HD install (the one we will work on) min 2.3 Gig, 3-3.5 preferred
hda6 A host distro for compressing the filesystem. Preferably Knoppix so that it can be "reused" for remastering later on if the need arises. Saves the need for reinstallation. New remastered isos also goes in here. min 4.0 Gig
hda7 toHD install for making the final iso 1.0 Gig
hda8 Linux swap approx 500-700 Meg(needed to total to 1 Gig RAM or more if you are kiasu =))

Install Knoppix

After partitioning, do a hardisk install of Knoppix.

$ sudo knoppix-installer


Choose the cd install (not Debain Install) and install the bootloader GRUB to the partition if you are already running Linux. Not too sure if you are running Windows.

Working style

We've found that the bmost efficient way to carry out work is to ssh into the system remotely using the command line interface. This will enable 80% of the work to be done. The remainder will require X GUI.

If the ssh daemon is not up, it can be started by:

$ sudo /etc/init.d/ssh start

Changing of Default Desktop

Change default KDE to ICEWM at etc/sysconfig/Desktop and edit /etc/init.d/knoppix-autoconfig. Change value “DESKTOP=kde” to “DESKTOP=icewm” and comment out the 2nd line using "#" to bypass the getbootparam. This step changes the default desktop to icewm. (I bet you knew that!):

# Also read desired desktop, if any 
#DESKTOP="$(getbootparam desktop 2>/dev/null)" 
# Allow only supported windowmanagers 
# case "$DESKTOP" in gnome|enlightenment|kde|larswm|xfce|xfce4|windowmaker| wmaker|icewm| fluxbox|twm|nx|rdp|kiosk) ;; *) 
DESKTOP="icewm"; ;; esac 
[ -n "$DESKTOP" ] || DESKTOP="icewm"


Ask xsession to function call icewm-session instead of icewm. This enables rox desktop and other icewm components to be started, instead of just icewm alone. Edit the file /etc/X11/Xsesssion.d/45xsession. This is the file that controls all the X configurations in Knoppix! Very impt fact!!!

Look for the function starticewm. This function will execute icewm. Change it to execute icewm-session.

starticewm(){
# Create automatic Desktop icons
mkdesktophdicons
playsound
GDK_USE_XFT=1 exec icewm-session
}

Change of password

You may wish to set a password for Knoppix and root:

$ su
# passwd
.
.
.
# passwd knoppix
.
.
.

Change of default language/locale

Edit /etc/profile, line 10/54

Change:

[ -n "$LANG" ] || LANG="de_DE@euro" to -n "$LANG" ] || LANG="en_US" to set default language to US English.

Grub boot entries

Below is our /boot/grub/menu.lst contents

title           APBioKnoppix, kernel 2.6.16.22 InitNG hda1
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.16.22 root=/dev/hda1 ro ramdisk_size=100000 init=/sbin/initng lang=us apm=power-off nomce quiet vga=791
savedefault
boot

title           APBioKnoppix, kernel 2.6.16.22 hda1
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.16.22 root=/dev/hda1 ro ramdisk_size=100000 init=/etc/init lang=us apm=power-off nomce quiet vga=791
savedefault
boot

title           APBioKnoppix, kernel 2.6.16.22 hda4
root            (hd0,3)
kernel          /boot/vmlinuz-2.6.16.22 root=/dev/hda4 ro ramdisk_size=100000 init=/etc/init lang=us apm=power-off nomce quiet vga=791
savedefault
boot


##HDA4 stuff

title           APBioKnoppix, kernel 2.6.17 hda4
root            (hd0,3)
kernel          /boot/vmlinuz root=/dev/hda4 ro ramdisk_size=100000 init=/etc/in
it lang=us apm=power-off nomce quiet vga=791
initrd          /boot/initrd.img
savedefault
boot

Modifying apt sources

Enable the apt repos by editing /etc/apt/sources.list to as follows:

# /etc/apt/sources.list for Knoppix
# If you want to do a "full upgrade", you should first
# upgrade the Packages from Debian/unstable (KDE & Co.)
# before doing a (dist-)upgrade for Debian/testing.
#
# See sources.list(5) for more information, especialy
# Remember that you can only use http, ftp or file URIs
# CDROMs are managed through the apt-cdrom tool.

##### BEGIN LINUXNUS REPO LIST #####

#Averse.net repositories (Using etch/testing/unstable)
#deb http://mirror.averse.net/debian etch contrib main non-free
deb http://mirror.averse.net/debian testing contrib main non-free
deb http://mirror.averse.net/debian unstable contrib main non-free
#deb http://mirror.averse.net/debian sid contrib main non-free
deb http://mirror.averse.net/debian stable contrib main non-free
deb http://mirror.averse.net/debian experimental contrib main non-free

#NUS Repositories
#Faster downloads! (Using testing/unstable/etch)
deb http://mirror.nus.edu.sg/Debian experimental contrib main
#deb http://mirror.nus.edu.sg/Debian sid contrib main non-free
#deb http://mirror.nus.edu.sg/Debian etch contrib main non-free
deb http://mirror.nus.edu.sg/Debian testing contrib main non-free
deb http://mirror.nus.edu.sg/Debian unstable contrib main non-free
deb http://mirror.nus.edu.sg/Debian stable contrib main non-free

#NUS Source repositories - uncomment if you want source repos
#deb-src http://mirror.averse.net/debian sid contrib main non-free
#deb-src http://mirror.nus.edu.sg/Debian sid contrib main non-free
#deb-src http://mirror.nus.edu.sg/Debian experimental contrib main non-free
#deb-src http://mirror.averse.net/debian experimental contrib main non-free

#InitNG
deb http://debian.space-based.de/debs/ experimental main
deb-src http://debian.space-based.de/debs/ experimental main

# Debian bioinformatics
#deb http://debian.bioinformatics.unsw.edu.au/ stable main
deb http://debian.bioinformatics.unsw.edu.au/ unstable main

#Repo for Rox desktop. Link from http://www.drobe.co.uk/alternative/artifact1622.html
deb ftp://ftp.berlios.de/pub/rox4debian binary/


##### END LINUXNUS REPO LIST #####

# Security updates for "stable"
deb http://security.debian.org stable/updates main contrib non-free
deb http://security.debian.org testing/updates main contrib non-free

# Stable
#deb http://ftp.de.debian.org/pub/debian stable main contrib non-free

# the non-US branch doesn't exist anymore since sarge. -KK
# deb http://ftp.de.debian.org/pub/debian-non-US stable/non-US main contrib non-free

# Stable Sources
#deb-src http://ftp.de.debian.org/pub/debian stable main contrib non-free
# deb-src http://ftp.de.debian.org/pub/debian-non-US stable/non-US main contrib non-free

# Testing
#deb http://ftp.de.debian.org/pub/debian testing main contrib non-free
# deb http://ftp.de.debian.org/pub/debian-non-US testing/non-US main contrib non-free

# Testing Sources
#deb-src http://ftp.de.debian.org/pub/debian testing main contrib non-free
# deb-src http://ftp.de.debian.org/pub/debian-non-US testing/non-US main contrib non-free

# Unstable
#deb http://ftp.de.debian.org/debian unstable main contrib non-free
# deb http://ftp.de.debian.org/debian-non-US unstable/non-US main contrib non-free

# Unstable Sources
#deb-src http://ftp.de.debian.org/debian unstable main contrib non-free
# deb-src http://ftp.de.debian.org/debian-non-US unstable/non-US main contrib non-free

# Experimental
#deb http://ftp.de.debian.org/debian experimental main contrib non-free

# Experimental Sources
#deb-src http://ftp.de.debian.org/debian ../project/experimental main contrib non-free

# ndiswrapper source (disappeared, only source.tar available)
# deb http://ndiswrapper.sourceforge.net/debian ./

# KDE 3.5 (not in sarge)
# deb http://pkg-kde.alioth.debian.org/kde-3.5.0/ ./
# deb-src http://pkg-kde.alioth.debian.org/kde-3.5.0/ ./
# deb http://pkg-kde.alioth.debian.org/kde-3.4.1/ ./
# deb-src http://pkg-kde.alioth.debian.org/kde-3.4.1/ ./

# Wine
#deb http://wine.sourceforge.net/apt/ binary/
# deb-src http://wine.sourceforge.net/apt/ source/

# Unichrome graphics driver
# deb http://www.physik.fu-berlin.de/~glaweh/debian/ unichrome/
# deb-src http://www.physik.fu-berlin.de/~glaweh/debian/ unichrome/

# NX stuff
# deb http://www.kalyxo.org/debian/ experimental main
# deb http://www.kalyxo.org/debian/ unstable main

# ndiswrapper
# deb   http://rigtorp.se/debian unstable/
# deb-src       http://rigtorp.se/debian unstable/

# Blades Repository (pppoeconf & co)
# deb http://people.debian.org/~blade/testing ./
# deb-src http://people.debian.org/~blade/testing ./
# deb cdrom:[Debian GNU/Linux 2.2 r3 _Potato_ - Official i386 Binary-1 (20010427)]/ unstable contrib main non-US/contrib non-US/main

# Knoppix special packages resource at LinuxTag HQ
# deb http://developer.linuxtag.net/knoppix ./
# deb-src http://developer.linuxtag.net/knoppix ./

# deb http://snapshot.debian.net/archive pool gcc
# deb-src http://snapshot.debian.net/archive pool gcc

# From the Kanotix archives
# deb http://kanotix.com/files/debian/ ./
# deb-src http://kanotix.com/files/debian/ ./

# Packages from ubuntu. CAUTION, they don't mix well with Debian
# deb http://de.archive.ubuntu.com/ubuntu hoary main universe multiverse
# deb-src http://de.archive.ubuntu.com/ubuntu hoary main universe multiverse

# Unofficial packages, like JAVA
deb ftp://ftp.debian-unofficial.org/debian/ stable main contrib non-free restricted
# deb-src ftp://ftp.debian-unofficial.org/debian/ stable main contrib non-free restricted
deb ftp://ftp.debian-unofficial.org/debian/ testing main contrib non-free restricted
# deb-src ftp://ftp.debian-unofficial.org/debian/ testing main contrib non-free restricted
deb ftp://ftp.debian-unofficial.org/debian/ unstable main contrib non-free restricted
# deb-src ftp://ftp.debian-unofficial.org/debian unstable main contrib non-free restricted

# Open-Xchange and JavaMail packages
# deb http://ox.cs.bme.hu/ox-stable sarge contrib

# Open-Xchange development version (currently 0.8.1.2-1) and JavaMail packages
# deb http://ox.cs.bme.hu/ox-devel sarge contrib

# Thunderbird
#deb http://people.debian.org/~asac/experimental ./
#deb-src http://people.debian.org/~asac/experimental ./

Note that the source repos have been commented out. NUS repos were enabled as we are doing the work in school. Of course, feel free to modify this list to your needs.

Removal of uneeded software

This is the command to list packages by size:

$ sudo apt-get remove --purge kviewshell rootshell-knoppix ash-knoppix-26 sash dash

See below for rationale for strikeout

Remove KDE language files:

$ sudo apt-get --purge remove kde-i18n*

Special mention goes to kdebluetooth (which is giving us a lot of problems)

$ sudo dpkg --purge kdebluetooth
$ sudo apt-get remove --purge kdebluetooth

Remove some KDE related stuffs:

$ sudo apt-get --purge remove kde-menu-knoppix kde-services-knoppix kdebase libkdegames1   kdegraphics  kdeprint kdessh kdesktop kdepasswd  kdeservicemenus-knoppix  konqueror-nsplugins kpf libkdepim1a kdepim-kio-plugins kdepim-kfile-plugins kdebase-data

kdenetwork* kdelock*  kdegraphics*  kdebase-kio* ksysguard* kdead* kdemultimedia*

Remove bloaty KDE apps:

$ sudo apt-get remove --purge kcalc kate kpdf kghostview kooka ksnapshot scribus kolourpaint  kiconedit kfind filelight kappfinder kbackup khexedit ktip ktimer ark klipper kpager konsole  kcharselect kamera kiconedit knode kppp krdc krfb kwifimanager kphone ksudoku ksokoban kfloppy kdf kuser ksysv kuickshow

Remove these too:

$ sudo apt-get remove --purge airsnort bluez-utils bluez-firmware bonnie++ btpin-knoppix buffer cddb etherwake  helix-player ijsgimpprint java-common java2-runtime-knoppix  mozilla-thunderbird-locale-de  kmix kaffeine radio  digikam kview freemind kfax ktnef alevt units txt2regex nvtv atitvout xtv dvbackup  k3b ding  kpackage khelpcenter joe zile kget xbattle ace-of-penguins xskat x3270 telnetd-ssl telnet-ssl wavemon mtr minicom tftp gq nxclient  gscanbus  qps libbluetooth1 scribus-doc-en 3270-common xfonts-x3270-misc brltty cvs lynx user-de libnspr4 mpg321 irssi wine 

britty debconf-i18n ethereal* ettercap-* nessus* mozilla-firefox-locale-de*  telnet* vcd* xawtv* kmenuedit* isdn* bacula* 

Remove fluxbox, kwin and wmaker:

$ sudo apt-get remove --purge kwin fluxbox wmaker larswm wmaker-data wmakerconf-data twm

Remove unused shell:

$ sudo apt-get remove --purge kviewshell rootshell-knoppix ash-knoppix-26 sash dash 

We decided not to remove these as they seem to be pretty critical for booting from CD.. esp ash-knoppix

Do a purge of these:

$ sudo dpkg --purge xbattle

Some more apps to remove:

$ sudo apt-get remove --purge mozilla-thunderbird thunderbird thunderbird-typeaheadfind audacity qemu ingerman trans-de-en libclamav1 clamav-freshclam clamav clamav-base gpsdrive gpstrans gdb ncpfs squid squid-common squidclient vnc-common vncserver xvncviewer xfsdump xfsprogs mailx fetchmail
mutt scribus sleuthkit tiger avm-firmware nxssh nxviewer nxproxy nxlibs nxdesktop nxagent libnxcomp0 libnxcompext0  myspell-de-at myspell-de-de xfonts-100dpi-transcoded mc xfonts-75dpi-transcoded capiutils procmail bb dict reportbug

For the next few apps, pls do $ sudo apt-get remove --purge -s package name to find out if any essential packages are removed undesirably.

(grep 2.6.17) (grep dev)

After removing all these stuff, the system disk usage shld be around 1124216 KB.

Upgrade

Firefox

Install firefox:

$ sudo apt-get install firefox=1.5.dfsg+1.5.0.4-1

Openoffice.org

Install Openoffice.org as follows:

sudo apt-get install openoffice.org=2.0.3-2

However, this has failed for some reason we cannot decipher.Apt-get can't seem to resolve the dependency issues.

A workaround is as follows:

sudo apt-get install openoffice.org-l10n-en-us=2.0.3-1 openoffice.org-common=2.0.3-1 openoffice.org-core=2.0.3-1 openoffice.org-writer=2.0.3-1 openoffice.org-calc=2.0.3-1 openoffice.org-impress=2.0.3-1 openoffice.org-draw=2.0.3-1 
openoffice.org-math=2.0.3-1 openoffice.org-base=2.0.3-1  openoffice.org-help-en-us=2.0.3-1

After upgrading, disk usage is 1565384 kb.


Installation of bio software

After editing the apt sources.list based on instructions at http://debian.bioinformatics.unsw.edu.au/, use apt to install (need to set repo in apt sources.list)

Artemis

Download the tarball from http://www.sanger.ac.uk/Software/Artemis/v8/ into /usr/local/src which is your working directory for all installations. Untar it. The executables are act and art.

$ tar -xvzf tarball
$ cd artemis
$ ./act
$ ./art

After that remove the tarball with sudo rm -f

TreeView

Install treeview by downloading the rpm from http://darwin.zoology.gla.ac.uk/%7Erpage/treeviewx/download.html into /usr/local/src Then use alien to create deb package.

$ sudo alien package name
$ sudo dpkg -i package name
$ tv

Running the program tv may give you errors. You need to install libwxgtk and then create symlinks.

$ sudo apt-get install libwxgtk2.4-1
$ sudo ln -sT libwx_gtk-2.4.so.1.0.0 libwx_gtk-2.4.so

Running tv should work fine now.

After that both the rpm and deb packages can be removed:

$ sudo rm -f tv_0.5-2_i386.deb tv-0.5-1.i386.rpm

Sms2

Download the zip file to /usr/local/src/sms2 from http://bioinformatics.org/sms2/mirror.html. Of course you need to create the directory yourself.

$ cd /usr/local/src
$ sudo mkir sms2
$ cd sms2
$ sudo unzip ''zip file''

Run the program by opening index.html.

$ firefox index.html

Remove the zip file using sudo rm -f

Weka

Download the zip file to /usr/local/src/weka from http://www.cs.waikato.ac.nz/ml/weka/. Of course you need to create the directory yourself.

$ cd /usr/local/src
$ sudo mkir weka
$ cd weka
$ sudo unzip ''zip file''

Run the program by running weka.jar:

$ java -jar weka.jar

Remove the zip file using sudo rm -f


EMBOSS

EMBOSS is installed from source to get the latest version if the deb file is not available. If the deb file is available, skip to the paragraph beginning Start here if you wish to skip the compilation step. Before the installation can commence additional libraries need to be installed. You can do this later after you run into the errors too.

$ sudo apt-get install libx11-dev
$ sudo ln -sf /usr/include/libpng12/png.h /usr/include/png.h

After getting the tarball from ftp://emboss.open-bio.org/pub/EMBOSS/ or http://emboss.sourceforge.net/download/#Stable/ into /usr/local/src:

$ sudo tar -xzvf EMBOSS-latest.tar.gz
$ cd EMBOSS-3.0.0
$ sudo ./configure
$ sudo make

Instead of the usual make install, we will be using checkinstall, which needs to be installed first.

$ sudo apt-get install checkinstall
$ sudo checkinstall

A deb file is produced which will save the need for recompilation in future. Ours can be found here.

Start here if you wish to skip the compilation step. You will need to install emboss using:

$ sudo apt-get install package name

However the above step is not required if you have compiled emboss as checkinstall will install it automatically.

Going on, more development libraries are needed before installation can take place:

$ sudo apt-get install libpng12-dev libgd2-xpm-dev

Finally, we can commence with the installation:

$ cd /usr/local/share/EMBOSS/jemboss/utils
$ sudo chmod a+x install-jemboss-server.sh
$ sudo ./install-jemboss-server.sh

Next answer the questions accordingly. Choose standalone version. And choose the correct path that EMBOSS has been installed. The installation may ask you about the path for libpng and gd. Answer as follows:

--with-pngdriver=/usr

After installation, Jemboss can be accessed at

/usr/local/emboss/share/EMBOSS/jemboss/runJemboss.sh

And now we can proceed to remove all the development packages downloaded for emboss since they are not needed any more.

$ sudo apt-get remove --purge libexpat1-dev libfontconfig1-dev libfreetype6-dev libgd2-xpm-dev libjpeg62-dev libpng12-dev libx11-dev libxau-dev libxdmcp-dev libxext-dev libxpm-dev x11proto-core-dev x11proto-input-dev x11proto-kb-dev x11proto-xext-dev xtrans-dev

After that remove the tarball with sudo rm -f and the emboss directory (from the tarball) and /usr/local/share/share/EMBOSS with sudo rm -rf

Checkinstall can also be removed unless you are conpiling additional packages:

$ sudo apt-get remove --purge checkinstall

Jalview

The installer can be downloaded from http://www.jalview.org/Web_Installers/install.htm. Download the installer without Java VM. Give executable permissions to the installer and run it.

$ chomd u+x install.bin
$ sudo ./install.bin

The installer will ask you where you wish to install. Type /usr/local/Jalview

The installer will ask where you wish to create links. Type /usr/bin

Run Jalview.

$ Jalview

After that remove the installer with sudo rm -f

Other bio software

Install these:

$ sudo apt-get install rasmol pymol clustalx bioperl blast2 t-coffee hmmer phylip

Install additional biosoftware deb packages from http://www.debian.org/devel/debian-med/microbio

Size check 1867960 KB

Installation of non-bio software

Installation

Install these essentials:

$ sudo apt-get install mediawiki webmin-apache webmin-mysql

These are optional:

$ sudo apt-get install amsn rox-filer leafpad galculator xpaint graveman gqview sylpheed nvu azureus guitar vlc xmms-mad xmms-midi xmms-fmradio kpdf

Suggest the following not to be installed due to excessive libraries:

$ sudo apt-get install -s file-roller gimageview evolution 

Suggest installing xine. extra libraries that will be installed:

libxine1 libxvmc1

Suggest install gparted. Extra packages installed:

gconf2 gconf2-common gksu gnome-keyring gparted libgconf2-4 libgksu2-0 libglibmm-2.4-1c2a libgnome-keyring0 libgtkmm-2.4-1c2a libgtop2-5 liborbit2

Consider sokban sudoku progs?

Apache 2

  • We first copied the existing configuration file from APBioKnoppix 2.0

/etc/apache2/sites-available/default

and we will work with that from here.

Here's the file:

NameVirtualHost *
<VirtualHost *>
        ServerAdmin webmaster@localhost

        DocumentRoot /home/knoppix/public_html
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /home/knoppix/public_html/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
                # This directive allows us to have apache2's default start page
                # in /apache2-default/, but still have / go to the right place
        </Directory>

        #ScriptAlias /cgi-bin/ /home/knoppix/cgi-bin/
        <Directory "/home/knoppix/cgi-bin/">
                AllowOverride None
                Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>

        ErrorLog /var/log/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog /var/log/apache2/access.log combined
        ServerSignature On

</VirtualHost>

...and we changed it thus


 ...
        ServerAdmin knoppix@localhost
 ...
        #ScriptAlias /cgi-bin/ /home/knoppix/public_html/cgi-bin/
        <Directory "/home/knoppix/public_html/cgi-bin/">
                AllowOverride None
                Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>

        ErrorLog /home/knoppix/public_html/logs/error.log
...
        CustomLog /home/knoppix/public_html/logs/access.log combined
...


Since all the paths are pointing to /home/knoppix/public_html, and that's the place we'll be running all our web-based activities from, we'll need to edit some things..

  • Add user knoppix to the group www-data
    • # usermod -a www-data knoppix
  • Create the public_html and cgi-bin directories
    • $ mkdir -p ~/public_html/cgi-bin
  • Change the permissions to allow www-data to write to the /home/knoppix/public_html/ directory
    • $ cd ~
    • $ chgrp -R www-data ~/public_html
    • $ chmod -R g+w ~/public_html
    • $ mkdir ~/public_html/logs

    • Without these steps, Apache will complain when you try to start it as it cannot write to the location (/home/knoppix/public_html) as set in the default site configuration above.
  • Restart the Apache 2 webserver
    • $ sudo /etc/init.d/apache2 start

Mediawiki

  • Download and install Mediawiki using $ sudo apt-get install mediawiki
    • Bear in mind that Mediawiki only works with PHP4
  • The configuration files for the webserver can be found in /etc/mediawiki
  • Using the file named apache.conf,
    • Move the code contained in this file into /etc/apache2/sites-available/default, inserting its contents just before the final </VirtualHosts line.
    • The end of /etc/apache2/sites-available/default should now look like this:
...
        CustomLog /home/knoppix/public_html/logs/access.log combined
        ServerSignature On

        Alias /mediawiki /var/lib/mediawiki

        <Directory /var/lib/mediawiki/>
                Options +FollowSymLinks
                AllowOverride All
                order allow,deny
                allow from all
        </Directory>

        # some directories must be protected
        <Directory /var/lib/mediawiki/config>
                Options -FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/lib/mediawiki/images>
                Options -FollowSymLinks
                AllowOverride None
        </Directory>

</VirtualHost>
  • Ensure that mysql is running
    • Assuming it's already been installed, mysql can be started using $ sudo /etc/init.d/mysql start
  • Visit this page to set up configuration options for Mediawiki. Ensure that apache and mysql are running.
    • The settings below are recommended, but you can change them to your liking so long as you remember what you set =)
# site name : wiki
# sysop account : wikiadmin
# password : wikiadmin
# db username : wikiuser
# db password : wikiuser
# db prefix : wiki_
# db root : this will be your mysql root password. (In APBioKnoppix, no password is set as setting password will cause problems with a mysql start script.)
# NOTE : rest of the fields not mentioned here use default values 

Next, move /var/lib/mediawiki/config/LocalSettings.php to /etc/mediawiki/LocalSettings.php with rights 600, remove /var/lib/mediawiki/config, then follow this link to your wiki.

Currently we are facing problems with firefox asking to open a phtml file when the path is st to http://localhost/mediawiki/ or http://localhost/mediawiki/index.php/

We have resolved the problem but the exact solution remains to be verified. What we have done is:

Make sure your php configuration file (/etc/php4/apache/php.ini or /etc/php4/apache2/php.ini) has this line:

memory_limit = 20M

and the following lines uncommented:

extension=mysql.so
extension=gd.so

restart apache2

apache2ctl restart  OR  apache2ctl graceful

Settings

Apps

This sets default terminal emulator to rxvt

$ sudo ln –sf /usr/bin/rxvt /etc/alternatives/x-terminal-emulator
$ sudo ln –sf /usr/share/man/man1/rxvt.1.gz /etc/alternatives/x-terminal-emulator.1.gz


To change ‘Start’ menu programmes display, edit /etc/X11/icewm/menu.

Initng

Services

InitNG seems to have problems with shutting down/reboot and starting services on boot.

This can be explained by the fact that InitNG doesn't run on the Sysvinit system used by init and is the default on Knoppix. What happens is that when booting from InitNG, it's own system/run scripts take over, and hence changes made to the Sysvinit configuration do not seem to take effect (say goodbye to # update-rc.d ssh start blah blah). shutdown, halt and reboot will also cease to work for this reason. When you boot InitNG, it really takes over your system.

So here's how to solve a few problems..

Running services on startup

If you want services (or just stuff in general) to run on startup, they must be added to InitNG's startup, and not the usual /etc/rc[0-6].d. InitNG's startup scripts can be found in /etc/initng

1) X usually doesn't start, so we add a xsession script as below

After installing initng, look for file ‘xsession.i’ and change to

#!/sbin/itype
This is a i file, used by initng parsed by install_service
service system/xsession {
need = system/bootmisc system/initial;
script start = { /bin/bash /etc/init.d/xsession start};
}

2) And the network interfaces don't come up..

initng causes some changes in default boot session. This is affected: in /etc/network/interfaces

add auto lo eth0 # to first line
add iface eth0 inet dhcp # to last line

3) Neither does sshd

# ng-update add daemon/dcron default

4) Nor does cron

# ng-update add daemon/sshd default


The trick here is that under /etc/initng, lie the system, net and daemon directories which contain startup scripts to the more common services available (eg. sshd, cron, dhcpcd etc etc). All that needs to be done is to add the scripts to InitNG's startup using the ng-update as shown above. There is only the default runlevel, which InitNG will boot to.

As for halting and rebooting, InitNG apparently replaces the existing system binaries. (To replace them, according to InitNG Forums, simply run # apt-get install sysvinit, which will reinstall the proper binary versions. Otherwise, calling halt and reboot can be done using

# nghalt

or

# ngreboot

(The same can also be achieved using

# ngc --poweroff | --halt

or

# ngc --reboot

)

Menu

Change menu by editing /etc/X11/icewm/menu

# This is an example for IceWM's menu definition file.
#
# Place your variants in /etc/X11/icewm or in $HOME/.icewm
# since modifications to this file will be discarded when you
# (re)install icewm.
#
 #prog XChat xchat3 xchat
#prog xterm terminal3 xterm -ls
#prog rxvt terminal3 rxvt -rv -C -fn 9x15 -sl 500
#prog NEdit nedit nedit
#prog Mozilla mozilla mozilla
prog rxvt terminal3 rxvt -ls -bg black -cr white -fg white -C -fn 9x15 -sl 500
prog "Mozilla Firefox" firefox firefox
prog Gimp gimp gimp
prog OpenOffice ooo_gulls openoffice
prog amsn amsn amsn
prog gedit gedit gedit

separator

menu Biology folder {
        #replace the following programs with biology applications
                prog artemis artemis /home/knoppix/Desktop/bioapps/artemis/art
                prog "artemis comparison tool" artemis /home/knoppix/Desktop/bioapps/artemis/act
                prog clustalx clustalx clustalx
                prog hmmer hmmer firefox /usr/share/doc/hmmer/hmmer-html/index.html
                prog jalview jalview /home/knoppix/Jalview/Jalview
        #       prog phylip phylip phylip
                prog jemboss jemboss /usr/local/emboss/share/EMBOSS/jemboss/runJemboss.sh
                prog pymol pymol pymol
                prog rasmol rasmol rasmol
                prog SMS SMS firefox ~/Desktop/bioapps/sms2/index.html
                prog t-coffee t-coffee firefox /usr/share/doc/t-coffee/html/t_coffee.html
                prog treeview treeview tv                 prog weka weka java -jar /home/knoppix/Desktop/bioapps/weka/weka-3-4-8/weka.jar

}

menu Applications folder {

        menu Editors folder {
        prog vim vim gvim
        #prog NEdit nedit nedit
        #prog xedit xedit xedit
        #prog Kate kate kate
        #prog Kwrite kwrite kwrite
        prog OpenOffice ooo_gulls openoffice
        prog gedit gedit gedit


    }

#    menu "Mail Agents" folder {
#       prog thunderbird thunderbird thunderbird
#    }
    menu "WWW Browsers" folder {
        prog "Mozilla Firefox" firefox mozilla
  #      prog Lynx lynx lynx
        prog Links links x-terminal-emulator -e links
    }separator

    menu Graphics folder {
        prog Gimp gimp gimp
#        prog XFig xfig xfig
        prog "Ghostview" gv gv

    }

    menu Development folder {
        #any ideas what we want to put here??
        prog vim vim vim
    }

}

menu System folder {
    prog "Control Panel" redhat control-panel
    prog xload xload xload
    prog xosview xosview xosview
        #    menu "Window Managers" folder {
        #        restart icewm - icewm
        #    }
}
menu Utilities folder {
    menu Multimedia folder {
        prog XPlayCD xplaycd xplaycd
        prog XMixer xmixer xmixer
    }
    prog "Font Selector" xfontsel xfontsel
    prog Clock xclock rclock
    prog Magnify xmag xmag
    prog Calculator xcalc xcalc
    prog Colormap xcolormap xcmap
    prog Clipboard xclip xclipboard
    prog xkill bomb xkill
    separator
    prog "Screen Saver" xlock xlock -nolock
    prog "Screen Lock" xlock xlock
}


# menufile Toolbar folder toolbar

menuprog "Gnome" folder icewm-menu-gnome2 --list /usr/share/gnome/vfolders
menuprog KDE folder icewm-menu-gnome2 --list /usr/share/applnk

Taskbar

Change toolbar xterm to show black background by editing /etc/X11/icewm/toolbar. Ensure that the xterm entry includes the options as follows:

prog XTerm xterm rxvt -rv -C -fn 9x15 -sl 500

Changes in the start menu tabs can be made by editing /etc/X11/icewm/programs. The following is ours for reference:

# This is an example for IceWM's toolbar definition file.
#
# Place your variants in /etc/X11/icewm or in $HOME/.icewm
# since modifications to this file will be discarded when you
# (re)install icewm.
#
#prog rxvt terminal3 rxvt -rv -C -fn 9x15 -sl 500
prog Console terminal3 rxvt -ls -bg black -cr white -fg white -C -fn 9x15 -sl 500
#prog "Console" rxvt -rv -C -fn 9x15 -sl 500
#prog FTE fte fte
#prog Netscape netscape netscape
prog    "Vim" vim /usr/bin/gvim -f
prog    "Firefox" firefox firefox

Themes

Download these themes into temp_themes in /home/knoppix:

Once the tarballs are dowloaded, extract the tarball and move the theme directory. If it is a tar archive, use the command tar -xvf

$ tar -xvzf tarball
$ sudo mv theme directory /usr/share/icewm/themes

You may now remove the temp_themes directory:

$ cd ..
$ rm -rf temp_themes

Set the default theme using the taskbar and you may remove the other themes which you do not want.

Icons

FAQ on how to make the icons available on ICEWM http://bbs.cvut.cz/~covex/linux/icewm/

Download the tarball from htpp://bbs.cvut.ca/~covex/icewm/iceicons/ into /home/knoppix/temp_icons. Untar it. Next move the contents of the tarball to /usr/share/icewm/icons.

$ tar -xvzf tarball
$ sudo mv contents of icons directory /usr/share/icewm/icons
$ sudo mv menu items directory /usr/share/icewm/icons
$ rm -rf tarball tarball directory

Desktop

To make sure that ROX is started when icewm is started, create a file called startup in /etc/X11/icewm

$ cd /etc/X11/icewm
$ vi startup

Change the contents to as follows:

rox --pinboard=PIN &

Change the file permissons:

$ sudo chmod a+x startup

Change rox desktop to use double click instead of single click. Once rox has been started, juz right click on the deskop and go to

  • rox-filer>options;
  • filer window>window behaviour>single click navigation.

Mushroom wallpaper: http://wallpapers.jurko.net/pic/1439/ Put this in /usr/local/src

In ROX, we had this problem of always getting an error message for every icon clicked. This was rectified by going to

  • ROX Option>Filer windows>Windows behavious
  • Uncheck ‘single click navigation’. Duh!

Firefox

Change font size settings of FF for monospace and default font to 17.

Fortune

fortune config files are found in /usr/share/games/fortune

Simply create a simple text file with each quote on a new line separated by '%'s

After saving the file, simple run:

(Assuming you've saved the quotes in 'quotes')

# strfile quotes

which will generate a 'quotes.dat'. And you're done. Run fortune a few times and you should start to see your quotes appearing =)

Enjoy!

Gaim

To enable smileys, sign into an acct and go to

  • tools > preferences > interface > conversation >smiley themes

Select "Default"

Set also "Raise IM on events" "Raise chat on events"

Jalview

Turn off the example that is always opened by going to:

  • tools > preferences > visual > open file

Uncheck the box.

Openoffice.org

To change icons in toolbar to small size go to:

tools > options > Openoffice.org > view > icon size and style

Select small so that ur all ur icons can appear on the toolbar.

Webmin

After installing webmin using apt-get, there is a need to change the root password as webmin setup will copy the root password from the system password file. The command to do so is:

$ sudo /usr/share/webmin/changepass.pl /etc/webmin root apbioknoppix

where root is the default user name and apbioknoppix is the password you want.

Note that location of changepass.pl may be different and u may thus need to search for the file using the locat ecommand after updatedb.

Set ssl=0 and logouttime=100000 in /etc/webmin/miniserv.conf We are not using SSL for webmin.

Webmin can be accessed via the web browser at https://localhost:10000/

A file u may want to read is at /usr/share/doc/webmin/README.Debian

Optimizations

Reduce workspace to 3 by editting the file “~/.icewm/preferences” and look for the section of workspaces. Change it to as follows:

# Names of the Workspaces
WorkspaceNames=" 1 "," 2 "," 3 "

Reduce spawned tty to reduce boot time .In this case, since initng is installed, we need to edit initng config files. Specifically, we edit the contents of /etc/initng/daemon/getty.i to:

#!/sbin/itype
# This is a i file, used by initng parsed by install_service
daemon daemon/getty/1 { need = system/bootmisc; provide = virtual/getty/${NAME};  term_timeout = 3; env DEV_PRE=tty; exec daemon = /sbin/getty 38400 ${DEV_PRE}${NAME};  respawn; last;
}
daemon daemon/getty/2 { need = system/bootmisc; provide = virtual/getty/${NAME};  term_timeout = 3; env DEV_PRE=tty; exec daemon = /sbin/getty 38400 ${DEV_PRE}${NAME};  respawn;
}
virtual daemon/getty { need = daemon/getty/2; use = system/mountfs system/netmount system/ issue;
}

Reduce kernel swappiness (from http://www.linuxjournal.com/article/8308):

$ sudo cat /proc/sys/vm/swappiness #Continue if value!=10.
$ sudo sysctl -w vm.swappiness=10 
$ sudo cat /proc/sys/vm/swappiness #Value shld = 10 now.

Add to /etc/sysctl.conf and then restart:

vm.swappiness=10
Increasing Ooo performance(from http://openoffice.blogs.com/openoffice/2006/04/optimizing_open.html):

Do not run wif JRE(from http://www.linuxjournal.com/article/8308). Settings found in tools>options>Openoffice.org>Java. However, be warned:

  • Wizards don't work
  • The database functions don't work
  • You can't save in some of the funky formats like Pocket word.

Go to

  • Tools>options>Openoffice.org>memory
  • Change the default values under the Graphics cache for Use for OpenOffice.org and Memory per Object. Increase the first value from 6 to 128MB. Increased the second value from .5 to 20MB.

Firefox optimizations

Cleaning up

Remove configuration directories in /home:

  • .scribus
  • .kpackage
  • .nessus


Remove configuration directories in /etc:

  • xfce4
  • kde3
  • emacs
  • 3270
  • exim
  • irssi
  • thunderbird
  • mc

Remove in /etc/X11

  • xfce4
  • twm

Clear /var/lib/apt/lists

The following are some clean up commands

$ deborphan | sudo xargs apt-get -y remove --purge

removes orphaned files not used by any package.

$ sudo apt-get clean

will remove archived .deb packages. These are no longer needed once the package has been installed.

$ COLUMNS=200 sudo dpkg -l |grep ^rc |awk '{print $2} ' | sudo xargs dpkg -P

cleans up the package configuration files.


Kernel

Downgrade to 2.6.16.22 kernel from 2.6.17rc3

Place kernel headers from 2.6.16.22 in /usr/src

Includes:

.config
.kernelrelease
.version
Makefile
Module.symvers
include/

then


Place kernel modules in /lib/modules/2.6.16.22 (# make modules_install in the kernel source directory should create this directory and place the modules inside it)

Just ensure that cloop.ko is present in /lib/modules/<kernel-ver>/kernel/drivers/block


Once you're done with modifying the kernel and modules to your liking, remember to edit /boot/grub/menu.lst and make your new kernel the default boot option for grub.

There are a few ways to do this:

1)

Edit the symlinks in /boot for vmlinuz, System.map and config to point to your updated files.

For example, if we're using a 2.6.16.22 kernel. We'd do:

# cd /boot
# ln -sf System.map-2.6.16.22 System.map
# ln -sf config-2.6.16.22 config
# ln -sf vmlinuz-2.6.16.22 vmlinuz
# ln -sf initrd.img-2.6.16.22 initrd.img

As such, the default kernel boot values in /boot/grub/menu.lst will pick up these default values. Bad luck to booting to the "rescue" option though. menu.lst goes straight to the kernel image file (w/o symlinking)

2)

Edit menu.lst and create a new entry that points to your new kernel.

eg.

title           APBioKnoppix kernel 2.6.16.22 Defaut
root            (hd0,3)
kernel          /boot/vmlinuz-2.6.16.22 root=/dev/hda4 ro ramdisk_size=100000 init=/etc/init lang=us apm=power-off nomce quiet vga=791
initrd          /boot/initrd.img-2.6.16.22
savedefault
boot

3)

Set the default kernel in menu.lst in the line default (near the top of the default menu.lst

The default setting is 0, but here you want to set the number to the number of your grub entry. Entries start at 0, so if you want grub to boot the 3rd entry, the line should read: default 2


...

## default num
# Set the default entry to the entry number NUM. Numbering starts from 0, and
# the entry number 0 is the default if the command is not used.
#
# You can specify 'saved' instead of a number. In this case, the default entry
# is the entry saved with the command 'savedefault'.
# WARNING: If you are using dmraid do not change this entry to 'saved' or your
# array will desync and will not let you boot your system.
default         2

...

Compression

Command is as follows, note that you may need to type out yourself though, and pls set the paths to the corerct context:

# mkisofs -R -U -V "Bioinformatix filesystem" -publisher "linuxNUS.org" -hide-rr-moved -cache-inodes -no-bak -pad /media/hda4/ | create_compressed_fs -b - 65536 > /home/knoppix/remaster/KNOPPIX


ISO creation

Copy the files on the cd to a drive or directory. In this example it is hda6. Replace the big KNOPPIX file with the file that you have compressed.

Command is as follows, note that you may need to type out yourself though, and pls set the paths to the corerct context:

# 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 /home/knoppix/remaster/knoppix.iso /media/hda6/cdrom/


Burning the CD

Required modules

Before burning the ISO, bear in mind that a Knoppix remaster requires 2 critical modules, cloop and unionFS

Downloads: cloop unionFS

Important Bear in mind that it's necessary to have the full kernel sources on your system before attempting to compile these 2 modules. Otherwise, you risk endless hours of headachers wondering why the !@*&@#* thing won't compile. =) You have been warned. <cough>RTFM!</cough>

Also, note that unionFS will require uuid.h. You can get it by installing uuid-dev on Debian-based distros or e2fsprogs-devel on Red Hat based distros.

Once you've downloaded the sources, unpack them like so:

# tar xzvf cloop-<version>-.tar.gz
# tar xzvf unionfs-<version>-tar.gz

And follow the INSTALL instructions in each directory

Burning from the command line

You can of course use your favourite GUI CD burning app. However, just in case you wish to do so via the command line, here are the commands:

$ cdrecord --dev=/dev/hdc --scanbus
$ cdrecord dev=/dev/hdc blank=fast 
$ cdrecord dev=/dev/hdc speed=24 padsize=63s -pad -v -dummy /home/elfgoh/knoppix_dev_2.iso
$ cdrecord dev=/dev/hdc speed=24 padsize=63s -pad -v -eject /home/elfgoh/knoppix_dev_2.iso

To-do list

Features and requests

  1. Install rox trash can.
  2. bittorent client? Installed azureus
  3. reinstall installer according to how to.
  4. clean up the sys
  5. Clean up system src code
  6. fortune (rw: done! *yay* Login for a nice quote. We can add our own if we want to)
  7. Upgrade firefox and OOo. Done.
  8. Cups front end (gnomecups manager or web based?) plus cups pdfplus printconf.
  9. Install gnome utils to get gfloppy. Too much bloat comes with Gnome libs. So this has been cancelled.
  10. Install host distro for iso creation. Done
  11. Setup email client for nus email? Sylpheed
  12. Install mediawiki, webmin, apache. Need to configure these properly now based on how to. mediawiki installable now. But need to configure apache before that, probly using Justin's how to. Main issue with mediawiki was that it needed php4, not php5. Ruiwen, can confirm that webmin was installed using "#apt-get -f install webmin"? All ok.
  13. Upgrade mysql vpnc php. Will not be done unless absolutely necessary.
  14. Find binary for hmmer and t-coffee shld have a page documenting the icewm menu file rgding this...
    • prog artemis artemis /home/knoppix/Desktop/bioapps/artemis/art
    • prog "artemis comparison tool" artemis /home/knoppix/Desktop/bioapps/artemis/act
    • prog hmmer hmmer firefox /usr/share/doc/hmmer/hmmer-html/index.html
    • prog jalview jalview /home/knoppix/Jalview/Jalview
    • prog SMS SMS firefox ~/Desktop/bioapps/sms2/index.html
    • prog t-coffee t-coffee firefox /usr/share/doc/t-coffee/html/t_coffee.html
    • prog weka weka java -jar /home/knoppix/Desktop/bioapps/weka/weka-3-4-8/weka.jar
  15. Troubleshoot Jemboss. Binary located at /usr/local/bin/runJemboss.standalone. However, executing this binary produces an error: Resolved
  16. Create custom home page for apache. It can be found in public html directory, index.html
  17. Put recommended cheatcodes on prompt screen for cheat codes.
  18. Consider replacement of icewm with ROX desktop? Check this link: http://www.drobe.co.uk/alternative/artifact1622.html
  19. Remove non English html files on Knoppix CD.

Known issues and bugs

  1. Fix KDE dcop prob Removed kdebase-bin package.
  2. Clean up menus. Update artemis and sms2 which have been installed frm source.
  3. Use checkinstall.
  4. May want to remove mail icon from taskbar. Done. Under /etc/X11/icewm/preferences or ~/.icewm/preferences
  5. gaim smiley. resolved and documented.
  6. rxvt memory leak?
  7. Clean up the /etc/cron.* directories. Lots of cron jobs set to run (eg. cleaning up sendmail?) w/o checking if the service is actually running or not. Ends up with lots of <defunct> threads
  8. Check InitNG's ability to clean up <defuncts>
  9. Consider upgrade to Xorg 7.1

Testing

  1. Next working day agenda: backupicewm config files, finish up the biosoftware, install and run LCAT, fix automounting prob, burn alpha release, use checkinstall.
  2. Verify accuracy of how to.
  3. Printer testing
  4. Display problems?

Misc

  1. include table of software
  2. test out auto-apt updatedb and auto-apt update-local (from http://www.debian.org/doc/manuals/apt-howto/ch-search.en.html)
  3. Find out what these means: sane* and not sane-utils?? /u
  4. Get the nice theme from here: http://www.ubuntuforums.org/showthread.php?t=171203
  5. Write on FF optimization
  6. apt sources documentation
  7. grub boot entries documentation
  8. Create links in FF Bookmarks for OSS@nus, linunus.org, webmin and mediawiki.
  9. Remove unwanted themes after setting default theme to what you want.

Changelog

Daily

26 June 2006

-- dropped 2.6.17 in favour of 2.6.16.22 for stability reasons

29 June 2006

-- 2.6.16.22 lives!

30 June 2006

-- aliased InitNG's own shutdown/reboot binaries to standard commands (ie. "shutdown" and "reboot")
-- removed mail icon
-- removed coordinate display on window move
-- fixed dual /etc/profile load when launching rxvt from toolbar
-- set sshd and cron to run on startup (for our convenience only. MUST BE REMOVED BEFORE REMASTER)

02 Jul 2006

General installation that has already been documented. Major problems cropped up with treeview and emboss. Resolved treeview only. Need to settle Emboss.

Had to uninstall php5 in order to install mediawki. Need to configure apache.

05 Jul 2006

Uninstalled clamav and knoppix splash by mistake/ Clamav updated after reinstall. Knoppix splash was retireved from http://debian-knoppix.alioth.debian.org/packages/.

Need to state installation version for upgrade of firefox and OOo. Having prob wif OOo nw.

Problems resolved. Seems that apt got a bit confused.... not sure if this is related to the error I caused earlier when I installed OOo without stating the version. Anyway, the installation steps is a bit trial and error. I wld suggest in future that upgrading be done 1st in the remastering.

Anyway, here are some of the steps I used to troubleshoot....

U may not want to try the 1st step until the last resort though...


sudo apt-get install libcurl3=7.15.4-1
sudo apt-get install openoffice.org-l10n-en-us=2.0.3-1 openoffice.org-common=2.0.3-1 openoffice.org-core=2.0.3-1 openoffice.org-writer=2.0.3-1 openoffice.org-calc=2.0.3-1 openoffice.org-impress=2.0.3-1 openoffice.org-draw=2.0.3-1 
openoffice.org-math=2.0.3-1 openoffice.org-base=2.0.3-1 


11 Jul 2006

Image file too big. Redo

Accidentally removed myspell-en-us. Must install back.

13 Jul 2006

- Edited /etc/profile, line 10/54 -- Changed -n "$LANG" ] || LANG="de_DE@euro" to -n "$LANG" ] || LANG="en_US" to set default language to US English

19 July 2006

1st iso produced does not contain settings we want.

20 July 2006

2nd iso produced does not boot properly.

Bootprocess seems to have been modified. Proceeding to carry on with chroot remastering to create a minimal base to cut down repetitive work.

22 July 2006

Updates:

KNOPPIX box:

  • HDA1: host
  • HDA4: remaster
  • HDA6: file copied from cdrom for actual burning

Centos /home/elfgoh:

  • knoppix.iso: remaster with 2.6.17 kernel (boots but very slow due to fsck)
  • knoppix_dev_2.iso: remaster with 2.16.22 (fails to boot probly due to cloop and unionfs issues)

Currently I just did a chroot method remastering. Confirmed that fsck problem exists. Problem may lie at /etc/init.d/knoppix-autoconfig

# Check if we are running from the Knoppix-CD or HD
INSTALLED=""
[ -e /KNOPPIX/bin/ash ] || INSTALLED="yes"

TESTCD=""
checkbootparam "testcd" >/dev/null 2>&1 && TESTCD="yes"
checkbootparam "testdvd" >/dev/null 2>&1 && TESTCD="yes"

# Set hostname
hostname Knoppix

# Set clock (Local time is more often used than GMT, so it is default)
UTC=""
checkbootparam utc >/dev/null 2>&1 && UTC="-u"
checkbootparam gmt >/dev/null 2>&1 && UTC="-u"

KTZ="$(getbootparam tz 2>/dev/null)"
[ -f "/usr/share/zoneinfo/$KTZ" ] && TZ="$KTZ"
# hwclock uses the TZ variable
export TZ
hwclock $UTC -s

KERNEL="$(uname -r)"
echo "${GREEN}Running Linux Kernel ${YELLOW}$KERNEL${GREEN}.${NORMAL}"

if [ -n "$INSTALLED" ]; then
echo "${BLUE}Running from HD, checking filesystems...${NORMAL}"
# We are running from HD, so a file system check is recommended
[ -f /etc/init.d/checkroot.sh ] && /etc/init.d/checkroot.sh
[ -f /etc/init.d/checkfs.sh ]   && /etc/init.d/checkfs.sh
fi

# / must be read-write in any case, starting from here
mount -o remount,rw / 2>/dev/null

if [ -n "$INSTALLED" ]; then
echo -n "${BLUE}Running from HD, regenerate ld.so.cache and modules.dep...${NORMAL}"
# Regenerate ld.so.cache and module dependencies on HD
ldconfig ; depmod -a 2>/dev/null
# knoppix-installer bug workaround
chmod 1777 /tmp 2>/dev/null
echo ""
fi

if checkbootparam "splash" >/dev/null 2>&1 && [ -z "$TESTCD" ]; then
    RES=$(fbresolution 2>/dev/null)
    [ "$RES" = "1024x768" ] && [ -x /etc/init.d/splash.sh ] && /etc/init.d/splash.sh start
fi

update_progress()
{
        # be sure we are non-blocking
        (echo "$1" > /etc/sysconfig/progress) &
}

rm -f /etc/localtime
cp "/usr/share/zoneinfo/$TZ" /etc/localtime

# Delete obsolete links and files before starting autoconfig
if ! checkbootparam "nohwsetup"; then
rm -f /dev/cdrom* /dev/cdwriter* /dev/mouse* /dev/modem* /dev/scanner* \

if ! checkbootparam "nohwsetup"; then
rm -f /dev/cdrom* /dev/cdwriter* /dev/mouse* /dev/modem* /dev/scanner* \
      /etc/sysconfig/i18n /etc/sysconfig/keyboard /etc/sysconfig/knoppix \
      /etc/environment \
      2>/dev/null
fi

23 July 2006

I came across this remastering page: http://www.tina-vision.net/tina-knoppix/remastering.html. This is one section on optimization that I thought was interesting. Maybe u guys want to take a look: Part 5 step 3. There also a list of software packages that Tina recommends for removal: http://www.tina-vision.net/tina-knoppix/scripts/kicklist_remastered.txt


Step 3: Optimise the CD (Optional)

KNOPPIX boots quickly from CD in part because the ordering of the files on the disk has been optimised (think defrgamentation for the CD). In order to perform this optimisation, you need a sort list, which is generated using this script and this file. The timestamp file is only used to provide a comparative file time: the script looks at the file access times and sorts them into order, so that the files are burned onto the CD in the order in which they are needed when the disk boots. Follow the procedure above until you get to the "test the distribution" step. Once you have booted into your remastered poor man's installation, copy all three files into the root directory, and run the script. Remember to copy the finished sort list back to a permanent location. Then modify your create.KNOPPIX.sh script to include "-sort path_to_sort_file" like so:

mkisofs -R -U -V "TINA KNOPPIX Live CD 1.0" -P "paul.bromiley@man.ac.uk" -sort /knoppix/KNOPPIX/scripts/mkisofs.sort -hide-rr-moved -cache-inodes -no-bak -pad ./ | nice -5 ./usr/bin/create_compressed_fs - 65536 > /knoppix/KNOPPIX/KNOPPIX 

Then run the modified script to create your KNOPPIX.sh file, and finally run make_ISO.sh to create the optimised iso, ready to burn to CD.

02 Aug 2006

Development branched to fresh install.

Check it out here

Kernel

Not exactly gonna list each and every single change here.. That would take up too much space..Rather I'll list the ones that are more significant.. Especially those options that were originally compiled into the kernel [*].. Options that were modules [M] may be taken out simply to save compile time, especially if they're for some arcane hardware/service/architecture that we're not likely to see..


Processor Type and Features

-- Removed Symmetric multi-processing (SMP) support
Supposed to run slower on machines with 1 CPU when enabled
We can safely assume not many people have multi-CPUs?
(CONFIG_SMP)
-- Switched off High Memory (4GB) support as this uses hardware-dependent features on  processors (Physical Address Extensions -- PAE) and will not boot on hardware that does not  support the extensions 
(CONFIG_NOHIGHMEM=Y && CONFIG_HIGHMEM4G=N)
-- Removed EFI Support
Don't suppose we expect many people to be booting BioKnoppix on an Intel iMac?
Would be cool, but we'd need to install ELILO too. 
(CONFIG_EFI)
-- Removed kexec support
Supposed to allow dynamic booting of different kernels independent of firmware.
Not for a BioKnoppix LiveCD I'm guessing.  
(CONFIG_KEXEC)

Power management and support

-- Removed Software Suspend
Software Suspend 2 is supposed be more stable =)
-- Removed ACPI Sleep States
Again banking on that not many ppl will use this feature on a LiveCD
(CONFIG_ACPI_SLEEP)
-- Removed Generic Hotkey
It's experimental =)
(CONFIG_ACPI_HOTKEY)
-- Removed Cyrix CPU Freq Scaling
Don't expect Cyrixs
(CONFIG_X86_GX_SUSPMOD)

Bus options (PCI, PCMCIA, EISA, MCA, ISA)

-- Removed PCI Hotplug support
I'm sorry, but once again I don't see the need for this on a Live CD (hereby known as  IDSTN). Contact me if you think it's useful.
(CONFIG_HOTPLUG_PCI)

Networking options

-- Removed
-- ATM (Asynchronous Transfer Mode)
-- Appletalk
-- LAN over Ethernet (LANE)
-- DECNet
-- CCITT X.25
-- LAPB (data-link layer for X.25)
-- Acorn ECONet
-- Removed Packet Generator
(CONFIG_NET_PKTGEN)

Device drivers

Block devices

-- Removed SCSI Tape Drive support
(CONFIG_CISS_SCSI_TAPE)

SCSI Device Support

-- Removed RAID Transport Class
(CONFIG_RAID_ATTRS)
-- Removed SCSI SC-x0 Tape support
(CONFIG_CHR_DEV_ST && CONFIG_CHR_DEV_OSST)

SCSI Low level drivers

-- Removed LSI Logic New Generation RAID Device Drivers
(CONFIG_MEGARAID_*)

Multi-device support (RAID & LVM)

-- Removed entire multi-device tree
(CONFIG_MD)

I2O device support

-- Removed entire I20 tree
(CONFIG_I2O)

Network device support

-- Removed entire ARCNet tree
(CONFIG_ARCNET)
-- Removed entire Token Ring tree
(CONFIG_TR)
-- Removed entire WAN Interfaces tree
(CONFIG_WAN)
-- Removed FDDI Support
(CONFIG_FDDI)
-- Removed HIPPI driver support
(CONFIG_HIPPI)
-- Removed Traffic Shaper
(CONFIG_SHAPER)

Input device support

-- Removed entire Joysticks tree
(CONFIG_INPUT_JOYSTICK)
-- Removed entire Touchscreens tree
(CONFIG_INPUT_TOUCHSCREEN)

Character devices

-- Removed entire Non-standard serial port tree
(CONFIG_SERIAL_NONSTANDARD)

-- Removed Texas Instruments parallel link cable support
(CONFIG_TIPAR)

-- Removed Telecom clock driver
(CONFIG_TELCLOCK)

SPI

-- Removed entire SPI tree
(CONFIG_SPI)

Dallas 1wire support

-- Removed entire Dallas 1wire tree
(CONFIG_W1)

Misc devices

-- Removed IBM ASM Support
(CONFIG_IBM_ASM)

Multimedia devices

-- Removed DAUSB (Digital Audio Broadcasting USB)
(CONFIG_USB_DABUSB)

Radio adapters

-- Removed all drivers
(CONFIG_RADIO_*)

Digital Video Broadcasting

-- Removed entire DVB tree
(CONFIG_DVB)

Graphics support

-- Removed CyberPro 2000/2010/5000 support
(CONFIG_FB_CYBER2000)


-- Removed Arc Monochrome LCD board support
(CONFIG_FB_ARC)


-- Removed Epson S1D13XXX support
(CONFIG_FB_S1D13XXX)

USB Support

-- Removed:
* Aiptek tablet support
* Wacom tablet support
* Acecad Flair tablet support
* KB Gear JamStudio tablet support
* Griffin Powermate and Contour Jog support
* USB Touchscreen driver
* X-Box Gamepad support
* Apple USB Touchpad support
* USB Auerswald ISDN Support
* USB Lego Infrared Tower support
* USB Phidget Kit support
* USB Phidget Servo support

Infiniband Support

-- Removed entire Infiniband support tree
(CONFIG_INFINIBAND)

EDAC Support

-- Removed entire EDAC tree
(CONFIG_EDAC)

File systems

-- Removed Minix fs support
(CONFIG_MINIX_FS)
-- Removed entire JFS Support tree
(CONFIG_JFS_FS)

-- Removed entire XFS support tree
(CONFIG_XFS_FS)
-- Removed entire OCFS2 support tree
(CONFIG_OCFS2_FS)

Miscellaneous filesystems

-- Removed all miscellaneous filesystems

Partition types

-- Removed advanced partition selection
(CONFIG_PARTITION_ADVANCED)

Security options

-- Removed NSA SE Linux tree
(CONFIG_SECURITY_SELINUX)

Cryptographic options

-- Removed hardware cryptographic devices
(CONFIG_CRYPTO_DEV_PADLOCK)

Related Pages