NSLU2-Linux
view · edit · print · history

Unslung.UnslungFeatures History

Hide minor edits - Show changes to markup

April 13, 2006, at 12:42 AM by mwester --
Changed lines 5-6 from:

The list of changes described herein reflect the changes as of Unslung 6.7-alpha. The current release is 6.8-beta.

to:

The list of changes described herein reflect the changes as of Unslung 6.8-beta.

April 12, 2006, at 09:41 PM by blaster8 --
Changed lines 5-6 from:

Note: Unslung 6.x is currently in alpha test and must be built from the source code in order to obtain the image. The list of changes described herein reflect the changes as of Unslung 6.7-alpha.

to:

The list of changes described herein reflect the changes as of Unslung 6.7-alpha. The current release is 6.8-beta.

March 03, 2006, at 05:45 AM by mwester -- Added the updates for Unslung 6.x (part 2)
Changed lines 27-28 from:
  1. Sundry and assorted bugfixes and additional kernel modules provided.
to:
  1. The utmp and wtmp files are now created by unsling, and will be "emptied" at each boot. Additionally, the .pid files in /var/run and /var/log are cleaned out at boot; this avoids a number of strange and difficult-to-reproduce problems.
  2. Additional kernel modules provided:
    • loop.o
    • isofs.o
    • keyspan.o
    • netconsole.o
  3. Sundry bugfixes.
March 03, 2006, at 05:39 AM by mwester -- Added the updates for Unslung 6.x
Added lines 3-28:

Unslung 6.x changes from Unslung 5.x

Note: Unslung 6.x is currently in alpha test and must be built from the source code in order to obtain the image. The list of changes described herein reflect the changes as of Unslung 6.7-alpha.

Unslung 6.x is based on the Linksys 2.3R63 source code. As the huge leap in Linksys release numbers would suggest, a lot changed in the base Linksys firmware, and as such Unslung 6.x has some significant new features, along with potentially significant changes in disk handling that may affect those upgrading or existing packages. For a little more information on the way the 2.3R63 firmware handles disks and ports, see Unslung.R63DiskBehaviour. Upgrading Unslung users should take care to read the README and search the wiki for details as the new release may require that the devices on the ports be swapped during the upgrade process. New users should be careful when reviewing information on the wiki related to the NSLU2 USB ports and the disk drives, as some of the information may not be pertinent with the Unslung 6.x release.

Changes in Unslung 6.x include:

  1. New features available with the new firmware provide:
    1. Support for NTFS volumes
    2. Limited support for mult-LUN card readers and storage devices
    3. Limited support for USB hubs on USB Port 1 on the NSLU2
    4. Upgrade the built-in Samba to the 3.0 release
  2. Usability changes:
    1. "Unslung" status (i.e. Unslung to disk, or running from internal flash) is now displayed on the home page in the Web GUI, as well as displayed at login.
    2. Using "ipkg" when running from internal flash now displays a helpful message indicating why ipkg won't run.
    3. The unsling script now contains a number of sanity checks, and prints (hopefully) helpful error messages if the system will be unlikely to unsling correctly.
    4. The unsling script now prompts for a new root password, and sets the password for both booting with as well as without drives attached. (A new argument "-nopw" can be given to unsling to have it skip prompting for and setting the root password.)
    5. The "Enable Telnet" web gui page can now be reached from the home page in the Linksys Web GUI.
    6. The new Unslung logo is now featured in the Web GUI.
  3. The special handling for unslinging to flash devices Ext3flash now works for both USB Port 1 and 2.
  4. Sundry and assorted bugfixes and additional kernel modules provided.
June 12, 2005, at 02:39 PM by rwhitby --
Changed lines 9-14 from:
  1. Removed maintenance mode completely. Make RedBoot Upgrade Mode the only supported firmware upgrade mechanism.
  2. Removed the option of having the rootfs on jffs2 and packages on an external disk. It's all or nothing from now on. This also means that /mnt/sda1, /mnt/sda2, /mnt/sdb1 and /mnt/sdb2 no longer exist.
  3. Disabled the Linksys download process. It's insecure, and won't work properly with Unslung firmware anyway. Use the new RedBoot Upgrade Mode instead.
to:
  1. Removed maintenance mode completely. Made RedBoot Upgrade Mode the only supported firmware upgrade mechanism.
  2. Removed the undocumented unsling option of having the rootfs on jffs2 and packages on an external disk. This also means that /mnt/sda1, /mnt/sda2, /mnt/sdb1 and /mnt/sdb2 no longer exist. Diversion scripts are only executed from /unslung on the real rootfs.
  3. Disabled the Linksys /usr/sbin/download process. It's insecure, and won't work properly with Unslung firmware anyway. Use the new RedBoot Upgrade Mode instead.
June 12, 2005, at 02:28 PM by rwhitby --
Changed lines 25-26 from:
  1. Changed the kernel command line arguments to run a "switchbox" initial ramdisk which determines the desired root filesystem location (jffs2, disk1, disk2, nfs, etc) and loads the root filesystem from that location.
to:
  1. Changed the kernel command line arguments to run a special /linuxrc script which determines the desired root filesystem location (jffs2, disk1, disk2, nfs, etc) and loads the root filesystem from that location.
June 12, 2005, at 02:27 PM by rwhitby -- Unslung 5.x changes
Changed lines 3-10 from:

Proposed features for Unslung 5.x

  1. Update to the Linksys 2.3R29 source. However, we will not include their Genesys patch (as it is inferior to our existing Genesys patch), and we may decide to make the IXP driver interrupt driven instead of including the patch which changes the polling rate from 4000 times per second to 2000 times per second (after testing to see which is better).
  2. Remove the ipkg symlink, and only add it back in on an external rootfs.
  3. Remove maintenance mode completely. Make RedBoot Upgrade Mode the only supported firmware upgrade mechanism.
to:

Unslung 5.x changes from Unslung 4.x

  1. Updated to the Linksys 2.3R29 source. However, we did not include their Genesys patch (as it is inferior to our existing Genesys patch).
  2. Removed the ipkg symlink, and changed unsling to add it back in on an external rootfs.
  3. Removed maintenance mode completely. Make RedBoot Upgrade Mode the only supported firmware upgrade mechanism.
  4. Removed the option of having the rootfs on jffs2 and packages on an external disk. It's all or nothing from now on. This also means that /mnt/sda1, /mnt/sda2, /mnt/sdb1 and /mnt/sdb2 no longer exist.
  5. Disabled the Linksys download process. It's insecure, and won't work properly with Unslung firmware anyway. Use the new RedBoot Upgrade Mode instead.
  6. Disabled the generation of the "ourtelnetrescue" user. It's insecure, and isn't used for anything as far as we know.
  7. Added a disk auto-wait countdown in /linuxrc which waits up to 20 seconds for your USB disk to be recognised.
June 10, 2005, at 03:38 PM by rwhitby --
Added lines 7-8:
  1. Remove the ipkg symlink, and only add it back in on an external rootfs.
Deleted lines 10-11:
  1. Remove the ipkg symlink, and only add it back in on an external rootfs.
June 10, 2005, at 03:26 PM by rwhitby --
Deleted lines 8-13:
  1. Replace the Linksys root password permanently, so that everyone knows it.
  2. Add dropbear to the image, and enable it by default with the root password that everyone knows.
  3. Either enable telnet permanently, or remove it altogether. Haven't decided which yet.
June 05, 2005, at 03:00 PM by rwhitby --
Changed lines 5-6 from:
  1. Update to the Linksys 2.3R29 source. However, we will not include their Genesys patch (as it is inferior to our existing Genesys patch), and we will make the IXP driver interrupt driven instead of including the patch which changes the polling rate from 4000 times per second to 2000 times per second.
to:
  1. Update to the Linksys 2.3R29 source. However, we will not include their Genesys patch (as it is inferior to our existing Genesys patch), and we may decide to make the IXP driver interrupt driven instead of including the patch which changes the polling rate from 4000 times per second to 2000 times per second (after testing to see which is better).
June 05, 2005, at 12:38 PM by rwhitby -- Added proposed features for 5.x
Added lines 3-16:

Proposed features for Unslung 5.x

  1. Update to the Linksys 2.3R29 source. However, we will not include their Genesys patch (as it is inferior to our existing Genesys patch), and we will make the IXP driver interrupt driven instead of including the patch which changes the polling rate from 4000 times per second to 2000 times per second.
  2. Remove maintenance mode completely. Make RedBoot Upgrade Mode the only supported firmware upgrade mechanism.
  3. Replace the Linksys root password permanently, so that everyone knows it.
  4. Add dropbear to the image, and enable it by default with the root password that everyone knows.
  5. Either enable telnet permanently, or remove it altogether. Haven't decided which yet.
  6. Remove the ipkg symlink, and only add it back in on an external rootfs.
April 26, 2005, at 02:29 PM by rwhitby --
Added lines 3-8:

Unslung 4.x changes from Unslung 3.x

  1. Enabled /proc/bus/usb, to support communication with other kinds of USB devices via new drivers loaded as kernel modules or user-space programs that communicate with the device from user space via entries in /proc/bus/usb.
  2. Disabled support for multiple LUNs. The standard Linksys firmware only allows one drive per port. Any enclosures with multiple LUNs, such as X'S Drive II, end up appearing with only the last LUN attached. This is because as each LUN is found, the previous LUN attached by that device is dettached and the new one attached in it's place. The Unslung firmware will not iterate through all the LUNs, instead it will only attach the first one. This behaviour is prefered, because by convention the main function of a device appears at the first LUN. In the case of the X'S Drive II, the HDD will be attached, instead of the usually empty memory stick slot.
Added lines 11-12:

Unslung 3.x and earlier changes

Changed lines 29-33 from:
  1. Added /sbin/flashfs to support copying modified files to/from a flash key on Disk 2. This makes it much easier to wipe an Unslung disk, and then reinstall all your local modifications.
  2. Enabled /proc/bus/usb, to support communication with other kinds of USB devices via new drivers loaded as kernel modules or user-space programs that communicate with the device from user space via entries in /proc/bus/usb.
  3. Disabled support for multiple LUNs. The standard Linksys firmware only allows one drive per port. Any enclosures with multiple LUNs, such as X'S Drive II, end up appearing with only the last LUN attached. This is because as each LUN is found, the previous LUN attached by that device is dettached and the new one attached in it's place. The Unslung firmware will not iterate through all the LUNs, instead it will only attach the first one. This behaviour is prefered, because by convention the main function of a device appears at the first LUN. In the case of the X'S Drive II, the HDD will be attached, instead of the usually empty memory stick slot.
to:
  1. Added /sbin/flashfs to support copying modified files to/from a flash key on Disk 2. This makes it much easier to wipe an Unslung disk, and then reinstall all your local modifications.
April 26, 2005, at 01:44 PM by rwhitby --
Changed lines 1-8 from:

This page needs updating to match the 3.16-beta release

The "standard" variant of Unslung has the following changes from the stock Linksys firmware:

  1. Changed /dev/ram0 to /dev/slug in the kernel command line arguments. This causes the kernel to look for and run a /linuxrc script on boot. In our case, that /linuxrc script works out whether the root filesystem should be loaded from an attached ext3 disk.
  2. Changed the size constant in the Linksys modifications to the USB SCSI scan routines such that "Flash Detection" threshold is 1GB instead of 10GB. This was done to enable the use of Cornice devices as hard drives instead of flash.
to:

The Unslung firmware contains the following changes from the stock Linksys firmware:

  1. Changed the kernel command line arguments to run a "switchbox" initial ramdisk which determines the desired root filesystem location (jffs2, disk1, disk2, nfs, etc) and loads the root filesystem from that location.
  2. Changed the size constant in the Linksys modifications to the USB SCSI scan routines such that the "Flash Detection" threshold is 1GB instead of 10GB. This was done to enable the use of Cornice devices as hard drives instead of flash.
Changed lines 11-16 from:
  1. Added /linuxrc, containing sanity checks to activate a hard disk as / only if many conditions are met. If conditions are not met, the NSLU2 will boot from ramdisk.
  2. Added /.unslung, containing version information to support a check in (2).
  3. Added /sbin/unsling, a script to copy the important directories from the ramdisk to the new location of / (/share/hdd/conf or /share/flash/conf).
to:
  1. Added /sbin/unsling, a script to copy the root filesystem from jffs2 to the new location of / (/share/hdd/data or /share/flash/data).
Changed lines 15-20 from:
  1. Modified lines in each of the rc scripts to check for the presence of a diversion script in /unslung.
  2. Added an /etc/rc.d/rc.unslung script to run init files in the /opt/init.d directory (this is where Unslung packages place their startup scripts).
  3. Added /usr/bin/ipkg, /etc/ipkg.conf, and /usr/bin/wget to support the download of packages.
to:
  1. Modified lines in each of the rc scripts to check for the presence of a diversion scripts in /unslung.
  2. Added /etc/rc.d/rc.unslung-start and /etc/rc.d/rc.unslung-stop scripts to run init files in the /opt/init.d directory (this is where Unslung packages place their startup and shutdown scripts).
  3. Added /usr/bin/ipkg, /etc/ipkg.conf, and /usr/bin/wget to support the download of installable packages.
Changed lines 23-44 from:

Enable /proc/bus/usb

The standard Linksys product only supports USB mass storage devices. In order to communicate with other kinds of USB devices, new drivers must be loaded as kernel modules. Another option is to use a user space program and communicate with the device from user space via entries in /proc/bus/usb.
The Unslung kernel supports usbdevfs and allows the USB device driver to publish the /proc/bus/usb hierarchy, thus allowing user space USB applications to work. The /proc/bus/usb hierarchy is automatically mounted during boot.

Add support for RAID disk configuration.

The idea behind the Unslung-able is to provide extra functionality missing in Unslung-standard, without breaking compatibility with existing Linksys software. Think of Unslung-able as more able than the standard image.

Implemented changes

Disable support for multiple LUNs.

The standard software only allows one drive per port. Any enclosures with multiple LUNs, such as X'S Drive II, end up appearing with only the last LUN attached. This is because as each LUN is found, the previous LUN attached by that device is dettached and the new one attached in it's place.
The Unslung-able kernel will not iterate through all the LUNs, instead it will only attach the first one. This behaviour is prefered, because by convention the main function of a device appears at the first LUN. In the case of the X'S Drive II, the HDD will be attached, instead of the usually empty memory stick slot.

Add support for AppleTalk.

The standard Linksys kernel does not provide support for the AppleTalk DDP stack. We provide this as a set of modules; appletalk, ipddp, ipddp_encap, and ipddp_decap. This is meant to be used in conjunction with a user-space applications such as netatalk.

Planned changes

to:
  1. Enabled /proc/bus/usb, to support communication with other kinds of USB devices via new drivers loaded as kernel modules or user-space programs that communicate with the device from user space via entries in /proc/bus/usb.
  2. Disabled support for multiple LUNs. The standard Linksys firmware only allows one drive per port. Any enclosures with multiple LUNs, such as X'S Drive II, end up appearing with only the last LUN attached. This is because as each LUN is found, the previous LUN attached by that device is dettached and the new one attached in it's place. The Unslung firmware will not iterate through all the LUNs, instead it will only attach the first one. This behaviour is prefered, because by convention the main function of a device appears at the first LUN. In the case of the X'S Drive II, the HDD will be attached, instead of the usually empty memory stick slot.
April 20, 2005, at 03:13 PM by rwhitby --
Added lines 1-50:

This page needs updating to match the 3.16-beta release

The "standard" variant of Unslung has the following changes from the stock Linksys firmware:

  1. Changed /dev/ram0 to /dev/slug in the kernel command line arguments. This causes the kernel to look for and run a /linuxrc script on boot. In our case, that /linuxrc script works out whether the root filesystem should be loaded from an attached ext3 disk.
  2. Changed the size constant in the Linksys modifications to the USB SCSI scan routines such that "Flash Detection" threshold is 1GB instead of 10GB. This was done to enable the use of Cornice devices as hard drives instead of flash.
  3. Changed the kernel USB detection routines so that when a flash disk is plugged into Disk1, a /proc/hd_conn file is created instead of a /proc/usb_conn file. This fools the Linksys applications into expecting ext3 partitions on that disk (just like a hard disk). Note that your flash disk needs to be 256MB or larger for this to work properly.
  4. Changed the root password to "uNSLUng".
  5. Added /linuxrc, containing sanity checks to activate a hard disk as / only if many conditions are met. If conditions are not met, the NSLU2 will boot from ramdisk.
  6. Added /.unslung, containing version information to support a check in (2).
  7. Added /sbin/unsling, a script to copy the important directories from the ramdisk to the new location of / (/share/hdd/conf or /share/flash/conf).
  8. Added /bin/slingbox (and a number of symbolic links to that executable in /bin and /sbin) to provide the utilities required for the unsling and flashfs scripts. It also provides an upgraded version of /bin/tar which supports gzipped archives.
  9. Modified lines in each of the rc scripts to check for the presence of a diversion script in /unslung.
  10. Added an /etc/rc.d/rc.unslung script to run init files in the /opt/init.d directory (this is where Unslung packages place their startup scripts).
  11. Added /usr/bin/ipkg, /etc/ipkg.conf, and /usr/bin/wget to support the download of packages.
  12. Added /sbin/flashfs to support copying modified files to/from a flash key on Disk 2. This makes it much easier to wipe an Unslung disk, and then reinstall all your local modifications.

Enable /proc/bus/usb

The standard Linksys product only supports USB mass storage devices. In order to communicate with other kinds of USB devices, new drivers must be loaded as kernel modules. Another option is to use a user space program and communicate with the device from user space via entries in /proc/bus/usb.
The Unslung kernel supports usbdevfs and allows the USB device driver to publish the /proc/bus/usb hierarchy, thus allowing user space USB applications to work. The /proc/bus/usb hierarchy is automatically mounted during boot.

Add support for RAID disk configuration.

The idea behind the Unslung-able is to provide extra functionality missing in Unslung-standard, without breaking compatibility with existing Linksys software. Think of Unslung-able as more able than the standard image.

Implemented changes

Disable support for multiple LUNs.

The standard software only allows one drive per port. Any enclosures with multiple LUNs, such as X'S Drive II, end up appearing with only the last LUN attached. This is because as each LUN is found, the previous LUN attached by that device is dettached and the new one attached in it's place.
The Unslung-able kernel will not iterate through all the LUNs, instead it will only attach the first one. This behaviour is prefered, because by convention the main function of a device appears at the first LUN. In the case of the X'S Drive II, the HDD will be attached, instead of the usually empty memory stick slot.

Add support for AppleTalk.

The standard Linksys kernel does not provide support for the AppleTalk DDP stack. We provide this as a set of modules; appletalk, ipddp, ipddp_encap, and ipddp_decap. This is meant to be used in conjunction with a user-space applications such as netatalk.

Planned changes

view · edit · print · history · Last edited by mwester.
Based on work by blaster8, mwester, and rwhitby.
Originally by rwhitby.
Page last modified on April 13, 2006, at 12:42 AM