[Announce] Jac4 Alternative Firmware for NAS200

Discussion in 'Cisco/Linksys Network Storage Devices' started by jac_goudsmit, Aug 13, 2009.

Thread Status:
Not open for further replies.
  1. DJ Soulfly

    DJ Soulfly Addicted to LI Member

    I have hooked up a drive and it's being recognized by the nas200

    A short output of dmesg :
    <6>ehci_hcd 0000:00:0a.1: EHCI Host Controller
    <6>ehci_hcd 0000:00:0a.1: new USB bus registered, assigned bus number 1
    <6>ehci_hcd 0000:00:0a.1: irq 14, io mem 0xc1000000
    <6>ehci_hcd 0000:00:0a.1: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
    <6>usb usb1: configuration #1 chosen from 1 choice
    <6>hub 1-0:1.0: USB hub found
    <6>hub 1-0:1.0: 2 ports detected
    <7>ohci_hcd: 2006 August 04 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI)
    <6>ohci_hcd 0000:00:0a.0: OHCI Host Controller
    <6>ohci_hcd 0000:00:0a.0: new USB bus registered, assigned bus number 2
    <6>ohci_hcd 0000:00:0a.0: irq 15, io mem 0xc1001000
    <6>usb usb2: configuration #1 chosen from 1 choice
    <6>hub 2-0:1.0: USB hub found
    <6>hub 2-0:1.0: 2 ports detected
    <6>USB Universal Host Controller Interface driver v3.0
    <6>Initializing USB Mass Storage driver...
    <6>usb 1-2: new high speed USB device using ehci_hcd and address 2
    <6>usb 1-2: configuration #1 chosen from 1 choice
    <6>scsi2 : SCSI emulation for USB Mass Storage devices
    <6>usbcore: registered new interface driver usb-storage
    <6>USB Mass Storage support registered.
    <7>usb-storage: device found at 2
    <7>usb-storage: waiting for device to settle before scanning
    <5>scsi 2:0:0:0: CD-ROM SONY DVD RW DW-U18A UYS3 PQ: 0 ANSI: 0
    <5>scsi 2:0:0:0: Attached scsi generic sg2 type 5

    Unfortunately i am unable to mount and share the drive ill think it needs the sr_mod module loaded before i can mount and share it. Any help with setting it up?
  2. jhsperc

    jhsperc Networkin' Nut Member

    SSH Not Connecting

    Updated to new firmware and I tried to connect with SSH via Putty and it says the connection is refused... I'm confused.
  3. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    USB CD-ROM support

    You are right, and the sr_mod module has not been part of the build until now.

    I added the module to the kernel config and made a script, and put all the needed modules into a tarball. You can download it from here (I will add the URL to the first post too).

    You should download the file to the root directory of the first hard disk and log in to the NAS200 via SSH as root. Then unpack the tarball using:
    tar xvzf nas200_usbcdrom.tgz
    After this, you can reboot the NAS using /etc/rc.d/rc.reboot to enable USB CD-ROM support, or you can simply start the /harddisk/volume_*/data/rc.d/rc.usbcdrom script from the command line.

    The script loads the modules in the right order (cdrom.ko, sr_mod.ko, isofs.ko) and creates the sr0 and sr1 device nodes. You can then connect the USB CD-ROM drive to one of the USB connectors and mount CD-ROM's using a command similar to this (create the "cdrom" directory on the hard disk first):
    mount /dev/sr0 /harddisk/volume_1/data/cdrom -t iso9660 -o ro
    I tested this using an old CD-ROM drive on a USB-to-IDE adapter and it worked; I didn't have a chance to test it with a DVD drive and DVD discs; all my DVD drives are built into systems...

  4. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    I need some more information here. Did you make sure that the file was the right size? Did the upgrade process show any error messages or did a message box pop up that said the router was going to restart? And did it actually restart? Did you wait until the restart was complete? Remember the first restart takes over 5 minutes because the encryption keys need to be regenerated. If it didn't take that long, it means something went wrong.

    If it did take a long time to start up the NAS200 after you installed my firmware, it means there's something wrong with your network. Are you running some kind of restrictive firewall on your PC that doesn't allow outgoing connections unless you allow it? Are you connecting through a router that might not have port 22 open?

  5. DJ Soulfly

    DJ Soulfly Addicted to LI Member

    It's works perfect but i have made a little adjustment to run the script at startup of the nas to load the right modules. It wasn't loaded automatically

    My output of rc.usbcdrom :

    # rc.usbcdrom
    # Sets up the NAS200 for use with USB CD-ROM drives

    cd /harddisk/volume_3/data/rc.d/

    # Load the modules
    for x in cdrom sr_mod isofs
    insmod usbcdrom/$x.ko

    for x in 0 1
    mknod /dev/sr$x b 11 $x

    in red my modification to let the magic work. I've also added in the dir usbcdrom udf.ko for reading DVD's from your extrafsmodules_jac4.tar.bz2 package.
  6. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    Oops! I forgot the scripts in rc.d shouldn't make any assumptions about the current working directory... :rolleyes:

    I will update the tarball with these changes later today and will post here when it's online. Thanks!


    EDIT: the modified tarball is now online.
  7. DJ Soulfly

    DJ Soulfly Addicted to LI Member

    Thank you for your help to make this all possible. Now i can get some testing with my hooked up USB DVD-Writer. Ill want to try if i can get some DVD's burned on the nas as part of a back-up
  8. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    I don't know if recording will work but I'll be interested to hear your results. By the way it looks like the modules take up more than 2MB of memory, that's a lot for a 32MB device...

  9. DJ Soulfly

    DJ Soulfly Addicted to LI Member

    Thats indeed allot of memory of a 32Mb device but i didn't notice any slow down or performance issues with the modules loaded but a swap file is recommended.

    I'll keep you posted about burning capabilities. so far i am working on porting webCDwriter (http://joerghaeger.de/webCDwriter/) to the nas
  10. jhsperc

    jhsperc Networkin' Nut Member

    Connection Issue

    I ended up re-flashing. It works now. I do have a question about how to obtain the hd temps from SMART on the drives.

  11. adasch

    adasch LI Guru Member

    thx for answer. Of course i check many versions. Now i use 4.4.18

    maybe this don't work becouse i don't register twonky?

  12. DJ Soulfly

    DJ Soulfly Addicted to LI Member

    CD Writing works

    I have managed to port the program webCDwriter to run on the nas but also eats a whole of memory (only 1,5Megabyte free) with the program running. But with a swap file it can be run without noticeable slow downs and is highly recommended.

    But it's possible to write cd's with an external drive hooked up to the nas with a speed of 24x with no hick-ups.

    Now i can do some back-ups remotely :cool:
  13. asce_47

    asce_47 Guest

    Goodnight everyone

    First of all I want to thank Jac by sharing information.

    Dj Soulfly could explain step by step how did the installation of webCDwriter because being new in linux.

    At the time my NAS 200 wheel JAC4 perfectly with DVD-RW


    OBS.: Sorry for bad English due to be Brazilian
  14. DJ Soulfly

    DJ Soulfly Addicted to LI Member

    Actually I didn't install webCDwriter on the nas. Simply because it's not a .deb or a rpm package which allows an installation on the Nas. I have compiled webCDwriter from the source code on a virtual machine with Trustix on it to make it run portable on the nas.

    It's not possible to burn DVD's with this program only CD-R's and CD-RW's. If you want able to burn DVD's with it you need to purchase a license for it.
  15. Hackit

    Hackit LI Guru Member

    Hi all,

    I alos have a linksys nas 200 and have really not used it as the machine disappears in my networks after a day or 2. Not very stable, I have reset and flashed the nas many times to have the same result.

    My question is does this new hacked firmware make the nas 200 more stable?
    if I only really need it to be a storage device will this work for me?

  16. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    The Jac4 firmware is mostly the same as the Linksys firmware, but it has some added features. If you only need the NAS200 for files and you're not interested in the added features, the Jac4 firmware is not for you.

    Any stability problems you're having with your NAS are most likely hardware problems. It's possible that the disk(s) in your NAS get(s) too hot and that's why it stops working. I had the same problem myself and the only way to fix it was to put in a replacement fan (I had to do some Dremeling to improve air flow).

    I changed the fan a few times until I found a really good one: at first I had my fan on the side where the SATA cables are (i.e. on the other side of the original fan) but because of those cables, there's not a lot of space and it's difficult to find a thin (10 or 15mm) fan that is quiet and moves enough air.

    I recently decided to cut out the other side (i.e. the side where the original fan used to be) and put a thick fan there. The one I have now is a Silenx Ixtrema 60 IXP-34-16, a 60x60x25mm fan that moves 18 cubic foot per minute but is still whisper-quiet at 16dbA. The NAS is sitting right next to me as I type this, and I can't even hear it unless I put my ear on it. The hard disk temperature according to smartctl is 45 Celsius which is well within the norm (but I have to say I'm only using a Western Digital Caviar Green disk in my NAS at this time, it doesn't run as hot as my Seagate which is now in a different enclosure, and with only one disk in the NAS it's easier to keep it cool).

    The above link is for the Newegg.com page, but I bought the fan at the local Fry's. They also had an 8dbA 10cfm model (IXP-34-08) but I was a little worried that that might not be enough airflow.

  17. Hackit

    Hackit LI Guru Member

    WOW thanks for the great advice, I have had this for about 2 years and have never been happy with it.

    I will have to try this mod and see if I can keep it running, is there a way to check my temps now and see if it is hot?

    Also I do have a seagate drive in it, only one.

    Maybe I will try a western digital?

    Again thanks for the tip and advice.
  18. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    Use the smartctl program to get the temperature for your drive. Something like this should do the trick:

    /usr/sbin/smartctl -a /dev/sda | grep "Celsius"

    Replace /dev/sda by /dev/sdb to check the second drive if you have one. Obviously this will only work for drives which have SMART support (which I think is pretty much all of them nowadays). The output may vary somewhat (there's another discussion thread on this board somewhere about this) but the last number on the line is the temperature in Celsius. You probably want to see a value below 50. The max operating temperature for most drives is 55C but chances are your disk will fail early if it's at 55C all the time.

    For those who like Fahrenheit: 0C=32F, 10C=50F, 20C=68F, 30C=86F, 40C=104F, 50C=122F.

    Note, /usr/sbin is not part of the PATH so you have to type the full path to the program.

  19. psychowood

    psychowood Network Guru Member

    Don't know about WD, but I used to have one Seagate 7200.11, and keeping the nas200 case open, it reached (and stopped at) 60°C within minutes.

    Now I have two Samsung Ecogreen, and with the nas200 case closed, temperature is stable at 45°C even after hours.
  20. jnavarroa

    jnavarroa Networkin' Nut Member

    Firmware upgrade?

    Hi. Sorry but I'm reading and reading in a lot of post but I can't find a answer for my problem. I have a Nas200 and I want to make a complete restore (New password, new firmware, etc..) I have a fix IP and I can't change it. I forgot the password and I can't open the web mange page. Could somebody say me the way to find the solution. I want erase everithing and restart from the begining.

    Thanks and sorry because I suppouse that this is not the corret way.

    Sorry for my english to.

    Best regards.
  21. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    Push and hold the reset button for (I think) 30 seconds. It will beep after 5 seconds to let you know it reset the network settings and admin password, it will beep again after 30 seconds to let you know it returned the configuration to the default settings.

  22. jnavarroa

    jnavarroa Networkin' Nut Member

    Firmware upgrade?

    I did it and i recovery the password. I just change the IP in the same range and now I have the control.
    One question, My idea is use this equipment like a media server conected to a wifi router and a multimedia HDD. With JAC4 can I do this? is easy? Have you any manual to look all the feartures of this firmware?
  23. nemeraud

    nemeraud Networkin' Nut Member

    hello all

    sorry for my English, congratulations for this work JAC4

    I have several questions

    - In the FW jac4, what version of busybox?
    I flash the FW jac4 and I'm V1.00-RC2 normal?

    - I wish I could run a script of some synchronization between directory volume_1 and volume_2 to the facade of NAS200 button, is it possible?

    - I can not run ctorrent, there exists a package/FW include this ?
    thank you
  24. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    Yes, the Linksys firmware includes the ancient 1.00 RC2 version of Busybox so Jac4 includes it too... There are others who compiled a more recent version of Busybox, you should be able to find a thread in this forum.

    In theory it should be possible to run a program (even a script) that listens for input on the /dev/usb_button device, and perform an action when the correct string comes in. I did limited experimentation with it and I don't remember the result but I concluded that it must be possible.

    ctorrent is not included in my firmware but someone made a ctorrent available. Again, search in this forum.

  25. nemeraud

    nemeraud Networkin' Nut Member

    Jac thank you to your answers and your work

    I found a version ctorrent, but it is not functional without some modifications.

    perhaps jac5 with the latest version of Busybox and ctorrent :)

    I'll test for the button and launch a script

    The rsync command is implemented in a version of Busybox ?
  26. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    I think I just did a cat /dev/usb_button or a tail -f /dev/usb_button or something similar to test it. When you push any button, it shows up on the device as a string e.g. "BACKUP" or something like that. Unfortunately I think the way the (closed-source) driver is implemented, it keeps generating output even while nothing happens.

    The latest versions of Busybox have an rsync. However someone else built a version of rsync for the NAS200. Again, search the forum.

  27. nicholsonsl

    nicholsonsl Networkin' Nut Member

    I've had this NAS for 18 months and recently discovered this firmware. Now I feel like I have a brand new device. Thanks for your efforts!

    I installed the firmware because I was very interested in the secure login features.

    I have a total noob question. I want to create more accounts to log in through ssh, but I don't understand how.

    In the section:
    you state:
    I don't know how to set up the "valid shell and login directory". I am happy to use the same username and permissions. Here is an example of the original account that I want to use to create an ssh login:


    Can someone help me add the new line correctly?
  28. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    You can use the following commands from an ssh command line (log in as root). Replace myaccount by the account that you want to duplicate.

    $ # create account "myaccountsh" from "myaccount"
    $ egrep "^myaccount:" /etc/passwd | awk -F : '{print $1"sh:"$2":"$3":"$4":"$5":/:/bin/sh"}' >>/etc/passwd
    $ for x in 1 2 3 4 5 6;do cp /etc/passwd /harddisk/volume_$x/conf;done
    The above commands creates a line "myaccountsh:sc.ePnAcSrSyWpOtReDd:2000:501::/:/bin/sh" and saves the file on the disk so the change is preserved across a reboot. After this, you can log in through ssh as myaccountsh (mind the -sh at the end). You would use the same password as what you use for myaccount, and because the user ID and group ID are the same, myaccountsh and myaccount will have the same access rights.

    You can also replace :/: by something else to change the home directory to something else, e.g. :/harddisk/volume_1/data:

    If you make a mistake, you can remove the account (or any account) as follows:
    $ # remove account "myaccountsh"
    $ egrep -v "^myaccountsh:" /etc/passwd >/etc/passwd.tmp
    $ mv /etc/passwd.tmp /etc/passwd
    $ for x in 1 2 3 4 5 6;do cp /etc/passwd /harddisk/volume_$x/conf;done
    Be careful typing all these commands. Don't forget any options or spaces or whatever or you'll end up with a passwd file that won't let you log in at all...

  29. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    I am closing this thread because it's getting way, way too long. If you have a question about my firmware, please start a new thread in the forum. This will also make it easier to find things and to skip uninteresting stuff like frequently asked questions.
Thread Status:
Not open for further replies.
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice