Found something useful? Don't forget to leave a comment!

Tuesday, September 29, 2009

FREE Microsoft Security Essentials Now Available

Wow, this is a first for Microsoft – releasing a competitive AV/antispyware package for FREE (unlike that OneCare BS that came before). MSE (codename Morro) is intended as a replacement for both OneCare and Windows Defender (it appears that the latter is actively disabled during MSE installation). The new user interface is designed to be lean and mean, which is suitable for even less tech-savvy users. MSE uses Microsoft Update for signature updating and is West Coast Labs Checkmark certified.  Time will tell how good this new kid on the block really is, but my gut feeling is that this will be an excellent competitor in the free AV market, particularly compared to AVG and Avast.

My personal advice, of course, is that no antivirus/security program – no matter how effective – is a replacement for basic common sense and smart computing practices.

Sunday, September 27, 2009

Hardware-independent Cloning of a Linux (Fedora) Install, Part 2

Back in Part I of the tutorial, I covered the process of creating an image of a Linux computer (running Fedora) using FSArchiver and an external USB hard disk as the backup medium. Now, we’re going to restore the image onto a target computer (with a different hardware configuration) and prep this new system for booting. Our goal: That the target machine will run a Linux environment that appears virtually identical to the user, thus saving lots of time that would otherwise be needed to reinstall software, tweak the user environment, etc.

Create partitions

In order for the cloning to work successfully, you will need the same number of partitions as on the source machine, plus an optional swap partition. Each partition, in turn, must be large enough to store all of the data that will be restored onto the partition. Parted Magic, true to its name, provides the excellent and easy-to-use GParted tool, a GUI frontend to the parted partitioning software. The nuts and bolts of using GParted are out of the scope of this article; please see the official documentation for more details.


In the example screenshot above, I have created several partitions on a WD10EADS 1TB hard drive. /dev/sda3 is a 200MB /boot partition. Furthermore, /dev/sda4 is an extended partition that contains the / root partition /dev/sda5, the large /home partition /dev/sda6, and the swap partition /dev/sda7 (again, swap is optional. It is more relevant to low-RAM systems). Note that formatting the partitions (with the exception of swap, if you created one) is not necessary, since FSArchiver will format each partition to match the parameters of the source filesystem.

Mount the backup medium and restore the image

Now it’s time to restore the image onto the new partitions. Run the mount manager and mount your external disk.


In the example above, I have mounted my Seagate drive, /media/sdc1.

After mounting the image, open a terminal prompt and cd to the mount point of the external disk, e.g. /media/sdc1. To execute the restore process:

# fsarchiver restfs –v /media/XYZ/ARCHIVE_NAME.fsa id=0,dest=/dev/X1 id=1,dest=/dev/X2,id=2,dest=/dev/X3

Replace with the correct parameters relative to your particular system, of course. You can also add a –j X, where X is the number of processor cores available, to enable multithreading. Make sure the partitions you are restoring to correspond to the order of the partitions in the image file. The restore process make take anywhere from a half hour to several hours or more, depending on your CPU speed and hard drive.

Fix the GRUB bootloader

Next, we need to ensure that the grub.conf file points to the correct partitions. Mount your boot partition and go to grub/grub.conf. Make sure that the splashimage and root of each boot entry points to the proper partition. Keep in mind that grub starts counting from 0 – so if you have a partition /dev/sda3, it would be known as (hd0,2). Likewise, /dev/sdb1 would be (hd1,0).

Now that our grub.conf is correct, we need to install GRUB on the MBR (master boot record) of your primary (boot) hard drive. Determine what your boot partition is using the guidelines in the previous paragraph. Let’s say my boot partition is (hd0,1). Then my commands would be:

# grub
grub> root (hd0,1)
grub> setup (hd0)

At this point, your system is ready to boot into its new, cloned Linux environment. Yes, it can boot – but will most likely fail. This leads us into the final steps…

Rebuild the initrd

The initrd is the Linux Initial Ramdisk, a sort of early boot environment that prepares the root environment for mounting later on in the booting process. During a regular (e.g. from the install CD/DVD) Fedora installation, the installer generates a ramdisk specific to the computer’s disk and hardware setup. Since the whole point of this tutorial is that we are assuming a different set of hardware, the original initrd image is useless.

First, we need to find the version string for the kernel on the system. On a running system we could just do a uname –a, but since we’re running off a LiveCD this won’t work. An alternative would be to check grub.conf. A typical kernel version string would be something like:

Generating a new initrd can be a bit tricky, depending on whether you have a separate boot partition or a unified / partition with a boot directory.

The latter situation (a single, unified root+boot partition) is fairly straightforward. Using the mount manager, mount this partition and note its mount point. Open a command prompt:

# chroot /media/XYZ (replace XYZ with the appropriate location)
# cd boot

Obviously, replace KERNEL_VERSION_STRING in the last command with the kernel string specific to your Linux image. This command will overwrite any existing initrd image for that version of the kernel.

The former situation, involving separate / and /boot partitions, is slightly more tricky. The basic idea is the same; however, since a chroot is involved we cannot run mkinitrd and tell it to write across partitions. One way to overcome this is to mount both partitions, write the initrd file to the / filesystem, and move (mv) it where it belongs to the boot partition. Another, slightly more advanced method is to first mount the / partition, then mount the boot partition to the /boot directory on /.

Setting up swap space (optional)

If you created a swap partition, you’ll need to let the computer know about it. First, we’ll need the UUID of the swap partition. To do this, run:

# blkid

Note the device mapping and UUID (in quotation marks) of the swap partition.

Now mount the / partition and go to etc/fstab. Edit, or create if necessary a line like the one below, making sure to use the UUID from blkid:

UUID=c2f72258-bcd7-4cff-93fc-e584bb03226f swap  swap   defaults        0 0

A Few Last Tweaks

There are a few more tweaks that I highly recommend. On the cloned / partition, edit the file etc/udev/rules.d/70-persistent-net.rules and delete all lines beginning with “SUBSYSTEM”. This will force the Linux install to redetect the computer’s network hardware.

Finally, make sure your video settings will work with the new machine. Recent versions of X (like that shipped with Fedora 11) do not require an /etc/X11/xorg.conf file, but if you have installed either the ATI or nVIDIA proprietary drivers, make sure that the hardware in your computer is compatible. If in doubt, simply delete the aforementioned xorg.conf file to allow X to autodetect your video hardware and select a generic driver.

Congratulations! At this point, your Linux clone is fully prepared and ready to run. Reboot from Parted Magic and cross your fingers – you should see a nice GRUB bootscreen IDENTICAL in appearance to the one on your original computer. Boot as usual, and you should experience a user interface that’s exactly the same as the way you left it. Enjoy your new old system!

Tuesday, September 22, 2009

A Collection of SLIC 2.1 BIOS mods

Here’s a list of all my SLIC 2.1 modded BIOS, created for educational purposes. For more information on what these do, please see: As detailed there, the mods were performed using AndyP’s AMI and Award Mod Tools. All files below are archives containing the modded BIOS, the corresponding XRM-MS certificate, and a suitable DOS flashing tool. For more information on DOS BIOS flashing, please see my previous post.

Disclaimer: BIOS flashing is, of course, a potentially risky operation. All the mods below have been flashed and tested successfully, but I am not responsible for anything that happens due to the use of these mods.

UPDATE 05/08/2010: MA785GM-US2H updated to new F10 BIOS.

UPDATE 03/31/2010: MA785GM-US2H updated to new F8 BIOS.

UPDATE 10/09/2009: Foxconn A7DA-S updated to new 81BF1P09 BIOS.

Board model: ASRock A780GMH/128M
BIOS type: AMI
BIOS version: P1.20
Mod method: SSV3

Board model: ECS MCP61PM-AM
BIOS type: Award
BIOS version: 1.12GS
***NOTE: This is an OEM board used in the eMachines T5234 and possibly some Gateway models.***
Mod method: Dynamic (due to presence of existing Vista SLIC 2.0 table)

Board model: ECS MCP61PM-HM
BIOS type: Award
BIOS version: 5.27
***NOTE: This is an OEM board used in the Compaq SR5110NX.***
Mod method: Dynamic (due to presence of existing Vista SLIC 2.0 table)

Board model: Foxconn A7DA-S (Socket AM2+ DDR2 version, NOT the new 3.0!)
BIOS type: AMI
BIOS version: 81BF1P09
Mod method: SSV3

Board model: Gigabyte MA78GM-S2HP
BIOS type: Award
BIOS version: F5
Mod method: SSV3

Board model: Gigabyte MA785GM-US2H
BIOS type: Award
BIOS version: F10
Mod method: SSV3

Wednesday, September 16, 2009

uTorrent IPFilter Updater (uTIPF) v1.5.6 R2

I’m releasing a revision of 1.5.6. The actual program code has NOT been changed, but rather a supporting component: wget. uTIPF is now using Bart Puype’s standalone wget executable – this resolves issues with msvcr71.dll missing on some Win7 systems, and also negates the need to have two DLL files. The readme has also been expanded slightly.

As always, hit up the left sidebar for the download page, or go to

Wednesday, September 9, 2009

Hardware-independent Cloning of a Linux (Fedora) Install, Part 1


WARNING: The following tutorial is highly technical. If you are not proficient in a Linux environment, particularly with mounting, the following is NOT for you. As always, backup any and all important data.

A complete OS (re)install and format is always a pain. There’s so much more to do afterwards – installing drivers, setting up software, fine-tuning your user environment, and transferring personal documents and data. Combined, all these chores can make for a massive headache.

In the corporate world, this obstacle is often overcome by imaging. Simple bit-for-bit disk imaging works great when you have many computers with identical hardware configurations, but for those of us at home, what are the chances every single computer is the same? In this two-part series, I’m going to demonstrate how to clone a Fedora Linux 11 system from one machine to another, regardless of how different the hardware may be.

Before we begin, we’ll need to prepare a few things. In particular, you’ll need a reliable external storage device (aka a USB hard drive). Make sure your backup drive is large enough to hold your entire Linux install and then some.

Now we’ll need to prepare either a LiveCD or LiveUSB of PartedMagic. PartedMagic is an excellent live distro suited for system maintenance, disk partitioning and management, etc. In particular, PartedMagic comes with FSArchiver, the filesystem backup tool that will be the core of our efforts. One of the limitations of traditional imaging tools is that images must be restored onto disk partitions that are at least as big as the source disk. For example, a 50GB partition must be restored onto a partition >50GB – even if the partition is only partially filled to capacity. FSArchiver is much more lenient: images can be restored anywhere as long as there is sufficient capacity. If you only had 1GB of data on that 1TB partition, you only need a partition size of 1GB.

At the time of this writing the latest available versions were PartedMagic 4.4 which shipped with FSArchiver 0.5.8. Currently, FSArchiver 0.5.9 is out but unless you want to do some binary file replacement, we’re not going to bother.

There is documentation on preparing the LiveCD/LiveUSB at the PartedMagic website. The process is quite straightforward, so I will not go into detail here.

PART I – Backing up the Linux system

Boot into the Parted Magic environment. First, you need to take stock of your particular hard drive configuration and where your Linux is installed. Open a terminal and enter:

# fdisk –l


This will list all the hard disks present as well as the partitions on each drive. A typical Linux install may use anywhere from 1-3 partitions, or more if you have a complicated setup. On my example system, I have a 250MB /boot partition, a 15GB root (/) partition, and a big 250GB /home partition. As you can see in the screenshot above,, these partitions correspond to the devices /dev/hda1, /dev/hda5, and /dev/hda6 respectively.

Now that you know what partition(s) you are targeting, it’s time to mount the external drive to which the image will be written. This is a trivial task thanks to Parted Magic’s graphical mount utility – simply click the “Mount” button next to the relevant device/partition. My example drive is a Seagate 250GB USB disk on /dev/sdc1. The mount point in Parted Magic, then, would be /media/sdc1.


The target partitions – hda1, hda5, hda6 – are marked with a red stripe. My backup drive sdb1 for storing the image is marked with a blue stripe.

Finally, we arrive at the imaging step. Execute the command below, adjusting parameters as necessary. Change EXT to the /dev name of your backup media, and add the /dev name(s) of the target partition(s) you want to backup at the end.

# fsarchiver –v savefs /media/EXT/fedora.fsa /dev/TARGET1 [/dev/TARGET2 /dev/TARGET3]

Optionally, you can add the option –j X if you have a multi-core processor. Replace X with the number of processor cores. Also, if you wish to use compression, use –z Y, where Y is an integer from 1-9 (9 is the highest compression level, using LZMA).

Fore more information about FSArchiver’s command line options, please see this page.

Upon running FSArchiver as described above, you should see a scrolling readout of directories and files present on your system. The running time will vary depending on your CPU and disk speed, as well as the compression level used (if any).

This concludes Part I. Later, we’ll take a look at the steps required to successfully restore and boot the image on another computer, regardless of hardware differences.

Friday, September 4, 2009

Z-Alarm 2 is Released

The original Z-Alarm was, admittedly, a little on the rough side. While it worked reliably and did its job, it looked ugly and gray like a misshapen piece of urban sculpture. Z-Alarm 2 aims to fix all that. In fact, it was designed around one goal: to fully emulate a traditional alarm clock.


As you can see, the GUI was completely rewritten. All user controls are grouped at the bottom of the screen. A custom LED-style fonts goes nicely with the idea of an old-fashioned alarm clock.

Most notably in this release is the expanded music support. As long as a DirectShow codec is installed for a particular audio format, Z-Alarm 2 can use it. For example, in the above screenshot, I’m playing an AAC/m4a file.

More information, instructions, technical details, and credits can be found in the readme. I’ll leave you to try it out for yourself: