APBioKnoppix:Documentation
From Linux & Open Source @ NUS
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 kviewshellrootshell-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 kviewshellrootshell-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
knoppixto the groupwww-data-
# usermod -a www-data knoppix
-
- Create the
public_htmlandcgi-bindirectories-
$ mkdir -p ~/public_html/cgi-bin
-
- Change the permissions to allow
www-datato 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</VirtualHostsline. - The end of
/etc/apache2/sites-available/defaultshould now look like this:
- Move the code contained in this file into
...
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
mysqlis running- Assuming it's already been installed,
mysqlcan be started using$ sudo /etc/init.d/mysql start
- Assuming it's already been installed,
- 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:
- http://themes.freshmeat.net/projects/elberg-icewm/
- http://themes.freshmeat.net/projects/winclassic/
- http://themes.freshmeat.net/projects/glamice2/
- http://themes.freshmeat.net/projects/xp__/
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.
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
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
- Install rox trash can.
bittorent client?Installed azureus- reinstall installer according to how to.
- clean up the sys
- Clean up system src code
fortune(rw: done! *yay* Login for a nice quote. We can add our own if we want to)Upgrade firefox and OOo.Done.- Cups front end (gnomecups manager or web based?) plus cups pdfplus printconf.
Install gnome utils to get gfloppy.Too much bloat comes with Gnome libs. So this has been cancelled.Install host distro for iso creation.Done- Setup email client for nus email? Sylpheed
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.Upgrade mysql vpnc php.Will not be done unless absolutely necessary.Find binary for hmmer and t-coffeeshld 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
Troubleshoot Jemboss. Binary located at /usr/local/bin/runJemboss.standalone. However, executing this binary produces an error:Resolved- Create custom home page for apache. It can be found in public html directory, index.html
- Put recommended cheatcodes on prompt screen for cheat codes.
- Consider replacement of icewm with ROX desktop? Check this link: http://www.drobe.co.uk/alternative/artifact1622.html
- Remove non English html files on Knoppix CD.
Known issues and bugs
Fix KDE dcop probRemoved kdebase-bin package.- Clean up menus.
Update artemis and sms2 which have been installed frm source. - Use checkinstall.
May want to remove mail icon from taskbar.Done. Under /etc/X11/icewm/preferences or ~/.icewm/preferencesgaim smiley.resolved and documented.- rxvt memory leak?
- 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
- Check InitNG's ability to clean up <defuncts>
- Consider upgrade to Xorg 7.1
Testing
- Next working day agenda: backupicewm config files, finish up the biosoftware, install and run LCAT, fix automounting prob, burn alpha release, use checkinstall.
- Verify accuracy of how to.
- Printer testing
- Display problems?
Misc
- include table of software
- test out auto-apt updatedb and auto-apt update-local (from http://www.debian.org/doc/manuals/apt-howto/ch-search.en.html)
- Find out what these means: sane* and not sane-utils?? /u
- Get the nice theme from here: http://www.ubuntuforums.org/showthread.php?t=171203
- Write on FF optimization
- apt sources documentation
- grub boot entries documentation
- Create links in FF Bookmarks for OSS@nus, linunus.org, webmin and mediawiki.
- 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)
