COMP 3000 2011 Report: Damn Small Linux - Not: Difference between revisions
No edit summary |
No edit summary |
||
Line 23: | Line 23: | ||
[http://www.kernel.org Linux Kernel:] | [http://www.kernel.org Linux Kernel:] | ||
Version Present: 2.6.12 | Version Present: 2.6.12 | ||
Source: uname -r | Source: uname -r | ||
Build Release Date: 17-Jun-2005 | |||
Build Release Date: 17-Jun-2005 | |||
Current Version: 2.6.39 | Current Version: 2.6.39 | ||
Current Release date: 19-May-2011 | Current Release date: 19-May-2011 | ||
[http://www.gnu.org/s/libc/ libc:] | [http://www.gnu.org/s/libc/ libc:] | ||
Source: ls /lib/libc* | Source: ls /lib/libc* | ||
Version Present: 2.3.2: | Version Present: 2.3.2: | ||
Current Version: 2.14 | Current Version: 2.14 | ||
source: http://www.gnu.org/s/libc/ | source: http://www.gnu.org/s/libc/ | ||
[http://www.gtk.org/ gtk+ 2:] | [http://www.gtk.org/ gtk+ 2:] | ||
Current Version GTK+ 2.24.8 | Current Version GTK+ 2.24.8 | ||
Current release date 10-Nov-2011 | Current release date 10-Nov-2011 | ||
[http://www.gnu.org/s/bash/ Bash:] | [http://www.gnu.org/s/bash/ Bash:] | ||
Source: bash --help | Source: bash --help | ||
Version Present:2.05b | Version Present:2.05b | ||
Build release date: 17 July 2002 | Build release date: 17 July 2002 | ||
Current Version 4.2 | Current Version 4.2 | ||
Current Release Date: 13 February 2011 | Current Release Date: 13 February 2011 | ||
[http://busybox.net/ busybox:] | [http://busybox.net/ busybox:] | ||
Source: rpm -i | Source: rpm -i | ||
Version Present: v1.0.0.0 | Version Present: v1.0.0.0 | ||
Build Release date:2006.01.20 | Build Release date:2006.01.20 | ||
Current Version: BusyBox 1.19.3 | Current Version: BusyBox 1.19.3 | ||
Current Release Date: 29 October 2011 | Current Release Date: 29 October 2011 | ||
[http://www.seamonkey-project.org/ Seamonkey Email + Web Browser:] | [http://www.seamonkey-project.org/ Seamonkey Email + Web Browser:] | ||
Web Browser Version Present: 2.0.2 | Web Browser Version Present: 2.0.2 | ||
Email Version Present: seamonkey 1.0.2 | Email Version Present: seamonkey 1.0.2 | ||
Build release date: 2006/05/16 | Build release date: 2006/05/16 | ||
Current Version: 2.4.1 | Current Version: 2.4.1 | ||
Current Release date: Sept. 29 2011 | Current Release date: Sept. 29 2011 | ||
[http://www.abisource.com/ abiword] | [http://www.abisource.com/ abiword] | ||
Version Present: 2.2.7 | Version Present: 2.2.7 | ||
Build release date: 18 December 2003 | Build release date: 18 December 2003 | ||
Current Version: 2.8.6 | Current Version: 2.8.6 | ||
Current release date: Oct 27 2009 | Current release date: Oct 27 2009 | ||
[http://www.gftp.org/ Gftp:] | [http://www.gftp.org/ Gftp:] | ||
Version Present: 2.0.18 | Version Present: 2.0.18 | ||
Build release date: 05 Feb 2005 | Build release date: 05 Feb 2005 | ||
Current Version: 2.0.19 | Current Version: 2.0.19 | ||
Current release date 11/30/2008 | Current release date 11/30/2008 | ||
[http://www.pidgin.im/ gaim] | [http://www.pidgin.im/ gaim] | ||
Version Present: 0.7.7 | Version Present: 0.7.7 | ||
Current Version: pidgin 2.10 | Current Version: pidgin 2.10 | ||
Current release date: 08/20/2011 | Current release date: 08/20/2011 | ||
===Initialization=== | ===Initialization=== | ||
I discovered the boot scripts in /etc/rcS.d, there are 2 boot scripts: | I discovered the boot scripts in /etc/rcS.d, there are 2 boot scripts: | ||
S00knoppix--autoconfig runs first and does the following: | S00knoppix--autoconfig runs first and does the following: | ||
1.reinit usb devices that could not be started from linuxrc, probe necessary modules | 1.reinit usb devices that could not be started from linuxrc, probe necessary modules | ||
2. mount filesystem readonly, with or without encryption | 2. mount filesystem readonly, with or without encryption | ||
3. load alas sound daemon | 3. load alas sound daemon | ||
4. load localization | 4. load localization | ||
5. set time | 5. set time | ||
6. if running from HD, check file systems | 6. if running from HD, check file systems | ||
7. mounts in read-write before continuing | 7. mounts in read-write before continuing | ||
8. if running from hard drive, regenerate module dependencies (klconfig ; depmod -a 2>/dev/null) | 8. if running from hard drive, regenerate module dependencies (klconfig ; depmod -a 2>/dev/null) | ||
9. Set resolution and load /etc/init.d/splash.sh | 9. Set resolution and load /etc/init.d/splash.sh | ||
10. delete links to hardware that doesn't exist ie. /dev/sdrom /dev/mouse, etc | 10. delete links to hardware that doesn't exist ie. /dev/sdrom /dev/mouse, etc | ||
11. write knoppix config files for other scripts to parse | 11. write knoppix config files for other scripts to parse | ||
12. Activate modules for acpi (power management) | 12. Activate modules for acpi (power management) | ||
13. usb mouse check/seup. try both usb mouse modules in case someone has 2 different controllers usb-uhci and usb-ohci | 13. usb mouse check/seup. try both usb mouse modules in case someone has 2 different controllers usb-uhci and usb-ohci | ||
14. load firewire modules, search and configure hardware, setup carom that hasn't been setup by hwsetup | 14. load firewire modules, search and configure hardware, setup carom that hasn't been setup by hwsetup | ||
15. automatic xf86 setup using /usr/sbin/mkvf86config | 15. automatic xf86 setup using /usr/sbin/mkvf86config | ||
16: create /etc/fstab and scan for partitions/hard drives to add | 16: create /etc/fstab and scan for partitions/hard drives to add | ||
17.auto mount all devices; floppies, cds, etc | 17.auto mount all devices; floppies, cds, etc | ||
18. overwrite old /etc/fstab | 18. overwrite old /etc/fstab | ||
19. run /etc/init.d/autofs start to start the automounter | 19. run /etc/init.d/autofs start to start the automounter | ||
S01dsl-config runs next and does the following: | S01dsl-config runs next and does the following: | ||
1. loads special modules for different devices | 1. loads special modules for different devices | ||
2. makes a list of installed applications | 2. makes a list of installed applications | ||
3. makes menus | 3. makes menus | ||
4. /etc/sysconfig/mydsl | 4. /etc/sysconfig/mydsl | ||
5. ensures networking modules are loaded | 5. ensures networking modules are loaded | ||
6. deletes temporary folders created during boot /tmp/firstboot /miniroot /var/tmp and sets up a sym link from /var/tmp to /tmp and sets permissions on it. | 6. deletes temporary folders created during boot /tmp/firstboot /miniroot /var/tmp and sets up a sym link from /var/tmp to /tmp and sets permissions on it. | ||
7. checks for validity of user account and forces you to set a new password if you must | 7. checks for validity of user account and forces you to set a new password if you must | ||
8. sets boot device | 8. sets boot device | ||
9. starts the appropriate user defined services in this order: ssh, lp, nfs, monkey web server, syslog, ftp, /etc/init.d/mkwriteable, touch /etc/sysconfig/unionfs touch/etc/sysconfig/writeable, load rest of modules | |||
9. starts the appropriate user defined services in this order: ssh, lp, nfs, monkey web server, syslog, ftp, /etc/init.d/mkwriteable, touch /etc/sysconfig/unionfs touch/etc/sysconfig/writeable, load rest of | |||
modules | |||
10. mount directories | 10. mount directories | ||
11. iconcheck, orphancheck, mkmydslmenu | 11. iconcheck, orphancheck, mkmydslmenu |
Revision as of 03:30, 17 November 2011
Part II
Software Packaging
Although I would have expected this distribution to use dpkg/apt because it is knoppix based, it seems in the interest of saving space they switched to the rpm package system (as revealed by rpm -i), the functionality is provided by busybox which provides a number of normal system functions at a reduced size.
As with DSL, DSL-N has an incredibly minimalistic guy for the custom package manager and provides repositories of apps ready to install. To access the list of programs you simply right click on the desktop and go to net and choose 'mydsl extension browser'. Then you select a section as shown in my screen shot. You're then presented with a simple list of applications and you can download and install them or remove them with one click. It also has the option to
The software catalog is not very extensive but it contains everything you would expect to find (although a little out of date) like firefox, openoffice, thunderbird, etc. There generally seems to be a focus on smaller less known educational apps as I would see this distribution having a large percentage of its presence in the educational market on low budget computers.
Major package versions
Report on the version numbers and upstream source (URL of original source) for some of the major software packages included in your distribution as part of the standard install:
Choose at least 10 packages that fit into this list (you don't need to cover every category) and report the following:
- What is the vintage of the included package? How old is it, and how far is it behind the latest stable release for this package?
- How heavily has the package been modified by the distribution authors? (You'll need to figure out how to determine this.)
- Why do you think this particular package was chosen for this distribution's standard install? You may speculate, but please make an argument informed by relevant facts.
Linux Kernel:
Version Present: 2.6.12
Source: uname -r
Build Release Date: 17-Jun-2005
Current Version: 2.6.39
Current Release date: 19-May-2011
Source: ls /lib/libc*
Version Present: 2.3.2:
Current Version: 2.14
source: http://www.gnu.org/s/libc/
Current Version GTK+ 2.24.8
Current release date 10-Nov-2011
Source: bash --help
Version Present:2.05b
Build release date: 17 July 2002
Current Version 4.2
Current Release Date: 13 February 2011
Source: rpm -i
Version Present: v1.0.0.0
Build Release date:2006.01.20
Current Version: BusyBox 1.19.3
Current Release Date: 29 October 2011
Seamonkey Email + Web Browser:
Web Browser Version Present: 2.0.2
Email Version Present: seamonkey 1.0.2
Build release date: 2006/05/16
Current Version: 2.4.1
Current Release date: Sept. 29 2011
Version Present: 2.2.7
Build release date: 18 December 2003
Current Version: 2.8.6
Current release date: Oct 27 2009
Version Present: 2.0.18
Build release date: 05 Feb 2005
Current Version: 2.0.19
Current release date 11/30/2008
Version Present: 0.7.7
Current Version: pidgin 2.10
Current release date: 08/20/2011
Initialization
I discovered the boot scripts in /etc/rcS.d, there are 2 boot scripts:
S00knoppix--autoconfig runs first and does the following:
1.reinit usb devices that could not be started from linuxrc, probe necessary modules
2. mount filesystem readonly, with or without encryption
3. load alas sound daemon
4. load localization
5. set time
6. if running from HD, check file systems
7. mounts in read-write before continuing
8. if running from hard drive, regenerate module dependencies (klconfig ; depmod -a 2>/dev/null)
9. Set resolution and load /etc/init.d/splash.sh
10. delete links to hardware that doesn't exist ie. /dev/sdrom /dev/mouse, etc
11. write knoppix config files for other scripts to parse
12. Activate modules for acpi (power management)
13. usb mouse check/seup. try both usb mouse modules in case someone has 2 different controllers usb-uhci and usb-ohci
14. load firewire modules, search and configure hardware, setup carom that hasn't been setup by hwsetup
15. automatic xf86 setup using /usr/sbin/mkvf86config
16: create /etc/fstab and scan for partitions/hard drives to add
17.auto mount all devices; floppies, cds, etc
18. overwrite old /etc/fstab
19. run /etc/init.d/autofs start to start the automounter
S01dsl-config runs next and does the following:
1. loads special modules for different devices
2. makes a list of installed applications
3. makes menus
4. /etc/sysconfig/mydsl
5. ensures networking modules are loaded
6. deletes temporary folders created during boot /tmp/firstboot /miniroot /var/tmp and sets up a sym link from /var/tmp to /tmp and sets permissions on it.
7. checks for validity of user account and forces you to set a new password if you must
8. sets boot device
9. starts the appropriate user defined services in this order: ssh, lp, nfs, monkey web server, syslog, ftp, /etc/init.d/mkwriteable, touch /etc/sysconfig/unionfs touch/etc/sysconfig/writeable, load rest of modules
10. mount directories
11. iconcheck, orphancheck, mkmydslmenu