Linksys NSLU2

This device is NOT RECOMMENDED for future use with OpenWrt due to low flash/ram.
DO NOT BUY DEVICES WITH 4MB FLASH / 32MB RAM if you intend to flash an up-to-date and secure OpenWrt version onto it! See 4/32 warning for details.

1) This device does not have sufficient resources (flash and/or RAM) to provide secure and reliable operation.
This means that even setting a password or changing simple network settings might not be possible any more, rendering the device effectively useless. See OpenWrt on 4/32 devices what you can do now.

2) OpenWrt support for this device has ended in 2022.
19.07.10 was the last official build for 4/32 devices.

The Linksys NSLU2 (a.k.a. SLUG) was a network attached storage device based on the IXP42x processor clocked at 133/266MHz. Is provided with a 2.0A 5V power supply.

NOTE: the boardfile support for NSLU2 was deleted along with the rest of IXP4xx from OpenWrt, but was brought back on 2023-05-25 using kernel v6.1 and purely device tree and some rewritten and modernized device drivers. OpenWrt support is under development. You can find preview images of kernel v6.1 and a working OpenWrt snapshot rootfs with LuCI and KSMBD on this webpage. NSLU2 supports only external hard disk or USB boot media as the internal flash is just 8 MB and the flash image will just contain the kernel.

Version/Model Launch Date S/N OpenWrt Version Supported Model Specific Notes
vx 2006-07 - Kamikaze 7.06 133MHz; can be easily “de-underclocked”
vy 2006-07 - Kamikaze 7.06 266MHz

Install OpenWrt (generic explanation)

FIXME Please add the installation procedure here.

Please check out the article flash.layout. It contains an example and a couple of explanations.

The NSLU2 at one point had an active user community around it at http://www.nslu2-linux.org. It was based upon Debian. Debian has since discontinued support for the NSLU2 in Debian 9 (Stretch) in June 2017. The developers at NSLU2Linux used to “bless” OpenWrt as the firmware of choice for people who want to run all their applications from the internal flash memory only (i.e. with no external storage at all). At one point there were several distributions available for the NSLU2; most contrast OpenWrt's minimalist philosophy. OpenWrt is for people who would rather spend their time adding the wanted features than deleting unwanted ones.

As of writing (2023) OpenWrt is probably the only distribution still actively supporting NSLU2.

The new device tree-based port is under construction and available as snapshot builds.

In case of problems, things to look out for are:

  • The default IP is the one that is set in the NVRAM, so OpenWrt will boot up with the IP it had under the former firmware. This is not the default for other Kamikaze platforms! Note: This is not true for Kamikaze SVN (tested with r8003). Note2: On upslugging the default IP of NSLU2 is 192.168.1.77 (the same as the factory, Unslung and SlugOS behaviour) as of 08-2007. As of 8.09 RC1 the default IP is 192.168.1.1.
  • After initial installation with the squashfs firmware, it can take up to five minutes to initialize the jffs2 payload partition. I would wait at least this time before you reboot it forcefully (although unplugging it while it is initializing didn't harm it in my tests)
  • The status LED indication differs from openslug. This might confuse users migrating from openslug.

Set the NSLU2 into upgrade mode. To do this, make sure the NSLU2 is turned off. Then press the reset button with a paper clip or small screwdriver and keep it pressed. Turn the NSLU2 on. The “Ready/Status” led will be yellow. When it changes to a reddish amber shade, immediately release the reset button. If it flashes an alternating amber and green, you have succeded (if not, unplug and try again).

Then install the upslug2 utility. Many distributions already include it in their package management (Fedora still ship it as of 2023).

Now upslug2 should find the nslu2 over the LAN and display the information.

Install the image with upslug2 -d interface -i filename, for example:

  upslug2 -d enp7s0 -i openwrt-ixp4xx-linksys_nslu2-squashfs-factory.bin

It will flash and verify the upload and then reboot automatically. Example:

You can download the image from the OpenWrt 'Kamikaze' 7.06 dir http://downloads.openwrt.org/kamikaze/7.06/ixp4xx-2.6/openwrt-nslu2-2.6-squashfs.bin. Then install the upslug2 utility. Many distributions already include it in their package management (Fedora still ship it as of 2022). You will find more information on the topic on the excellect NSLU2-Linux wiki http://www.nslu2-linux.org/, specific information on upslug2 is at http://www.nslu2-linux.org/wiki/Main/UpSlug.

The NSLU2 will take a few minutes to initialize the JFFS2 partition, don't reboot if you cannot access it immediately. It will start up using the network parameters that are stored in the NVRAM partition, so it will default to DHCP (I think) if not setup differently. If you have set a fixed IP address under the original firmware or a previous Linux distribution, OpenWrt will retain this. Try telnet and ping to access it. Then follow the standard Kamikaze installation procedures.

After flashing the device was reachable under 192.168.1.1.

  • Installed OpenWrt 'Backfire' 10.03 on stock NSLU2 without any problems and works great. Added “option gateway xxx.xxx.xxx.xxx” and “option dns xxx.xxx.xxx.xxx” to “option ipaddr xxx.xxx.xxx.xxx”, “option netmask xxx.xxx.xxx.xxx”, and “option proto static” and kept the static setup with actual desired IP address. --- OddballHero 2011/01/31 12:57
  • I installed OpenWrt 'Backfire' 10.03.1-RC on my NSLU2, and it works just fine. --- Georg Sorst 2011/01/18 00:18
  • Installed OpenWrt 'Attitude Adjustment' 12.09, r36088 on my NSLU2. Worked like a charm ! --- MascH 2014/01/07 23:37
  • Installed OpenWrt Barrier Breaker 14.07 on my NSLU2. Works fine ! r0mulux 2014/10/30 20:53
  • Installed OpenWrt Chaos Calmer 15.05 on my NSLU2. Works OK ! xpact 2016/03/07 08:43

Since this part is identical for all devices, see Basic configuration.

To connect stuff to the USB port, please see USB overview.

A basic configuration as an OpenWrt NAS is very simple and straight forward, for this memory-constrained device it is recommended to use ksmbd as SMB server if you desire to use the SMB protocol to access your NAS (such as with Windows and many media players). The most common SMB server samba4 is unfortunately too memory hungry and can make the device thrash and hang, and connections and transfers time out as a result.

Enable hdparm in your build by:

make menuconfig

From the top menu: Base system → Customize busybox options → Miscellaneous utilities → hdparm

This tool is used to instruct the harddrive to spin down when unused. Not doing that will be annoying since the drive will always be spinning.

If you rebuild the firmware image from scratch to get ksmbd you can do like this:

scripts/feeds update
scripts/feeds install ksmbd-server
make menuconfig

From the top menu, select Network → Filesystem → ksmbd-server, then select as 'y' (star) for both ksmbd-server and ksmbd-utils to get into default install and rebuild OpenWrt. I usually also install the utils, but they are only needed if you want to create individual users. After you put the resulting ext4 filesystem on the drive, rebooted and made basic set-up like above /dev/sda should exist and you can proceed to set up a samba share:

mkdir /ksmbd
chown nobody /ksmbd
chgrp nogroup /ksmbd

Edit /etc/config/ksmbd to contain something like this:

config globals
    option 'workgroup'              'WORKGROUP'
    option 'description'            'ksmbd on NSLU2'
config share
    option path                   '/ksmbd'
    option name                   'NSLU2'
    option create_mask            '0666'
    option dir_mask               '0777'
    option read_only              'no'
    option guest_ok               'yes'

Reboot and you can browse to the IP number (etc) of your NAS, use the NSLU2 share and upload and download files that will appear in /ksmbd, of course you can set up whatever partition etc you like.

Backfire 10.03 has most of the lights turned off (except for Ethernet) so use either the Luci web management (Administration→System→LED Configuration) feature (works quite well) or edit the /etc/config/system. GPIO Connections: http://www.nslu2-linux.org/wiki/Info/GPIOConnections has some information to help with the setup. Sample /etc/config/system entry:

config 'led'
      option 'name' 'GPIO2'
      option 'sysfs' 'nslu2:green:disk-2'
      option 'default' '1'
      option 'trigger' 'default-on'

Where additional choices for sysfs are 'nslu2:green:disk-1', 'nslu2:green:ready', and 'nslu2:red:status'.

failsafe_and_factory_reset

  • Unplug the router's power cord.
  • Connect the router's LAN1 port directly to your PC.
  • Configure your PC with a static IP address: 192.168.1.x/24
  • Plug the power on and wait for the DMZ LED to light up.
  • While the DMZ LED is on immediately repeatedly press one of the buttons (Reset button or Secure Easy Setup button) until the DMZ LED will quickly flash 3 times every second.
  • You should be able to telnet to the router at 192.168.1.1 now (no username and password)

The Linksys NSLU2 has one button. See nslu2.hardware.button for some options with that. - shut down via power button ( https://forum.openwrt.org/viewtopic.php?id=25253 )

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
  • Last modified: 2024/02/12 08:58
  • by 127.0.0.1