Archives

Categories

Cheap NAS Devices Suck

There are some really good Network Attached Storage (NAS) devices on the market. NetApp is one company that is known for making good products [1]. The advantage of a NAS is that you have a device with NVRAM for write-back caching, a filesystem that supports all the necessary features for best performance (NetApp developed their own filesystem WAFL to provide the features they needed), and a set of quality hardware that has been tested and certified to work together.

If you want a cheap NAS then you end up with something running Linux with GPL filesystems. This isn’t a bad thing as such, but some of the best performance and data integrity features are available in ZFS (which isn’t GPL) and BTRFS (which isn’t ready for production use). Not to mention WAFL which has been providing ZFS/BTRFS type features for more than a decade.

A cheap NAS will generally be sold without disks as this is the best way to keep costs down. Selling with disks either means selling lots of different variations (which means it can’t be sold off the shelf) or selling packages that don’t quite suit some customers (thus causing people to buy the device and replace the disks which means extra costs). This means that the vendors can’t provide the guarantees about disk quality and suitability that NetApp can provide.

One major problem with a NAS is that you typically can’t get shell access. Commands such as “rm -rf” and “cp -rl” which are typically rather quick when performed locally can take ages when run over NFS. Also commands such as “grep -R” which can perform reasonably well over NFS will always perform better when run locally. Also tasks such as compiling big programs which require good disk speed as well as some CPU time can be run locally if you have a file server system that also has local accounts (IE a typical multi-user Unix server configuration), but a dedicated NAS will prevent that.

I have never used a NetApp device due to my clients deciding (sometimes correctly and sometimes incorrectly IMHO) that they are too expensive. But when considering what my clients do the down-sides of lacking local code execution on a NetApp would be more than compensated in many cases by the significant performance and reliability advantages that they offer (see my post about the reliability issues in standard RAID implementations [2]).

A server class system (with ECC RAM as a minimum criteria) running RAID-6 can be a fairly decent file server. That requires hardware RAID with NVRAM for the write-back cache for decent write performance, but when write performance isn’t required software RAID does the job quite well. A Dell tower system will typically hold at least 4 disks which means 6TB of RAID-6 storage and is quite cheap – it can be under $2000. also such a system can be easily expanded with extra Ethernet ports etc. NetApp doesn’t sell products directly and doesn’t list prices, but they do have some adverts for products being “under $7500“. That’s not really cheap but not THAT expensive when you consider the features.

A hidden cost in running a NAS is having someone perform sysadmin work on it. For a relatively expensive device that offers significant features such as a NetApp Filer this expense probably isn’t too great. But for a device that does what any PC running Linux can do it’s noteworthy that more training or experimenting time is required.

There are some special cases where small and cheap NAS appliances really make sense, such as the Apple Time Capsule for home network backups. But apart from that I don’t think that cheap NAS appliances make sense. It seems that cheap NAS devices provide the biggest down-sides of expensive NAS devices (in terms of lacking local access and having a different administration interface to servers) while also having the biggest down-sides of PC servers (lacking the advanced features of WAFL and performance of a NetApp).

Earlier today I started a process of reorganising some backups which included backups to a cheap NAS. I have been very unimpressed by the time taken to copy and rm files over NFS. I’m sure that the job would have been completed hours ago if I had local root access to the NAS.

Links March 2012

Washington’s Blog has an informative summary of recent articles about corporate psychopaths [1]. Including the fact that some banks deliberately hire psychopaths.

Anu Partanen wrote an insightful article for The Atlantic about the difference between Finnish and American education systems [2]. It seems that Finland has achieved great educational success by aiming for equality with no private schools and giving the teachers and principals enough responsibility to do the job properly.

Ramona Pierson gave an interesting TED talk about how she recovered from being run over by a drunk driver with the help of the residents of a senior citizens home [3].

Quyen Nguyen gave a very interesting TED talk about the use of fluorescent dyes in cancer surgery [4]. They can make cancer glow one color and nerves glow with a different color which makes it a much easier task to remove ALL the cancer without cutting the smaller nerves.

James Fallows wrote an interesting article for The Atlantic about the experience of having his wife’s Gmail account cracked [5]. She stored EVERYTHING in her Gmail account so this was a lot worse for her than for the typical Geek who doesn’t use such accounts for storing much. James describes what the attacker did, how they did it, and what needed to be done to recover. When running a mail server it’s worth considering what you would do to help a user who was attacked in that way.

Charles Stross has written an interesting blog post trying to predict some future psychological and social changes [6].

Matthew Wright of Beyond Zero Emissions has written an informative article about how solar panels on home roofs save everyone money [7].

Mikko Hypponen gave an interesting TED talk about different types of online attack and how they can affect us [8]. Among other things he describes how online attacks can result in people dying.

Scott Rickard gave an interesting TED talk about using maths to create SONAR pings without repitition and also the worst music ever created [9]. I found it entertaining to watch Michael Lindel (the director of chamber music for the New York Symphony) play the music, he obviously didn’t enjoy that performance.

Sheena Iyengar gave an interesting TED talk about the way people make choices [10]. It’s useful for anyone who is going to prepare a set of options for someone else to choose from.

ASD Aid is a project that uses Lego to encourage kids on the Autism Spectrum to socialise [11]. They have training manuals for using Lego in therapy. Unfortunately they have not been supported by the Lego corporation.

Bilal Bomani gave an interesting and informative TED talk about NASA research into renewable aviation fuel [12]. The most interesting thing to me was the way that they were aiming for a sustainable lifecycle that didn’t use resources that coule be used for food and which required minimal input once it was started.

Alain de Botton gave an interesting TED talk about Atheism 2.0 [13]. He suggests that we adopt some ideas from religious organisations including lectures (sermons), celebrations, and rituals. It’s interesting to think of a technology conference as a pilgrimage.

Homaro Cantu and Ben Roche from Moto restaurant in Chicago gave an interesting talk about some of the unusual foods that they have produced [14]. If I visit the US again I will try and go to Chicago to eat there!

An Introduction to Android

I gave a brief introductory talk about Android at this month’s LUV meeting. Here are the slides with a brief description. All the screen-shots were made on a Samsung Galaxy S running Cyanogenmod version 7.1 [1] (Android version 2.3.7). With that build of Cyanogenmod you can press the power button for about 1.5 seconds to get a menu which gives an option to take a screen shot.

The aim of the talk was to give an overview of what Android can do. I also gave some random commentary about Android such as explaining why it doesn’t make a good phone.

Most of the pictures in this post have links to the Android applications in question.

Continue reading An Introduction to Android

Long Term Adverts

I’ve just seen a mailing list post from someone who needs an ancient printer to work with their old software. As the printer is no longer manufactured and changing the software is expensive this puts them in a difficult situation – which can be profitable for someone who happens to own an ancient printer that still works. This sort of thing is not uncommon at all.

Ebay is a nice auction and online store site but it doesn’t cater for long term personal adverts. I’ve got a lot of old computer equipment that I keep because it might be useful at some time and it’s a shame to throw away working equipment. I’d like to be able to list that stuff on a sale site and have the adverts stay online for years just in case someone wants to pay a decent amount of money for it. If there was such a site I would also list all the systems in my test network, I can test software just as well with different hardware if someone wants to pay decent money for what I’ve currently got.

Storage space is pretty cheap and searching for keywords isn’t that difficult either. The cost of running an online personal sale site for items that sell every few years isn’t going to be much greater than running one that sells items after 10 days. But the profit in many cases will be a lot greater, an old printer that sells for $10 on Ebay could go for $200 or more if the seller could wait for a buyer who had some enterprise software that absolutely depended on that particular printer.

Does anyone know of such an online sale site? If not does anyone want to start one?

Airtasker – Outsourcing Small Jobs

Airtasker.com is a new company that is dedicated to outsourcing small jobs [1]. It’s still in a “beta” phase and has no way of making money – the worker is paid directly by the employer and there’s no facility for either of them to pay Airtasker, I would really like to know what the business model will be before considering whether to use it. It also doesn’t seem to operate outside of Sydney which seems quite strange, how hard can it be to have separate Google maps instances for each city in Australia?

The jobs that are advertised seem to be mostly household repair tasks and from the member list it appears that some people who already run small service businesses are trying to use Airtasker to get more work. There are also a lot of delivery tasks such as buying something from a shop and delivering it and driving a car from Melbourne to Sydney (good for someone who wants a subsidised interstate holiday). But there are some unusual tasks such as pretending to be someone’s girlfriend to make his mother stop nagging him.

It will be interesting to see whether this takes off. One thing that I might use it for is delivering computer equipment in the CBD. Some of my clients have no good parking near their office so I end up carrying computer gear from a tram stop or an inconvenient parking spot to their office. I’d rather have someone paid to do at least half the work in carrying the gear and the rates that are being discussed on Airtasker are well within the range that my clients would be happy to pay.

USB Flash Storage

For some years I have had my Internet gateway/firewall system in a cupboard in my bedroom. While I don’t mind some computer noise (I’ve slept near a server for most of the last 22 years) it’s good to have it as quiet as possible so getting rid of the hard drive is desirable.

I considered buying an IDE flash drive, but I’d like to continue my trend of not paying for hardware so I chose to use some USB flash devices that HP was giving away at a seminar (thanks HP – as an aside the P3 system is an old Compaq Desktop system). So I’ve got one 4G USB device for root and one for Squid.

For the past few months I’ve had /var/spool/squid be a USB flash device. I considered using RAID-0 for that filesystem because the computer is a P3 and only has USB 1.2 and thus a maximum theoretical transfer rate of 1.5MB/s and a maximum real-world rate of about 1MB/s. But my ADSL connection doesn’t seem able to sustain much more than 1MB/s and Squid doesn’t write data synchronously so in all my tests the USB speed hasn’t affected HTTP performance.

One issue that has delayed my move to all USB is the difficulty of booting as the P3 system in question doesn’t support booting from USB. I considered creating a boot CD that loads the kernel from the USB device, but that seemed a little painful and also relies on the CD-ROM drive working – which isn’t a great idea for a system that runs 24*7 in a dusty cupboard. I ended up using GRUB on the IDE hard drive to load the kernel and initrd and then mount a USB device as root, this seems to work and the command “hdparm -S6 /dev/sda” in /etc/rc.local makes the hard drive go to sleep once the system is booted.

The only technical parts of the process were putting in the UUIDs of the filesystems in /etc/fstab (because I can’t be sure which USB device will be found first) and creating a new initramfs with modules for USB storage listed in /etc/initramfs-tools/modules so that a USB device could be the root filesystem.

The firewall system is now a bit quieter and based on my last tests of hard drive power use will probably dissipate about 5-7W less heat. The next thing to do is wait and see if it keeps running or falls over. ;)

Update

I gave up on this 10 weeks later after 2 of the USB flash devices died.

SE Linux Status in Debian 2012-03

I have just finished updating the user-space SE Linux code in Debian/Unstable to the version released on 2012-02-16. There were some changes to the build system from upstream which combined with the new Debian multi-arch support involved a fair bit of work for me. While I was at it I converted more of them to the new Quilt format to make it easier to send patches upstream. In the past I have been a bit slack about sending patches upstream, my aim for the next upstream release of user-space is to have at least half of my patches included upstream – this will make things easier for everyone.

Recently Mika Pflüger and Laurent Bigonville have started work on Debian SE Linux, they have done some good work converting the refpolicy source (which is used to build selinux-policy-default) to Quilt. Now it will be a lot easier to send policy patches upstream and porting them to newer versions of the upstream refpolicy.

Now the next significant thing that I want to do is to get systemd working correctly with SE Linux. But first I have to get it working correctly wit cryptsetup.

LUV Hardware Library

What is it?

Last month I started what I am calling the LUV Hardware Library. It’s a briefcase full of computer parts that are free to LUV members which I plan to bring to all LUV meetings [1]. The issue is that there is a lot of hardware which has no great value to people and is often excess to requirements but which is still somewhat expensive or difficult to obtain and thus transferring it from the people who don’t need it to people who do provides a significant benefit to the recipient but no real cost to the donor.

Currently my briefcase has a range of different types of DIMM, some PCI cards, some assorted cables, a laptop SATA disk, and a bunch of other random things. Most of the stuff has been in my spare parts pile for a year or two, but some of it has been donated by other people.

What we Need

The next thing we need is more packaging, anti-static bags for RAM and PCI cards, sealable bags for screws, and some way of storing motherboard batteries.

In terms of hardware that can be donated one thing that would be really useful is SATA disks. I’m sure that there are lots of people who have upgraded the storage of their computer and kept the old drive with no real chance of using it. But there are lots of people who need such disks, for example I’ve been giving away a bunch of P4 systems which lack disks and are not cabled for IDE disks – a supply of SATA disks would make them a lot more usable.

Also any other random electronic stuff is of interest, including non-Linux things such as mobile phones (but only if not network locked).

If you have something that’s big or heavy to donate then contact me via email first.

Other Options

Computerbank does great work in rebuilding old PCs and selling them cheaply to worthy people [2], but most of the spare hardware I get is below the minimum specs that they will accept. I’m not planning to compete with Computerbank in any way, I just want to provide a useful service to LUV members who want to upgrade their PC for free.

I encourage other people to do the same at other LUG meetings!

Links February 2012

Sociological Images has an interesting article about the attempts to apply the word “Camping” to OWS and framing the issues [1].

Lester Macgurdy wrote an insightful article about “the snake”, a new technique for OWS protesters to beat riot police [2].

Ron Barassi suggests that “Australia Day” be celebrated on the 27th of May to commemorate the day in 1967 when the Australian constitution was amended to not be racist [3]. The current “Australia Day” is often referred to as “Invasion Day”. IMHO Ron deserves another “Best and Fairest” award.

Stefon Harris gave an entertaining TED talk about improv Jazz music titled “There Are No Mistakes on the Bandstand” [4]. It seems that his concepts can apply to some extent to many collaborative projects.

John Robb wrote an interesting article about the future of drone (UAV) warfare [5]. He suggests that having one person control each drone is a temporary thing and that the future is to have a cloud of cheap autonomous drones taking strategic control from one person. His comparison of Starcraft players to future drone fighters is interesting.

The OWS movement is branching out into other related areas, OccupyYourHomes.org is one of the latest ones [6]. When banks try to forclose on homes without good cause the OWS people are protesting.

Cory Doctorow wrote an important article for The Guardian about corporations using the Youtube ContentID system to pirate works that other people have uploaded [7].

Matt Taibbi’s description of Goldman Sachs as “a great vampire squid wrapped around the face of humanity, relentlessly jamming its blood funnel into anything that smells like money” will never die [8]. It has spawned many other creative descriptions of the evil and greed of Goldman Sachs and even Lloyd Blankfein of Goldman Sachs describes his company as having “burned down the Reichstag, shot the Archduke Ferdinand and fired on Fort Sumter” – he was trying to use satire, but I don’t think that Goldman Sachs people would act differently to Fritz Thyssen.

Keith Packard wrote an interesting article about the Calypso CalDAV system which he uses with Android [9]. He makes lots of good points about how to improve calendaring and contacts on Android, unfortunately I lack time to fiddle with such things at the moment so I’ll stick with Google in spite of the risks.

Asheesh Laroia wrote a great article about the problems with short (32bit) GPG keys [10]. It seems that creating keys with matching ID numbers isn’t particularly difficult and that GPG doesn’t handle them as well as we would like giving the possibility of at best annoying DoS attacks and at worse security problems due to using the wrong key.

Sociological Images has an interesting article about when game show audiences are trustworthy [11]. It seems that French people don’t want an undeserving person to win so they will intentionally advocate the wrong answer if the contestant should know it.

Paul Wayper gave a great lecture titled “SE Linux for Everyone” [12]. He covers the basics of SE Linux in a user-friendly way and explains some simple solutions to common problems which don’t involve compromising system security.

Paul Tassi wrote an insightful article for Forbes about piracy [13]. His conclusion is that the media companies should make it cheaper and easier to be a customer and not spend insane amounts of money on low quality products.

The Reid Report has an interesting article about Ron Paul’s racism [14]. Ron Paul is generally well regarded outside the US because he wants the US government to stop meddling in the affairs of other countries, but while he’s less bad than other US politicians in terms of foreign policy that doesn’t make him a good person.

Anonymous hacked some mailboxes belonging to a neo-Nazi group and found links to Ron Paul [15]. I’ve always been suspicious of the way Ron Paul wanted to avoid anti-racism legislation on supposed Libertarian principles.

The Reid Report has an interesting summary of Ron Paul news plus some criticism of Glenn Greenwald and others who associate with him [16].

Cooling a Thinkpad

Late last year I wrote about the way that modern laptops suck [1]. One of the problems that inspired that post was the excessive heat generated by my Thinkpad T61.

There is a partial solution to this, Fool Control explains how the kernel option pcie_aspm=force can be used on kernels from 2.6.38 onwards to solve a heat regression problem [2]. I applied this to my Thinkpad T61 and the result was that on a cool evening (ambient temperature about 24C) the temperature changed from 85C to 66C on the NVidia video card, and for the “virtual devices” it changed from 80C and 78C to 60C and 61C. I’m not sure exactly what each of those measurements refers to, but it seems that the change was somewhere between 17C and 20C.

This changes the system from being almost unbearable to use to being merely annoyingly warm.

I’m not going to make my laptop be my primary computing device again though, the combination of a desktop system with a 27″ monitor and an Android phone is working quite well for me [3]. But I haven’t yet got version control systems working for all my software. Also Wouter suggested using NBD which is something I haven’t got working yet and probably won’t until I can swap on it and therefore have a diskless workstation. Finally I still haven’t got the “Chrome to Phone” browser extension working such that a page I’m viewing at home can be loaded on my phone.