Exploring Unslung

03:15 - Thursday 7 October 2004 by Jim Buzbee
Source: Tom's Hardware – Keywords: how, to, nslu2, hack, pt5

Exploring Unslung

Ad

At this point we're using the new firmware, but functionality hasn't changed much. We're still using the standard RAMdisk and no new packages have been installed. For the next step, hot-plug your hard drive back into USB port 1. After a few seconds, entering a df command should show your drive mounted.

Now we'll populate the root filesystem on disk using a copy of the RAM filesystem. The new unslung command for this is:

/sbin/unsling

This command should give a few lines of output as it copies the RAMdisk to the hard drive. When it completes, type:

sync reboot

The box will reboot as normal. When it comes back up you'll need to re-enable Telnet once again using the standard telnet.cgi URL. Your user name and password should be preserved from your previous modifications. A df command will show your conf partition mounted on both the "/" directory and in the original location where the Linksys utilities expect to find it. And you should have an additional 10 MegaBytes of free memory! To verify this, enter:

cat /proc/meminfo

You should see a small amount of memory listed as free and a larger amount listed in buffers and cached. This memory is available for applications when needed.

Now we can re-enable Telnet using a diversion script. The details of creating diversion scripts can be found in the README file that came with the firmware, but here's what I did. I made a copy of /etc/inetd.conf in the directory /opt/etc/. Then I created an xinetd diversion script called rc.xinetd in the /unslung directory:

#!/bin/sh


cp /opt/etc/inetd.conf /etc/


return 1

This will run before inetd is started and just makes sure that the configuration file has Telnet enabled. The return 1 statement signifies that the rest of the standard script should be executed. If you're curious about the execution path, you can see how the diversion calls are made in the original rc files, e.g. /etc/rc.d/rc.xinetd. A reboot should now cause the box to come back up with Telnet running.

Now, on to the package system and some new applications.


Ad
Talkback
Google Ads
Ad