Use different user profiles in Firefox

Usually you only have one browser profile that you use for everything - you have your passwords on it, save your tabs and bookmarks there and also pile up history and cookie data. If for some reason you want to divide some of this stuff between user profiles and use those with different command line arguments, Firefox let's you do exactly that.

Before you proceed, take a look at the warnings on the Mozilla page - I had no issues with it however.

To access this feature, close all Firefox windows. Then open a cmd or terminal window, depending on your operating system, and open Firefox with the -P argument (if the Firefox location is not in your PATH variable, you have to direct the command line window to the application's directory first - you can do that using the cd (change directory) command, for example like this:

cd "C:\Program Files\Mozilla Firefox\"


firefox -P

The Firefox Profile Manager will open:

Create a new profile using this manager. Afterwards, whenever you run Firefox without any argument, the highlighted profile will be loaded. You can determine which profile should be used by using the -p argument followed by the profile name, following will load the profile faqforge for example:

firefox -p faqforge

To ease profile selection, you can create multiple Firefox icons or symlink and assign them the appropriate command line arguments to open with.

Restore GRUB bootloader after Windows installation on multi-boot system

Windows operating systems have the habit of installing their own bootloader on every installation - this wouldn't be a problem, if they would recognize all present operating systems. But unfortunately, they only recognize other Windows systems.

Apart from installing EasyBCD and other tools on your Windows partition to set things right, you can also just reinstall the lost GRUB boot manager with the help of a live CD (I used Ubuntu 11.10 for that). Insert the CD and boot from it. Open a terminal. If you have no idea what the name of your partitions is, use

fdisk -l

to get an overview. My output looks like this:

christian-main christian # fdisk -l
Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000587d5
Device Boot Start End Blocks Id System
/dev/sda1 63 629147647 314573792+ 83 Linux
/dev/sda2 * 629147648 775948287 73400320 7 HPFS/NTFS/exFAT
/dev/sda3 775948288 968380415 96216064 7 HPFS/NTFS/exFAT
/dev/sda4 968382196 976768064 4192934+ 5 Extended
/dev/sda5 968382198 976768064 4192933+ 82 Linux swap / Solaris
christian-main christian #

My first partition, /dev/sda1, has Linux installed and is the partition I want to have GRUB on - what I need is its identifier, sda1. Replace every following instance of that identifier with the one of your partition's identifier. Become root by typing

sudo -i

Afterwards mount your partition and install grub (replace sda1):

mount /dev/sda1 /mnt
grub-install --root-directory=/mnt/ /dev/sda

If there is no grub.cfg in /boot/grub, create one using

mount --bind /proc /mnt/proc
mount --bind /dev /mnt/dev
mount --bind /sys /mnt/sys
chroot /mnt update-grub
umount /mnt/sys
umount /mnt/dev
umount /mnt/proc

Afterwards you can restart your system, remove the Live CD and boot into GRUB.

Windows 8 Task Manager Improvements (Consumer Preview)

Along with all the other changes that Windows 8 introduces to the operating systems' family, the ones made to the Task Manager will likely be welcomed by most users. Along with a revamped interface it brings along an enhanced pool of functionalities.

Opening the Task Manager is still done in the old way: you can either right-click the taskbar on the classic desktop and choose the appropriate action or press Ctrl + Alt + Del. As before, it is also available from the applciation menu which however is now part of the Metro menu.

Upon opening you will only be presented with a small window offering you to handle running application, which might be a good way to bringing the manager closer to unexperienced users. By clicking on More details, you will get to the new detailed Task Manager view, having all the options you had in earlier versions, plus, a few new ones.

You will notice a few more tabs in the new manager - the Details, Users and Services tabs are basically what you will be used to from previous versions. The performance tab has visually been enhanced and now features Disk and Network usage. The Startup tab gives you the option to edit the applications that are run on system startup just like msconfig did - this function has now moved to Task Manager. App history gives you an overview of your App usage (CPU, Network, Tile Updates). The Processes tab however is the big deal.

It lists all the running processes, divided into categories (Apps, Background processes, Windows processes) and furthermore shows all their resource usage. Heavy resource users are displayed on a dark yellow to orange background - the color gets lighter the less resources the process uses.
Notice that the Apps you do not use at the moment do not drain any CPU resources - they are put to "sleep" if running in the background.

Change Log-In Screen Background Image on Ubuntu Linux

If you want to make your Ubuntu installation a little less purple and orange, but don't see a solution that covers the change of log-in screen background picture change, try Simple Lightdm Manager. It is a tool that lets you turn the log-in screen into any image you have on your computer. To install, open a terminal and enter the following commands (adding repository, updating sources, installation):

sudo apt-add-repository ppa:claudiocn/slm

sudo apt-get update

sudo apt-get install simple-lightdm-manager

Afterwards open SLM and browse for an image you want to use:

Additionally you can alter the logo that is displayed on the log-in screen's bottom left corner.
Be aware though, that this does not work with images which are located in encrypted file systems!

Remove Driver Filters to Resolve Device Manager Errors on Windows 7

Sometimes the situation might come up where a device that was working flawlessly before will stop doing so, even if you try everything - replugging it, reinstalling its drivers, rebooting the computer - but nothing will help.

A possible cause for this is a driver filter that was either installed by any third party software or simply was corrupted. These can be part of any hardware driver and can intercept requests between software and driver (UpperFilter) or between hardware and driver (LowerFilter). Furthermore, there are two types of filter for each relation - device filters and class filters, where device filters work only for specific devices and class filters work for every device of a specific type, for example every bluetooth radio or every USB device attached to your computer. Those class drivers are the ones that usually cause the issues (if it is a filter issue) because on the software's side, it makes more sense to address those to alter specific behaviours.

If you experience such an issue (which is commonly recognized by the Device Manager errors 19, 31, 32, 37, 39 and 41) it is possible to delete class filters in the registry. Before you make any changes there, it is highly recommendable to back it up. To do so, enter the registry by entering regedit into a Run... prompt and on the left pane, right-click the topmost key (Computer). Click Export and save the file to any location. The file you just created is a .reg file and can be imported into the registry again by simply double-clicking it.

To find the correct filters in the registry, navigate to the Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class key. This will have many subkeys all named like this: {36FC9E60-C465-11CF-8056-444553540000}. These represent the different classes of hardware, you can sport their type by the (Default) or Class values. The one above is for all USB devices:

Along with the other values, those keys contain the class filters if any are present. They are named UpperFilters and LowerFilters. If you have backed up your registry, look for the device giving you headaches and remove the class filters by right-clicking and deleting them.
This guide is only a solution to a possible source of errors and does not cover the whole range - if the problem persists, the source most likely lies somewhere else.

Uninstall USB Drivers on Windows 7

In the time you used your current Windows 7 system you undoubtly have plugged in a lot of different USB devices into your computer, most of them never to be used on it again. You will have notices that for every different device, Windows comes up with a message telling you that it automatically installs all drivers needed to use it.

That is perfectly alright, but what if you won't use the device ever again? The drivers will remain on your hard disk in case you still need it. This is not optimal for two reasons - first: in no time, you will have a massive amount of drivers for different USB devices installed; second: drivers may be out of date the time you use your device again, even if you use it frequently.

Therefore, there is an option to uninstall or update your USB device drivers manually. Open a command prompt by searching for cmd and enter:

set devmgr_show_nonpresent_devices=1

This will set an environmental variable which can also be seen in Control Panel > System and Security > System > Advanced system settings > Environment Variables.... Afterwards, enter


to open the device manager. This can also be done by right clicking Computer and choosing Manage, the device manager will be in the left column.

In the device manager menu, click View and enable Show hidden devices. If you now expand Universal Serial Bus controllers (USB) you will most likely have a bunch of transparent entries, which are all non present and/or hidden devices.

By right-clicking them, you can remove or upgrade their drivers if you need to. This can also be done will any other driver on the device manager and is rather useful for corrupted drivers, is to be handled with care however. If you don't precisely know if you just selected a system component for uninstallment, better don't do it.

Automated Windows 7 Installation with an Autounattend.xml File

There is a possibility to create a Windows 7 installation DVD that runs fully automated without any user interaction - this is done by placing a file called autounattend.xml into the image's root directory. In this file you specify all the keywords that will be read into the fields of the installation process.
To create such a file, you best use Microsoft's Windows Automated Installation Tools. These include the System Image Manager, which provides a graphical user interface for our purposes. You can download the WAIK here:

Afterwards, copy your regular installation disk's files onto a folder on your hard drive - those will later be edited to fit your likings. Type Windows System Image Manager into the Windows 7 menu search bar and open it.

In the bottom left Windows Image panel, right-click and insert the install.wim that is located in the sources subdirectory of the installation disk's root directory. Then right-click the central panel and create a new answer-file. The graphical interface divides the answer-file into Components and Packages, of which the interesting section is Components for us. To add answers to the answer file, you need to choose components from the image by right-clicking them and add them to the answer file, where you can specify what it will respond. The components I am going to add to get a fully automated installation up to the login will be (there are two kinds of components, the ones introduced with amd64 and the ones with x86 - these determine the architecture and each component exists for both, so pick the one according to your architecture):

  • amd64_Microsoft-Windows-International-Core-WinPE_neutral -->windowsPE
  • amd64_Microsoft-Windows-Setup_neutral -->windowsPE
  • amd64_Microsoft-Windows-Security-SPP_neutral -->generalize
  • amd64_Microsoft-Windows-Deployment_neutral -->specialize
  • amd64_Microsoft-Windows-Security-SPP-UX_neutral -->specialize
  • amd64_Microsoft-Windows-Shell-Setup_neutral -->specialize
  • amd64_Microsoft-Windows-Shell-Setup_neutral -->oobeSystem

If you click on one of the components or expand it, you will see the values it has on the right Properties panel, which is where you will enter yours as well. The first component is amd64_Microsoft-Windows-International-Core-WinPE_neutral, the interface-language and locale settings are stored here. On most DVDs, there is only one setting available (you can see which are by booting from your original DVD and trying to install from it - this can be easily reproduced in a virtual machine). If you speak English, then chances are good that you have en-US on your disk, so enter it into InputLocale, SystemLocale, UILanguage, UILanguageFallback and UserLocale. Also, expand the component and enter it into UILanguage of SetupUILanguage.

Afterwards, expand amd64_Microsoft-Windows-Setup_neutral under WindowsPE. Right-click DiskConfiguration and choose Add new disk. Set its values DiskID=0, WillWipeDisk=true and right-click the CreatePartitions component to choose Add new partition. This will be your primary partition, you can add more if you like, but I will keep only this one. I set its values to Extend=true, Order=1, Size=20000 and Type=Primary (extend means that this partition will take up all free space left). Next right-click ModifyPartitions and choose Add ModifyPartition - this will prepare your partition for install. Set its values to Active=true, Format=NTFS, Label=Choose_a_name_here, Letter=Choose_a_letter_here, Order=1 and PartitionID=1.
Afterwards right-click ImageInstall to AddDataImage - extend the OSImage, click InstallTo and set its values to DiskID=0 and PartitionID=1.
Next select the UserData, set the value of AcceptEula=true and enter your FullName and Organization.

If you are running a non-registered version of Windows 7 you might be interested in the amd64_Microsoft-Windows-Security-SPP_neutral component of generalize. Set the SkipRearm=1 to enable more rearms.

Afterwards extend amd64_Microsoft-Windows-Deployment_neutral and right-click RunSynchronous to Add RunSynchronousCommand. Set the new command's values to Order=1, Path=Net user administrator / active:yes, and WillReboot=Never.
Click amd64_Microsoft-Windows-Security-SPP-UX_neutral and set SkipAutoActivation=true.
Then click amd64_Microsoft-Windows-Shell-Setup_neutral and choose a ComputerName. Set CopyProfile=true and add the information you want. The TimeZone is necessary for automation, you can find the correct formatting on the Microsoft page (for Western Europe, it's W. Europe Standard Time).

Afterwards click amd64_Microsoft-Windows-Shell-Setup_neutral in oobeSystem and again enter the TimeZone. Then expand the component and select OOBE to change its values to HideEULAPage=true, NetworkLocation=Work(for example) and ProtectYourPC=1. Then right-click the LocalAccounts component and Add new LocalAccount. Change its values so that they fit your choice of account-name etc.

You should be done now and the changes you made should enable a completely automated installation. Now save the file into the root directory of your copied Installer DVD files as autounattend.xml. Make a bootable DVD-image out of the files again (use a burning software such as the free ImgBurn) and test it in a virtual machine.

Kill Processes On Ubuntu

When it comes to killing a frozen process, Ubuntu and its derivatives offer a great variety of ways to do so:
You can open the System Monitor to end or kill a running process. Just right-click and annihilate:

Then there is the Force Quit applet. Not that powerful, but does its job in most of the cases:

Working similarly but more powerful is the xkill command line tool. You can also wrap that one into a launcher and use it the same way as an applet.

Another command line tool is killall followed by the name of the process, granting the advantage of not having to know the process ID of the program, which the next tool requires:

kill, provided with the -9 switch and the ID of the process (available with top or ps) shuts down nearly every running process.

If none of those commands help, there is still the option to close the current session with ctrl + alt + backspace. This however comes with the warranty of losing any data you could not save before!