Why am I still typing?’s Weblog

Warning, may or may not contain nuts….

Archive for the 'Linux' Category


Where do they get their names?

Posted by whyamistilltyping on July 2, 2008

The next version of Ubuntu (8.10) that will be released in October of this year has been named (drum roll please)

“Intrepid Ibex”

Which appears to be a wild goat. At least they are more creative than some of Microsoft’s internal codenames. Still, I must confess I have tuned out a little bit from the Linux world since Hardy Heron (euphemistically named Hungry Hippo by the F/OSS community), when more concrete details emerge as the mile stones progress I will write more on the subject.

Posted in Linux, News | Tagged: , , , | No Comments »

Ubuntu on the A1650

Posted by whyamistilltyping on June 23, 2008

Despite some rather exciting progress made of late getting Linux to work on the Fujitsu Siemens Amilo A1650, regretably after three weeks of using it, I am back to Vista. The reason for this is my conclusion that running Linux (more specifically, Ubuntu) on the A1650 is a painful process due to the maturity of hardware support. Its (finally) possible to get all the hardware working, unfortunately doing so feels cumbersome and unnatural. The biggest culprits are the graphics card (an ATi x200m) and the wireless (Broadcom 4318 mini PCI) card.

The ATi graphics card has long been criticised as being ‘defective by design’. Getting any hardware accelerated graphics on this laptop formerly required running XGl with a long series of complicated hacks and even then it was not possible to run desktop compositing effects like Beryl or Compiz. Eight (or so) Months ago, that changed with a redesign of the X Server (in X.org 7.0) when XGL back rendering was no longer required for hardware accelerated rendering. More than that, it greatly simplified the process meaning even the most inexperienced Linux user could have beautiful desktop effects, in some cases, out of the box. However, due to an annoying glitch somewhere, the ATi restricted drivers caused diagonal tearing whenever a window rapidly refreshed itself.

It says something about the maturity of hardware support under Linux when Vista, commonly (and unjustly) thought of a resource hog, runs better. Anyway, this is all academic now as I have retired my Amilo A1650. Its been a great laptop but after three years it was time to move on. I will play with Linux on my new laptop soon and post the results.

Posted in F/OSS, Hardware, Linux, Windows | Tagged: , , , , , , , | 1 Comment »

Choosing your next PC’s Operating System (the 64bit fiasco)

Posted by whyamistilltyping on June 5, 2008

I am in the process of building a new gaming PC. Well, I should come clean, I have been in the process for almost 5 months now - I am mostly decided on the specifications but minor incompatibilities / annoyances cause me to stall. When this happens, real life typically takes over and by the time I look at my ‘final’ specification again, I normally rip it up and start from scratch due to new hardware being released or price drops. *exhale* I am finally on the verge of finalising the specification, the only things still holding me back are the graphics card (after news of ATi’s 4xx0 series) and the amount of RAM to put into my machine. The latter is heavily influenced by the Operating System I plan to run.

There are two crucial elements to any computer system which must work in harmony, the software and the hardware. Whilst this hardly an earth shattering announcement, I never cease to be amazed at the backlash in the form of blog / forum posts from people who forget this. Realistically when building (or buying) your next Gaming PC at the moment your choices are limited to Windows XP or Vista. Both Linux and Mac OSX suffer from platform compatibility issues with major new games and whilst the former enjoys fair server support for online gaming, neither really has much traction in the desktop gaming market.

The difference between Vista and XP is far more than cosmetic, whilst many are quick to criticise Vista for a number of reasons, I am actually a fan of Microsoft’s latest Operating System for a variety of reasons. Sure, it is feature-poor compared to initial designs and has it’s own annoyances, but the number of extra features and advances make it decisively the better Operating System. There is a caveat, for Vista to run comfortably for gaming purposes needs at least 1 Gb of RAM for itself. This on its own is no big deal - RAM is extraordinarily cheap at the moment, however the issue of platform (32bit/64bit) is now rearing its ugly head.

64 bit computing is nothing new, infact AMD processors have had 64bit extensions (called x86-64) for a number of years since the K8 platform back in 2003. Intel did not catch up (despite starting earlier than AMD) and produce viable 64bit chips until the Pentum 6xx series (late 2004), having stumbled initially with their IA64(T) specification developed for their Itanium platform.

Given this was four years ago, why are we not all running on 64bit XP or Vista? The answer is simple, in the same way that driver support initially crippled Vista’s adoption, 64bit drivers are fairly few and far between. What this means, is a lot less hardware will run properly under a 64bit Operating System. Given this situation, why do we even care about 64 bit computing? Why is it not relegated to high end computing and server farms? Mathematics.

Unfortunately, with a 32 bit Operating System, there is a mathematical limitation to the amount of memory the system can address. At most, Vista (or XP) in 32bit will only address 4Gb of total RAM. This includes both the graphics card and the main system memory. This brings my point about Vista comfortably using one Gb of RAM all by itself to sharp focus. Whilst Yes, the price of RAM is cheap there is something about me that dislikes buying 4Gb of RAM (to enable dual channel mode) only to have a quarter of it not accessible by the system. I wrote about this in detail in a previous post.

So what is the solution? Whilst I am huge fan of Vista (and have recently bought a Vista laptop) I do not think it is suitable for desktop gaming. With Windows XP, I have had fairly bloated a driver / runtime loaded installs using no more than 300Mb of RAM which realistically enables most PC gamers to get away with 2Gb of system RAM with no perceptible loss in gaming performance. This unfortunately would not be the case for a similar system running Vista and as such, unfortunately scuttles Vista for this market in my humble opinion.

Posted in Gaming, Linux, PC, Rant, Windows | Tagged: , , , , , , | 2 Comments »

Attack of the (EEE) Clones and the future of the EEE PC!

Posted by whyamistilltyping on May 29, 2008

Well, it has been a fair few months since the first ultra cheap ultraportable sublaptop was released by ASUS, namely the EEE PC - few thought this single, largely under-hyped launch would change the face of mobile computing in the way it has. Personally I am delighted, I am a fan of both gadgets and small portable devices like this. I tried out an EEE PC at PC world a few weeks ago and was impressed at the build quality and size. More surprisingly, I was impressed with the screen which was the main source of my disdain being only 7″ and having a non standard resolution of 800×480. One thing I could not try out was surfing the internet- which a device like this is primarily designed to do.

Before the hate mail comes in let me explain, whilst the unit is very capable for a variety of uses, many of those will be in the ‘cloud’ and as a result, reliable and efficient internet browsing is essential. Since most webpages are designed for 1024×768, the 1st generation EEE PC and even the second (900 series) to an extent, will always be lacking in my opinion. Which is a shame. I really want to buy an EEE PC, but I know such a purchase would be based on a long festering impulse rather than any real need or desire. I carry around my 15.4″ laptop whenever I need to do any computing away from my home and it serves me rather well. Of much greater interest to me is where ASUS goes from here. Whilst other companies struggle to release their own clone (more about this later) of the EEE PC, the engineers at ASUS are clearly scratching their heads wondering where they can take this platform from here. In my opinion, there are two directions ASUS can go.

Direction one : More more more more! In a way, ASUS have already indicated this is their intention with the 2nd generation EEE PC laptop, the 900 series. It has a bigger screen as well as a number of other refinements which are great to see, however they still do not bring the machine upto par with an ultra-cheap full-sized notebook. Given the two units sell at comparable prices here in the UK, there really is no incentive to buy the 2nd Generation EEE PC. This coupled with some of the better specced models only being available with Microsoft Windows XP is also short sighted. If ASUS continue in this direction, then we will see a similar development to Psion’s 5(mx) -> 7 / Netbook with a larger, similarly underpowered system being produced. Off the top of my head, I would predict either a 9″ or 10″ screen, 20Gb flash HDD and no doubt other tweaks. There is no doubt, if the screen is of better quality (i.e. resolution and dpi) and the laptop is not substantially more expensive, it could make for a great addition to the EEE PC range; however, I am more interested in Direction two.

Direction two: No this is not some shadowy Orwellian organisation in the basement of a Cinema called “Freedom”* but rather, what my plan would be for the continuation of the EEE PC range. The expression “Stick to what you are good at” comes to mind, ASUS have found a niché which, in business parlance equals profit. More than that, by getting into bed with the open-source crowd, they have a lot of “value-add” through third party modders and hackers - one just needs to look at the number of Operating Systems that now have been run on the EEE PC to see this. In six months time, there should be a new EEE PC, lets call this fictional product the 71x series (so 711, 712, 713 and 714 to match current 1st gen model numbers) and put a higher resolution screen maybe in a 7″ or 8.4″ form factor into it. RAM options seem perfectly adequate at the moment, but allow the addition of traditional platter HDDs as well as the 1st Generation flash drives as options. The idea that, as higher capacities of flash discs drop slightly, they are immediately incorporated into the next generation of EEE PC device is frankly ridiculous, the cornerstone of the EEE PC philosophy was value - something ASUS seem to have forgotten with their 900 series laptops. Using the same flash hard drive capacities as the first generation (e.g. 2, 4 and 8Gb) or offering traditional platter harddrives (in 10, 20 or 30Gb sizes) would lower the price of the product whilst preserving the original fanbase as well as enticing new customers.

The only downside to direction two is the number of companies eager to get a slice of the pie. Recently,  DELL, HP and ACER added their names to the list of companies developing laptops for this formerly niché market. Whilst companies like Acer (in my experience) have never been particularly concerned over quality, others like DELL, HP, VIA are. Its not just these companies who are after a slice of the market, Elonex, MSI, OLPC and others have either expressed an interest in or have released comparable products. The question remains - stand still and possibly get left behind or innovate and put the price up. There is no easy answer, but I believe the EEE PC brand has a lot of clout for being both first and for being good quality. These two factors will keep ASUS onto of this niché market, provided they keep on track and continue to impress us.

On a side note, Cnet have a great side by side comparison that’s worth glancing at.

*Believe it or not, there actually was a secret Soviet KGB/GRU interrogation facility in a Cinema called Wolność (Freedom) in Krakow during the Communist era - its the kind of thing you just can’t make up. Apparently they always had a habit of playing their films a bit loudly there…

Posted in F/OSS, Linux, Windows | Tagged: , , , , , , , , , , , , , , , | 1 Comment »

Vista SP1 and the Red Herring (+ breaking the 32bit 4Gb limit)

Posted by whyamistilltyping on May 29, 2008

We all knew it was looming, the mathematical limit to address referencing in 32bit computing. A 32Bit number can only be between 0 and 4,294,967,295 which neatly adds up to 4Gb and what this means is, using existing architectures, a program (or Operating System) will not be able to address more than this number of bytes of system RAM via the existing system called byte addressed memory allocation.

What this means for those among us who do not speak geek, is a system which is built or shipped with 4Gb of RAM (and some other cases*) will not be able to fully utilise all of that space.

Lets take a trip back in history and imagine a room with a cupboard containing 256 drawers. Each drawer could hold one bit of binary information and was administered by a librarian. Anytime anyone wanted a piece (or pieces) of information, they had to ask the librarian. What I am describing here, is the era of 8bit computing circa late 1970/ early 80s with the cupboard representing system memory and the librarian representing the Operating System’s memory management system. During day to day running of the system the librarian takes data in and returns data to people (program threads) from the corresponding drawers where the information is stored. Everything works, everyone is happy.

Now what happens if we introduce a second cupboard containing another 128 or 256 drawers? The librarian can only keep track of information stored in the first 256 drawers and as a result, nothing can be stored or retrieved from the newly added cupboards; in effect, they do not exist. Time to get a new secretary i.e. goto 64bit computing (or in this example, replace the 8bit librarian with a swanky 16bit one - who will even ever use 65536bits of RAM? :D )

But wait, there is more… I read today that Windows Vista SP1 changes (depending on hardware configuration) the total amount of displayed RAM from 3.5 Gb (current the RTM limit when 4Gb is put in the machine) to the full 4Gb, although this still does not help, given the limitation previously discussed. But this made me curious, if the Operating System could see RAM, then surely it was not a BIOS / mathematical fundamental limitation. Turns out I was at least half right …

You see, although the fundamental mathematical limitation can not be breached, there is a rather interesting technique called Physical Address Extension. Using this process, a 32bit Windows system can address more than 4Gb of RAM upto a (present) maximum of 128Gb. To explain what Physical Address Extension (PAE) is, lets go back to the previous example and introduce a new figure - an administrator.

The role of this new entity, is to allocate and manage the time of their underling. Lets also assume we are still running a 8bit system (with the 256bit limit) and have 1024bits of memory i.e. four times the mathematical limit. On the face of it, the extra memory is invisible to the librarian however the administrator is smart enough to both know about the extra memory and who (i.e. what program) is currently using what amount of it. As such, any person (program) can request the full mathematical limit 256 drawers for their own use at the same time as another person (and another …etc) requests more memory.The administrator can instruct the librarian which series of drawers to use per person (program).

This is loosely referred to as 36bit computing and, as the non power of 2 number suggests it is a bit of a tweak. The physical address size was increased (on a 32bit processor) from 32 to 36bits back during the days of Pentium Pro (circa 1997) and most modern CPUs have maintained this legacy. It is important to point out, this does not make all 32bit processors 36bit processors as the change happened in the MMU (memory management unit). Modern Operating systems use page tables to store information about the Virtual Memory system and allocate it based on processes requirements. In effect they act like the administrator from my trivialised example and allow multiple processes to benefit from a pool of memory which traditional 32bit systems (without PAE) would not.

I know what you are thinking, you are rejoicing at being able to avoid the negative aspects of migrating to 64bit computing, but hang on, there are a couple of important caveats. Firstly, each thread (person in our example) can only access a maximum of the mathematical limit of RAM. That means, in a system with 16Gb of RAM, you could quite easily have 3 or 4 processes each taking up 4Gb, but no one process taking up 8 or 16Gb. The other bad point is, it is not supported** in Vista or XP. In-fact, to use such a feature, you would need to be running a Server Operating System from Microsoft or a Linux equivalent. Interestingly enough, Linux contains support for PAE since kernel version 2.6 although I will not discuss it further in this post.

Presently, the only Operating Systems with suitable (or rumoured) PAE support are :

Windows 2000: Datacenter Server and Advanced Server Editions

Windows Server 2003: Enterprise and Datacenter Editions

Windows Server 2008: Enterprise and Datacenter Editions

As you can see, non are particularly home desktop friendly. So, despite Vista displaying the correct amount of RAM in Service Pack 1, it is still fundamentally limited to the 32bit mathematical limit despite Microsoft having the technology to at least improve on the functionality of such systems.

On a side note, I brought this up with a few people at my head office. I work for a large UK retail company that sells PCs and Laptops. I was surprised to see when our first 4Gb models came into the stores a few months ago that they were running Vista 32bit Editions. The UK is not a litigious as the United States, but I can’t help wondering how long it will be before the lawsuits start flying. After all, it is misrepresentation in my book to sell something that, due to a software shortcoming, can never be fully utilised to the specification it was advertised at. Particularly since an alternative is available to OEMs and yet, all retailers not just the one I work for seem to be taking a cavalier attitude towards this.

*The total amount of addressable space inside a 32bit system must add up to 4096Mb, this includes system and Video RAM, so if you have an all singing, all dancing SLI graphics card with 2Gb of Graphical RAM, the total amount of system RAM you will be able to address is around 2Gb.

**Actually this is not true, ever since Windows XP Service Pack 2, Microsoft has used PAE for security purposes coupled with the NX bit. This is a hardware security feature built into a processor which allows program and system developers greater control over what they designate to be executable and non-executable user/memory space. Microsoft has set a fundamental limitation of the amount of RAM being used by home versions of 32bit Operating Systems to 4Gb regardless of the fact the technology to increase this is in place.

Posted in Linux, Microsoft, PC, Windows | Tagged: , , , , , , , , , , , , , , , , , | 5 Comments »

Ubuntu 8.04: Hardy Heron on the Amilo 1650

Posted by whyamistilltyping on April 25, 2008

After using Hardy Heron for about twelve hours now (at least eight of those tweaking and fiddling) I must say I am impressed although, it sometimes feels a bit more clunky than previous releases. This release builds greatly on the previous release 7.10 and feels more feature complete and compatible as well. This is largely due to native inclusion of the b43 driver over the depreciated bcm43xx driver for the wireless as well as an improved restricted driver manager.

Here is an overview of how things work with my Fujitsu Siemens A1650 Amilo laptop:

CPU: Works perfectly (including frequency scaling and power management)

WiFi (Broadcom 4318 ) : Works *! (After the install of Acer_acpi tools and a bit of tweaking)

Graphics (Ati x200m) : Works perfectly! (With Ati Non-Free driver)

Flash (in Firefox) : Works perfectly (I had lots of problems with this in 7.10 Gutsy Gibbon.)

Memory Card Reader : Not tested.

PCMCIA : Works perfectly (tested with IDE > CF converter and tried a CF memory card)

Hot Keys : Can be made to work, but I have not got around to this yet.

* Although it picks up and connects to wireless networks, I need to do a bit of testing before I am 100% sure all the problems have been sorted. Bloody Broadcom….

I had do install a few extra packages to get it all working however and I am going to detail this now.

To get the wireless working we need to install the firmware (not shipped with Ubuntu) via the new firmware cutter b43-fwcutter. In a terminal window, type:

sudo su

sudo apt-get update

sudo apt-get install bc43-fwcutter

Once that is done, follow these instructions to obtain and load the correct firmware module.

Now we need to install the Acer_acpi packages. Do not follow the instructions on the project website relating to acer_acpi as you will end up trying to install the depreciated version of b43 (bcm43xx.)

We need to add the following line to the package manager to enable the repository containing the acer_acpi code:

deb http://www.mumblyworld.info/ubuntu gutsy main

Once that is done, open a console window.

Sudo Su

wget http://www.mumblyworld.info/ubuntu/depot.key -O- | sudo apt-key add -

apt-get update

apt-get install aceracpi-source

m-a prepare

m-a a-i aceracpi-source

This first downloads the repository public signing key and then gets the acer_acpi source package. In the process you will likely be asked to install other dependancies, agree to this as these will be required during the compiling process. Once the above commands have completed, you will need to activate the module:

modprobe acer_acpi

The wireless light on the A1650 will now light up showing the wireless module has been activated. For future reference, it can be activated and deactivated with the following commands:

Sudo su

echo 1 > /proc/acpi/acer/wireless  (to activate)

echo 0 > /proc/acpi/acer/wireless (to deactivate)

Restart and your wireless should be operational :) For reference, I followed parts of the guide found here. I would not recommend you do the same, as you will end up trying to install the depreciate version of the b43 driver, bcm43xx.

Another thing which I installed was the Compiz manager as well as emerald. Compiz has a lot of options, but window decoration is still one I prefer to use Emerald for. These are installed in much the same way as they were in 7.10 with a few key exceptions.

sudo apt-get install compizconfig-settings-manager compiz-fusion-plugins-main compiz-fusion-plugins-extra compiz-gnome compiz-plugins libcompizconfig-backend-gconf libcompizconfig0

Then install emerald:

sudo apt-get install emerald

Once these packages (and their dependancies) have installed, you will find two new options under System > Preferences gnome menu. One will give you complete control over the effects Compiz uses and the other will let you load/tweak and create Emerald themes. However, as per default metacity is the window decorator. In the Compiz “Advanced Desktop Effects Settings” find the window decoration option and replace the command field with “Emerald –replace”

Save and restart if required.

Posted in F/OSS, How To, Linux, News | Tagged: , , , , , | 11 Comments »

Ubuntu 8.04 MD5 Checksums

Posted by whyamistilltyping on April 24, 2008

Ubuntu 8.04 has been released! I, like many are now in the process of burning the ISO images to CD ready to install / upgrade, however there is something that should be done before you even burn that iso image. Because of the nature of the Internet, trunctated connections are common place particularly during server stress (e.g. during a distribution release) and as such, you need to check the CD images you have downloaded are in fact 100% complete and accurate - this could save you a massive headache later on.

There are a huge variety of such utilities for Windows, Linux and Mac. Once you have the utility and the CD image, it’s MD5 checksum needs to be calculated. Once this is done, the calculated MD5 hash needs to be compared to the ‘official’ MD5 hash for the specific file you have tried to download. The MD5s are not easy to find as Canonical do not post them with the download links (which is what most people do.) Instead, you will have to goto the ftp mirror directory and find the MD5SUMS files.

To save you looking, here are the MD5 sums of the Hardy Heron Ubuntu images:

For Ubuntu:

7d0ac92c56361949d099dd9337c975e7 *ubuntu-8.04-alternate-amd64.iso
166991d61e7c79a452b604f0d25d07f9 *ubuntu-8.04-alternate-i386.iso
fc43f665ba51c4be0d95c011aefef45d *ubuntu-8.04-desktop-amd64.iso
8895167a794c5d8dedcc312fc62f1f1f *ubuntu-8.04-desktop-i386.iso
8a73cf85b04f37d5d91fb436525ea395 *ubuntu-8.04-server-amd64.iso
c3162b21757746c64a0a22cdd060b164 *ubuntu-8.04-server-i386.iso
cdd32124f23b455b0aa22cc3ff35ff35 *wubi.exe
a96aa69961f3ed80dd7a88fae1e28196 *wubi.exe

For Kubuntu:

fe122a713c5945dbbff035b16848ae47 *kubuntu-8.04-alternate-amd64.iso
94b892ac78fdb4d1f164e7bd0f7da2ca *kubuntu-8.04-alternate-i386.iso
99da350d4163ee046a00ef1dda81be6a *kubuntu-8.04-desktop-amd64.iso
8aebb0dc17588d22dd3bb59d7df71061 *kubuntu-8.04-desktop-i386.iso

For Kubuntu with KDE 4.x: (these servers are being particularly hammered at the moment)

8a822b70f1e169f462727cb885e2b565 *kubuntu-kde4-8.04-alternate-amd64.iso
b7195c72b564b3676e584cb774e9002c *kubuntu-kde4-8.04-alternate-i386.iso
3028e26593a29b007c8878f0fbbe5639 *kubuntu-kde4-8.04-desktop-amd64.iso
1933f11ccea58de5bc80549774479031 *kubuntu-kde4-8.04-desktop-i386.iso

For Edubuntu:

210822f1d1d618153a4fdf993c5c3fe7 *edubuntu-8.04-addon-amd64.iso
7259d6f34c5f09e26927c39066833d03 *edubuntu-8.04-addon-i386.iso

And Xubuntu:

c83b84dc02b9e5480d64d2accdd9f3bb *xubuntu-8.04-alternate-amd64.iso
4f398cd35eaf297347f18634a5be5d77 *xubuntu-8.04-alternate-i386.iso
0fb2297b036d9d1bf4cc0a13a4d82f76 *xubuntu-8.04-desktop-amd64.iso
665bcc283e131be4cb71ecb2bf0e3794 *xubuntu-8.04-desktop-i386.iso

These are correct as of 24/04/08 @ 15:51 GMT, Enjoy the new release :)

Update, the issue with the MD5 of wubi.exe has been corrected. Hashes are now correct as of 27/04/08 11:23 GMT. :)

Posted in F/OSS, Linux | Tagged: , , , , , , , | 25 Comments »

GIMP Basics - Screenshots

Posted by whyamistilltyping on April 21, 2008

One of the main programs I use is Photoshop, I use it mostly for simple image editing / cropping and resizing for my blog. I am trying to move over from Windows to Linux for blogging and as such, I decided to finally get to grips with the Gnu Image Manipulation Program (The GIMP) which is the GNU photoshop equivalent for GNU Linux. Whilst the Wine project have made great leaps forward in recent years to the point where Photoshop can be run inside Wine, it is still not an ideal solution.

In this post, I just want to very briefly explain how to do something simple : take a screenshot, crop it, shrink it and compress it using the GIF interlaced format.

1 ) Download and install GIMP. On Windows this is done via a download from the GIMP site, on GNU Linux it is done via the distribution specific package manager.

2 ) Once it is installed, lets assume we have a screen we want to capture. Fire up the program and goto “File>Acquire>Screen Shot”. This will bring up the WinSnap dialog which will allow you to take a screenshot of the entire screen (after a defined pause) or a specific window. The specific window feature didn’t work particularly well so I recommend taking a snapshot of the entire screen. (If you have pressed the Print Screen button, you can instead use the “Past as new image” option.

3) Now we have the entire desktop, we need to use the select tool to highlight the area we want to capture.

4) Next we goto the menu, select “Image > Crop to Selection”

5 ) Finally, I tend to scale the image to 80%, this is achieved by going to the menu “Image > Scale Image” and selecting 80% width and 80% height. If you constrain the proportions of the image (the chain icon) then selecting a 80% width will automatically select 80% height.

6 ) Now simply goto “File > Save As..” and append “.gif” to the end of the filename. This will launch the GIF exporter.

7 ) You will be told that the GIF exporter can only handle Greyscale or indexed images. Select “Convert to Indexed” and click “Export”.

8 ) Check “Interlaced” and uncheck the “GIF Comment” field and click “Save”.

And thats it! :) When I get some time to play with GIMP’s more advanced features I will write more on the subject.

Posted in F/OSS, How To, Linux, Microsoft, Windows | Tagged: , , , , , , , | No Comments »

Bypassing Acer Security

Posted by whyamistilltyping on April 16, 2008

Today I came across an ACER PC (M1610) at work that needed restored back to the manufacturer’s settings. Acer ship their desktop systems with part of the hard drive hidden in a recovery partition that can range in size from 6 Gb to 20 Gb depending on the specific PC model. The problem was the customer who owned the PC had set a password on the recovery interface and had promptly forgotten it. I had a chat with Acer who were naturally very happy to take the PC and charge the customer to reformat and re-image the entire drive. Unfortunately I spoke with a rather arrogant technician at Acer who claimed there was no way to get around this password, those that know me will know this is like mixing firecrackers with a kid with matches. I decided to fix the issue myself.

What you will need:

1 - A bootable CD with some live or preinstalled environment (e.g. WinPE/BartPE CD or any Linux live CD with NTFS 3G although I would recommend the former given the flakiness of Linux NTFS drivers.)

2 - About ten minutes.

Recovery tools are glorified branded imaging/cloning tools (like Ghost or Acronis True Image.) They have three main components, the program binaries (i.e. the GUI/UI and low level formatting/writing tools), the configuration files and the backed up / imaged data itself inside an image file. This image file can be one large multi gigabyte file or lots of smaller chunks and it contains not only all the files and folders, but NTFS file table system/ bootloader and MBR information. This means the entire image can be written onto a hard disk (or hard disk partition) and after reboot, the user could be presented with a fully functional system. Its for this simplicity that companies like Acer do their recovery in this manner.

I booted using a WinPE XP cd (but you can use anything mentioned above) and took a look at the partitions on the hard drive finding the following:

C: NTFS 69.5Gb (Formatted total)

D: NTFS (although reported as unformatted) 69.8Gb (Formatted total)

Hidden (Not mounted by default) NTFS 9.8Gb (Formatted total)

4Gb Unallocated space. (Wasted)

I mounted the hidden partition and eventually after some trial and error, found the file containing the password and password hint details. This was the file called “aimdrs.dat” (found on the root of the recovery partition) and could be opened in notepad (although I used and would recommend a good hex editor) and showed a very simple file layout as shown below:

[MyData]..PD=12345..HT=abcd efgh..

Where “12345″ is the password, encapsulated between the equals and two full stops. “abcd efgh” was the hint. This was literally the entire file.

Changing either of these simple strings is very easy and after a reboot into the recovery software (via [Alt] and [F10] during BIOS POST) you will once again be able to access the recovery software. I would recommend you do not change anything else in this hidden partition unless you know exactly what you are doing.
I hope this helps someone stuck in a similar position and is likely applicable to many more systems than just Acer PCs.

Posted in How To, Linux, PC, Random, Windows | Tagged: , , , , , | 10 Comments »

Hidden World of Linux: Follow up Part 1 - NAS

Posted by whyamistilltyping on April 10, 2008

Since my previous post on the hidden uses of Linux attracted so much attention, I thought I would do a brief follow up adding a bit more to my conclusion in which I discussed the main drawback to all these great Linux distributions - power consumption. At some point I am going to buy a power meter and test a variety of old computers I have around the house to see how much power they draw, but for now I just want to give some illustrated examples of low power hardware that can be bought which are ideal for some of the uses described in my prior post.

This is the first of two follow up posts. This way I can go into detail about each specific section. In this post I will be discussing NAS (Network Attached Storage) and will follow up shortly with a post on Firewalls later.

Realistically retail NAS devices fall into two categories, ones with a single harddrive and ones with multiple harddrives.

Single hard drive setups

There are a large variety of single harddrive NAS systems available at fairly reasonable prices and, unless you need a specific feature that a Linux/BSD distribution like FreeNAS provides, it will likely be better to purchase a separate NAS drive. This way you do not need to worry about installation / upgrading potentially buggy software and the power requirement will be in the tens of Watts.

For the sake of argument, let us consider three hardware examples for building (or reusing an old computer for) a single drive NAS. The first is by far the cheapest - reusing your old PC. All that is really required is a new harddrive to replace the small one the PC would originally have been shipped with.

At an average price of £35 for a 250Gb SATA drive (slightly less for an IDE version,) simply reusing an old PC is by far the cheapest option, however there are a number of things to watch out for. Old computers used to have limitations as to the maximum hard drive capacity the BIOS on the motherboard would be able to address. Back in the days of single GB hard drives, a then theoretical limit of 137Gb must have seemed as far off as 32Gb RAM for desktops does today. Fast forward back to today; whilst modern systems are very happily addressing far more than 137Gb thanks to logical block (LBA) 48bit addressing, chances are you will want at least around 160Gb space for your NAS meaning this could be a problem for some of the really old hardware. The reason for this so called “ATA Interface Limit” issue (which is by no means the first in computing - check out this great article) is a mathematical limitation in the way in which harddrives used to be accessed at a very low level using discrete geometry (cylinder, head and sector numbers.) BIOS patches are available although these are few and far between.

Worn power supplies are also a potential hazard, check before deploying a system for 12/24 hour use that the power supply cooling fan is in good condition and that there are no overheating issues caused by an old or clogged cooling system in the rest of the hardware. Please do not open up a power supply - such an action could be dangerous if you do not know what you are doing. When in doubt, replace it - it will be cheaper in the long run than if you end up setting fire to your house or destroying your data through a power spike induced head crash. In summary, this option is by far the cheapest of the three, but there can be some problems along the way.

The second option I explored, would be to buy a complete, custom tailored PC system for use as a headless NAS. I went to one of the eshops I frequently purchase from and quickly, virtually built a low powered, cheap PC that would be suitable for such a purchase. Surprisingly, it turns out that building your own NAS box is a lot less expensive than I would have thought with my NAS PC costing a total of £108 (Full specification and links in appendix at the end of this post) inclusive of the £35 250Gb harddrive used in the previous example. This compares very favourably with the (currently) cheapest single HDD NAS box available from the same eshop which is £77. With your own PC, you get the advantage of customising the services your NAS provides giving you greater control coupled with expandability down the road, an option unavailable when buying a retail NAS. The downside to this is the increased power consumption. To mitigate this, I picked recent components which have power saving features like AMD’s Cool and Quiet as well as the special, low power consumption versions rather than going for a generation (or two) old technology which was roughly the same price anyway.

The final ’self-built’ NAS hardware option I wanted to explore is building a NAS with ultralow power embedded components frequently used in routers / modems and in actual NAS systems. It is possible to buy a limited selection of embedded motherboards, some even with low power processors like the VIA C7 or AMD Geode. VIA C7 processor boards seem to be a lot cheaper, and I selected a board which had everything minus RAM, the HDD (hard disk) and a power supply. Unfortunately, due to the limited production scales of some of these ITX boards (you pay a premium for the miniaturisation) the cost of building such a low power device was higher than I anticipated. The total price for a small, very low power embedded NAS build was £143 (full specification in appendix at the end of post) also inclusive of 250 Gb hard disk drive.

As you can see, the cheapest option, (predictably) would be to reuse old hardware assuming it is only two or three generations old. In all three PC specifications, I have kept the harddrive size and cost the same in order to allow for a greater comparison, but I find it hard to recommend either self build option even given the extra flexibility that such a computer would yield running a BSD distribution like FreeNAS. Also, although FreeNAS is a fairly mature product, there is no guarantee that it will work flawlessly with the hardware you have (I had some ACPI issues with my test machine) which would render potential effort useless. If you have an old PC and hard drives lying around then you have nothing to loose by trying FreeNAS, I would even encourage it, otherwise I must stick to my original comment - if you are only want a NAS for casual backup on a single drive, buy an off the shelf product.

Multiple hard drive setups

If on the other hand you want more than a single HDD, this is where things start to get interesting, there are very few (reasonably) priced multi disk NAS systems on the market. The key exception is a piece of hardware I alluded to in my previous post which I would like to talk briefly now about. (I am sure other options exist, but this is the only reasonably priced one currently available in the UK market.)

The enclosure I found which would allow two drives to be used is made by Nanopoint and is model ‘Icy Box IB-NAS4220-B.’ It has an interesting feature set, supporting 2 SATA harddrives with Samba, NFS, FTP, RAID 1 & 0 as well as a USB to act as a print server. Unfortunately it is twice the price here in the UK than in the US but it seems to be one of the very few NAS enclosures that allows for RAID 1 across two harddrives. This was important as I am after a system that has built in redundancy - if one hard disk failed - another automatically had a copy of all the files. (Although the theory behind RAID is somewhat flawed - more on this another time.) I am seriously tempted to buy one of these and if I do I will write a full review with how it compares to FreeNAS at a later stage. UPDATE: I have found another similar device by Netgear (SC101 SAN/NAS device) although it only supports IDE drives, the other features seem roughly the same.

This is the point where FreeNAS starts to really distinguish itself from some of the commercial offerings. The reason is simple, anything more than one or two hard drives is seen as either SOHO (Small Office / Home Office) or Corporate grade and has an appropriate price tag and feature set. FreeNAS can, and will scale beautifully with a number of hard drives (even performing fault tolerant RAID 5 as well as the more popular RAID 1) although at the moment, it does not support clustering or failovers. This is relatively trivial as we are getting now into the realms of enterprise grade computing.

Due to the relatively simple firmware required to get these devices working (even with a variety of services) it will likely be cheaper over the course of a year to skip distributions like FreeNAS or OpenFiler and instead opt for a NAS drive enclosure, unless you specifically need some of the features FreeNAS offers or you are using several hard disks.

Related Idea : Virtualisation

Thumos made an interesting point in one of my posts about using a server running multiple virtual environments which each role (e.g. firewall, NAS / SAN, MythTV etc) all running on one PC. The downside of this would be, as he noted, dramatically increased hardware requirements and to be honest, I am not confident such a system would be able to handle all those roles effectively but I am not an expert on Virtualisation. Windows Server 2008 can do some pretty amazing things in this respect with their hypervisor based virtualisation system.

Related Idea: Windows Home Server

Although strictly speaking Windows Home Server is a completely different program (and incompatible with freedom (or F/OSS) software philosophies) it deserves a mention given the subject of this post. Built on a modified Windows Server 2003 r2 core, Windows Home Server adds automated backup as well as some impressive disk management tools. Perhaps the most striking to me was the absence of RAID as we classically see it. RAID has become ubiquitous for redundant, performance or server/enterprise grade storage solutions mostly because the only practical alternative is confined to high end data centers. Ask an IT expert or geek the various modes to connect multiple hard disks and invariably you will get a discussion involving RAID 0,1,5 (or mixed modes like 0+1, 5+0, 5+1, 6, 8 etc) and JBOD spanning with likely no mention of DFS or FRS. These are Microsoft technologies developed “in-house” by their Advanced Technologies Lab (ATL).

To understand DFS and its routes, I had to take a brief crash course in enterprise level computing as the technology was not initially developed for use in Windows Home Server finding its routes a few years before, however the similarly between DFS and the storage technology in WHS is very similar as Paul Thurrott notes in an early preview of WHS. Infact, DFS started life a as a way to transparently link various SMB (Samba) Shares in a way in which there would be greater flexibility, transparency and reliability in corporate environments with multiple data centers. DFS generally can be used in one of two ‘modes’, the first being locally administered (without an Active Directory) and the second being domain based roots which by their design provides redundancy and is the most commonly used. There is an excellent demo of this technology on the Microsoft website.

The key to software implementation of data redundancy in Windows Home Server is found in the transparent way storage shares are presented to the end user, not through a network mapped drive letter or a (classic) network share. Infact, WHS automatically shadow copies data in such a way that a copy of it exists on more than one hardware device protecting against failure. This is completely different from RAID 0 which directly mirrors the contents of an entire drive (byte for byte) onto another one to provide redundancy. In the event of a hard disk failure (or capacity upgrade) the RAID array must be taken offline and rebuilt with a replacement disk. Furthermore, because the data is mirrored from one hard drive to another, the maximum size of the mirrored array is constrained to the smallest drive in the array. Windows Home Server supports hot swapping of disks, meaning that if a hard disk fails there (likely) is no data loss nor interruption in service. If an extra drive is added (e.g. via USB) or an existing drive is hotswapped it expands the overall space available to encompass the new storage and automatically (shadow) copies the data on it’s existing drive(s) to (re)create redundancy.

The hardware requirements are significantly higher than just running FreeNAS, a minimum of a 1Ghz processor and 512Mb of RAM are required before the installation will continue making it twice (or 3/4 times) more resource hungry than F/OSS equivalents. The ability to access your data remotely (through Windows Live integration) is interesting as it acts like a RAS dynDNS service, but it means trusting a third party for your authentication. A properly configured local network with secure FTP or Samba services would provide exactly the same (if less flashy) functionality with the advantage of giving you complete control over who, what and where your network can be accessed from.

Conclusion

There are features that FreeNAS provides which ‘off-the-shelf’ NAS enclosures will not and for this it is an extremely good piece of software. For multiple harddrives and / or multiple users all requiring different services, I would recommend FreeNAS everytime possibly even with some of the ITX hardware (coupled with a PCI RAID card) suggested above, however for someone wishing to make a single HDD into a NAS for occational home use it is unlikely to be a smart choice.

Appendix : Example hardware costs

Please note, these are example prices correct at time of research, please do not go and take this as a recommendation of a system specification, it is for illustration only.

First example : Equipment already in your home.

Existing hardware eliminates a lot of initial outlay.

Harddrive: £35 (Seagate 250Gb SATA HDD) - Although I am not a fan of Seagate, there are better drives available.

Total Cost: £35

Second example: Building a very basic / cheap PC

Processor: £19 (AMD Low Power (45 W) AM2 Sempron)

Motherboard: £27 (MSI Motherboard)

RAM: £7 (512Mb Extra Value PC2-5400 RAM)

Harddrive: £35 (Seagate 250Gb SATA HDD) - Although I am not a fan of Seagate, there are better drives available.

Power Supply: £10 (Budget 350Watt) - Although I would STRONGLY recommend never buying a budget PSU.

Case: £10 (Budget ATX case)

Total Cost: £108


Third example: Building a low power ‘ITX’ form factor PC

Motherboard & Processor: £50 (Via iDOT) - Very cheap low power board

RAM: £7 (512Mb Extra Value PC2-5400 RAM)

Harddrive: £35 (Seagate 250Gb SATA HDD) - Although I am not a fan of Seagate, there are better drives available.

Case & Power Supply: £42 (Simple small case)

Total Cost: £143

Posted in F/OSS, How To, Linux, Microsoft, PC, Windows | Tagged: , , , , , , , , , , | 4 Comments »