May 3, 2013
The Search for a New NAS
A few months ago, as I kept my head down between working and studying, my network backup server stopped working. That worried me. You can never have too many backups. Especially of pictures.
A few years ago, I panicked at the thought of having lost my pictures. But, luckily, I had them safely tucked away in the corner of a backup disk.
FreeNAS or NAS4Free
My backup server was built from old parts I had laying down around the house.
- An Intel ITX motherboard w/ a dual core Atom 330 processor
- A 500Gb hard drive from a disfunctional Time Capsule
- A 1Gb memory SIM from some forgotten project.
- A DVD reader from a left over white computer.
It really wasn’t such a fancy system. But then all it had to do was hold my data. Especially my pictures.
I used FreeNAS to build it originally. I installed it an ran it on a slow 4Gb USB memory stick. That method left all the space on the hard drive for storage.
I decided as long as an upgrade was in order, I’d download the next version of FreeNAS and upgrade. But when I visited the website, I was disappointed to find that FreeNAS was no longer being being developed. Apparently, the FreeNAS project had been sold/given to iXsystems who are developing a new 0.8 version rather than keeping the 0.7 version around. Is there a difference? You bet!
FreeNAS 0.7 Hardware Requirements
- Memory 512Mb
- Bootable Flash with 256Mb (embedded) or 384Mb (full platform)
- Processor 32-bit or 64-bit
FreeNAS 0.8 Hardware Requirements
- Memory 4Gb (32-bit) / 8Gb (64-bit)
- Bootable Flash, 2Gb
- Processor 32-bit or 64-bit
So you see. It simply won’t fit on my hardware. So I thought I’d look for other more suitable software for my hardware. That’s when I decided to look at Linux which comes in many flavors each with its own special purpose in life!
Looking for a Linux – The Turn
If you spend any amount of time looking for a Linux distribution, you will likely have heard of Distrowatch which promises to “put the fun back into computing…” I have a small issue with their point of view. Fun for me is doing the function I want on the computer, not reinstalling a new Linux distribution to see how it works. It’s like having unlimited access to free caboretures for your car. How many of them do you need? Just one, right? But scrolling through Distrowatch’s list of Linux and FreeBSD applications made me feel like I needed something from them all! Or mayby none of them all. At any rate, I started reviewing my options.
Who can resist this claim >Easily install your favorite Linux operating system on a flash drive >or USB key no larger than your thumb (Thumb Drive) found on the Pendrive web site. But although it is seductive, it is not what I’m looking for. The underlying assumption is that I want to take a complete Linux install with me. Everywhere. And once I find a lone machine with nothing better to do, I can boot up my environment and go to work.
No. I think what I had in mind was something more generic and more like a server… And not so much like a desktop system.
Open Media Vault
Ah – now this one looked a little more like what I needed. Open Media Vault says it is >OpenMediaVault is the next generation network attached storage >(NAS) solution based on Debian Linux. Who can resist that? And look at the services it supports right out of the box. >SSH, (S)FTP, SMB/CIFS, DAAP media server, RSync, BitTorrent client and of course it offers the option to support many more using plugins.
No. It looks like a repeat of the former issue. The ISO for the 0.4 version is 284.2 MB. Big. I’m looking for something small. very small.
Tiny Core Linux
Installing SAMBA on Tiny Core Linux seems harder to do that it is really worth. Most larger systems provide some sort of assistance in downloading dependencies and other features that will be needed to make a target application work out of the box. But Tiny Core seems to believe that we’re all just shy of capable gurus.
After struggling with this for a bit, I decided it was time to move on. Tiny Core is a cute Linux and all, but it’s not exactly what I wanted.
Oh my! What a great idea. A Linux based on the freedom and versatility of the Alpine mountain range! And it’s small, they boast that they are an embedded system for
Alpine Linux is a community-developed operating system designed for x86 Routers, Firewalls, VPNs, VoIP and servers What could be better!?
Well, a Linux that allows me to install SAMBA perhaps? Yeah, it is in the list on their web site… but it doesn’t install. At all.
Maybe next year.
Superb Mini Server Project
Then I ran into the Superb Mini Server Project while looking for something else. Why how, uh… cute! Puppies and all. And it’s got one of everything! And I do mean everything! The Live ISO download looks like it comes in at 501 MB. Not small. But if you want everything, they’ve got it.
While looking through the web site, I noticed a Linux distribution I recognized: Slackware. And that brought up a service I’d used once before.
SLAX Linux was in the middle of its heyday some time back when I used it to create a small farm of Linux machines on my desktop. The underlying idea was to see how much it would cost to create a lab to test various versions of security software. I was impressed with SLAX. The general version came on a disk that was about 200 MB. However, you could trim that back and only download what you want. The core and utilities were only about 50Mb. Now we’re talking my language! That would fit on a small thumb drive and leave some space for keeping the modifications. But apparently SLAX has gone through some changes lately.
Posted on this web page by the original author of SLAX, Tomas M:
It seems Slax won’t die so soon.
Several persons from two companies are willing to invest in further Slax development.
Both parties agreed to preliminary draft of an agreement,
so it seems that Slax development will be restarted when the legal documents are signed.
This is good news for me and I hope for you too!
Nearly a year later, version 7 of SLAX is released.
But the SLAX available at the time (December) was version 6. A rather nice version. Although it had its own little problems. The first was that it was being hosted on the old website. The second was that it had a small bug that did not allow me to save configuration modifications across reboots if I downloaded the fully reduced size. But I was able to test. And yes, I liked SLAX version 6 a lot.
The structure of SLAX version 7.08 is different. It was going to take Tomas some time to work through the issues that make the new version better than the old version. It looks pretty good now, but it is still missing a few simply installable things. So I kept on looking.
Finally, I came across someone looking for a version of a package that was not available for SLAX version 7 but was available on version 6. A responder suggested they look at the Porteus distribution which was based on the SLAX version 6 release and had the package. Tooling over that, I found that the Porteus release was pretty darned close. In fact, so close that it almost made sense to just stop right here. The biggest problem I ran into was that the distribution required me to download the ISO (yes, some 262 Mb). Boot with that and use its features to install onto a USB stick. Well, that’s closer. Much closer!
After booting up a couple of times, I realized I’d need to make a few changes to the boot structure so that it would save changes across restarts.
Updating LILO Boot
Although most Linux devices use GRUB to boot their systems, Slackware and its kin use LILO. LILO stands for Linux Loader and is useful in a number of locations where GRUB is just over kill. One of the main features of LILO that makes it attractive is the boot configuration file. In this file, you can list out what you would like the LILO to boot to. The first option is the default. So if you delete all but the first option and make it the server version, voila! It’s a server boot.
LABEL text MENU LABEL Text mode KERNEL /boot/vmlinuz APPEND initrd=/boot/initrd.xz autoexec=telinit~3 changes=/mnt/sdb1/porteus/porteussave.dat TEXT HELP Run Porteus in text mode and start the command prompt only ENDTEXT
As you can see above, the default boot runlevel is 3 – command prompt only. And it saves any changes to the USB boot drive in a file called porteussave.dat.
In the system, I have configured my primary drive (/dev/sda) to contain a single partition with a EXT2 partition on it mounted at /mnt/sda1. This provides a place to store my data.
/dev/sda1 /mnt/sda1 ext2 auto,noatime,nodiratime,suid,dev,exec 0 0
Then I configured SAMBA to permit me (and only me) to connect to it using some SAMBA configuration parameters.
comment = Dan’s Backup
path = /mnt/sda1
valid users = dgcombs
public = no
writable = yes
printable = no
create mask = 0765
I now have a Porteus Powered backup system running on my little computer. It has a simple configuration that permits me to connect from my Windows computer, my Linux computer and my Mac OSX computer. I can dump my files over there very quickly using the SAMBA configuration. It’s like a magic trick. At first you see it. Then you don’t. Poof!