Busybox

This article assumes fun_plug is installed. It only explains what busybox is and how it works, so don’t expect to learn new useful Linux tricks.

Busybox calls itself “The Swiss Army Knife of Embedded Linux”. It is a single program that provides over 60 commonly used commands that are normally available on the Linux command line. Examples of such commands:

ls lists what’s in a directory
mkdir creates directories
tar creates/opens tarball files containing multiple files
cp copies files

In a standard Linux distribution these commands are separate programs. Busybox implements these programs (occasionally with somewhat reduced options) as a single executable program. Hence the “Swiss army knife” slogan. This saves space and maybe loading time, which is important for embedded Linux implementations.

To see what programs are handled by Busybox on the CH3SNAS you can use the following command within an ssh (PuTTY) session:

cd /bin
ls -l | more

The piping via more allows you to view the folder listing produced ls at your own pace. Use the spacebar to see more of the listing, and q to quit the more utility. The output will contain dozens of lines like:

lrwxrwxrwx    1 root     root            7 Apr  1 12:53 ln -> busybox
lrwxrwxrwx    1 root     root            7 Apr  1 12:53 ls -> busybox
lrwxrwxrwx    1 root     root            7 Apr  1 12:53 md5sum -> busybox
lrwxrwxrwx    1 root     root            7 Apr  1 12:53 mesg -> busybox
lrwxrwxrwx    1 root     root            7 Apr  1 12:53 mkdir -> busybox

Essentially this says that, for example, the file /bin/ls is a symbolic link (“->”) to the program /bin/busybox. You can get a feel for for this by trying

busybox ls -l /bin/busybox

yourself and seeing that it performs the same as typing ls -l /bin/busybox directly. Typing busybox without any parameters gives information like the program version and a list of all supported commands.

5 thoughts on “Busybox”

  1. I’ve got a Corza-NAS 2 bay system running firmware 1.51b. It came with busybox 1.0 on it and I’m upgrading it to 1.18.2. I have two WD 1.5TB 7500 RPM drives in it. I’ve got several aging WD drives and they’re still running as though new.

    Patriot really doesn’t support discontinued hardware, and gives every indication that it will discontinue anything that isn’t selling like ice cream in summer. So, I’m disappointed with the level of support available, and I don’t see any firmware updates available in the future from this company.

    Still, the Corza is an awesome device for the very low entry price it had at the time. Now of course there are cheaper NAS devices on the market, and I’ll be picking up another one after a careful review of complaints.

    I loved getting an embedded linux device and have zero complaints about the hardware which has run without any problems for two years through multiple power failures. I live in a high winds and thunderstorm area. Yes, I do have high-end UPS systems. There is a possibility of a household-wide UPS install this summer. 🙂

    Unfortunately, the 1.0 busybox has no direct update utility. Installers such as ipkg and dpkg are not present, and it’s not clear how easy it will be to update the system. Fortunately I did not RAID the NAS and the drives can be plugged into any SATA port if I need to recover the data. I didn’t see the benefit of a RAID setup with only two drives given that drive MTF rates are extremely low these days, and I’ve got an external 2TB backup device.

    It remains my opinion that without at least four SATA drives there’s no rationale to RAID backup utility outside of a commercial purpose. The drives are very safe, too expensive for home users, and the data saved is generally obtainable media. Private files should be backed up onto an encrypted external drive.

    That said, I’m setting up to backup, update, and expand my NAS capacity using the Corza and external USB drives. I’ve got the new busybox release saved to the Corza and unpacking it now. I’ll update with details, problems, and any solutions required.

  2. Update to firmware: 1/18/2011 there is no longer any download link to any Corza NAS firmware on the patriot site. A google search doesn’t turn up a single link for downloading firmware, and complaints about firmware updates posted in 2009 on patriot’s site are unanswered.

    I will not purchase hardware from Patriot again. Failure to honor support is a deal breaker.

  3. localhost/home.cgi, Control Panel, Maintenance, Software Update.

    I selected the newest busybox download and clicked “Update”. The file is recognized and the web manager displays the message “Tar file”, and “Progress 1%”, but it doesn’t get far.

    Error: “The upload file is not usage.”

    I extracted the tar with: “bunzip2 -d” and still got the same error. I assumed a .zip is desired so I extracted and created a zip file.

    Again, same error. It also still identifies it as a “Tar file”. It doesn’t appear that the Software Update function is a viable update tool. At least it’s not working for Busybox. Any information on this would be helpful.

    I’ve already copied it to the NAS through a network connected storage GUI: Ubuntu; Places, Network, Windows Shares. If I can find the right directory on the /dev/sda1 system directory I’ll update it manually. The corza-nas default ‘linear’ installation splits drive 0 into a 40 gig system directory and the rest of the space on drive 0 as /dev/sda2.

Leave a Reply

Your email address will not be published. Required fields are marked *